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

    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
     
  2. Offline

    miyoko

    So here's how I feel about the current release since the thread stopped being very active:

    [​IMG]
     
    Ctark likes this.
  3. Offline

    Tak Suyu

    So did you sort out why people with a basic world permission can teleport to worlds that they don't have permissions too?
    Not to kill your buzz :rolleyes:
     
  4. Offline

    miyoko

    Forgot about that one >.< I'll look into when I have some free time.
     
  5. Offline

    Tak Suyu

    Heheh alright, I'll be on Skype but I got pretty much everything that you'd need to debug it
     
  6. Offline

    Pr0Failure

    That'll be never >_> you kind of stopped working on Waypoint lately.
     
  7. Offline

    WizardCM

    Wanted to test this plugin, hoping to add it to my server, however when someone teleports (I believe to a warp in a different world) I get a continuous stream of errors and the server dies:

    http://text.wizardcm.com/2012.01.06-23.41.48.txt
    (Pasted in a text document because it's SO long)
     
  8. Offline

    miyoko

    I've stopped working on everything lately :p

    What version of CraftBukkit are you running?
     
  9. Offline

    butterbrei

    Hello, I'm running Bukkit RC1 and got a few bugs(?) :)

    first of all... if I try to set spawn point and then typing /spawn, I get to the old spawn point.
    Second bug I face is, when I add a warp point and trying to teleport... I always face south.

    Thanks :)
     
  10. Offline

    Sparkkey123

    Got the following error after right clicking on a [TP:WARP] sign. The teleport was successful, but this was generated in the server log file. I am not running a permissions plugin yet, and I disabled all other plugins. The /WP TP [destination] command works fine and does not generate any errors in the log file.

    Server Version:
    14:20:16 [INFO] This server is running Craftbukkit version git-Bukkit-1.0.1-R1-2
    3-g83d1251-b1638jnks (MC: 1.0.1) (Implementing API version 1.0.1-R2-SNAPSHOT)

    Any ideas what is causing this?

    Code:
    14:02:31 [SEVERE] Could not pass event PLAYER_INTERACT to Waypoint
    java.lang.ClassCastException: java.lang.Boolean cannot be cast to java.lang.Stri
    ng
            at me.pirogoeth.Waypoint.Core.Warps.PlayerToWarp(Warps.java:121)
            at me.pirogoeth.Waypoint.Events.PlayerEventListener.onPlayerInteract(Pla
    yerEventListener.java:189)
            at org.bukkit.plugin.java.JavaPluginLoader$11.execute(JavaPluginLoader.j
    ava:338)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:62)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:339)
            at org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerInteractEven
    t(CraftEventFactory.java:178)
            at net.minecraft.server.ItemInWorldManager.interact(ItemInWorldManager.j
    ava:266)
            at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:593)
            at net.minecraft.server.Packet15Place.a(SourceFile:39)
            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)
    I want those glasses... the wood paneling... and that coffee mug.
    ...maybe the chair...

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

    Pr0Failure

    [WP:WARP] is the correct setup.

    /spawnadmin set

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

    miyoko

    It's just an error saying that I'm trying to turn a true/false value into a string and use it that way. I'll make a note to fix it. It's not a severe problem. You can safely ignore it.
     
  13. Offline

    Sparkkey123

    Another oddity I notice the more I started playing and experimenting with waypoint and teleporting is that some teleportation destinations will consistently/repeatedly create huge gaping world-holes every time I teleport to it, but if I keep playing with different locations in the same area, I will eventually find a spot that behaves as a nice destination.

    Usually I just "float" out of the hole until I get to ground, leave the game and reconnect and the hole is gone.
    ...kinda cumbersome...

    Is this a mod issue, server side issue, a mincraft issue, or are there certain precautions I should take when creating a warp destination?

    I seem to have better luck if the destination is away from complex structures.

    Comments? Suggestions?

    -Joe
     
  14. Offline

    Pr0Failure

    It's a chunk loading error. You might be running an out-of-date version of Waypoint. Because I know in the past couple beta builds he added a pre-fetching of the destination chunk so that wouldn't happen. If it continues to happen, just get Spout and it should fix your problem.
     
  15. Offline

    miyoko

    I didn't actually have it do any prefetching...I only added some code to force chunks to load. Which I'm not even sure if it works, because the big gaping holes still happen for me :p
     
  16. Offline

    Pr0Failure

    Doesn't happen for me and I'm not running Spout anymore either o.o
     
  17. Offline

    miyoko

    Oh :3
     
  18. Offline

    WizardCM

    1529
     
  19. Offline

    miyoko

    Can you try updating to at least CB #1609 and the copy of Waypoint from this link?
     
  20. Offline

    Ctark

    Quick question, did anything ever happen with implementing an override perm node for waypoint / warp limits (mainly waypoints in my case, but easy to do both I would assume) That either completly overrides the limit, or sets it to a different value per permission node.
    Would be epic if it already is / almost is implemented.
    :D
     
  21. Offline

    Pr0Failure

    He hasn't been working on any coding lately. So no :\
     
  22. Offline

    miyoko

    Actually, it is implemented. I did do some work. But I did it quietly.
     
  23. Offline

    Pr0Failure

    Maybe you should not do it quietly so I can answer properly.
     
  24. Offline

    miyoko

    Can someone give me something to do or fix? I'm really bored and don't necessarily know what I have to fix or what features I need to add.
     
  25. Offline

    Sparkkey123

    Well there are at least two:
    #1
    "It's just an error saying that I'm trying to turn a true/false value into a string and use it that way. I'll make a note to fix it. It's not a severe problem. You can safely ignore it."
    (reference post 813)

    #2
    Since upgrading to the recent 1.1-R1-snapshot I noticed yesterday that when I tried to /tp a NON-OP'ed player to me it gave an error something to the effect that the player did not have permission to enter world vorlon (vorlon is the world name). I do not have the permissions mod. This was not a problem a week ago. I can TP to them, but I cannot TP them to ME.
    I have added a couple mods in the last week and have not ruled out some type of conflict, but I figured you could test it, unless you want to test it on my server.
     
  26. Offline

    Pr0Failure

    The newer versions of Waypoint, players need access in a world to be tp'd, even if it's in the same world.
    waypoint.world.access.<world>
     
  27. Offline

    Sparkkey123

    can this be done without using a permissions plugin?
     
  28. Offline

    rawringlemon

    Waypoint worked fine like 3 days ago for me..
    I didn't switch versions or anything
    But now it won't detect PermissionsEx as my permissions plugin
    It just defaults to Op Only
    I have
    PermissionsEx version 1.17
    Minecraft 1.1
    Bukkit build 1772
    Waypont 1.6.4 Beta
    Ideas??
    - rawr
     
  29. Offline

    Pr0Failure

    No.

    PEX 1.17
    #1774
    1.6.4
    Works for me. Make sure you're running the Permissions layer also that comes in the PEX .zip

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

    Sparkkey123

    ok. so I bit the bullet and installed permissions... permissionsbukkit 1.2
    Been playing with it for an hour, and tested basic minecraft general permissions. Behaves as expected.

    Next, the goal was to make a teleport sign that a "default" new player could right click on and teleport.
    I gave the default group every possible command and then created a warp sign.
    /warp add overhere2
    I then attempted to test it, both as an OP and DEOPed player. I intentionally left my name out of the config.yml file to simulate a new "default" player.

    As long as I am an OP, the sign works fine. As soon as I DEOP myself, I get the error message (in RED):
    "[Waypoint] You do not have permissions to access this warp." (and I made the warp sign)

    I tried adding waypoint.*: true as well as each individual permission node (shown in example below).
    I'm sure there is something I am missing or not doing or not understanding.

    Ideas?
    Here is the current config.yml
    (player1, 2, 3, 4 were changed so I didn't post my admins names)
    Perhaps an eagle eye will spot the glitch...

    Code:
    users:
      player1:
          permissions:
          groups:
          - admin
      player2:
          permissions:
          groups:
          - admin
      player3:
          permissions:
          groups:
          - admin
      player4:
          permissions:
          groups:
          - admin
     
    groups:
        default:
            permissions:
                waypoint.basic.add: true
                waypoint.basic.delete: true
                waypoint.basic.teleport: true
                waypoint.basic.invite: true
                waypoint.basic.invite.accept: true
                waypoint.basic.invite.decline: true
                waypoint.basic.list: true
                waypoint.home: true
                waypoint.home.set: true
                waypoint.home.set_on_bed_leave: true
                waypoint.admin.spawn: true
                waypoint.admin.spawn.set: true
                waypoint.admin.spawn.save: true
                waypoint.admin.spawn.load: true
                waypoint.admin.warp: true
                waypoint.admin.world.create: true
                waypoint.admin.world.import: true
                waypoint.teleport.teleport: true
                waypoint.teleport.location: true
                waypoint.teleport.here: true
                waypoint.spawn: true
                waypoint.warp: true
                waypoint.world: true
                waypoint.world.teleport: true
                waypoint.world.list: true
                waypoint.world.access.*: true
                waypoint.warp.access.*: true
                waypoint.warp.create: true
                waypoint.warp.delete: true
                waypoint.warp.list: true
                waypoint.sign.link.create: true
                waypoint.sign.link.delete: true
                waypoint.sign.warp: true
                waypoint.sign.link.use: true
                waypoint.sign.world: true
                permissions.build: true
        user:
            permissions:
            worlds:
                vorlon:
                      permissions.build: true
            inheritance:
            - default
        moderator:
            permissions:
            inheritance:
            - user
        admin:
            permissions:
                permissions.*: true
                waypoint.*: true
            inheritance:
            - moderator
    messages:
        build: 'YO! You do not have permission to build here.'
    
     
  31. Offline

    Pr0Failure

    Getting Waypoint and PermsBukkit to work perfectly almost never works lol. I'd suggest switching to PEX or bPerms. Perms3.1.6 is outdated but it still works. That's the only suggestion I can give you :\
     

Share This Page