Inactive [TP/MECH] TeleportSuite v1.1.2 - Teleport requests and more [1185]

Discussion in 'Inactive/Unsupported Plugins' started by krinsdeath, Aug 1, 2011.

  1. Offline

    krinsdeath

    TeleportSuite v1.1.2 - A fully featured teleport suite, including the ability to request teleports, list active requests, and teleport to a location or world.​
    Previous versions... 1.0.5 - 1.0.4 - 1.0.3 - 1.0.2 - 1.0.1 - 1.0.0
    [​IMG]
    Requirements
    • CraftBukkit 1185
    Optional (Recommended)
    • PermissionsBukkit (latest build)
    • bPermissions
    • PermissionsEx
    Basic usage: Drop the jar (here) into your plugins directory, and it'll do the rest! It will create a config.yml, which contains all of the messages the plugin sends to players. Each message is fully configurable to your taste.

    config.yml (open)

    Code:
    message:
        location: You are currently at (&b<x>&f, &b<y>&f, &b<z>&f) in &a<world>&f.
    error:
        arguments: '&CNot enough arguments.'
        no_location: '&CYou haven''t teleported yet.'
        target: '&CInvalid target.'
        invalid_world: '&CInvalid world'
        permission: '&CYou do not have permission for that.'
        params: '&CInvalid parameters.'
        destination: '&CInvalid destination.'
    request:
        open:
            entry: '&a<player>&f'
            none: You have no requests.
            self: 'Requesting teleport to: &a<player>&f'
            header: Open requests...
        ignored: '&a<player>&f is not allowing teleport requests.'
        only_one: You can only request one teleport at a time.
        deny: You denied &a<player>&f's teleport request.
        cancelled: '&a<player>&f cancelled their teleport request.'
        denied: '&a<player>&f denied your teleport request.'
        none: You have no request from &a<player>&f!
        cancel: You cancelled your teleport to &a<player>&f.
    teleport:
        message: Teleporting to &a<player>&f...
        toggle:
            message: Teleport requests will be <flag>.
            allowed: allowed
            default: false
            denied: ignored
        request:
            to: Awaiting response from &a<player>&f...
            from: Teleport request from &a<player>&f. (Accept with &a/tpaccept <player>&f)
        notice: '&a<player>&f is teleporting to you.'
    plugin:
        opfallback: false
        rebuild: false
        version: 1.1.0
    
    Permissions (open)

    • teleport.users - Grants access to /tpa, /tpahere, /tpaccept, /tpreject, and /tptoggle - Sets teleport.tpa, teleport.tpahere, teleport.accept, teleport.reject, teleport.toggle, teleport.cancel, teleport.back, teleport.requests, teleport.coords, teleport.world.* - Defaults to true
    • teleport.mods - Grants access to /tp and /tphere - Sets teleport.tp, teleport.tphere, teleport.tploc, teleport.tpworld
    • teleport.admins - Grants access to /tpo and /tpohere - Sets teleport.tpo, teleport.tpohere
    • teleport.* - Grants all-access - Sets teleport.users, teleport.mods, teleport.admins
    full permissions list (open)

    teleport.requests: Grants access to /requests, allows the user to view any active teleport requests that they have
    teleport.cancel: Grants access to /cancel, which cancels the sender's current teleport request
    teleport.toggle: Grants access to /tptoggle, allows the user to ignore teleport requests
    teleport.accept: Grants access to /tpaccept, allows the user to accept a teleport request from the target specified
    teleport.reject: Grants access to /tpreject, allows the user to reject a teleport request from the target specified
    teleport.back: Grants access to /back, teleports the user to their location prior to their last teleport, or the location at which they logged in
    teleport.tpa: Grants access to /tpa, allows the user to request a teleport to the specified target
    teleport.tpahere: Grants access to /tpahere, allows the user to request the target to teleport to them
    teleport.tp: Grants access to /tp, allows the user to teleport without confirmation from the target
    teleport.tphere: Grants access to /tphere, allows the user to teleport the target to them without confirmation
    teleport.tpo: Grants access to /tpo, allows the user to teleport to their target, regardless of the target's toggle state
    teleport.tpohere: Grants access to /tpohere, allows the user to teleport the player specified to them, regardless of the target's toggle state
    teleport.tploc: Grants access to /tploc, allows the user to teleport to the specified location
    teleport.coords: Grants access to /tpcoords, which shows the sender's current location
    teleport.tpworld: Grants access to /tpworld, which teleports the user to a specified world (to their last known location in that world).
    teleport.world.[worldname]: Allows the use of /tploc and /tpworld to the specified worldnames. (also accepts *, for all worlds)


    Commands: Flags marked with () are required.
    • /tprequests - Lists all of your current teleport requests, as well as any active request you have made.
    • /tpcancel - Cancels your currently active request.
    • /tptoggle - Sets your toggle status.
    • /tpa (player), /tpahere (player) - Requests a teleport to (/tpa) the specified player, or for the specified player to come to you (/tpahere). If /tptoggle is set to true, these requests will be ignored.
    • /tp (player), /tphere (player) - Teleports the sender to the target (/tp), or the target to the sender (/tphere), without confirmation. If /tptoggle is set to true, this command will be ignored.
    • /tpo (player), /tpohere (player) - Forces the target to teleport. Will override /tptoggle.
    • /tploc (x y z) [world] - Teleports the user to the specified location. Will fail if the block occupying the space where the player's head will be is not air. (note: you can teleport into the sky and fall to your death with this)
    • /tpworld (world) - Teleports the user to the specified world. Note: This command remembers that user's location in the world, and attempts to send them to their last known coordinates in that world. It only remembers positions if /tpworld is used to leave the world.
    • /back - Teleports the user to their location prior to their last teleport, or where they logged in (whichever location is newer).
    TeleportSuite is also available via BukGet
    To do:
    • Implement saving and loading, so requests are persisted across reloads and server restarts
    • You tell me! I want to keep the plugin rather lightweight, however, so non-teleport related feature requests will be ignored.
    Changelog
    Version 1.0.6 (Latest)
    • A bit of extra NPE protection
    • passing strings to methods rather than player instances
    • code cleanup
    Version 1.0.5
    • Fixed an NPE that was the result of players with active requests logging out or being kicked. Any player that logs out instantly drops all active requests and any requests they've made.
    Version 1.0.4
    • Made messages optional; setting any field to null, or deleting the key, will make the message not show
    • Added a default value to the toggle status, at 'teleport.toggle.default'. Standard configuration defaults it to "false" (allows teleport requests)
    • Each message is now multi-line capable by putting the field into a list of lines, if you wish.
    Version 1.0.3
    • Fixed /back not properly aligning pitch and yaw
    • Changed /cancel to /tpcancel, to fit with the motif
    • Added 'world' option to /tploc
    • Added /loc (with aliases /where and /whereami), shows the sender's current location
    • Fixed /tpo not correctly overriding user toggle switch in certain instances
    Version 1.0.2
    • Added version tracking method
    • Increased cleaning when plugin is disabled
    • Added javadocs for possible public API
    Version 1.0.1
    • Added /cancel.
    • /tpaccept and /tpreject will now automatically affect the first person in your request queue if passed with no parameters
    • Fixed erroneous permission check on /tploc
    • Added tracking to /tploc for /back
    Version 1.0.0
    • Initial release
     
  2. Offline

    krinsdeath

    That already exists. Try /back.

    @DJAddi - Stop finding bugs. Releasing a new version to BukGet is annoying. :[ Anyway, I'm doing a few other things to release 1.1, so those will just have to wait until then. Lots of projects on my docket.
     
  3. Offline

    Don Redhorse

    bahh :p that was not on the command list :D

    thanks...
     
  4. Offline

    codename_B

    Amazing plugin, absolutely perfect for my needs.
     
  5. Offline

    Phantom Index

    so does this use permissions 3.1.6 as well? Can't switch to superperms yet.
     
  6. Offline

    krinsdeath

    It does not, and though I sympathize, I have no intention of supporting Permissions systems other than Superperms.

    Sorry.
     
  7. Offline

    Kane

    @krinsdeath pretty nice plugin. Ever consider doing a full package or lets say doing other parts as a separate plugin like /warp /home /spawn etc.
     
  8. Offline

    krinsdeath

    I am currently working on ChatSuite, and have planned each of these as part of a larger "CommandSuite" plugin, which I intend to keep modular and lightweight. So, short answer; yes.

    I'm trying not to reinvent the wheel too much, but I get requests for certain portions and those become a priority. At the moment, I've noticed a distinct lack of verbose, easy to use and powerful chat plugins, and as such that has become (and will remain for some time) my current goal.

    To answer your query, however, I will point you to OpenWarp, a really powerful and very good warp plugin with the desired functionality.
     
    Kane likes this.
  9. Offline

    codename_B

    http://www.pastie.org/2419480
    @krinsdeath NPE onPlayerQuit on bukkit #1063

    Plugins: SpawnX, BananaNoCreeper, BananaRegion, WorldBorder, GiveTo, EveryoneCanCuboid, SimpleGod, bPermissions, bChat, BananaTracks, BMR, NoWeather, ClearInventory, iConomy, BananaLogArchiver, HeroicDeath, bInfo, Bananapocalypse, Pinapp, HomeX, BananaGen, List, Superpickaxe, TeleportSuite, NoCheat, HawkEye, Permissions
     
  10. Offline

    krinsdeath

    Just pushed my changes to fix the NPEs you were all encountering, and it is now available as version 1.0.6.

    Hopefully it addresses the issues properly, but I'm preoccupied with other plugins so this isn't getting 100% of my attentions. ; ;
     
  11. Offline

    ProjectInfinity

    For some reason people without the permission nodes for tpa and tpahere still have access to it, whereas people without the tp and tphere permissions nodes do not have access to those commands.
    I am using PermissionsEx.
     
  12. Offline

    krinsdeath

    @ProjectInfinity - I define defaults in my plugin.yml so that people without permissions systems can still use the plugin. As a result, if you want to disallow access to a specific command, you need to explicitly set it to false (in PermissionsEx, I believe this is done by specifiying '-some.node').

    I am sorry for the inconvenience.
     
  13. Offline

    ProjectInfinity

    Alright, I suppose that's okay. One thing bothers me though, I were getting some NPE's every now and then.
    http://pastebin.com/AnB97iTp

    Using 1.0.6 on RB #1060.
     
  14. Offline

    xxldoener

    Hey I would have a little request. What I really don't like about the essentials tp is that you can not disable the ability to teleport into other worlds. In the original minecraft server plugin you would get a message "the player is not in this world".

    Another thing I don't like about the Multiverse telport command (/mv tp) is, that everytime a person teleports to another world this person starts off at the spawnpoint rather than the place the person has vistied in this world last.

    If you got add those two functions or tell me alternative plugins that offer these that would just be awesome!!!
     
  15. Offline

    Omen

    could you make this so admins do not need to request teleporting? some times id like to quickly teleport to a user who i may suspect is a griefer.
     
  16. Offline

    krinsdeath

    @Omen - /tpo [playername] and /tpohere [playername] will immediately teleport you to a player, or a player to you, regardless of settings and without confirmation.

    @xxldoener - If I understand you correctly, you want to disable the ability for players to teleport between worlds (using /tpa)? This is not really intended.. but I can see it being an inconvenience if you want to limit world access.

    I may include something (perhaps a permissions node) to prevent it, but I can't give you an ETA as I'm really busy with updating and maintaining to implement new features.

    I'll get back to you.
     
  17. Offline

    Omen

    thanks! very useful plugin. great job on this. works great in 1060, only thing it lacks is persistence between server restarts or player log offs.
     
  18. Offline

    Omen

    any way to clear all pending requests with one command?

    i have like 15 requests to tp to me and id like to clear them all at the same time.
     
  19. Offline

    krinsdeath

    @Omen - As of right now, there is no way to accept or reject all current requests. This is something that could be implemented (fairly) easily, so I'll work on it. I am extremely busy, though, so it might not be immediate.

    Good feature request.
     
  20. Offline

    Don Redhorse

    hmm the /requests command works but non of the others... any idea? there is nothing in the logs I would think it is a problem with an other plugin

    forget it found the problem.. sigh ..

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 18, 2016
  21. Offline

    iMattxC

    Can add a permissions to allow admins to teleport without the player knowing i teleported to him?
    example:
    commandsuite.teleport.shh
     
  22. Offline

    krinsdeath

    @Don Redhorse - I apologize, I noticed a slight glitch with /requests; if you do it without any active requests, but while requesting a teleport yourself, it doesn't list it. I've fixed this in 1.1, and am currently working on it.

    @iMattxC - I've been working on 1.1 for a while now, and I suppose this would be easy enough to do. You can also delete the key used for the message that players receive in the config.yml, which will "silence" the admin's teleport.
     
  23. Offline

    Don Redhorse

    lol... my problem did come from defaultcommands command aliases... I edited the wrong file so /tpa was mapped to /tpca ...

    but nice you found a bug and fixed it

    one request so (keeping in mind that I haven't checked it yet):

    would it be possible to enable certain parts of the plugin only via settings?

    I'm using homesweethome and I have no idea which plugin is now handling the /home command... yours, homesweethome or any other plugin having /home
     
  24. Offline

    krinsdeath

  25. Offline

    Don Redhorse

    aargg... forget it.... different plugin... keep on coding... nothing to see
     
  26. Offline

    PsychicDragonST

    Is there a way to disable the message that pops up to a user when someone teleports to them? It's kind of hard to watch over possible griefers when they know you've just teleported to them.
     
  27. Offline

    krinsdeath

    @PsychicDragonST - If you remove the message entirely from the config.yml, it shouldn't notify the player. This might not be entirely desirable (it removes the message entirely for other users too), so I'm working on a solution that isn't hacky and awful.

    Just wanted to let you know that I'm aware of this problem.
     
  28. Offline

    PsychicDragonST

    I'll do that for the time being then. Thanks for the heads up and reply!
     
  29. Offline

    pjt0620

    I'm having problems with your perms nodes using pex


    Group A has :

    commandsuite.teleport.requests: Grants access to /requests, allows the user to view any active teleport requests that they have
    commandsuite.teleport.tpcancel: Grants access to /cancel, which cancels the sender's current teleport request
    commandsuite.teleport.toggle: Grants access to /tptoggle, allows the user to ignore teleport requests
    commandsuite.teleport.tpaccept: Grants access to /tpaccept, allows the user to accept a teleport request from the target specified
    commandsuite.teleport.tpreject: Grants access to /tpreject, allows the user to reject a teleport request from the target specified

    Group B has:
    commandsuite.teleport.tpa: Grants access to /tpa, allows the user to request a teleport to the specified target
    commandsuite.teleport.tpahere: Grants access to /tpahere, allows the user to request the target to teleport to them
    and all of group A's nodes

    The problem with that setup is group A can still use /tpa if I negate the commandsuite.teleport.tpa command then nothing happens but if i negate the teleport.users it breaks Group A's ability to accept or decline but prevents them from using tpa.

    Would it be posible to get the perm nodes fixed soon?

     
  30. Offline

    krinsdeath

    @pjt0620 - I apologize. Since I made this a standalone project (and scrapped my "CommandSuite" project), I dropped the commandsuite prefix from the permissions nodes.

    I test my plugins with PermissionsBukkit and my own permissions plugin Privileges, but not PEX. PEX does some weird things with node priority and the way it registers nodes to users, and as a result it's unpredictable and unreliable. I will update the main post to reflect the new permissions, but note that I still cannot guarantee their reliability (when it comes to negating specific nodes) with PEX.
     
  31. Offline

    pjt0620

    thanks that prefix is what was screwing it up
     

Share This Page