Plugin to allow players to put guests on leashes.

Discussion in 'Archived: Plugin Requests' started by vgmddg, Mar 7, 2013.

  1. Offline

    vgmddg

    Plugin category: Teleportation

    Suggested name: GuestLeash

    What I want: I have a server that has multiple worlds. The Workyard is free and is the default world for guests, and then there are other worlds for ranked players usually. As of late, a semi-common practice is that some ranked players sometimes like to bring lower ranked players to higher-ranked worlds so they can play with them there.This is generally not too much of a problem to me, as long as the player is keeping an eye on the guest.

    What I would like to have is a plugin where ranked players can request to bring a guest to them via command. If the guest accepts, they will be teleported to the caller, but will be tethered to the player by an invisible leash, meaning they can only travel a set distance away from the player who called them. If the guest tries to move too far from the caller, they will be brought back within the circle and a warning message will be displayed to them.

    Leash termination: The caller or guest can use a command to terminate the leash, at which point the guest will be teleported back to where they were when they were called. It will also be terminated if either person leaves the game (and possibly when they die).

    Ideas for commands:
    • /leash request <guest>: Asks a guest if they want to be teleported to the player. (Or just bring them directly is fine.) This works similarly to /tpahere in Essentials.
      • leash.request
    • /leash accept | /leash deny: Accept or deny a leash request.
      • leash.accept
    • */leash force <guest>: Force a player to be leashed to the caller. (Likely good for moderation.)
      • leash.request.force
    • /leash leave: Can be used by either party to return the guest to their original location (unless forced).
      • leash.leave
    • /leash help: Pretty obvious I think. :)
      • leash.help
    Ideas for (other) permissions:
    • leash.exempt: Player cannot be a leash guest. Don't even ask them. (i.e. Staff members)
    Configurable values:
    • leash-length (radius in blocks): Maximum distance away from the caller a guest can go.
    • warning-message (string): Message displayed to the guest if they try to go too far away.
    When I'd like it by: Any time is fine. Not too high a priority, but I would like it if possible. Maybe start coding hard on it for Bukkit MC 1.5.
    ----------
    Thanks a lot for reading. I hope this can be used by other people too. :D
     
  2. This is really interesting plugin idea.

    EDIT:
    1. Config.yml is now written, i start now coding features. http://puu.sh/2nelV
     
  3. Offline

    vgmddg

    Le bump? Just wondering if anything's happening on this. :)
     
  4. Offline

    blackicetf2

    I would love to get that !
     
  5. Offline

    Me4502

    So you enslave guests in return for giving them entry? Sounds fun.
     
    vgmddg and CaptainWalrus like this.
  6. Offline

    jacklin213

    Just saying , The bukkit team is working on an API soon , so for now we dev's have no way to create any plugins with new introduced items in 1.6.1
     
  7. Offline

    jamietech

    Check thread date ;)
     
  8. Offline

    jacklin213

    huh? , btw even though you can download it try finding the javadocs for the Material leash.
    http://jd.bukkit.org/dev/apidocs/
    ^ title is updated Content is not
     
  9. Offline

    jamietech

    From OP: "This post has been edited 2 times. It was last edited by vgmddg Mar 9, 2013." (read: 4 months ago)
     
  10. Offline

    vgmddg

    I'd still like this if it could be possible. The addition of the lead just means that players can see their connection to the host player.
     
  11. Offline

    timtower Administrator Administrator Moderator

    vgmddg We still need to wait for the API to come out
     
  12. Offline

    vgmddg

    Known, and I'm okay with that. :) If you (whoever wants to adopt this project) want to start by writing out the framework and a code-based system for binding the guest player to the host invisibly, you probably can. Then when you get the lead API just have it spawn a visual lead between the players. Or, if the APIs will include configurable distance and other features and you think it'll be safe enough to use the lead API to hold the player, you can rewrite or augment your code to use the Lead code. (If you decide to make it rely on the Lead code I'd recommend having a code-based backup system to make sure the player doesn't try to disconnect or glitch away, or if the lead system fails.)

    Focus on the base area-limiting part (which is the crux of the plugin) and then the security part of making sure the guest goes back where he should if the visit is terminated. Then do the visual lead (if its APIs won't help with blocking the player) and other features.

    Whoever decides to help make this plugin I thank you a lot for giving your time. It means a lot to me. :D
     
  13. Offline

    timtower Administrator Administrator Moderator

    vgmddg Maybe we don't even need to write the lead code, just make it able to connect to players
     
  14. Offline

    jamietech

  15. Offline

    vgmddg

    Thank you very much! :D I hope this can turn out to be a good plugin for myself and others to use. :)
     
  16. Offline

    jacklin213

    huh
     

Share This Page