Inactive [TP] Transporter v7.2 - Teleportation between gates, worlds, and servers [1185]

Discussion in 'Inactive/Unsupported Plugins' started by frdfsnlght, Jun 22, 2011.

Thread Status:
Not open for further replies.
  1. Offline


    Transporter - Teleportation between gates, worlds, and servers

    This support thread is no longer active. Please visit the project's new site on BukkitDev:

    Version: 7.2

    Make sure to read the Release7 wiki page for important information before you upgrade from v6!

    For the absolute latest information about the plugin, including source, see the Google project site.

    Thanks goes to Raphfrk, whose Server Port plugin served as inspiration.

    If you like this plugin, please consider donating.​

    • Teleport between gates in the same world
    • Teleport between gates in different worlds (multiworld support)
    • Teleport between gates on different servers (includes client patcher)
    • Teleports minecarts and boats, with or without a player
    • Server to server chat based on gate proximity
    • Inventory and health transfer (including storage minecarts)
    • Includes client patcher for automatically reconnecting clients
    • No need for client patcher if you're running the BukkitContrib or Spout client
    • Supports server proxies like CraftProxy (v6.9)
    • World creation/loading/unloading (v6.9)
    • Built-in command help
    • Extreme gate design possibilities, including 3D and horizontal
    • Supports gate access using player specific PINs
    • Item banning and transmutation
    • Built-in simple permissions system
    • Permissions plugin integration (preferred)
    • PermissionsEx plugin integration (preferred)
    • iConomy plugin integration
    • BOSEconomy plugin integration
    • Dynmap integration
    • Minecraft-Overviewer integration
    • and more to come...
    • Added client patching for client 1.8.1 (1.8.0 was skipped).
    • Supports RB 1185.
    • Can now remove bad gate links (issue 35).
    • Changed world loading to be delayed after server start.
    • Minor tweaks here and there.
    • Fixed Dynmap integration; requires Dynamp v0.22 or above.
    • Added more customizable gate messages.
    • Now enforces gate permissions on player interactions.
    • New permission `trp.gate.changeLink.<gate>` to limit ability to change gate's current link.
    • Fixed gates not saving to disk properly.
    Changelog for Older versions (open)

    • Working with CB RB 1060
    • Too many things to list here. See the Release7 wiki page for IMPORTANT INFORMATION BEFORE UPGRADING.
    • Working with CB RB 1000
    • Utilizes latest CraftProxy redirect detection so no more need for the craftProxy config setting
    • Compatible with BukkitContrib for client side redirects, so no need for the client patcher if you already have BukkitContrib client side installed
    • Tightened up network protocol handshaking
    • Server to server keepalives with automatic reconnection
    • Prevention of stationary liquids used for portal blocks from flowing under certain circumstances
    • Config setting for custom inter-server chat message formatting
    • Elimination of the minecraftAddress config setting; now it's done on a per-server basis as an additional argument to the "trp server add ..." command; this will almost certainly require you to change your existing server connections, but there are some sensible assumptions made that may allow many setups to "just work"
    • Automatic conversion of servers.yml into the main config
    • New debug command to submit debugging data to my web server so I can review it if necessary
    • Fixed "trp world go ..." command

    • Added world commands.
    • Added gate destroy command.
    • Added CraftProxy support.
    • Change semantics of minecraftAddress global setting.

    • Updated client patcher for MC 1.7.3.
    • Fixed client/server errors when teleporting in CB 953.

    • Updated client patcher for MC 1.7.2, CB 953.

    • Autoloads worlds linked to from local gates.

    • Fixed client patcher. If you've patched the client with a previous version, you must reapply the patch.


    • Added client patcher.
    • Changed client reconnect kick messgaes - now requires new client patcher.

    • Tweaked spawn position when exiting gates.
    • Removed debugging code.
    • Added "Booth" and "Small" gate designs.

    • Fixed problem of network not shutting down properly.
    • Fixed minecarts going server-to-server.

    • First publicly available release.

    • Never saw the light of day.
    vrox, Hwo, wassilij and 1 other person like this.
  2. Offline


    Version 7.0 is available. Let the fun begin. Read about it here.

    I've updated some of the wiki pages, but notable exceptions are Commands and ServerToServer. I'll work on those next week.
  3. Offline

    Mathew Alden

    7.0 is AWESOME. You literally added everything that I was hoping the plug-in could have. :)
  4. Offline



    Having a lot of trouble using v7.0, it seems connections aren't being made between servers, even though I just used the same config options I have before.. Any idea ?

    2011-08-27 00:54:12 [INFO] [Transporter] ->[Pr4w] requested server connect for 'Aerium'
    2011-08-27 00:54:12 [INFO] [Transporter] cancelling outbound connection attempt to server 'Aerium'
    2011-08-27 00:54:12 [WARNING] [Transporter] connection exception with Connection refused
    2011-08-27 00:54:12 [INFO] [Transporter] will attempt to reconnect to 'Aerium' in about 54 seconds
    2011-08-27 00:55:06 [WARNING] [Transporter] connection exception with Connection refused
    2011-08-27 00:55:06 [INFO] [Transporter] will attempt to reconnect to 'Aerium' in about 68 seconds
    2011-08-27 00:56:15 [WARNING] [Transporter] connection exception with Connection refused
    2011-08-27 00:56:15 [INFO] [Transporter] will attempt to reconnect to 'Aerium' in about 56 seconds
    2011-08-27 00:57:12 [WARNING] [Transporter] connection exception with Connection refused
    2011-08-27 00:57:12 [INFO] [Transporter] will attempt to reconnect to 'Aerium' in about 60 seconds
    2011-08-27 00:58:11 [INFO] [Transporter] global option 'debug' set to 'true'
    2011-08-27 00:58:12 [WARNING] [Transporter] connection exception with Connection refused
    2011-08-27 00:58:12 [INFO] [DEBUG] kill
    2011-08-27 00:58:12 [INFO] [DEBUG] state is CLOSED
    2011-08-27 00:58:12 [INFO] [Transporter] will attempt to reconnect to 'Aerium' in about 69 seconds
    2011-08-27 00:58:48 [INFO] Connection reset
    Icarus (World 2) :
    configVersion: 2
        usePermissions: false
        usePermissionsEx: false
        debug: false
        gateLockExpiration: 2000
        autoLoadWorlds: true
        serverChatFormat: '[%server%]<%player%> %message%'
        serverJoinFormat: '%player% joined the game from %server%'
        serverQuitFormat: '%player% left the game.'
        serverKickFormat: '%player%@%server% was kicked.'
        readBufferSize: 4096
        listenAddress: localhost:21001
        bannedAddresses: []
        selectInterval: 30000
        key: IcarusIsOpen
        suppressConnectionAttempts: -1
        reconnectInterval: 60000
        reconnectSkew: 10000
    -   environment: NORMAL
        name: Icarus
        autoLoad: true
    pins: {}
    -   publicAddress: '*:22000'
        enabled: true
        receiveChat: false
        sendChat: false
        name: Aerium
        receiveJoin: false
        pluginAddress: localhost:22001
        sendJoin: false
        privateAddress: '-'
        key: AeriumIsOpen
    Aerium (World 1) :
    configVersion: 2
        debug: false
        gateLockExpiration: 2000
        serverChatFormat: '[%server%]<%player%> %message%'
        serverJoinFormat: '%player% joined the game from %server%'
        serverQuitFormat: '%player% left the game.'
        serverKickFormat: '%player%@%server% was kicked.'
        autoLoadWorlds: true
        readBufferSize: 4096
        listenAddress: localhost:22001
        bannedAddresses: []
        selectInterval: 30000
        key: AeriumIsOpen
    -   environment: NORMAL
        name: Lorencia
        autoLoad: true
    pins: {}
    -   publicAddress: '*:21000'
        enabled: true
        receiveChat: false
        sendChat: false
        name: Icarus
        receiveJoin: false
        pluginAddress: localhost:21001
        sendJoin: false
        privateAddress: '-'
        key: IcarusIsOpen
  5. Offline


    AWESOME!!! I'll upgrade tonight and let you know if I find anything crazy. I have 2 servers this time (1 windows and 1 linux), so we'll see if I run into anything crazy. :)

    Nevermind, it was an incompatible plugin causing the disappearing chunks. :p

    I'll update more once I get my mysql server converted over and another one set up with a second MC install.
  6. Offline


    I made a copy of my server first to see if this would work with the test version. It was unable to use my old config file, which is fine, but now my current gate links do not work (expected). What my question would be is - is there a particular file that I can reference or copy in order to port my old gates into the new version? I'd hate to travel all around to find all of these gates I have linked to my community hub. xD Thanks in advance!
  7. Offline


    Your gates should be fine; shouldn't need to do anything with them. But since the default config that got installed doesn't have any servers defined, any gates with off-server links won't work until the servers are recreated.

    You're configs look good, but it's still early in the morning for me so I might be missing something. If possible, turn on debug on both servers ("trp set debug true") reload them, and send me the logs from both servers starting with the reload command in a PM.

    You're running the same setup I use for most of my testing (2 servers on the same box) and I've never had a problem getting them to connect. Hopefully it's something simple.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 16, 2016
  8. Offline


    Okay, after a reboot of both, it *seems* to be working, their linked up and chat is being sent, except if I step in a portal, I start getting transfered only I appear in the same portal I just left from :confused:
    After looking at the Craftproxy logs, I'm basically getting a kick saying "Reconnect to localhost:21000", CraftProxy intercepts the kick, and redirects me to localhost:21000, except that is the server I came from. What have I done wrong ?
    Another thing is I'm still getting that thing where the servers disconnect from each periodically... I've set them both to debug true, and I'll check the logs back in an hour to see what I can find. :)
    (Oh, and what do you recommend I should use to get proper chat colors, usernames are in white at the moment, even though I have mChat installed)

    Edit : All I can see is it disconnects from time to time, and then reconnects, but I have to manually re-attach the gates... :/

    And as for using the gate, the one from Aerium( :22000) to Icarus( :21000) works, but when going from Icarus to Aerium, it sends the player to localhost:21000, which is back to Icarus :/
  9. Offline


    Thanks for the log, but that's only from the Icarus side. I need to see the log from Aerium for the same time period. And when both server are connected, please include the output of "trp server list" from both servers as well. The log indicates Aerium is telling Icarus it's at localhost:21000, so the output of those commands might shed some light on that.

    Trying to debug a distributed network application when I can only see one half of what's going on is nearly impossible.

    I've already made one adjustment to the code based on what I saw in the log you posted. I see a string index of of bounds exception which is concerning, but I can't tell where it's coming from, so I'll release a minor update soon to help track that down.
  10. Offline


    Yep, sorry, here's the log from the other server. :)

    /trp server list on Icarus :
    2011-08-27 20:24:27 [INFO] [Transporter] 1 servers:
    2011-08-27 20:24:27 [INFO] [Transporter]   Aerium: localhost:22001 'AeriumIsOpen' up/up incoming v7.0
    2011-08-27 20:24:27 [INFO] [Transporter]     publicAddress:        *:22000 (*:22000)
    2011-08-27 20:24:27 [INFO] [Transporter]     privateAddress:       -
    2011-08-27 20:24:27 [INFO] [Transporter]     remotePublicAddress:  localhost:21000
    2011-08-27 20:24:27 [INFO] [Transporter]     remotePrivateAddress: -
    2011-08-27 20:24:27 [INFO] [Transporter]     remoteCluster:        -
    The error's from there, it should be :22000 :confused:

    Edit : Wasn't in debug mode, but I caught another error :
    2011-08-27 21:04:55 [WARNING] [Transporter] no keepalive received from server 'Icarus'
    2011-08-27 21:04:55 [INFO] [Transporter] disconnected from 'Icarus' (
    2011-08-27 21:04:55 [INFO] [Transporter] accepted a connection from
    2011-08-27 21:04:55 [INFO] [Transporter] server key match detected for 'Icarus' on connection with
    2011-08-27 21:04:55 [INFO] [Transporter] connected to 'Icarus' (, running v7.0
    2011-08-27 21:04:55 [INFO] [Transporter] connected to 'Icarus' (, running v7.0
    2011-08-27 21:04:55 [WARNING] [Transporter] connection '' has been orphaned from server 'Icarus'!?!
    2011-08-27 21:04:55 [WARNING] [Transporter] exception while processing message from null
    2011-08-27 21:04:55 [INFO] [Transporter] closed connection with
    2011-08-27 21:04:55 [SEVERE] [Transporter] connection exception with Connection reset by peer Connection reset by peer
    	at Method)
    2011-08-27 21:04:55 [INFO] [Transporter] disconnected from 'Icarus' (
    2011-08-27 21:04:55 [INFO] [Transporter] will attempt to reconnect to 'Icarus' in about 51 seconds
  11. Offline


    Ok. I don't have all the information to confirm my suspicions but it looks like the your servers are advertising the wrong public addresses to each other. Did you set the publicAddress option after adding each server? If you did, you set them backwards. Set them back to the default of "*" for both servers. The plugin figures out what your publicAddress should be in that case. The only reason to change it would be if your servers are behind a NAT'ed firewall and you're teleporting between your servers and servers outside your firewall.

    Brief lesson: Looking at the output of the "trp server list" command for a particular server, the "publicAddress" is what your server is telling the other server to tell clients to connect to when they teleport to your server. The "remotePublicAddress" is what the other server is telling your server it's publicAddress is. And the stuff in the parentheses after these addresses is roughly what those addresses resolve to (to the plugin's best ability).

    Edit: to confirm some of my suspicions: Aerium's MC server is listening on 22000, plugin on 22001, and Icarus's MC server is listening on 21000, plugin on 21001. Right?

    Edit 2: Don't worry about the exception you got; it's somewhat "normal", but I may change the code to squelch it. And your servers periodically disconnect because one of them doesn't receive a keep alive from the other. I can't tell from the logs why that's happening. I've never seen that in my testing and I've left servers connected for hours.
  12. Offline


    Well, on the config.yml file, they're set to what they should be, that's what I don't understand. Even without the port on the end and just the '*', it does the exact same thing :/
    Originally, I hadn't set them at all, they were automatically added, but as they didn't work, I tried changing the ports, to no avail
    Config ->

    Edit1 : Yep !
    Edit2 : Yeah, we run a reboot schedule to clear Ram and CPU every 6 hours, but it's basically on all day, every day.
  13. Offline


    I believe those configs are wrong, but I need confirmation of the stuff in the edit I made on my last post (previous page) to be sure. If you set publicAddress to "*" on both servers, the config.yml file will show "*". After you do that, post the output of "trp server list" from both servers if it's still not working.
  14. Offline


    Yep, just did, and I'm getting the exact same thing :

    Icarus ( :21000)
    2011-08-27 23:45:35 [INFO] [Transporter]   Aerium: localhost:22001 'AeriumIsOpen' up/up outgoing v7.0
    2011-08-27 23:45:35 [INFO] [Transporter]     publicAddress:        * (*:21000)
    2011-08-27 23:45:35 [INFO] [Transporter]     privateAddress:       -
    2011-08-27 23:45:35 [INFO] [Transporter]     remotePublicAddress:  localhost:22000
    2011-08-27 23:45:35 [INFO] [Transporter]     remotePrivateAddress: -
    2011-08-27 23:45:35 [INFO] [Transporter]     remoteCluster:        -
    Aerium ( 22000)
    2011-08-27 23:48:11 [INFO] [Transporter] 1 servers:
    2011-08-27 23:48:11 [INFO] [Transporter]   Icarus: localhost:21001 'IcarusIsOpen' up/up incoming v7.0
    2011-08-27 23:48:11 [INFO] [Transporter]     publicAddress:        * (*:22000)
    2011-08-27 23:48:11 [INFO] [Transporter]     privateAddress:       -
    2011-08-27 23:48:11 [INFO] [Transporter]     remotePublicAddress:  localhost:21000
    2011-08-27 23:48:11 [INFO] [Transporter]     remotePrivateAddress: -
    2011-08-27 23:48:11 [INFO] [Transporter]     remoteCluster:        -
    Both servers are displaying publicAddress as their own address :confused:

    What is strange, is after trying, people can get from Aerium (default CraftProxy server) to Icarus, through the portal, but when they are in Icarus, they can't use the portal, it says no links are selected, even after closing and opening it again. :/

    Edit : On Aerium, we can't see the Icarus chat, but on Icarus we can see Aerium's chat
    Edit2 : Actually, some people can see Icarus's chat, while other (including me), can't. :confused:

    Edit : I'm also getting a lot of these :
    2011-08-28 00:08:53 [SEVERE] Could not pass event PLAYER_CHAT to mChat
    	at net.D3GN.MiracleM4n.mChat.playerListener.onPlayerChat(
    	at org.bukkit.plugin.RegisteredListener.callEvent(
    	at org.bukkit.plugin.SimplePluginManager.callEvent(
    	at net.minecraft.server.NetServerHandler.a(
    	at net.minecraft.server.Packet3Chat.a(
    	at net.minecraft.server.NetworkManager.b(
    	at net.minecraft.server.NetServerHandler.a(
    	at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    	at net.minecraft.server.MinecraftServer.h(

    Edit : After rebooting Icarus completely, leaving Aerium on, we can now go back and forth between the two, and the chat is relayed. I'm just worried it's going to stop working if the connections between the two get lost again.
    Edit : Yep, it's stopped working again :s
  15. Offline


    They should be. Let me explain:

    Server A's MC server is listening on
    Server A' publicAddress, when set to "*" will be the actual IP of the host, say, and port 25565.

    Server B's MC server is listening on
    Server B's publicAddress when set to "*" will be the actual IP of the host, say, and port 25575.

    When the plugin on each server isn't connected to each other, you can't actually see the "publicAddress" anywhere.

    When the plugin on each server connects to the other, they tell each other about their own publicAddress:
    Server A tells Server B, "hey, my MC address is Send players there when they teleport to me."
    Server B tells Server A, "hey, my MC address is Send players there when they teleport to me."

    So now, a "trp server list" on Server A will look something like:
    ServerB: 'serverBKey' up/up
    publicAddress: * (*:25565)

    And on Server B:
    ServerA: 'serverAKey' up/up
    publicAddress: * (*:25575)

    The "remotePublicAddress" shows what was received from the other side, and the "publicAddress" is what we sent to the other side.

    So what does the output of "trp server list" show now? And if possible, could you post the MC server's file for both servers? If things are working now, there must have been some junk left around in memory that was messing with things.

    Also, I don't know anything about mChat, so I'm not sure how my plugin will interact with it. The exception you posted is coming from mChat and is caused by an unhandled null pointer. It's possible my plugin is nulling out a message (it does that under some circumstances) and mChat doesn't like that. I'd have to have a better understanding of what mChat is trying to do. What do you use mChat for?
  16. Offline


    Aaaah, right, okay. I had things a bit mixed up

    Exactly the same as it was before, strangely. So it *works*, but gates often de-link themselves, server disconnecting each other...

    Icarus :
    #Minecraft server properties
    #Fri Jul 29 02:51:19 CEST 2011
    Aerium :
    #Minecraft server properties
    #Sat Jul 02 15:49:08 CEST 2011
    I use mChat to handle User's prefixes, according to their group, for colors in the chat
  17. Offline


    Can someone tell me how i can link gates that are on different worlds and servers so i can go back and forth between them? (I use version 7.) And i would also like to know how you assign server keys in version 7.
  18. Offline


    Oh okay. I don't use multiworlds so maybe I did something wrong. I'll try recopying it and see if I messed up somewhere.
  19. Offline


    I'm sorry for posting this here, but I just don't know where else to go :(

    I tried all versions of - trp.use.<gate> there is on the default group permissions user (Default) and nothing worked. I am all out of ideas and I have spent all day on this one useful are portals if only the admins can use them and the Default users have control of turning them off and on for noobs?

        default: true
        - essentials.helpop
        - essentials.list
        - essentials.motd
        - essentials.rules
        - essentials.spawn
        - factions.create
        - factions.participate
        - trp.use.<gate>
        - essentials.home
        inheritance: []
          prefix: '&e'
          build: false
          suffix: ''
  20. Offline


    Did you read UsingGates?

    You assign your own server's key with "trp network set key ...". You "assign" other server's key when you add the server: "trp server add <name> <address> <key>".

    Did you actually type "<gate>" into the permissions file?:'( That's supposed to be the name of a gate you want to grant "use" permissions for. If you want your default group to have permission to use all gates, use "trp.use.*". If you've tried those things and it doesn't work, then it's likely a Permissions plugin issue, which I'm no expert in.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 16, 2016
  21. Offline


    OK thank you so much I will try that now... trp.use.*

    OK so I got it to the point where it wants to let Default usergroup through but then SEVERE stuff starts happening and it looks like a bunch of PLAYER_MOVE errors....this server thing is getting more and more complicated by the day.

    EDIT: GOT IT WORKING!!!! Just reloaded the plugin!

    So now the question do I make it so that the default player base CANNOT turn on and off the portals?
  22. Offline


    Has the Dynmap integration broken with 7.0? Or is it not known to work with Dynmap 2.1? I can't get gates on the map at all.
  23. Offline


    Our two servers cannot connect to eachother. We're both using v7. we used none as our keys, and our servers do not want to link to eachother. they keep saying NOT CONNECTED.

    any ideas of what might cause this? vagueness is vague. but answers can also be varying.

    aagghhhh >_______< this is just not working and I don't know why. I've read the guide three times over already on connecting servers to other servers. We keep getting failed connection notices.

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
    Last edited by a moderator: May 16, 2016
  24. Offline


    All the wiki pages are out of date, meaning that if you are following those, you WILL fail. What does the plugin say when you try to add the connection?
  25. Offline


    thank you so much! i'm gonna watch it now and let you know if it managed to help me.
    it could be just that i'm completely incompetent though.
    but thank you!
  26. Offline


    Is Dynmap 2.1 new? I can't remember what version I used for testing. It's possible it's just broken. I'll take a look.
  27. Offline


    I think it was the version they released for compatibility with 1060.
  28. Offline


    oh ok. I'll wait then. And it said that the connection was added fine. Just when I went to /trp server ping the other server it said not connected.
  29. Offline


    Huh, odd. I managed to get my servers to connect with v7, and get the portal systems and chat working, BUT the server doesn't want to accept the line in the config for serverChatFormat...

    Also, feature request: Integrate channel support from HeroChat if possible, since right now it passes messages from all channels to the other servers.
  30. Offline

    Mathew Alden

    I messed up... you've probably noticed by now. I'm going to remake it soon but I've been busy and I'm trying to figure out how to use SuperPerms first.
  31. Offline


    i actually hadn't watched it yet. the other server owner was out of town. he just got back today and i was just about to watch it.
    you're words make my brain hurt
Thread Status:
Not open for further replies.

Share This Page