Inactive [TP] PrivateWarp 1.7.4 - Private Warping suite [1.4.4-R0.1]+

Discussion in 'Inactive/Unsupported Plugins' started by The_Wrecker, Jan 14, 2011.

  1. Offline


    PrivateWarp - The Private Warping plugin

    Warping since Dec 2010 ! Proven to last.
    Current Version: v1.7.4
    Download PrivateWarp
    Download PluginControl (v1.2.8)
    Compatible with:
    Tekkit (1.3.2) (Bukkit for minecraft 1.2.5)
    Bukkit 1.3.2-r1.0
    Bukkit 1.4.4-r0.1
    Other stuff:
    Download Waypoint Converter (to convert and maintain warp files)
    Download Full zip (Including PublicWarp 0.65!)
    Current, all downloads page (Includes instruction videos)

    I made one of the apps I have compatible with the format.
    It's a gui which lets you peak inside of the private warp files. Some parts are not yet finished, might not finish it completely, but you'll have a way to get the contents.
    Download here: GUI Editor

    The converter can read your waypoints.txt (former hmod plugin) and create PrivateWarp database files. Those database files can be copied/moved to the privatewarp player directory to once again have your old warps back.
    You can use my plugin to create private warps. Every player can have his or her own set of warps. You can also set categories so you can divide your warps in a logical list. For example: you can list builds other people have built in a separate category (ie "Other_Builds).
    The PrivateWarp plugin has a dependency with PluginControl. PluginControl is a plugin which handles not only permissions, but also plugin configuration (flatfile) based on groups. PrivateWarp now has per group based limitations (maxwarp and so on). This is not another Permissions system since it can use multiple Permission systems.

    This plugin has also been ported from the hmod mod. You can find the old thread here: hmod forum. The old plugin can still be used as a Canary plugin, you can find the link in the Canary forums. The plugin is also mentioned on my website here: Wrecker Technologies.

    Supported Permissions:
    -Vault (support for bPermissions and several others indirectly)
    -Built-in permission system (Groups.txt, built in PluginControl)

    • Ability to create personal private warps
    • Divide your warps into categories
    • Admin can access other warps through the /pwa command
    • A vault system with the /pwv command
    • Some other stuff not yet mentioned
    • Limit the amount of warps a user in a group can have
    • Group manager compatible
    • Permissions compatible
    • Built in fall back permission system
    Commandlist (in chat):
    • /pw
      Display your currently set private warps and categories. Only displays warps in the current category selected.
    • /pw set <name>
      Set/add/overwrite a private warp in your selected category
    • /pw del <name>
      Delete a private warp in your selected category
    • /pw goto <name>
      Use the warp , goto the location where you have set it (warp has to exist)
    • /pw catselect <name>
      Select the category (has to exist). Leave empty to return to default
    • /pw catcreate <name>
      Create categorie with given name
    • /pw catdelete <name>
      Delete the categorie (including the underlying private warps)
    • /pw help
      Displays usage and commands
    • /pwa
      All the commands of /pw except you can pretend to be another player. For example /pwa <name> set home. Sets the warp home to the player <name>. Should be an admin/mod command on most servers.
    • /pwv
      An admin can create a template(or set) of warp categories and names. These cannot be used(del, set) by the players. An admin can set a warp in the template to a player which the player can use. Should be an admin/mod command on most servers.
    • /pwv put "player" "warp"
      Set the templated warp to the player
    • /pwv rem "player" "warp"
      Removes the warp from the player
    The rest of the commands for /pwv are the same as /pw except they don't store any coordinates and it functions as a template for the vault system.

    • /pwr <nr>
      Recall previous used warps. Start at 0 (0 is the most recent)

    Configuration of the plugin(s) is done in the PluginControl data directory.
    For example:
    • bukkit/plugins/PluginControl/PrivateWarp/<groupname> (properties for that group)
    Following 2 files are only there when the built-in permission fallback is used:

    • Users.txt contains the users
      A user is defined like so: The_Wrecker=admingroup
    • Groups.txt contains the groups (first line is the default group)
      A group is defined like so: admingroup=pw;pwa;pwv <- changed due to onCommand()
      A new line is for another group or user.
    Permissions nodes :
    • PrivateWarp.pwa
    • PrivateWarp.pwv
    • PrivateWarp.pwr
    Configuration file:

    Private warp configuration file (under the PluginControl data directory)
    • max_warp=10 Maximum of total warps
    • max_categories=3 Maximum categories a player can create
    • max_warp_categorie=3 Maximum warps in a category (excluded the main/default category)
    • max_cache_minute_timeout=30 Amount of time data is considered useless (0 not ecommended)
    • cleanup_cache_minute_timeout=5 Amount of time between cleanup runs (0 not recommended)
    • Warp_timeout // configurable timeout before warping
    Todo (featurelist)
    • DynamicMap warplocations
    • Sharing warps with other players (/pws)
    • TimeStamping warps (create/modified)
    • Add comments/descriptions to warps
    • Data dir cleanup (--fixed useles creation of files, just needs a cleanup run)
    • Initial starting warp list (a list you get when you first enter the server)
    • Calculate distance to a warp from current position (possibly including height)
    • Changing on the fly config with a new plugin
    • Zones where warps cannot be set (PluginControl feature actually)
    • Cool down function for commands (suggestion from ethood1999)
    • Warp maintenance tool
    • Fix up warp count versus vault warps (partly coded)
    • Add fully qualified warp names (category/warp) Suggested by Ture
    • Warpname Template
    • Redo configuration (add warmup message)
    Having problems?
    try this:
    Loading error 1
    Loading error 2
    Try to pay attention to what the log says when starting Bukkit. Might contain some important hints.


    Version 1.7.4 RC
    • Built against 1.4.4 R0.1
    • Fix when using /pwa (out of bounds error in thread)
    Version 1.7.1 RC
    Missing some versions because those were officially released as unstable. Below changes sums up some of the changes.
    • Built against 1.2.5 R0.1
    • Upgraded permission detection (direct support, PEX and Essentials)
    • Vault Support
    • Message that you'll warp when using a warmup - timeout
    • Some internal structure changes
    Changelog (open)

    Version 1.6.4 RC
    • Built against Bukkit 1370
    • Use of new Event system
    • Beware of Permission systems (I expect a few problems due to changes/breaking of the other plugins)
    Version 1.6.3
    Does not exist (skipped)

    Version 1.6.2
    • Fix to get material type from block
    • A way to force the built-in permission system regardless of other systems installed (checks for existance of groups.txt under the PluginControl directory)
    Version 1.6.1
    • Built against #1578 for 1.0.1 support
    • JDK7 support update
    • Fix for the race condition when warping/teleporting
    Version 1.6.0
    • Fixed crash due to multi byte character reading
    • Added multithreading for every command passed through PluginControl (Meaning the whole set of commands currently available for PrivateWarp)
    • Fixed the error message when you have no rights to use the command
    • Java JRE 7 supported
    • Updated building path to create new Jar
    • Better code to read configuration property readings
    • Support for Permissions updated (bPermission, PermissionEx, SuperPerms)
    • New detection system to detect Permissions (1.5.1 fix)
    • Splitted code for handling commands
    • Player cache managing code reorganized
    • Better file handling (should disable the creation of empty PrivateWarp files)
    • Removed seperate quick and dirty warmup code
    • Refactored AbstractPlugin OO layer
    Version 1.4.9 > 1.5.0
    • Fixed default warping timeout
    • Fixed bug where warpname was passed to permissions
    • Added softdepend loading to yml
    Version 1.4.8 > 1.4.9
    • Added warping delay (default 5 seconds, adjustable in config)
    • Added rename command (/pw ren <old> <new>)
    • Added move command (move warp to another category /pw mv <warp> <cat>)
    • Added shorter aliases for known commands (see help)
    • Refactored the code base a bit for future changes
    • Built against CraftBukkit 953 (minecraft 1.7.2)
    Version 1.4.7 > 1.4.8
    • Added configbit to config files
    • Built against CraftBukkit 818 (minecraft 1.6.6)
    Version 1.4.6 > 1.4.7
    • Fix on help sub command
    • Check for blocks before warping
    • Check alternative warp location
    • Warn and notices when your warp is not quite right (warping yourself half into a step stone for ex.)
    Version 1.4.5 > 1.4.6
    • Updates towards the latest Bukkit releases
    • Fix for built-in permissions (AGAIN!)
    • Smarter cache system
    • Update for Public Warp
    Version 1.4.4 > 1.4.5
    • Updates towards the latest Bukkit releases
    • Fix for built-in permissions
    • Added Essentials Group Manager plugin
    Version 1.4.2a > 1.4.4
    • Updates towards the latest Bukkit releases
    • Still has a known issue with built-in permission system (PluginControl)
    • Seems Bukkit changed the way namespacing works... This threw errors around (IllegalAccess Exceptions)
    Version 1.4.1 > 1.4.2a
    • Built with PluginControl(0.52a)
    • /pwr change
    • Recommended build #602 update and fixes
    • Previous release is revoked(1.4.2), hence the added 'a' in this release.
    Version 1.4.0 > 1.4.1
    • Built with PluginControl(0.51)
    • Fixed /pwv put command
    Version 1.3.9 > 1.4.0
    • Built with PluginControl(0.5)
    • Changed the way how the plugin(s) output text
    • PublicWarp might be independent now
    • Removed the default_world check
    • Removed Warp converting from old PrivateWarp version
    • Did an auto updating page (see link previous versions)
    Version 1.3.8 > 1.3.9
    • Built with PluginControl(0.49)
    • Compatability update for build 522
    Version 1.3.7 > 1.3.8
    • Built with PluginControl(0.48)
    • Nothing special added or fixed for PW
    • Support for PublicWarp (test-released plugin)
    Version 1.3.6 > 1.3.7
    • Built with PluginControl(0.47)
    • Fixed null when no default group in fallback
    • Added GroupManager support
    Version 1.3.5 > 1.3.6
    • Built with PluginControl(0.46)
    • Lazy warpname matching in goto subcommand
    • Code cleanup (mainly init stuff)
    Version 1.3.4 > 1.3.5
    • Built with PluginControl(0.45)
    • Update to use Phoenix permissions 2.4
    • Constructor fix
    • Shifted to onCommand
    Version 1.3.3 > 1.3.4
    • Built with PluginControl(0.44)
    • Less IO
    • Fix to /pwv put command
    • HACKY FIX considering the constructor stuff, but works for now.
    Version 1.3.2 > 1.3.3
    • Built with PluginControl(0.43)
    • Added /pwr to help
    • Redid some logging
    • Only show conversion log when it's 'interesting'
    • Teleport hook code for pwr (probably not yet functional)
    • Some more minor fixes
    Version 1.3.1 > 1.3.2
    • Built with PluginControl(0.42)
    • MAJOR Fixes to the plugin loading thing (I hope I got it nailed this time, I haven't seen errors while testing).
    • MultiWorld!!! (For conversion to new format add: "default_world=<world_name>" in config. The Plugin will ask you to do this.)
    Version 1.3.0 > 1.3.1
    • Built with PluginControl(0.41)
    • Added /pwr command
    Version 1.2.9 > 1.3.0
    • Built with PluginControl(0.4)
    • Made calls to Nijikokun's permission static
    Version 1.2.8 > 1.2.9
    • Built with PluginControl(0.3)
    • Code for Nijikokun Permissions through PluginControl
    • Fallback to basic mode when plugin can't be loaded somehow (which was the case for me)
    Version 1.2.7 > 1.2.8
    • Built with PluginControl(0.2)
    • Removed a potential memory leak
    • Better handling when dependency is not found
    Version 1.2.6 > 1.2.7
    • Added permissions with PluginControl(0.1)
    • Per group based limitations
    • /pwv, /pwa available again
    Version *.*.* > 1.2.6
    • Removed the /pwa and /pwv command (temporarily)
    findus1994 and DoomLord like this.
  2. Offline


  3. Offline



    I am not certain if this is still an issue with your latest releases (I don't see any source code :( ), but you can not use player.teleport(location) methods outside of the main thread. If you want to use it outside of the main thread, I recommend you put the calls inside of the scheduler, with a sync task.
  4. Offline


    First time I heard someone complain about calling teleport outside of the main thread. What happens when this is done? I never had any problems doing it like this...
  5. Offline


    You will throw a concurrentmodification exception. It doesn't happen every time, maybe 1 in 10000 times.
  6. Offline


    Thanks, I'll look into that.
  7. Offline


    Hey you know how I sent that stuff about a month ago about the chunk load and spout?

    I sent spout the info today about it and got this back from them.

    Just read 2 posts above might be the same thing as its the same guy I presume who posted to me in the spout issues.

    The issue is here

    I'm surprised a that I feel that there was some hostility towards my post there.

    As both server admins and all you developers work soo hard for one reason to make our players happy and give them the best possible and enjoyable environment to play in.

    I don't know if this gives you some ideas on the issue but the chunk load to spout issue, is still happening to us pretty regularly when players use there private warps.
  8. Offline


    Not hostility to you, but more to the developer. This is the umpteenth developer who thought it was okay to ignore the tutorial on multithreading on bukkit and go clear a path himself. Then WE get blamed for bugs that someone else is producing. Frequently.

    Additionally, I ALREADY warned the author of this plugin a week ago, and instead of being interesting in solving the problem, he expressed his doubt to the validity of my claims. I am a VAST resource and LOVE answering questions and could tell you specifically which functions in the bukkit API are safe and unsafe at a glance. Instead I am ignored.

    And people think I am hostile...


    Sorry, that wasn't really directed to you Revenger, just an opinion I needed to get off my chest.
    Wulfspider likes this.
  9. Afforess wins.
    No round 2 needed
  10. Offline


    Wow what a replies.


    I did not experience hostility from your part. You pointed out an error in my plugin, which is great. I understand you get a little frustrated with all of the errors (and thus the programmers who made/introduced them).

    I've read about caching issues and accessing those with threads. I didn't expect that that also counts for a playerList. As said, I will check that out. Just did not have the chance to yet.

    Probably need to set a schedule of some sort. Need to see what works best.

    I don't understand your comment on winning!? That's not what this is about. (I think)
  11. Offline



    We are using 1337 bukkit and other stuff.. Anyways, lately our server has crashed due to Private Warp bug that won't allow warps between worlds...

    After this it goes to an.. odd state no connections are taken but it is on..

    2011-11-10 20:13:38 [INFO] [G-rauta] XXXXXX: jaa et oo enää
    2011-11-10 20:13:40 [INFO] XXXXXXX tried to use command /pw goto koti
    2011-11-10 20:13:40 [SEVERE] java.lang.NullPointerException
    2011-11-10 20:13:40 [SEVERE]     at net.minecraft.server.World.a(
    2011-11-10 20:13:40 [SEVERE]     at net.minecraft.server.SpawnerCreature.spawnEntities(
    2011-11-10 20:13:40 [SEVERE]     at net.minecraft.server.World.doTick(
    2011-11-10 20:13:40 [SEVERE]     at net.minecraft.server.MinecraftServer.h(
    2011-11-10 20:13:40 [SEVERE]     at
    2011-11-10 20:13:40 [SEVERE]     at
    2011-11-10 20:13:40 [SEVERE] Unexpected exception
        at net.minecraft.server.World.a(
        at net.minecraft.server.SpawnerCreature.spawnEntities(
        at net.minecraft.server.World.doTick(
        at net.minecraft.server.MinecraftServer.h(
    2011-11-10 20:14:50 [INFO] Read timed out
    2011-11-10 20:14:56 [INFO] Connection reset
    2011-11-10 20:15:01 [INFO] [Server] Luodaan varmuuskopioita. Varokaa lagia!
    2011-11-10 20:15:32 [INFO] Read timed out
    2011-11-10 20:15:32 [INFO] Read timed out
    2011-11-10 20:15:53 [INFO] Read timed out
    2011-11-10 20:16:03 [INFO] Read timed out
    2011-11-10 20:16:04 [INFO] Connection reset
    2011-11-10 20:16:17 [INFO] [Server] Varmuuskopiot luotu.
    2011-11-10 20:16:52 [INFO] Read timed out
    2011-11-10 20:16:52 [INFO] Read timed out
    2011-11-10 20:17:08 [INFO] Read timed out
    2011-11-10 20:17:14 [INFO] Connection reset
    2011-11-10 20:17:15 [INFO] Read timed out
    2011-11-10 20:17:24 [INFO] Read timed out
    2011-11-10 20:17:47 [INFO] Read timed out
  12. Offline



    So you are saying you get this when warping between worlds? Wonder where the nullpointer comes from. Are those warps new warps?

    Thanks for the report.
  13. Offline


    There are few warps that (3-4 that I have logged) that appear in the logs every time the server crashes.

    Some are old... Some I don't know...

    When the same crash warps that i have been tracking Work! They sometimes get the spout error.
  14. Offline



    seems to be related to the spout error when I hear this. Maybe it goes further than just a concurrentmodification error. not sure bout this.
  15. Offline


    It seams to kill the server at the same time... everyday.. Arround same times... <- Proppaply a coincident

    Ok a new error log.. .. Puuh!

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Jan 8, 2016
  16. Offline


    Does seem to be the exact same problem.

    The problem is not the warping between worlds though. It is actually warping in general (or so it seems). Anyway, when I've got that fixed I'll release a new version.

    Strangely it seems to happen(more often?) when spout is installed. Could be coincidence? Must be...
  17. Offline


    This is odd..
  18. Offline


    I'm probably removing groupmanager support in the next version of PluginControl.
    Mainly because I think it isn't used anymore (but if you do let me know!!!!). I'll keep you updated on the progress.

    Dicided I'll leave the support in as is for now. Found the essentialsGroupManager on the BukkitDev.

    I coded up a fix, but I really don't know if it'll work yet. Tommorrow I'll build another version.
  19. Offline


  20. Offline


    Unfortunatly I wasn't able to build/test it yet. Had to work that evening (overtime).
  21. Offline


    I tested out the code I made. Seemed to run as it should, but couldn't test it out properly though.
    This is the build I made:

    Can you try that version and see if you still get the errors?
  22. Offline


    I will check it out as the chunkload errors with your plugin are frequent sometimes we get them 3-4 times in a row here.

    22:17:36 [SEVERE] Could not pass event CHUNK_LOAD to Spout
            at java.util.ArrayList$Itr.checkForComodification(
            at java.util.ArrayList$
            at org.bukkit.craftbukkit.CraftWorld.getPlayers(
            at org.getspout.spout.SpoutWorldListener.onChunkLoad(
            at org.bukkit.plugin.RegisteredListener.callEvent(
            at org.bukkit.plugin.SimplePluginManager.callEvent(
            at net.minecraft.server.ChunkProviderServer.getChunkAt(
            at org.bukkit.craftbukkit.CraftWorld.loadChunk(
            at org.bukkit.craftbukkit.CraftWorld.loadChunk(
            at org.getspout.spout.SpoutNetServerHandler.getFastPacket51(
            at org.getspout.spout.SpoutNetServerHandler.playerTeleported(
            at org.getspout.spout.SpoutNetServerHandler.updateActiveChunks(
            at org.getspout.spout.SpoutNetServerHandler.queueOutputPacket(
            at org.getspout.spout.SpoutNetServerHandler.sendPacket(
            at net.minecraft.server.NetServerHandler.teleport(
            at org.bukkit.craftbukkit.entity.CraftPlayer.teleport(
            at Source)
            at Source)
            at Source)
            at Source)
  23. Offline



    They still occur? or you haven't checked yet?
  24. Offline


    Havn't checked latest version will put it in tonight and see over the next day.
  25. Offline


    Be sure to also replace the PluginControl with the new version.
    The changes are in the PrivateWarp jar, but might not be compatible with the old PluginControl version.

    I hope you already downloaded the files. My server can't be reached atm. You can pm me with your mail address and I'll send them to you if you didn't.

    Temp address (unstables):
    <snip> webaddresses </snip>

    Server is back up.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: Jan 8, 2016
  26. Offline


    It is nolonger a fatal error.. But still getting some spout errors and these.

    2011-11-05 16:03:00 [INFO] [G-pronssi] XXXX pt mennä
    2011-11-05 16:03:01 [INFO] [G-pronssi] XXXXX: 6 obsidiania
    2011-11-05 16:03:02 [INFO] YYYYYYY tried to use command /pw goto s
    2011-11-05 16:03:02 [WARNING] Can't keep up! Did the system time change, or is the server overloaded?
    2011-11-05 16:03:02 [WARNING] Failed to handle packet: java.util.ConcurrentModificationException
        at java.util.LinkedList$ListItr.checkForComodification(Unknown Source)
        at java.util.LinkedList$ Source)
        at org.getspout.spout.SpoutNetServerHandler.manageChunkQueue(
        at org.getspout.spout.SpoutNetServerHandler.a(
        at net.minecraft.server.Packet10Flying.a(SourceFile:126)
        at net.minecraft.server.NetworkManager.b(
        at net.minecraft.server.NetServerHandler.a(
        at org.getspout.spout.SpoutNetServerHandler.a(
        at net.minecraft.server.NetworkListenThread.a(SourceFile:108)
        at net.minecraft.server.MinecraftServer.h(
    2011-11-05 16:03:02 [INFO] XXXXXX tried to use command /shop buy bread 3
    2011-11-05 16:03:02 [INFO] [LocalShops] xXXXXXXXX issued: buy bread 3
    2011-11-05 16:03:04 [INFO] [G-pronssi] XXXXXXXXX eiih
    2011-11-05 16:03:06 [INFO] YYYYYYY [/HH.HH.HH.HH:2963] logged in with entity id 7837 at ([pronssi] -839.5, 94.0, -839.25)
    2011-11-05 16:03:07 [WARNING] Can't keep up! Did the system time change, or is the server overloaded?
    2011-11-05 16:03:07 [INFO] [G-pronssi] XXXXXXX: nooh
  27. Offline



    I now use a synced task for teleportation (as suggested).

    I'm wondering. Do you use a timeout for warping? Do those errors also occur when you just do /pw?

    Luckily it's not a severe anymore!:)
  28. Offline


    I can get you a whole log... If you want.. is about 10 mb
  29. Offline



    sure you can send it to my yahoo address if you still have it. I think it could be useful.
    I hope I can receive a file of 10 MB though.
  30. Offline


    We got a issue on our tracker about how warps and a potential exploit for our bedrock box vault system.

    I think this was discussed with you at some point checking the end location and denying the warp if the actual values were not reachable or some obstruction was in the way.
  31. Offline


    can you maby fix this problem i can´t good english

    or can me maby this translate in german pls

    kann mir dass bitte jemand auf deutsch erklären weil google ist grausig

Share This Page