Pl3xGates
Description
This is a simple gate/portal type teleportation plugin. Just build a portal frame and stick a sign on the left side with some details (explained later). Right clicking the sign to select a destination gate. Walk through the gate and you will be teleported to the other gate you selected on the sign.
The sign layouts are simple. When creating a sign the first line is [gate] so the plugin knows you are attempting to make a gate. The second line is the name of this gate. The third line is the channel the gate is on.
Gates on the same channel can link to each other and will show up on the gate signs. Just right click on a gate sign to toggle through the other gates on the same channel. There can be more than 3 gates per channel, and the list on the signs will cycle through them all.
Please note that signs MUST go on the far left edge of the frame. Buttons can go anywhere on the frame
Requested here: http://forums.bukkit.org/threads/gates-sign-chooser.178825/
There are permissions to control who can create, destroy, change the destinations, and/or teleport.
Now with 100% more lava and portal blocks! As of v1.7 you can set any block as your portal filler. Water, lava, and portal seems to be the best options, but you can choose literally anything. Use solid blocks if you want to make one-way gates. ;)
If you have any questions about how it works dont hesitate to ask in the comments below.
Enjoy! ^_^
Commands
/pl3xgates (reload) View version info and/or reload config.yml from disk. (Aliases: gates)
/gateinfo Get info about a certain gate. (Right click sign after command) (Aliases: ginfo, gi)
Permissions
pl3xgates.create Allows player to create gates.
pl3xgates.create.remotes Allows player to create remote signs for gates.
pl3xgates.delete Allows player to delete gates.
pl3xgates.delete.remotes Allows player to delete remote signs for gates.
pl3xgates.destination Allows player to change destination of gates.
pl3xgates.teleport Allows player to teleport through gates.
pl3xgates.make Gives pl3xgates.create & pl3xgates.delete & pl3xgates.create.remotes & pl3xgates.delete.remotes
pl3xgates.use Gives pl3xgates.destination & pl3xgates.teleport
pl3xgates.command.* Gives pl3xgates.command.pl3xgates & pl3xgates.command.gateinfo
pl3xgates.admin Gives all permissions, plus gate and channel owner override rights
Default config.yml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | # Enable debug info in console debug-mode: false # Enable colors in console output color-logs: true # Enable sounds # All compatible sounds can be found in this list: http://jd.bukkit.org/rb/apidocs/org/bukkit/Sound.html play-sounds: true # Sound played at both gates when teleporting teleport-sound: SPLASH # Sound played at gates when activated (fills with water) activate-sound: SWIM # Sound played when selecting a destination destination-sound: FIRE_IGNITE # The tag for line 1 on the gate signs. Default is 'gate'. gate-sign-tag: 'gate' # Enable or disable the use of remote gate signs enable-remote-signs: true # The tag for line 1 on the remote signs. Default is 'remote'. remote-sign-tag: 'remote' # The style for gate names. Maximum of 4 characters. Anything longer will be cut off. # Note: Bug in Minecraft requires color codes to come BEFORE style codes or the style will not work. gate-name-style: '&1&l' # The style for destination names. Maximum of 2 characters. Anything longer will be cut off. # Note: Bug in Minecraft requires color codes to come BEFORE style codes or the style will not work. gate-destination-style: '&o' # Maximum number of frame blocks allowed per gate maximum-frame-blocks: 10 # Teleport minecarts through gates teleport-minecarts: true # Enable or disable filler effect for "always on" gates always-on-show-filler: true # The default filler if none specified on sign default-filler: STATIONARY_WATER # Allow buttons to activate/deactivate gates use-buttons: true # Number of seconds for gates to stay active when button its pressed remain-active-for: 10 # Allowed materials for gate frames frame-materials: - STONE - WOOD - OBSIDIAN - IRON_BLOCK |
config.yml for v1.7
Todo
- Add language file
- Perm nodes for filler blocks
- More optimization for better experience
- Allow mobs to travel through gates (not sure if I'm going to do this one, will create lots of lag)
Ability to ride horses through gatesAdded in v1.5Sounds!Added in v1.5Remote signs to control gatesAdded in v1.4Allow names to be reused (as long as not on same channel)Added in v1.3Owners of channels/gatesAdded in v1.3On/Off statesAdded in v1.3Check for valid frameAdded in v1.2Variable frame sizesAdded in v1.2Allow minecarts to travel through gatesAdded in v1.1
Have a suggestion? Comment below!
Known Issues
- TNTMinecarts lose their primed state when teleported. *
- FurnaceMinecarts lose their powered state when teleported. *
- Entities do not teleport through the gates unless riding a minecart.
- Entities on minecarts do not teleport to different worlds.
- Gates do not load on startup, sometimes. ✝
* No methods in the Bukkit API exist yet to fix both these issues. I could expose the NMS methods via reflection to fix them, however that would mean all future versions on this plugin will be CB version dependent and not future/past version compatible. Another possible solution is to add a dependency like BKCommonLib which has already exposed the NMS methods needed. I've decided to leave this as-is for now. At least until I get enough feedback that these fixes are actually even needed/wanted.
✝ This is due to the order Bukkit loads plugins on server startup. If you are using a plugin to control your worlds, then that plugin must load before Pl3xGates. You can manually do this yourself for v1.5 and below, all future versions will have this fix by default. Use WinRar (or 7zip, etc) to open the Pl3xGates.jar file and then open the plugin.yml in a text editor. The top few lines you need to add a "load" and a "softdepend" to it. Here is what the first few lines should look like with the fix (lines 6 & 7) applied: http://pastebin.com/maGeUT4F Just save this back to the .jar file and restart your server.
Videos
Metrics
This plugin uses metrics to collect stats! It only collect basic things such as version type, and players online. If you want to see everything, click on the graph. Go into /plugins/PluginMetrics/config.yml to disable stat collecting if you wish.
@BillyGalbreath
Ok, I am using Multiverse and I have a portal going to another world for minigames. After a while the portals just stop working. It says there is no destination and does nothing. The water stays on the portal and the sign stays but on the sign there is no destination on it and I have to re-link them. also I am not using any buttons. Also there are no errors in the log.
Uploaded v1.7 Jenkins Build #7
Fixed: none
Added:
Other:
@Derekd98
Not sure exactly what you mean. What do you mean it just stops working? It is an always on gate, or is there an activator button attached? Are there any errors in the log when it happens?
I use these gates between worlds all the time. I have a main big "stargate" thing in my city to allow travel between world for all my users. I also have a private gate system setup with minecarts that allows me to mine in one world and send what I dig up to another world where my auto sorter storage room is.
The only problem with gates not working was with minecarts and its not really a gate issue. The cart just stops when it gets into an unloaded chunk. I'm still thinking of how I can combat this, but I ultimately think a fix for that would be beyond the scope of this project. Maybe another project that keeps chunks loaded by placing a sign is in the works for that.
But anyways, I have no idea what your problem even is. I need more details so I can recreate the scenario and see it myself.
@BillyGalbreath
Ok thanks. Also, when i have a portal connected with another portal in another world after a while the portal like cancels out and stops working.... Any idea???
@BillyGalbreath
I solved the problem was not so serious
@TrollnaAula
I'm running Pl3xGates and ChestShop on my main server without any problems. Can you be more specific with your issue?
I found a bug with Pl3xGates and ChestShop. It's not possible to create a gate or a remote.
Test for yourself
I'm Brazilian, sorry for my bad english
Uploaded v1.6
Fixed:
Added: none
Not really a bug, but the sound range for portal usage is really loud. People can hear it far far away. Had too disable it for now.
Is it possible to reduce the range or simply the sound? Possibly make it at the same level as the minecart sounds.
@BillyGalbreath
Ah ok, thats fine. the plugin is good as it is :)
BTW I submitted a ticket about gates.yml does not get loaded correctly on start/restart
@Derekd98
http://jd.bukkit.org/rb/apidocs/org/bukkit/Material.html - Not all of these will work. Only the blocks will. Will have to use common sense to know which are which ;)
@Waester
The frame has to be solid, meaning all the same type. So, even with the default 4 blocktypes in the config you can't literally use all 4 in 1 frame.
"No methods in the Bukkit API exist yet to fix both these issues. I could expose the NMS methods via reflection to fix them"
Just wanna wish that you never touch CB or BKCommonLib and just keep it too bukkit API. Much simpler and works with MCPC+ much better.
Just my vote :)
Because I used to use CreativeGates but it didnt work well with other bukkit ports, like MCPC+ But with your clean use of Bukkit API solved everything for me and even made my portal experience better. Thumbs up hundred times :)
EDIT: Is it possible to add in "block requirement"? For example. if you define in the config that you need 2 blocks of "Diamond Block" then you will atleast need 2 diamond blocks in the portal frame for it to function. Without using CB or BKCommonLib too add this function ofc.
Otherwise this plugin is awesome as it is :)
Its hard to add blocks to the config because they have to be a specific word. If you could make a list for us that would be great! This also is the best teleportation plugin I have ever used! GREAT WORK!!! :)
@RyujinKiryuu
That is indeed some strange behavior. Idk if an enderman would take the whole frame.. But it is definitely possible. I havent run across this in my testing or on my live server.
The error about modification just means the plugin thinks the sign was still there and you were trying to modify it. You can fix this by either reloading the plugin, restarting the server. If it still happens put an empty sign and pop it off to force the plugin to remove that gate from memory.
The only way I can reproduce that error is if I use WorldEdit to remove the sign. The gates still function for me even without the frames (although it looks weird because of the water effect).
Edit: On my server I use WorldGuard to protect my gates, even from endermen. I also use LWC to protect the signs, but I believe WorldGaurd can do that as well.
@BillyGalbreath
Thanks works grate, but for one small bug.
Its happened only once so far, but I tried going though my portal and it wouldn't take me and it gave no errors.... I fly over to the other portal and find that the portal frame is gone, with the water just floating there, however when I put the frame back in place and replace the sign it says "Modification of this gate is not allowed!!"
Then goes back to acting like it should like nothing happend...
Would submit a ticket, but I don't know how to word that one in a ticket....
Will let you know if it happens again.
Edit: wait.... there is an endermen near it.... could the enderman have taken the portal frame?.... if so I will start laughing....
Uploaded v1.5
Fixed:
Added:
Uploaded v1.4
Fixed:
Added:
Uploaded v1.3
Fixed:
Added:
Other:
@spajkers
Just give everyone (the default group) the pl3xgates.teleport and pl3xgates.destination permission nodes so they can use the gates and be able to select the destinations.
Work's fine nice job;]
can u add "free for all" option... for now other players cant use my gates (dot have permissions) ;/.