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

    The_Wrecker

    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

    Converter:
    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.
    PrivateWarp:
    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).
    PluginControl:
    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:
    -PEX
    -Essentials
    -Vault (support for bPermissions and several others indirectly)
    -Built-in permission system (Groups.txt, built in PluginControl)

    Features:
    • 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:

    Locations:
    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:

    bukkit/plugins/PluginControl/
    • 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.pw
    • 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.


    Changelog:

    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

    Alien12

    An error pops up in console when you /pwa sometimes. Same error with different threads.
    Code:
    2012-10-27 01:32:19 [SEVERE] Exception in thread "Thread-23549"
    2012-10-27 01:32:19 [SEVERE] java.lang.ArrayIndexOutOfBoundsException: 2
    2012-10-27 01:32:19 [SEVERE]    at wrecker.tech.x.a(Unknown Source)
    2012-10-27 01:32:19 [SEVERE]    at wrecker.tech.f.run(Unknown Source)
    2012-10-27 01:32:19 [SEVERE]    at java.lang.Thread.run(Unknown Source)
    Threads that I've seen over the past few days are:
    Thread-23549
    Thread-15793
    Thread-13882
    Thread-7409
     
  3. Offline

    Damien711

    Sorry for the late reply I haven't been on the bukkit forums for some time period now. However yes I believe that it is due to my permissions plugin. My developers and I have gotten the plugin to work however strange reason the plugin's built in permissions system takes over which is a pain. I am using group manager and this did not occur in the past but now whenever I want to add a player to be able to use warps I have to manually add them to the PW group in the server files which is not to hard but for each individual member that I want to give this permission to as well as upgrading ranks this is a pain. Console tells me how to disable by deleting the group file in the users file to no avail. in Any ideas?

    Also just so everyone knows this plugin works on 1.4.2 developmental build.
     
  4. Offline

    The_Wrecker

    Damien711
    I'll have to check that. Seems to me that the plugin does not detect the permissions correctly for some reason. I'll get back to you on that(Have to try it out myself).

    Alien12
    Never seen that error before. What is the exact command you are using to reproduce this?
    As far as I can tell it's not datafile related. Therefore the chance on datacorruption is small. It is likely due to a parse error of the command.
     
  5. Offline

    The_Wrecker

    I'll probably get around to those things during the weekend.
     
  6. Offline

    Alien12

    The errors can be reproduced by using '/pwa' on pretty much anyone.
    It doesn't always show the error but has most of the time for me.

    I've never seen it show when using any other parameters after /pwa username
     
  7. Offline

    The_Wrecker

    I had some other software related issues I had to solve last weekend.

    @ Alien12

    I suspect that those players you are using it on are logging on and off while executing the command? Then it might be more clear what is happening.
     
  8. Offline

    Alien12

    This just happens with pwa, and happens both if the player you're trying to pwa is online or offline.
    Not sure what you mean by them logging on and off while executing the command. I've tried it on several different players that are online and players that are offline and every time its now throwing a thread exception.

    Doesn't seem to cause any problems but it's spamming the console a lot if you're using pwa. Are you not able to replicate the error?
     
  9. Offline

    Damien711

    The_Wrecker

    Any updates on your progress regarding the issues that I was having. Not meaning to rush you by any means.

    Also works fine on 1.4.4 dev build!
     
  10. Offline

    zhuber07

    Hi. I have installed this addon, and it worked fine for a while in OP. I am using Essentials and Essentials GroupManager as well. But anytime I use it(i am op as well), or any of my other players, cannot use and get the error PW: No permission to use: pw.

    Any help will be appreciated.
    thanks,
     
  11. Offline

    The_Wrecker

    I've been able to reproduce the error. Sorry for the late reply. I'll be releasing a 1.4.4 build soon since I've managed to fix it. As expected it is minor though(low impact).
     
  12. Offline

    The_Wrecker

    Uploaded the new version with the fix for the out of bounds error.

    About the GroupManager problem. I cannot find something wrong. It detects it correctly on my part... I assume you are using essentials right? Otherwise try Vault and see if that works out?

    Could you maybe post part of your startup log?
     
  13. Offline

    Damien711

    Yes I am running both Essentials and Vault. I just updated group manager to the lastest build and same issue is occurring. Will post my startup log shortly once I get my log files in for the day. Thanks.
     
  14. Offline

    The_Wrecker

    Hmm I didn't test out vault lately. But it should detect vault and if not at least GroupManager.
     
  15. Offline

    Damien711

    Startup Log: http://pastie.org/5409634
    Also both vault and groupmanager are detected on the server and function fine. Issue occurs on both dev, recommened, and beta builds of bukkit.
     
  16. Offline

    The_Wrecker

    Deleting Groups.txt did nothing right? It just recreated it.
    In your case I'd just rename the file.

    I'll try it out with vault installed. I suspect something is up with that.
     
  17. Offline

    Damien711

    Ok renaming the groups.txt file worked perfectly. Thanks for the solution although I find it a little weird that there is no way to manually determine which permissions system is used. Maybe something to be added in the future but once again not a big issue. It may be vault interfering as you stated above. Either way thanks!
     
  18. Offline

    The_Wrecker

    I'll probably end up building a new version soon to support newer minecraft versions.
    As well as fix a couple of bugs in the proces. I'm sure this version will work with the current bukkit release (running spigot for 1.5.1 myself), but just to be sure I'll create a new build.
     
  19. Offline

    The_Wrecker

    As you have probably noticed this plugin has not yet been updated. For now I have a few other things that keep me busy.

    I just can't update this anymore (at least at the moment). Maybe in a month or 2, things are different. If it still works (which I think it still does) you are free to use it, but keep above in mind. If you really really need an update you can always leave a message. I just cannot guarantee it.

    hence not abandoned, but sorta on hold ftm.
     
  20. Offline

    Alien12

    Can you change the system to assign different amounts of PWs to different groups more manageable?
    Would probably be easier to have that managed through permissions nodes rather than different files. Currently it's impossible to have a combination of groups have a particular PW number.
    If you had a moderator group with 20 PWs for example and a donator group with 30 PWs you can't have the moderator group have 30 PWs if they have a group combo of both with Moderator as their primary group.
     
  21. Offline

    The_Wrecker

    Thanks for the reply,

    I'll look into it. I can probably take the the highest entry from the multiple groups. I think you are right about it not working the way it should. I cannot remember testing with multiple groups like that.
     
  22. Offline

    The_Wrecker

    I'll try to do stuff tonight. I just fixed my laptop (I hope) which has the project.
     
  23. Offline

    The_Wrecker

    I've been working on my server. Instead of the code.
    I'm moving to a different server soon. Right now I'm moving files around.
     
  24. Offline

    The_Wrecker

  25. Offline

    The_Wrecker

    Have been thinking howto switch over to UUID. The UUID will somehow end up in the player's filename. I'm thinking about a format like this: <UUID>Player name.

    This way the file is unique for every player. When a player logs in the system searches for a file with the UUID for that player. If it is not there, It'll pick up the player name and switch it over to the above format(if file does not contain UUID). Next time a player with the same name, but different UUID comes online the system creates a new file (the other one is converted already). If the original player changed his name and logs in, it'll find the file based on the UUID and updates the name.

    This will make sure the offline system still works when using player names (who remembers UUID' s ?).
     
  26. Offline

    The_Wrecker

    My server is down at the moment. Don't worry. I'll fix it in a few days. Firewall is not correctly setup atm.
     
  27. Offline

    The_Wrecker

    As anyone might be aware of the current predicament the Bukkit project is in. I started thinking about the future of my plug-in as well unfortunately.

    I don't see much sense in continuing the development as is. I've been looking at forge (Sponge). Haven't tried it yet though.

    I think Bukkit has stalled in its tracks. Maybe Mojang/Microsoft will pick it up again. We'll see. Only thing we can do is wait and see what'll happen.
     
  28. Offline

    Combomuffin69

    The_Wrecker The current issues with minecraft alone and the talk of minecraft being sold to a company who owns the xbox I don't think pc servers will be the main issue for microsoft unfortunely but good point ;) We can only hope
     

Share This Page