Inactive [TP/HOME/WARP] Waypoint v1.6.4(beta)- Teleportation points, home, spawn, and warp management. [1609]

Discussion in 'Inactive/Unsupported Plugins' started by miyoko, Jul 12, 2011.

     
  1. Offline

    miyoko

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Notice!

    THIS PLUGIN IS OLD AND VERY VERY OUTDATED. DOWNLOADS ARE NO LONGER AVAILABLE, AND SUPPORT FOR THIS PLUGIN HAS BEEN DROPPED. IF YOU NEED A SIMILAR PLUGIN, PLEASE USE ZPort


    Waypoint - simple teleportation point and home/spawn/warp management plugin:
    Version: v1.6.4 beta

    NOT YET UPDATED FOR 1.2

    *New in 1.6: modular command hookins, reworked command system, SuperPerms, ????*

    Waypoint is an easy teleportation point management and home location
    management plugin. You can create teleportation points to go back to later
    as well as share privately with other users. You can also create public warps that only certain groups of users can access.

    Waypoint's Features:
    • Add/delete waypoints for later access
    • List all of your waypoints simply
    • Share your points privately with other users
    • Points are private, and only accessable by you, unless shared
    • Multiworld support
    • Permissions/SuperPerms/OP support with strict nodes.
    • Home location management
    • Home location is automatically set to the bed you last exited (only if enabled in config.)
    • Create and manage public warps
    • Control which groups of users can access these warps
    • Save/Load the spawn points for all of your worlds
    • Selective showing of warps (you only see what you can access.)
    • Teleport easily between worlds
    • Create and import other worlds
    • Create and teleportation signs to travel to warps or world spawnpoints
    Download: JAR | SRC
    Development build (bleeding edge): JAR
    Integrity (CI): Waypoint project

    If you like my work, please consider sending a dollar or two my way so my little development company can pay for a server to do work and testing on :)
    [IMG]

    For those of you that want to contribute, or even just watch progress get made on this, check this out: http://phabricator.maio.me/project/view/1/

    Phabricator: Source Code/Collaboration

    Commands:
    • /wp add <name> -- add a waypoint to your list
    • /wp del <name> -- remove a waypoint form your list
    • /wp tp <point> -- teleport to your point
    • /wp invite <player> <point> -- send an online player an invite to your point
    • /wp accept <point> -- accept an invite to a point
    • /wp decline <point> -- decline an invite to a point
    • /wp list -- list of all of your points
    • /home -- teleport to your home
    • /home set -- set your current location to your home
    • /spawn [world] -- teleport to the world's spawn point
    • /spawnadmin <save|load> [world] -- save or load the spawn point of the specified world
    • /spawnadmin set -- set the spawn point of your current world
    • /warp [warpname] -- teleport to the specified warp, if you have access
    • /warp add <warpname> -- create a public warp with the default permissions
    • /warp del <warpname> -- delete a warp you own
    • /warp set <warpname> <owner|permission|or a custom value> <newvalue> -- set property values in the warp's metadata
    • /warp list -- list all warps that *YOU* have access to
    • /warpadmin <set|del> <warp> [key] [value]
    • /tp <player> [target] -- teleport to another player, or teleport one player to another.
    • /tphere <player> -- ejects the target from a vehicle (if applicable) and teleports that player to you.
    • /tploc <x,y,z> -- teleport to a set of coordinates.
    • /world [worldname|create|import|list] -- displays what world you are in and your current position, or if given a worldname, teleports you to that worlds spawn.
    Installation and Configuration:
    Download the jar file and drop it into your minecraft server's plugins/
    folder and reload/restart the server. The configuration will be
    automatically created for you.

    Teleportation Signs:
    To create a teleportation sign, you must format it like this:
    Code:
    Line 1: [WP:WARP] or [WP:WORLD]
    Line 2: world name or warp name
    Line 3: (optional) description # maybe economy cost at some point soon
    Line 4: (optional) description
    
    It is case insensitive btw.

    Configuration options:
    'set_home_at_bed': set this to true if you want your home to be reset
    whatever bed you get out of.
    'autoupdate': check for updates and download upgraded jars automatically
    'warp.groups': permission groups for warps
    'warp.string': message sent to user after teleporting to a warp, %w is warpname, %p is playername
    'limits': self-explanatory.

    Permissions Nodes: (should each be self-explanatory)
    • waypoint.basic.add
    • waypoint.basic.delete
    • waypoint.basic.teleport
    • waypoint.basic.invite
    • waypoint.basic.invite.accept
    • waypoint.basic.invite.decline
    • waypoint.basic.list
    • waypoint.debug.config_node_test << debugging *ONLY*
    • waypoint.home -- you *must* add this if you want to be able to use home commands
    • waypoint.home.set
    • waypoint.home.set_on_bed_leave
    • waypoint.admin.spawn
    • waypoint.admin.spawn.set
    • waypoint.admin.spawn.save
    • waypoint.admin.spawn.load
    • waypoint.admin.warp
    • waypoint.admin.world.create
    • waypoint.admin.world.import
    • waypoint.teleport.teleport -- for general teleportation actions
    • waypoint.teleport.location -- for coordinate-based teleportation
    • waypoint.teleport.here -- for teleporting players to you
    • waypoint.spawn -- you *must* add this if you want to be able to use spawn commands
    • waypoint.warp -- you *must* add this if you want to be able to use warps
    • waypoint.world -- you *must* add this if you want to be able to use /world
    • waypoint.world.teleport
    • waypoint.world.list
    • waypoint.world.access.<worldname> -- more info on this below
    • waypoint.warp.access.<permission category>
    • waypoint.warp.create
    • waypoint.warp.delete
    • waypoint.warp.list
    • waypoint.sign.link.create
    • waypoint.sign.link.use
    • waypoint.sign.link.delete
    • waypoint.sign.warp
    • waypoint.sign.world
    • waypoint.cost_exempt.teleport -- teleports do not cost a single dime.
    Known Bugs:
    • Set home at bed is not disabling, ever. Currently looking into it. T3
    If you find a problem, report it at Github.

    Permissions Setup:
    Here is a sample Permissions 2.7.4 configfile with Waypoint's nodes already set up, and a user set up to give an example. Change it to your liking.

    << Thanks Pr0Failure :D

    World Access
    As of about 1.6.1, I added a few new things that implement a whole "world access" type schema of features. Players will NEVER be able to access a world unless they have the "waypoint.world.access.<worldname>" or "waypoint.world.access.*" permissions. I will add a configuration option to disable this, but for now, it's always on. If you want to effectively disable it without a config option and your permissions system supports inheritance, simply place the "waypoint.world.access.*" node at the lowest level and it should filter up through everything that inherits that or its children. I only added this because I felt it would be handy in the case of servers wanting to prevent griefing in creative worlds, but leaving whitelisting off, and just spawning all new users in the spawn world, but not letting them traverse your minecraft universe of worlds. There will be a config option to turn this off soon. By the way, if you didn't catch the gist of what I was really saying, this prevents ALL teleporting between worlds (only if you don't have the permissions for that world) no matter what you use to teleport. This catches events at a low level and checks each user's permissions as they change worlds. But enough about this.

    Bugs and Errors
    If you get a "An internal error has occurred" message when you use a command, * PROVIDE A TRACEBACK PLEASE. * (hint: a traceback is the error code in the server console that shows the error and its callers)
    And for those of you that didn't read this text, maybe this image will catch your attention:

    [IMG]

    TODO:
    • Fix PermissionsEx not being detected correctly.
    • Rewrite command structure again with sk89q's command framework.
    • Add configuration options to disable various things.
    • Clean up core support code (me.pirogoeth.Waypoint.Core.*)
    • OpenAuth integration in the future?
    Changelog:
    Version 1.6:
    • Completely rewrote the command parser from the ground up.
    • Added SuperPerms support
    • Split commands apart into categories (much cleaner for anyone who works through the code)
    • (Supposedly) Fixed NPE from LoadWorlds during plugin load.
    Version 1.5:
    • Rewrote the configuration loader and put it in its own class
    • Restructured config storage
    • Added new warp limitations
    • Added an autoupdater
    Version 1.4.5
    • Fixed warp permission loading and detection
    Version 1.4.4
    • Fixed the internal errors spewed on /warp set
    Version 1.4.1
    • Removed some unneeded imports
    • Removed some unused variables
    • Now using String.format in checkperms
    Version 1.4
    • Added warp management
    • Restructured most of the config file formatting.
    • Homes-per-world (you can have one home per world now.)
    • Added spawn management
    • Added backup/restore of world spawn points
    Version 1.3
    • Added home support
    • Fixed configuration node bugs
    Version 1.1
    • Added invite support
    Version 1.0
    • Wrote all base code
    And some thanks.
    Definitely got some big thanks here, especially to Pr0Failure, who been testing the crap out of this, even during its magical beta stages. And some more thanks to all of you that put up with me not being around for weeks on end due to school. And thanks to others who at one point sent in a pull request to fix something I had missed. I love you all, you're a very supportive community :) Also, some big thanks to Ctark who's been following this like crazy and even digging through my messy code to find nodes to help others while I'm not around :) Again, THANK YOU ALL <3

    This post has been edited 52 times. It was last edited by miyoko Dec 21, 2012.
  2.  
  3. Offline

    Wykleph

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Am i making a distinction between a waypoint or a warp when i do [WP:WARP]? like would it be [WP] or [WARP] or is it [WP:WARP] just like that?

    And of course, thank you for all the help :D

    This post has been edited 1 time. It was last edited by Wykleph Dec 26, 2011.
  4. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    [WP:WARP] = Warp
    [WP:WORLD] = World
  5. Offline

    minecraftYord

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
  6. Offline

    Wykleph

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Ok, thank you. I will work on it... for some reason i am not having much luck getting it to work though..
  7. Offline

    Kanuine

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Hey guys sorry this is a noob question, I am new to this. I am using PermissionsEX and I'm really confused about waypoint.world.access.<worldname> permission. There is a great explanation for waypoint.world.access.<worldname> but none for the 1st. Maybe you could add a explanation? Help would be greatly appreciated, Thanks!
  8. Offline

    Kanuine

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Also how do you get Waypoint to detect PEX?? Keeps saying
    06:24 PM [INFO] [Waypoint] Reading configurations.
    06:24 PM [INFO] [Waypoint] Configuration successfully loaded.
    06:24 PM [INFO] [Waypoint] No Permissions plugin detected. Using OP
    06:24 PM [INFO] [Waypoint] Enabled version 1.6.3
    06:24 PM [INFO] [Waypoint] Saved all configurations.
    06:24 PM [INFO] [Waypoint] Auto-update is disabled.
    06:24 PM [INFO] [Waypoint] Limits enabled with threshold 10
    06:24 PM [INFO] [Waypoint] WarpLimits enabled with threshold 10
    06:24 PM [INFO] [Waypoint] Warps: loaded permission groups: Default, Mod, Admin

    I have PEX running and have added permissions for waypoint to it but it will not detect it. =(
  9. Offline

    Wykleph

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I'm still not having any luck... at this point i feel really stupid. Can somebody send me a screenshot or something? I would really appreciate it. :D

    Thanks guys!!!
  10. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Say you have a world called candyland, the access node for it would be waypoint.world.access.candyland, if you want everyone on the server to be able to go to any world just add waypoint.world.access.* for your lowest ranking class (granted you have higher ranks inheriting your lower ranks)
  11. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    If you download the PEX zip there should be 4 jars in there including PermissionsEX and another Permissions jar. Add both, and ChatManager if you want the prefix/suffix to work, and ModifyWorld if you wanna get into that, but I don't use it even though I still have it installed, I just disabled ModifyWorld in it's config. Permissions.jar will work as a layer/add-on to PEX that acts like Yeti's Permissions but is hooked into PEX's config. And when you start up a server it will say Waypoint is going off of Permissions 2.7.7 DO NOT WORRY, THAT IS STILL PEX
  12. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Make sure you're running 1.6.4, I believe that 1.6.3 and below run on a different sign setup.
    Wykleph likes this.
  13. Offline

    Kanuine

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Thank you SOO much for the prompt answer!! I was really confused...

    And sorry I typed it wrong.. I ment to say i was confused about waypoint.warp.access.<permission category>

    Horay! I was missing the Permissions jar. Warp works!

    This post has been edited 1 time. It was last edited by Kanuine Dec 27, 2011.
  14. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    If you watch the tut video (even though it's outdated) it works the same way. Go into the config of Waypoint and change the groups there. So say you have (DO NOT USE THESE GROUPS, USE THE GROUPS IN YOUR PERMISSIONS FILE!!!!)
    Code:
    - Default
    - Member
    - Mod
    - Admin
    as your groups in the config file. You would go to your permissions plugin and the group nodes would be waypoint.warp.access.<groupname> which would be the groups you entered in the config. So you give the nodes to the corresponding groups:
    waypoint.warp.access.Default
    waypoint.warp.access.Member
    waypoint.warp.access.Mod
    waypoint.warp.access.Admin
    NOTE: waypoint group nodes are case sensitive. Make sure you have group inheritance so higher groups have lower group warp permissions! The first group listed in the waypoint config WILL BE the default warp permission whenever you make a new warp. So if you have the group Guest as your first in the config for groups, all new warps will be set to Guest permissions which would be waypoint.warp.access.Guest

    This post has been edited 3 times. It was last edited by Pr0Failure Dec 27, 2011.
  15. Offline

    Kanuine

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Oh i think i got it.... is waypoint.warp.access.<permission category> where waypoint.warp.access. is access to a warp if you are in <permission category> such as Default, Mod, Admin

    Thanks!

    This post has been edited 1 time. It was last edited by Kanuine Dec 27, 2011.
  16. Offline

    Wykleph

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Thank you, problem solved. :D
  17. Offline

    Kanuine

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Think you figured out you problem but here's this anyway:
    Explanation.png

    If you haven't already figured it out hope this helps!

    This post has been edited 1 time. It was last edited by Kanuine Dec 27, 2011.
  18. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    No problem to all of you :p only here to help/test lol.
  19. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Reminder: All *NEW* warps are the first permissions group that's in your Waypoint config file! To change permissions to a warp /warp set permission <new permission> or /warpadmin set permissions <newpermissions> if the warp isn't owned by you!
  20. Offline

    Ctark

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    TODO: Have waypoint recognize when a player is vanished, so they can still be targeted....
    I use vanish no packet, and if I'm vanished and try /tp ctark someotherplayer it will not work.... I don't know if this would be something you are interested in doing, easy or hard, but might be nice....
    Also:
    How about a way to revoke access to a waypoint.
    say I give out a waypoint to a friend, then we arn't friends anymore, and he keeps tp'ing to my house, can I remove access from him? OR do you know if removing the waypoint (del) then re adding it will clear access to that waypoint?

    This post has been edited 1 time. It was last edited by Ctark Dec 27, 2011.
  21. Offline

    Tak Suyu

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Sounds like things are calming down from the new changes
    Can I get a link to the latest copy of the Jar to play with while I write up the OP ?
    Oh and do I need to do an upgrade tree for it or just replace the jar?
  22. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Deleting the waypoint delete's the info in the storage, so when you re-create it, it's with fresh info. Aka only you'll have access to it.
  23. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Just replace the jar.
  24. Offline

    miyoko

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Download link updated to 1.6.4 beta compiled after I pulled that 4-way merge into git last night.
  25. Offline

    Tak Suyu

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Alright only asked because of the whole beta upgrading thing

    Edit:Alright got an internal error.. and I GUESS this is what you want as a Traceback?
    Code:
    [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'warp' in plugin Essentials vPre2.7.2.2
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:165)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:378)
        at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:757)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:722)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:715)
        at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:93)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
        at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:527)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
    Caused by: org.bukkit.command.CommandException: Unhandled exception executing command 'warp' in plugin Waypoint v1.6.4
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:42)
        at com.earth2me.essentials.Essentials.onCommandEssentials(Essentials.java:303)
        at com.earth2me.essentials.Essentials.onCommand(Essentials.java:290)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
        ... 12 more
    Caused by: java.lang.ClassCastException: java.lang.Boolean cannot be cast to java.lang.String
        at me.pirogoeth.Waypoint.Core.Warps.PlayerToWarp(Warps.java:121)
        at me.pirogoeth.Waypoint.Commands.Warp.run(Warp.java:239)
        at me.pirogoeth.Waypoint.Waypoint.onCommand(Waypoint.java:153)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:40)
        ... 15 more
    


    Guess the exceptions system in Essentials doesn't like the warp command coding for the latest build?

    Edit2: Well everything seems to work correctly other than the call error so I don't particularly care about it =P

    This post has been edited 2 times. It was last edited by Tak Suyu Dec 27, 2011.
  26. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    If you get really annoyed by it, just go into the plugin.yml in the essentials jar and get rid of the /warp command.
  27. Offline

    scottad

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I have installed this plugin fine and as an admin, I can create and modify warps... but guests are still unable to view or use the warps...

    And I can't see how to modify or add their names from the video...

    Am I doing something wrong? It seems to just be a permissions problem... =(
  28. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Make sure they have the correct nodes to use the commands.
    waypoint.warp.list
    waypoint.warp
    waypoint.warp.access.<group access>

    This video is out of date, I have to make a new one really soon which will be up in the next couple days.

    This post has been edited 1 time. It was last edited by Pr0Failure Dec 27, 2011.
    minecraftYord likes this.
  29. Offline

    Wowie7450

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    it says "Warp does not exist" and i think i found out how... i say "/setwarp" now.
  30. Offline

    Pr0Failure

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    The problem for Smokie has already been fixed xD
  31. Offline

    miyoko

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    Or at least I think. He disappeared :/
  32. Offline

    Tak Suyu

    dev.bukkit.org profile:
    CFUSERNAME
    My Plugins (CFCOUNT)
    I noticed that the world create command doesn't seem to like itself now.. This world has been killing me for days.. works at first but restart the server and it doesn't..

    Do I have to remake the world.yml file or something? Noticed its not exactly the same

Share This Page