TravelGates Portal Signs


Teleportation System & Nether Portals Substitution

Latest version: v1.10.18 [1.6.4-R0.1]

Watch the source code of TravelGates on GitHub.


This plugin intends to set teleporting destinations where player can be teleported if he is standing on anonther destination. To split destinations as if they were on separated servers, player's inventory can be cleared. The player is facing the same direction, after being teleported, as the OP when the destination is created. The teleportation works through different worlds too. You can also use Nether Portals to be teleported. Just add a "TravelGates" Sign on the Nether Portal, facing the player's head. Teleportation blocks also allow you to be teleported around an existing destination. You can also manage additional worlds.

Check this page for more detailed information about the teleportation system.

This plugin is multilangual. There are only 2 languages (English and French) provided with the plugin. You can modify the messages file or create your own in another language.

Compatibility with Bukkit: This plugin must be used with Craftbukkit version 1.1-Rx. Previous versions won't work.

Video tutorials

How to setup this plugin from scratch

  1. Download the latest build:, where x.x.x is the latest version
  2. Extract this archive. You have two files : TravelGates-x.x.x.jar and
  3. Extract the archive
  4. Create a directory named "TravelGates" in your "plugins" directory, inside the directory of your Minecraft server (optionnal)
  5. Move the TravelGates-x.x.x.jar file in the "plugins" directory
  6. Inside the resources directory you have created by extracting the previous archive, move the travelgates.conf file in the "TravelGates" directory
  7. Repeat the previous step with the language file of your choice. You can find samples of language files in the "resources\messages" directory. (feel free to update existing files or make your own)
  8. Configure the configuration file as it is described in the Readme (page or file) or check the next section below with all configuration paramaters.
  9. Restart the Minecraft server
  10. Enjoy !

Please see the README page for more information. You can also go to the english language sample file page to configure the ingame messages.

Check the Permissions page for more information about permissions nodes used in this plugin. If you want to use permissions but don't know how to set them, check this Bukkit wiki page. Otherwise, just disable permissions in the configuration of this plugin and op/non-op conditions will apply (users permissions will be given to all non-op players and admins permissions only for op players).

If you want to see an example of the default configuration file, click here !

Configuration parameters

  • language: set the language used to display messages to players. Has to be the same value as the message file name in the TravelGates directory. (Example : language=en -> messages_en.lang
  • usepermissions: (true/false) use PermissionsBukkit or PermissionsEx or Permissions 2x/3x or Native Bukkit Permissions (in that order, depending on what plugin you have)
  • teleportwithsign: (true/false) enable the sign to teleport by clicking on it
  • teleportwithportal: (true/false) enable Nether Portals substitution
  • debug: (true/false) used to enable the debug mode when the plugin is loading.
  • clearallinventory: (true/false) used to clear the armor content when the "i" option is set to a destination
  • protectadmininventory: (true/false) used to protect admin inventory when the clear inventory option is enabled
  • tpblock: (type[,data]/disabled) used to select the teleport block. Type is for a material (example "wool") and data is for the wool color (ex: "lime") or the tree species (ex: "birch"). You can use the numerical data or its name.

Plugin usage

Main command is "/travelgates" but you can use the alias "/tg".
All commands and destinations are case insensitive.

See the Examples page to see examples of the most "complicated" commands this plugin offers.

Admin commands:
  • /tg {destination} : teleport player
  • /tg add {destination} [-options] : add a destination.
  • /tg del {destination} : delete a destination.
  • /tg save : force to save all destinations
  • /tg debug : toggle the debug mode
  • /tg dtm : display or not the teleport messages
  • /tg options {destination} -[options] : update destination's options. Tthe "-" character is mandatory.
  • /tg update {destination} -[options] : same as /tg options
  • /tg worlds ({world}|*) [-lu] [world_type]: display available loaded worlds with no options. World name use the same pattern as destinations. Wildcard * can be used to display all worlds in the server directory. Use options [-lu] to load or unload a world. Without options, it will display the state of the world (loaded or unloaded). With the l option is used, you can add the world type : (normal|nether|end), default is normal. You can't unload worlds which have still some players.
  • /tg config: display current configuration
  • /tg perms : toggle the permissions activation (reload permissions configuration if you enable them)
  • /tg signtp : toggle the usage of sign to teleport
  • /tg portaltp : toggle the usage of the nether portal to teleport
  • /tg clearallinv : toggle the state of the clear all inventory option
  • /tg clearallinv : toggle the state of the protect admin inventory option
  • /tg autosave : toggle the auto save
  • /tg tpblock : modify or toggle the tp block
  • /tg {destination} [-f] : teleport player to the destination if he is standing on an existing location. If using -f, the teleportation can be done from everywhere.
Users commands:
  • /tg list : display all destinations available to the player.
  • /tg details {destination} : display all destinations, their locations and options to the player. You can specify a destination to see its own details.
  • /tg restrict {destination} : display allowed destinations from the given destination
  • /tg loc {destination} : display location of the destination.
  • /tg name : display the name of the location where the player is standing.
  • /tg help : display short help of the plugin.
  • /tg {destination} : teleport to the destination.
Other teleportation means:
  • Right click on a sign containing on a line [TG] or [TRAVELGATES] (case insensitive) and on another line or on the same line (order doesn't matter) the name of an existing destination : do the same as /tg {destination}.
  • Use Nether Portals : Place a TravelGates' sign (see above) on a Nether Portal with the "-ON-" state (defined in messages file), configured with a lever or directly on the sign, and use the Portal as usual. The sign has to be placed on the portal bloc facing the head of the player. You can place the destination on the Obsidian blocks or on blocks beside of the portal.
  • Using a teleport block: You can be teleported if you use a teleportation block, for instance lime wool. You have to cover a rectangle surface containing the destination with this kind of block to be teleported. Max range around the destination is 5 block (6 with the destination block). All these block have to be at the same height. Just under the player location when the destination has been added.
  • Check this page for more detailed information about Nether Portals and Teleportation block features.
Available options:
  • i = clear inventory while travelling to a destination
  • a = admin teleport only
  • s = instant save when adding a new destination or updating the options
  • p = set the position of your destination as following -p(world,x,y,z) or -p(x,y,z), and "y" can be equal to "?"
  • r = set restricted destinations where players are allowed to go as following : -r{dest1,dest2,dest3} -r{+dest1,-dest2} -r{} -r
  • f = force the teleportation to a destination (without being on another destination)

Example: /tg add mydest -iar{test}p(world,5,?,20)s -> Add the destination "mydest", clear the inventory after being teleported, "mydest" is only for admins, the "test" destination is the one target destination allowed to travel to, the location is in the world named "world" at the location x=5, y=max available height, z=20, and finally save the new destination.

More exhaustive information in the README.txt file

More about the Nether Portals usage:
  • You have to use a TravelGates sign. So, the destination and the TravelGates tag.
  • You can use a lever to toggle the state of the Portal or type it manually.
  • The states can be modified in the messages file, instead of using -ON- and -OFF-
  • -ON- with the tag [TG] (or [TRAVELGATES]) and an existing destination : you will be teleported to the destination
  • -OFF- Regular Nether teleportation.
  • If the Sign is invalid, you will be teleported to the Nether.
  • If the destination is the same where the portal is standing, teleportation will be canceled. If the Portal is not placed on an existing destination, or adjacent to an existing destination, the teleportation will also be canceled.


Source code on GitHub : Source Code

Videos : New youtube video of Nether Portals (in v1.5)
French youtube trailer (in v1.0)

Pictures: Some example of TravelGates's teleportation Signs:

Sign control to enable/disable the Nether Portal Substitution :


Please see the Changeslog page

Next versions

Version 2 stopped.

Known bugs

  1. If you add other worlds, Nether Portal won't send you to the Nether. Make another nether world and link a TravelGate portal to it or link the portal to the regular Nether world.
  2. It is not a bug, but you have to know it. If you try to modify the configuration file manually and try to reload all plugins with the /reload command, it would not work. All data is saved when the plugin is disabled, with the current ingame config. So, your configuration manually changed will be ignored.

In Case of Bugs

If you encounter some bugs, please use the /tg debug in game command and send me the server logs by creating a new ticket.You can also enable the debug mode at the beginning of the plugin loading by using the configuration "debug=true" in the configuration file. Thanks.

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of MinedThread5 MinedThread5 Jan 04, 2015 at 03:18 UTC - 0 likes

    does this work on 1.8 servers

  • Avatar of aobi329 aobi329 Jun 29, 2014 at 15:23 UTC - 0 likes

    Hi,I have a problem about save data. I open debug mode and see this message when I want to saving. I have Bold the key sentence.

    [23:15:47 INFO]: [DEBUG_TG] Player issuing travelgates command : [Ljava.lang.Str ing;@77b36d74

    [23:15:47 INFO]: [DEBUG_TG] Start hasPermission(player=CraftPlayer{name=easonxxx }, permissionNode={, admin})

    [23:15:47 INFO]: [DEBUG_TG] End hasPermission : true

    [23:15:47 INFO]: [DEBUG_TG] Start saveConfiguration()

    [23:15:47 INFO]: [DEBUG_TG] Start saveFile : travelgates.conf

    [23:15:47 INFO]: [DEBUG_TG] End saveFile : true

    [23:15:47 INFO]: [DEBUG_TG] End saveFile : true

    [23:15:47 INFO]: [DEBUG_TG] End saveConfiguration : true

    [23:15:47 INFO]: [DEBUG_TG] Start saveDestinations()

    [23:15:47 INFO]: [DEBUG_TG] Start saveFile : destinations.dat

    [23:15:47 INFO]: [DEBUG_TG] End saveFile : true

    [23:15:47 INFO]: [DEBUG_TG] End saveFile : true

    [23:15:47 INFO]: [DEBUG_TG] End saveDestinations : true

    [23:15:47 INFO]: [DEBUG_TG] Start saveRestrictions()

    [23:15:47 INFO]: [DEBUG_TG] Start saveFile : restrictions.dat

    [23:15:47 ERROR]: [TRAVELGATES] File restrictions.dat doesn't exist !

    [23:15:47 INFO]: [DEBUG_TG] End saveFile : false

    [23:15:47 INFO]: [DEBUG_TG] End saveRestrictions : false

    [23:15:47 INFO]: [DEBUG_TG] Start get(message=SAVE_FAILED, vars=[Ljava.lang.Stri ng;@24d71811)

    [23:15:47 INFO]: [DEBUG_TG] End get : Save failed !

  • Avatar of BlokyBuilder BlokyBuilder Jun 01, 2014 at 19:47 UTC - 0 likes

    Can you update this? My friend is making a eco server and we allow players to make towns and if you can make this 1.7 and soon to be 1.8 so we can use something this amazing that'd be awesome :D

  • Avatar of Ghomerr Ghomerr Jan 02, 2014 at 18:41 UTC - 0 likes

    Just to let you know, the plugin seems to work fine with the latest (tested some days ago) 1.7.x development build.

  • Avatar of Ghomerr Ghomerr Dec 09, 2013 at 20:02 UTC - 0 likes

    @eduvdn: Go


    This error occurred when the messages file is not found. You have to configure the language used in the configuration file (example: language=en for English messages) then you have to place the message file named with the language configured (example: messages_en.lang) in the plugin directory.

    I have to fix how this error is displayed because this is not really accurate and clean... But you should be able to make it work easily. Tell me if it did not work.

  • Avatar of eduvdn eduvdn Dec 07, 2013 at 17:53 UTC - 0 likes

    Hi, sry for my inglish but i have problem... solution exists?

    2013-12-07 14:45:24 [WARNING] [TRAVELGATES] Configuraton file not found. 2013-12-07 14:45:24 [SEVERE] Error occurred while enabling TravelGates v1.10.18 [1.6.4-R0.1] (Is it up to date?) java.lang.NullPointerException at com.ghomerr.travelgates.messages.TravelGatesMessagesManager.get( at com.ghomerr.travelgates.TravelGates.loadMessages( at com.ghomerr.travelgates.TravelGates.onEnable( at at at org.bukkit.plugin.SimplePluginManager.enablePlugin( at org.bukkit.craftbukkit.v1_6_R3.CraftServer.loadPlugin( at org.bukkit.craftbukkit.v1_6_R3.CraftServer.enablePlugins( at net.minecraft.server.v1_6_R3.MinecraftServer.l( at net.minecraft.server.v1_6_R3.MinecraftServer.f( at net.minecraft.server.v1_6_R3.MinecraftServer.a( at net.minecraft.server.v1_6_R3.DedicatedServer.init( at at

  • Avatar of Ghomerr Ghomerr Dec 03, 2013 at 21:51 UTC - 0 likes

    @Ricky1990: Go

    Hi Ricky. I'm not sure the plugin is compatible with GroupManager for managing permissions as I have handled only few permissions plugins in my own plugin. It supports PermissionsBukkit, PermissionsEx and Permissions 2x/3x plugins. So your problem could come from this incompatibility.

    Would it be possible for you to use another permissions system to compare the different behaviors ?

    However, there is something your should check. Is it normal that you have the minus character ( "-" ) before every permissions in the GroupManager configuration ? In the GroupManager wiki (, I have read this : -essentials.kits.admin : Removes access to /kit admin.

  • Avatar of Ricky1990 Ricky1990 Dec 03, 2013 at 04:23 UTC - 0 likes

    <<reply 1892051>>

    #Tue Dec 03 12:18:20 SGT 2013

  • Avatar of Ricky1990 Ricky1990 Dec 03, 2013 at 04:21 UTC - 0 likes

    <<reply 1892051>>

        default: true
        - -bukkit.command.kill
        - travelgates.teleportcmd
        - travelgates.teleporttarget
        - travelgates.teleportsign
        - travelgates.teleportportal
        - travelgates.list
        - travelgates.details
        - travelgates.loc
        - g:essentials_default
        - g:bukkit_default
          prefix: '&e[Player]'
          build: false
          suffix: ''

  • Avatar of Ricky1990 Ricky1990 Dec 03, 2013 at 04:14 UTC - 0 likes

    @Ghomerr: Go Thank For Reply :) I added permissions in GroupManager and now this happend: This portal for player to my survival game lobby different world.

    @Ghomerr: Go


Date created
Nov 05, 2011
Last update
Oct 20, 2013
Development stage
  • enUS
GNU General Public License version 3 (GPLv3)
Curse link
Recent files