[INACTIVE][ADMN/TP] XcraftGate v0.9.1 - Multiworldmanager/-teleporter [1060-1185]

Discussion in 'Inactive/Unsupported Plugins' started by Engelier, Jun 4, 2011.

  1. Offline

    Engelier

    XcraftGate - Version: v0.9.1

    XcraftGate started as a replacement for EpicGates and it's successor RealTeleporter. In the meantime it has grown to a complete worldmanagement solution.

    Features:
    • Create/Delete new worlds (such as Nether, or a specific world for mining, or ...)
    • Set borders for your worlds, so nobody can explore beyond a specific point
    • Create Teleporters between your worlds or to/from your points of interest.
    • Limit the amount of creature spawns on your worlds
    • Completely deny monster or animal spawns on your worlds
    • Allow/Deny PvP on your worlds
    • Allow/Deny weather changes on your worlds


    Commands:
    • /gworld - World management tool
      Code:
      /gworld list - lists your active worlds
      /gworld info <worldname> - displays some basic info about a world
      /gworld listplayers <worldname> - lists the players currently running around in that world
      /gworld create <worldname> [environment [seed]] - creates a new world on your server, <environment> may be "normal", "nether" or "skylands". defaults to "normal" if left blank
      /gworld listenv - lists all available environments/chunkgenerators usable with /gworld create
      /gworld delete <worldname> - unloads a world (and deletes it from the plugin's database)
      /gworld load <wprödname> - loads a given world
      /gworld unload <worldname> - unloads a given world
      /gworld setsticky <worldname> - controls if a world will be automatically loaded/unloaded with dynamic world loading enabled
      /gworld keepspawninmemory <worldname> - controls if a world's spawn is always kept in memory
      /gworld warpto <worldname> - teleports you to the world <name>
      /gworld setborder <worldname> <#> - sets the border for world <name> to <#> (denies exploration beyond x/z +/- <#>)
      /gworld setcreaturelimit <worldname> <#> - limits creature spawns to a maximum of <#> creatures for the world
      /gworld allowanimals <worldname> <true|false> - Allows or denys animal spawns on world <name>
      /gworld allowmonsters <worldname> <true|false> - Allows or denys monster spawns on world <name>
      /gworld suppresshealthregain <worldname> <true|false> - Suppresses automatic health regaining when allowmonsters is set to false
      /gworld allowpvp <worldname> <true|false> - Allows or denys PvP combat on world <name>
      /gworld allowweatherchange <worldname> <true|false> - Allows or denys weather to change on world <name>
      /gworld setweather <worldname> <sun|storm> - Sets the current weather for world <name> (ignores allowWeatherChange setting)
      /gworld timefrozen <worldname> <true|false> - (Un)freezes the current time on world <name>
      /gworld settime <worldname> <sunrise|noon|sunset|midnight> - Sets the current time for world <name> (also sets time for timefrozen)
      
    • /gate - Gate management tool
      Code:
      /gate create <gatename> - creates a new teleportation point at your current position - make sure you look at the direction your users should look at, when they ARRIVE at this point
      /gate move <gatename> - moves a gates location to your current position
      /gate delete <gatename> - deletes a teleportation point
      /gate link <gatename1> <gatename2> - creates a link from <name1> to <name2>, so when you step on <name1> you will be teleported to <name2>
      /gate loop <gatename1> <gatename2> - same as /gate link, but for both ways
      /gate unlink <gatename> - deletes the destination for <name1>
      /gate unloop <gatename1> <gatename2> - deletes a loop between the two gates (if it exists)
      /gate info <gatename> - displays some basic info about a gate
      /gate list - lists all gates in all worlds in alphabetical order
      /gate listnear [radius] - lists all gates near you (radius defaults to 10, BE CAREFUL WITH BIG NUMBERS!)
      /gate listsolo - lists all gates without a source or destination
      /gate warp <gatename> - teleports you to the given teleportation point
      /gate reload - reloads all gates from gates.yml
      


    Video: HowTo create gates



    Permissions
    XcraftGate.* - permission to use everything this plugin provides

    XcraftGate.use.* - permission to use all gates
    XcraftGate.use.<gatename> - permission to use a gate

    XcraftGate.gate - access to /gate
    XcraftGate.gate.* - access to all /gate commands
    XcraftGate.gate.create - /gate create, /gate move
    XcraftGate.gate.link - /gate link, /gate loop
    XcraftGate.gate.unlink - /gate unlink, /gate unloop
    XcraftGate.gate.delete - /gate delete
    XcraftGate.gate.info - /gate listsolo, /gate list, /gate listnear, /gate info
    XcraftGate.gate.warp - /gate warp
    XcraftGate.gate.reload - /gate reload

    XcraftGate.world - access to /gworld
    XcraftGate.world.* - access to all /gworld commands
    XcraftGate.world.create - /gworld create
    XcraftGate.world.delete - /gworld delete
    XcraftGate.world.warp - /gworld warpto
    XcraftGate.world.setborder - /gworld setborder
    XcraftGate.world.setcreaturelimit - /gworld setcreaturelimit, /gworld allowanimals, /gworld allowmonsters, /gworld suppresshealthregain
    XcraftGate.world.pvp - /gworld allowpvp
    XcraftGate.world.weather - /gworld allowweatherchange, /gworld setweather
    XcraftGate.world.time - /gworld settime, /gworld timefrozen
    XcraftGate.world.info - /gworld info, /gworld list

    If you don't use a permissions plugin, only OPs are allowed to use those commands and all users are allowed to use all gates.


    Downloads:
    Stable Version (use this if unsure): XcraftGate.jar (wget friendly)

    Some people are repeatedly asking for development versions, so here it is:
    Development Version: XcraftGate-Dev.jar (wget friendly)
    I WILL NOT SUPPORT THE DEVELOPMENT VERSION! USE THIS AT YOUR OWN RISK AND DON'T COME CRYING IF IT EATS YOUR KITTEN BABYS!
    Development Changelog (open)

    • implemented chunk resending on teleport - should fix death/lag on arrival
    • rewrote plugin management
    • added Register support
    • added /gate rename <gate> <newname>
    • added /gate settoll <gate> <amount> - set amount of money to be taken from the users account when he uses the gate
    • added /gate setdenysilent <gate> <true|false> - don't print error messages when gate usage is denied by permission or not enough money
    • added /gworld suppresshunger - prevents foodbar depletion on the given world
    • added /gworld setspawn - sets the spawn to your current location
    • added /gworld setgamemode <world> <survival|creative> - sets gamemode for the world
    • added /gworld setdifficulty <world> <peaceful|easy|normal|hard> - sets difficulty for the world
    • added /gworld setannouncedeath <world> <true|false> - set if player deaths in the given world should be broadcasted
    • /gworld suppresshealthregain now also affects health regaining by saturation
    • new worlds now obey the spawn-monsters and spawn-animals settings in your server.properties
    • "fixed" bukkit leaking tears when not using SuperPerms



    Installation:
    Put the XcraftGate.jar into your plugins folder and reload/restart your server. All files will be created automatically.

    If you already have some extra worlds add them with /gworld create <name> <environment>. If there's already a world with the same name in your server's folder, it won't be freshly generated, but just get loaded.

    Do not edit the config files manually, as your changes will get overwritten on reload/restart. Use the ingame commands. Tell me when there's an option missing.


    FAQ:
    Is there a way I can clear the inventory of anyone entering a specific world? (open)

    Use MultiInv.

    Can we have something like /gworld allowflying? (open)

    No. This is a global setting controlled by craftbukkit. Plugins are not able to change that.

    How do I allow my users to use all gates? (open)

    Add the following permission to your users: XcraftGate.use.*


    Source Code:
    github (Licence: GPLv3)


    Donations:

    I put a lot of work into XcraftGate and intend to do so in the future. If you're able to efford some EUR to motivate me further, I'd really appreciate it :)
    Note: For sure donating is purely optional! XcraftGate is released under the terms of GPLv3, so you have (and will always have) the freedom to use, study, share and improve it as you like!
    [​IMG]


    Changelog:
    Version 0.9.1 (CB1060+)
    • fixed NPE in /gate listsolo
    • changed the way gates teleport players - should fix spawning to high
    Version 0.9 (CB1060)
    • enabled gworld-commands (except "warpto") to be used from the console
    • added support for SuperPerms
    • implemented dynamic world loading - on startup only your default
      world(s) will get loaded. Any other world will be loaded as soon as a
      player tries to access that world and will be unloaded when no player is
      active in that world for 5min. Disabled by default. This can be enabled/tweaked in the config.yml
      Please be aware of this bug when playing around with this feature.
    • added /gworld load
    • added /gworld unload
    • added /gworld setsticky (controls if a world will be automatically loaded/unloaded with dynamic world loading enabled)
    • added /gworld keepspawninmemory
    • implemented custom chunkgenerators (referred to as additional "environments") - currently available: flatlands, island, hillvalley
    • implemented getDefaultChunkGenerator(), enabling craftbukkit to use the custom ChunkGenerators for your default world(s)
      Example (open)

      in your bukkit.yml:
      Code:
         worlds:
             worldname:
                 generator: XcraftGate:FLATLANDS
         
    • added /gworld listenv - shows available environments
    • new worlds now obey the pvp-setting in server.properties
    Version 0.8
    • added seed argument to /gworld create
    • added /gate reload
    • added /gate move
    • added /gate info
    • added /gate list
    • added /gate listnear
    • added /gworld listplayers
    • added permissions for gates (XcraftGate.use.<gateName>)
    • worlds with active players cannot be deleted anymore
    • /gworld info now shows the environment
    • improved world detection
    • probably fixed ConcurrentModificationExceptions
    • probably fixed off-gate spawning (corresponding gates have to be recreated)
    • fixed animals always despawning on server reload/restart
    • another workaround for the PLAYER_MOVE event location bug (fixes players getting stuck when reaching the border)
    • fixed /gate warp triggering the target gate
    Older Changes (open)

    Version 0.7.2 (minimum CB-Version: 949, recommended: 953)
    • Update for CB953/MC1.7
    • Food working again as expected
    • added workaround for move-event location bug introduced in CB949 (fixes endless loops, again)
    Version 0.7.1
    • Great, seems using food also triggers the regain-health-event, so supresshealthregain will suppress that, too. Mostly fixed. Cookies still won't work. I've no better solution at the moment. :/
    Version 0.7 (minimum CB-Version: 896, recommended: 935)
    • added /gworld settime
    • added /gworld timefrozen
    • added /gworld suppresshealthregain - craftbukkit automagically let users regain health when allowmonsters is set to false. So we have to control this ourselfs.
      NOTE: XcraftGate automatically sets allowmonsters to false, when the creaturelimit is reached
    • removed "moved too quickly"-workaround
    • removed bukkit-bypass for spawncontrol
    • /gworld info now displays the world's seed
    • /gworld warpto now teleports you to the spawn location of the given world (no more searching for a safe spot in sky worlds)
    Version 0.6.2
    • made teleport check more restrictive (fixed endless loops)
    Version 0.6.1
    • fixed allowAnimals/-Monsters flag handling
    • added workaround for commands not being registered correctly by craftbukkit when being enabled by another plugin
    Version 0.6 (minimum CB-Version: 860)
    • rewrote world management - should fix most problems/inconsistencys
    • added /gworld allowpvp
    • added /gworld allowweatherchange
    • added /gworld setweather (ignores allowWeatherChange setting)
    • /gworld warpto now trys to find a save spot in a 64 block radius around the destination and denys teleport when unable to find one
    Version 0.5 (minimum CB-Version: 834)
    • check for creaturelimit regulary, instead on ENTITY_DEATH. Fixes creature counts dropping very low on low population servers
    • changes are now saved immediately, instead only in onDisable() (reload/restart)
    • added option to completely deny animals or monster spawns on a world
    • removed workaround for crossworld teleportation bug in CB818
    • unload world on /gworld delete
    • added support for SKYLANDS environment
    • complete permission nodes overhaul (s. above for the new permission nodes)
    Version 0.4.1
    • tweaked creatureLimit so the server doesn't try to spawn new creatures when the limit is reached (fixes "Can't keep up"-Spam)
    • typofix
    Version 0.4
    • added /gworld setcreaturelimit -- limits creature spawns
    • added /gworld info -- displays some basic info
    • border now defaults to 0 (disabled) instead of Integer.MAX_VALUE
    Version 0.3
    • public release
     
    regzand, Masterflapdrol and Rwembee like this.
  2. Offline

    TheDanidox

    nice plugin though
     
  3. Offline

    ShAd0w2kXX

    Hi there. I ran this on my bukkit server and had the following [SEVERE] errors pop up.
    2011-08-08 15:51:25 [INFO] [XcraftGate v0.8] hooked into Permissions 2.7.7
    2011-08-08 15:51:25 [INFO] [XcraftGate v0.8] by Engelier loaded.
    2011-08-08 15:51:25 [INFO] [XcraftGate v0.8] loaded world Hub (Environment: NORMAL, Seed: 6269213201568215087)
    2011-08-08 15:51:25 [INFO] [XcraftGate v0.8] loaded world Hub_nether (Environment: NETHER, Seed: 6269213201568215087)
    2011-08-08 15:51:25 [INFO] [XcraftGate v0.8] loaded world Shadow (Environment: NORMAL, Seed: -2482202978445987840)
    2011-08-08 15:51:25 [SEVERE] java.lang.NullPointerException
    2011-08-08 15:51:25 [SEVERE] at de.xcraft.engelier.XcraftGate.XcraftGate.loadWorlds(XcraftGate.java:210)
    2011-08-08 15:51:25 [SEVERE] at de.xcraft.engelier.XcraftGate.XcraftGate.onEnable(XcraftGate.java:96)
    2011-08-08 15:51:25 [SEVERE] at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:126)
    2011-08-08 15:51:25 [SEVERE] at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:878)
    2011-08-08 15:51:25 [SEVERE] at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:272)
    2011-08-08 15:51:25 [SEVERE] at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:162)
    2011-08-08 15:51:25 [SEVERE] at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:146)
    2011-08-08 15:51:25 [SEVERE] at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:284)
    2011-08-08 15:51:25 [SEVERE] at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:271)
    2011-08-08 15:51:25 [SEVERE] at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:148)
    2011-08-08 15:51:25 [SEVERE] at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    2011-08-08 15:51:25 [SEVERE] at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    2011-08-08 15:51:25 [INFO] [XcraftGate v0.8] loaded 1 gates

    And I'm curious as to what may be causing it, and if there's any way for me to fix it.

    EDIT: It doesn't seem to be causing any issues. Not sure what exactly it is.
    Also, is there a way I can clear the inventory of anyone entering a specific world?
     
  4. Offline

    Engelier

    I'm sorry. But I won't do a single player mod.

    XcraftGate won't interfere with any blocks in your world. There are more than enough protection plugins out there.

    You can place any blocks you like in your gates.


    Even if Spout would provide this ability, I won't use it. I don't like the idea to depend on other plugins, forcing the server owner to install x plugins just to use this one.


    The idea of this plugin is *not* to use signs :)


    Hrm. Good point. I'll see what I can do.


    Err ... yeah. Maybe later.

    Which permission plugin are you using? XcraftGate doesn't support SuperPerms, yet.


    XcraftGate.use.*


    This has been asked before. And still the answer is: Plugins cannot control this. It's a global setting in your server.properties which can't be altered and is enforced by craftbukkit.


    Please post your worlds.yml


    MultiInv
     
  5. Offline

    MarcJ

    Ah. Thanks for the update ;)
     
  6. Offline

    Engelier

    published development version

    NOTE: It's a DEVELOPMENT version! It WILL have bugs. It's NOT finished. USE WITH CARE! Let me know, how it works :)
     
  7. Offline

    Cosmic Break

    iconomy support would be awesome,
     
  8. Offline

    Vas

    Contradictory much?
    My point was making it so that if the portal's block it sits on is destroyed then the portal is dead OR make it so that the portal block can't die. Why would I want to create 100 regions to make all my portals protected?
     
  9. Offline

    uncovery

    these are two different issues. mine is about what happens when you are falling into the void, not about protecting the world against edits.
     
  10. Offline

    Engelier

    Because XcraftGate cannot know what's part of your portal and what's not. All it knows is "there is a single block and if someone steps on it I have to port him". What's around that block in what shape and what size is a total different story.

    So, if I would add that auto-protection, I'd do it in two different ways:
    a) find all solid blocks around that portblock. That would be pretty stupid.
    b) protect a fixed area around that block. That would be less stupid, but still ... as soon as you build a structure with a different size, the protection is either too big or too small. One could live with "too big", but when it's too small you'd have to protect it anyway by yourself and then we'd have two plugins interfering with each other about that protection.

    The only sane way to implement a feature like this would be to let you define a region that covers the whole portal structure. Perhaps with some flags who may enter, or if creepers are allowed to explode, or ... oh wait ...
     
  11. Offline

    Vas

    Ooorr. You can do my original idea which is.... Protect the single block under the portal. That's all. Nothing more.
    besides that, my portals tend to be 3x3x3. Not that it matters.
     
  12. Offline

    Hamad

    How to make flatlands, i tried but it came out SkyLAnds as normal world :(
     
  13. Offline

    Cosmic Break

    i made a skylands map with this plugin yet it never goes night, even when i set it to do so.

    one day it did but after that it never went night again.

    i actually want night in the skylands.
     
  14. Offline

    WhosDaMan

    I get this every time on start up:


     
  15. Offline

    Tuttu

    I had a Skylands world on my server and there was never night. I think that they are done like this.

    @Engelier : any screenshot of the new environment ?
     
  16. Offline

    Cosmic Break

    i made a skylands that turned night before with this plugin, maybe that was just a bug
     
  17. Offline

    Tuttu

    Weird ! I don't know. Let's wait an aswer by @Engelier. Maybe he knows what is right. ^^
     
  18. Offline

    Engelier

    Do you use the development version? If not: There is no flatlands.


    There is no night in skylands. It get's a little bit darker when it rains (you don't see the rain), but that's a known bug in vanilla minecraft.


    Please post your worlds.yml


    Nah. I'm not 100% satisfied, yet. Still working on it. But you can test it yourself, if you want. :)


    @all: I'm aware of the new RB. And I'm aware your users get teleported 2 Blocks below the target (and probably die there). This is already taken care of in 0.9.

    As of today 0.9 reached rc-Status. There are very likely still some bugs, but it should be usable. Please test and let me know.
     
  19. Is this compatible with Multiverse 2, anyone know? Epic Gates has broken at last with MV2, would like to know if it is useful to consider a switch.
     
  20. Offline

    Talonleuco

    Every single time my computer goes down because of a power blink or something similar(and the server is running,) the file for xcraftgate's world file blanks out when the server is restarted and I have to re configure every world that is connected except the home world. I have to re-add them, and re-configure them. using a back up file does no good at all. I'm not sure if there is a way to stop that from happening, if it's a bug, if its my computer being useless, or what, but I thought you would like to know about this potential issue. If there is a way to protect the file from kirking out that would be awesome, but if not I completely understand. incidentally since those worlds suddenly "don't exist" it frags all of the gates in those worlds which kind of sucks. Anyways, other than that one occasional problem, I really really love this plug-in! It's easily my favorite teleport/multi-world I've tried.
     
  21. Offline

    ctshiner

    oh - my god.

    I don't usually complain but can you PLEASE make your plugin stop deleting its own config files? I can't tell you how many times I've had to redo ALL of our gates (40+) because I forgot to disable this plugin before testing certain single worlds. If it can't find a gate, it just erases it. Config blank. Same with the world config.

    This plugin does not handle improper shutdowns well either, which are sometimes out of my control. The worlds.yml almost always gets overwritten when that happens, and hey guess what! When I load the server next, all the gates for the missing worlds get erased too.

    Otherwise, works great, really. This is just incredibly frustrating
     
  22. Offline

    Engelier

    @Talonleuco @ctshiner: World-, and Gate-Handling have been redone in v0.9. Please check out the development version and let me know.
     
  23. Offline

    Tuttu

    Is your Skyland working ?
    Mine is not. :(
     
  24. Offline

    Keri

    When using this plugin, a second world on our server is linked to the normal nether from our first world, is that right? I thought every world should have its own nether.
     
  25. Offline

    EMOberger

    It should but i am not sure if this plugin has that feature.
     
  26. Offline

    Tuttu

    Only one Nether is created for the default world. If you want more Nether worlds, create them with XCraftGate. But I'm not sure that the Nether gates won't let link to the "real" Nether, the one created for your default world. You will have to create XCraftGate portals instead.
     
  27. Offline

    Keri

    Yeah thank you, tried that and it works now.
     
  28. Offline

    nalesnik

    22.08 20:35:46 [Server] INFO java.lang.NullPointerException
    22.08 20:35:46 [Server] SEVERE Could not pass event PLAYER_MOVE to XcraftGate
     
  29. Offline

    Rwembee

    Check out cleanroomgen
     
  30. Offline

    Engelier

    or check out v0.9 -> /gworld create <name> flatlands
     
  31. Offline

    Hamad

    ok thanks :)
     

Share This Page