Inactive [TP] xWarp v3.1.7 - MyWarp fork (w/ prices, economy, visibility) [1.2.5-R1.0]

Discussion in 'Inactive/Unsupported Plugins' started by xZise, Jan 17, 2011.

  1. Offline

    xZise

    Hello everyone,
    I forked the MyWarp project and added some functionality. In basic it is the same as the MyWarp.

    Now on BukkitDev
    This plugin is already on BukkitDev. I will transfer this post to BukkitDev.

    Download
    3.1.7 + marker (Tested: 1.2.5-R1.0)
    3.1.7 (Tested: 1.2.5-R1.0)
    2.12.0 (Tested: cb819, Should run ≥ cb691)
    All downloads

    The versions for other builds are normally only compatibly updates. So they don't provide other features. This means version “a-cb684” is the same (in basic) as “a-cb556” or simply “a”.
    Notice: With version 2.3.0, 2.6.0, 2.8.0, 2.9.0, 3.0.0 (or later) I changed the database layout. Previous versions of xWarp couldn't read this database. So backup it for sure.

    Ressources

    Changes
    Changelog moved to BukkitDev. The full changelog is still on github.

    Prices
    Since 2.8.0 it is possible to use prices for warp and creation. It uses the Permissions nodes to change define basic prices. Also it is possible to define a price for each warp. At the moment iConomy version 4 and 5, Essentials Economy (at least Dev build 2.2.104) and BOSEconomy supported.
    Global/Public/Private warps
    With the Version 2.0.0 beta 13 I introduce the new state of global warps. Every user can create warps for its own (public/private) like before and hasn't be aware of already existing one's from others. So Player “A” could create a warp named “foo” and another Player “B” could also create a warp called “foo”. Now to access these warps you have to specify which warp do you want to use.
    Therefore I added a parameter to specify the owner of the warp. To warp to the “foo” warp of Player “A” you simply type:
    /warp foo A
    You could exchange the second parameter (= A) with a B to warp to B's warp “foo”.
    Now to shorten the warps you could globalize a warp with
    /warp global <name> <owner>
    Now you don't have to add the owner of the warp. For example if somebody globalized the warp “foo” of player “A” you now can simply type:
    /warp foo
    There is one rule: “If you don't define the owner it searches the global warps.”
    But a global warp also has a owner (in our case Player “A”) so you also define the owner.
    So there is one major change: If your warp contains a space you have to escape it, otherwise it will guess the second part as a owner (to escape see the section above).
    For further information visit the wiki.
    Sign Warps
    Creating a sign warp is really easy. You have 3 layouts: MyWarp, Single Line and xWarp.
    In MyWarp your sign has two lines. In the first place only “MyWarp” and in the second the name of the warp. This works only if the warp is in the global map.
    The “Single Line” layout only needs a line with “Warp: <name>”. If there are more than one lines with this layout on one sign it won't work. The colon is optional, the W could be lowercase and the spaces between “Warp:” and the name have to be at least one.
    With xWarp layout you could place “xWarp” in the first line (case-insensitive) or “Warp”/“warp” and optional a colon.
    In the second line is the name of the warp and in the third the owner (optional)
    Upcoming changes
    Backups? (unknown)
    If possible I maybe make it possible to backup the warps with others backup plugins. It is only an idea at a moment, but maybe sometimes xWarp supports this.
    tkelly's suggestion system (Suspended)
    tkelly created a system, that can get a warp similar named if you didn't spell it right.

    Fabian aka xZise
     
    RazorFlint, Taranis01 and uitology like this.
  2. Offline

    xZise

    Okay that is interesting. I will look if I can find the reason. And is it possible to get the NPE's stacktrace? Maybe I only clad the problem.

    Also it could help, if you try “/warp delete test <your name>”, because if you don't reload the database, the warp test isn't in the global list. One nice rule is: If the warp is not global also define the creator. This should work.

    Fabian
    --- merged: Feb 13, 2011 12:51 AM ---
    Okay I now maybe fixed your problem. Can it be that only the “help” don't worked (if you follow the rule)? Thanks for the bug report!

    Fabian
     

    Attached Files:

  3. Offline

    jaybud4

    /warp delete test Jay
    Code:
    0=/warp
    1=delete
    2=test
    3=Jay
    
    [​IMG]

    EDIT2: Same error on deletion with the above binary, and "Invalid /warp help page." on /warp help
     
  4. Offline

    xZise

    Okay the “/warp help” error should be fixed (see below). But the NPE is strange. Because this NPE means: The plugin couldn't delete this warp from your personal warp list, because your personal warp list doesn't exists. But this is not true, because there has to be at least one warp (test) on this list. But I don't know how to determine, why this list doesn't exists.

    Your steps are: Use an empty database → Create a (private?) warp. → Delete it then. ? No server restart between?

    Fabian
    --- merged: Feb 13, 2011 1:29 AM ---
    Ah I found it! Thank you again... It will be fixed in the next patch.

    Fabian
    --- merged: Feb 13, 2011 2:22 PM ---
    Hello,
    I uploaded the newest version (2.2.3) which fixes the bugs from yesterday. It doesn't uses the updated database scheme! So everybody who downloaded 2.3.0 please use the backup or don't “upgrade”/“downgrade”.

    I also started a new branch (multiverse) with my tries. At the moment I'm stuck with the “player moved wrongly”-problem (see OP). But if I get this fixed I will upload a new version with the new database scheme.

    At the moment I try to use my new command system (is already uploaded as the branch new_commands). Then I will possible add more functions. For example list all global/public/private warp of everyone/a person. Also a generic lister will come (so if search is to long it will make a list like /warp list).

    But most of this is command related and I decided that I don't change to much with the commands until I use the new system.

    Fabian
     
  5. Offline

    jaybud4

    The "Player moved wrongly!" used to happen whenever somebody warped in old hMod.
    At that time, it was a warning, not an error -- is it actually preventing your warps from working?
    I don't think it's possible to warp directly to coordinates on a different world yet, as SimpleWarp, which fully supports worlds, requires that you try to warp to a point on different worlds by inputting the command twice, once to get to the spawn there, once to go to where you wanted.

    Actually, I think SimpleWarp gets that "moved wrongly!" message too. It's just a warning.
    The fact that you're not ending up where you meant to be (the first time) is the hook not supporting direct point-to-point across worlds.
     
  6. Offline

    xZise

    Hmmm it's a warning, but then my player is moved to the spawn (of the world it seems?). It is no problem, but until then it will not be possible to warps between worlds.

    But as I'm typing this I recognized that this is already useful. I thought it is because of this problem not useful, because everything else could done before. But it won't save the world. So I will bring an update soon. The new commands idea seems to working pretty good, so this will also coming soon!

    Fabian
     
  7. Offline

    Fuzzylightning

    Thank you SO much for the update! Multiverse support is exactly what we really need right now! Autocomplete is also a fantastic feature we've really missed when we upgraded to xwarp too :D thanks!

    Edit: Funny though, I swear it's still running the last xWarp. Version definitely states 2.2.3. We're not seeing any autocompletion, name renaming commands, more detailed warp not found messages OR better MultiVerse support. :(
     
  8. Offline

    xZise

    Hmmm, then your update don't worked. I have downloaded this file, and in the plugin.yml is the version “2.3.0” and it seems also that this is the newest version (SubCommand.class and the directory de/xzise/xwarp/commands exists).

    Fabian
     
  9. Offline

    Dreggor

    Once multiworld warping works I will be a happy camper.
     
  10. Offline

    xZise

    Okay today I updated xWarp so now you could execute commands directly in the console. Because of the “too simple” parser in bukkit, the commands inside the console couldn't use my parser. Hopefully they will integrate this soon. Because of this missing feature I renamed the command temporally to “xwarp”, otherwise it will overwrite my other commands parser.

    Fabian

    PS: I don't tested Multiverse very much, but does it working as intended? Also after restarts of the server?
     
  11. Offline

    CuZnDragon

    Is there a way to delete warps? I don't see a command listed. Also is the an complete listing of the commands as the /warp help and this page don't match.

    CuZnDragon
     
  12. Offline

    Kaseki

    xZise: I'm using CraftBukkit build 326 and xWarp version 2.4.2
    No matter what I do, I can't get /warp delete, /warp private, /warp public. Most of the commands just give me an error similar to this:

    Feb 16, 2011 8:47:42 PM org.bukkit.plugin.SimplePluginManager callEvent
    SEVERE: Could not pass event PLAYER_COMMAND to xWarp
    java.lang.ArrayIndexOutOfBoundsException: 2
    at de.xzise.xwarp.commands.WarpCommand.internalExecute(WarpCommand.java:
    40)
    at de.xzise.xwarp.commands.SubCommand.execute(SubCommand.java:55)
    at de.xzise.xwarp.CommandMap.executeCommand(CommandMap.java:78)
    at me.taylorkelly.mywarp.WMPlayerListener.onPlayerCommand(WMPlayerListen
    er.java:41)
    at org.bukkit.plugin.java.JavaPluginLoader$5.execute(JavaPluginLoader.ja
    va:144)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:60)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:214)
    at net.minecraft.server.NetServerHandler.c(NetServerHandler.java:616)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:589)
    at net.minecraft.server.Packet3Chat.a(SourceFile:24)
    at net.minecraft.server.NetworkManager.a(SourceFile:232)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:74)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:104)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:317)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:232)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:512)

    Other plugins I'm running are:
    informant
    Minecart Mania Core
    MultiVerse
    Permissions
    TreeHugger
     
  13. Offline

    xZise

    This is because in the OP I only provide new functionality/commands compared to MyWarp. But I will fix this today (but I have to sleep ;) ). The list in the wiki should list most of the commands.

    And as Kaseki told most of the commands don't working correctly. If you define a creator it should work with 2.4.2. But I was working on this fix already and upload this as version 2.4.3.

    Fabian
     
  14. Offline

    Kaseki

    Great! That fixed everything, but now /warp list [page] is broken.

    "There are only -1 pages of warps"
    --- merged: Feb 17, 2011 9:57 PM ---
    Correction, I don't think delete is actually working right. If I delete a warp and try to create it again, it says it already exists. Deleting a newly created warp also does not work unless you specify a username that it belongs to. Something's seriously broken with this plugin.
     
  15. Offline

    xZise

    On my dev build it is working so wait for next update.

    Who's warp did you delete? Maybe you don't delete your's.

    Yep it's working as intended: A newly created warp is not global (unless you globalize it via createg/+g or global commands). So you must specify the username. In some build I will make it more restricted as I see that there is a lot of confusion!

    So if you create a warp it will be saved as personal warp. These warps needs a creator (for update, delete etc.). You could make this warp global with “/warp global <name> [creator]” or create directly a global warp with “/warp +g <name>” or “/warp createg <name>”. Then the name is globally unique so a “/warp delete <name>” always knows which warp you meant.
    At the moment I load also non global warps into the global list (if there exists no global warp with the same name). So some warps could accessed as global warps, also if they aren't global.

    So my way to make it more clear is at first that I don't load non global warps as global warps. Then you will always get a error message if you don't specify the creator if the warp is non global. Second I will implement a system, where a non global warp can be accessed as a global warp is the name is unique. If somebody else creates a new warp with the same name the previous non global warp can't be accessed via global commands.

    Fabian
     
  16. Offline

    Kaseki

    Ohh, I get it. Thanks.
     
  17. Offline

    jaybud4

    2.4.3, CB 339.
    Deletion does not work at all.

    States success, but warp is still in list, and still warpable.
    Minor: "Global warp 'whatever' doesn't exists."
     
  18. Offline

    Kaseki

    Actually yeah. Upon further testing:
    I can create a warp with /warp create test
    and then I delete it with /warp delete test Kaseki

    I can still /warp test Kaseki
    Even after the notification that it was deleted
    --- merged: Feb 18, 2011 12:34 AM ---
    Reloading the database with /warp reload seems to fix it.
    --- merged: Feb 18, 2011 12:35 AM ---
    So it must be getting cleared from the database, but not the warps in memory
     
  19. Offline

    xZise

    Thanks for the bug report! I will check this in my code.

    Fabian
     
  20. Offline

    strupan

    how do you warp to private warps?

    i am admin and i used /warp createp vault person1
    then i ttell him to use /warp vault or what?
     
  21. Offline

    bLazem

    We got the same problem trying to delete warps. Love the plugin btw, keep up the good work hope to see an update soon!!
     
  22. Offline

    xZise

    Okay now the deletion should work (on my server it worked). Download in the OP.

    @strupan: Something like that. At the moment you couldn't create a warp and give it to someone other. So you have to do:
    Code:
    /warp createp vault
    /warp give vault <your nickname> person1
    But your suggestion (“/warp create <name> [owner]”) will maybe come in some update.

    Fabian
     
  23. Offline

    strupan

    how do you warp to your own private one warps?

    i gave the warp to him and he said he got it but when he use /warp vault1 or /warp to vault1 it doesn't excist, the vault.

    i try making myself a private vault and when i try to warp to it, it said no existing warp ?
     
  24. Offline

    xZise

    Yep, because a private warp is not global, so you have to add the creator like:
    “/warp vault1 strupan”

    Actually it should say that there exists no global warp.

    Fabian
     
  25. Offline

    strupan

    also, how do i delete warps? doesnt seem to work on mine still ; /

    /warp delete <name> no luck, im using 2.4.5
     
  26. Offline

    xZise

    If the warp is not global add the creator.

    Use /warp info <name> <creator> to check if the warp is global.

    One tip: Add the creator. Then it will always work.

    Fabian
     
  27. Offline

    CuZnDragon

    I am using 2.4.5 and when get the warp list is has 1 of 3 at the top. When trying to list the other pages I get the error "There are only -1 pages of warps"
     
  28. Offline

    jaybud4

    It would make sense that, if only one warp with a given name exists, all operations should assume that is the warp meant, rather then still requiring the username. If the owner of a warp doesn't specify a username, IE another's warp by the same name, it should assume they mean their own warp, unless a global warp by that name exists, in which case it should assume that global warp.
    It doesn't work the same in all circumstances like it does now, but these are some serious logic flaws that would make more sense to be rectified.
     
  29. Offline

    CuZnDragon

    Is there an issue with xwarp and 1/2 stone pavers? We put down a square of 9 pavers and then set a warp on top of it. Then later when we do a warp to that location we either are 1/2 in and 1/2 out of the pavers and have to jump to get above them to move or we wind up in the ground and usually die unless we can successfully warp to another location.
     
  30. Offline

    strupan

    i fixed it by /warp reload lol
    turns out i need to reload it everytime
     
  31. Offline

    jaybud4

    Confirming that passing a parameter (legend works fine, but any numbers return -1) to the list function is broken.
     

Share This Page