Inactive [TP] Sign Jump v5 - reconnect to other servers using signs [1337]

Discussion in 'Inactive/Unsupported Plugins' started by Raphfrk, Aug 16, 2011.

  1. Offline

    Raphfrk

    SignJump - Jump to another server with a sign
    Version: v5

    This allows Ops to set signs as inter server connection points.

    This doesn't require any link-up step with the admin of the other server. It just orders the client to connect to a particular server. This doesn't do anything like inventory transfer.

    This was intended as a demo of the reconnect method in Spout and also the Spout data attachment system.

    Features:
    • Auto connect to other servers using signs
    Dependencies

    Required
    • This requires the Spout plugin
    Recommended (one of the following needed for auto reconnect)
    • Spout client
    • Server Port patch
    • Transporter patch
    • CraftProxyLiter
    Download

    Source Code
    Old Releases

    Instructions

    Setup - using a glass block


    You need OP permission to enable signs. The sign should be of the following format

    Line 1: doesn't matter
    Line 2: Hostname of server
    Line 3: port number (blank = 25565)
    Line 4: doesn't matter

    Once the sign is placed, an OP must click on the sign with a glass block. To break the link, the Op can click with the glass block again.

    You can change the block type by editing the trigger value in the config file to a different id.

    Setup - using a command

    If an Op points at a sign and enters

    /signjump some.very.long.hostname.com

    This is the equivalent of clicking with a glass block, but it uses the provided hostname, instead of the one on the sign. This port number (or blank) is still taken from the sign.

    Usage

    If any player clicks on the sign, they will be kicked and reconnect to the other server. If their client doesn't support reconnecting, the kick message will tell them to reconnect.

    Spout clients and client patched using the ServerPort patch or the Transporter patch should all support the reconnect. Also, Craft Proxy supports the reconnect.

    Changelog:
    Version 3
    • Initial version
    Version 4
    • Add command so that long hostnames can be supported
    Version 5
    • Added support for wall signs
     
    DarkFusion likes this.
  2. Offline

    Monte87

    GREATEST PLUGIN! GOOD WORK! THANK YOU!
     
  3. Offline

    Cosmic Break

    you should change the wording of what is required.

    with spout client you dont need any of the other patches.
     
  4. Offline

    Zarius

    Agreed - I was thinking at first that I needed all the patches :)

    btw: Great plugin :)
     
  5. Offline

    gameswereus

    That would make me sad :p
     
  6. Offline

    Monte87

    what if the server line exceeds the maximum allowed on a sign
     
  7. Offline

    Raphfrk

    I could create a /command that sets it.

    Maybe, while holding a glass block, you type:

    /signjump server-name other.server.reallylongdomain.com:12345

    and it will set the sign to other.server.reallylongdomain.com and display server-name instead of the domain name.
     
  8. Offline

    Monte87

    sounds great to me...if you decide to do it - ill be here waiting :)
     
  9. Offline

    Danjoyas

    I'm new to this. So when I put the plugin into bukkit\plugins and run the .bat file to start the server I get this "Could not load 'plugins\SignJump.jar' in folder 'plugins': Spout". I'm putting the .jar file in the plugins folder so idk am I doing anything wrong?
    Also I have put other mods into the same location and they work 100%.
    Plz help!!!
     
  10. Offline

    dorkstitch

    Seems the plugin will not link signs that are on walls, only on the ground. Says "target is not a sign" until I place it in the ground.
     
  11. Offline

    Imm0rt41

    i lurv you
     
  12. Offline

    jlsjonas

    /me looks at sign
    /signjump remotehostname
    output: [Signjump] target is not a sign

    >.<
    using latest spout & signjump

    edit: right-click with glass never worked eather
     
  13. Offline

    Raphfrk

    I updated the code. I had it check that the block was of type SIGN or SIGN_POST. It should have checked for WALL_SIGN or SIGN_POST. SIGN means the sign item, so would never have matched.
     
  14. Offline

    Nolig

    @Raphfrk i looked at your src and i just (don't) get out how the player get kicked (reconnect).
    I think you use the default spout reconnecter.
    Can you please use; player.kick -> Be cause if a player has the client patch he get to the other server.
    If not he get kicked by the plugin, but i want to change the kick message, you know ?
     
  15. Offline

    Raphfrk

    The kick message is a special message that the Spout client uses to know where to send the player.

    In fact, if you kick a player with "[Redirect] any message that you like : minecraft.some.server.com : 12345", it will connect to minecraft.some.server.com:12345.

    This should work even if you don't have Spout installed (and the player was using the client). Sign Jump uses other Spout functionality, so still needs Spout.

    This is the spout code that formats the kick message.

    Code:
    	public void reconnect(String hostname, int port) {
    		if (hostname.indexOf(":") != -1) {
    			throw new IllegalArgumentException("Hostnames may not the : symbol");
    		}
    		this.kickPlayer("[Redirect] Please reconnect to : " + hostname + ":" + port);
    	}
    
    	@Override
    	public void reconnect(String hostname) {
    		if (hostname.indexOf(":") != -1) {
    			String[] split = hostname.split(":");
    			if (split.length != 2) {
    				throw new IllegalArgumentException("Improperly formatted hostname: " + hostname);
    			}
    			int port;
    			try {
    				port = Integer.parseInt(split[1]);
    			} catch (NumberFormatException nfe) {
    				throw new IllegalArgumentException("Unable to parse port number: " + split[1] + " in " + hostname);
    			}
    			reconnect(split[0], port);
    		}
    		this.kickPlayer("[Redirect] Please reconnect to : " + hostname);
    	}
    
    Also, (ahem), the latest spout now allows you set the message when using reconnect.

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

    Nolig

    @Raphfrk Thank you! ;) I'am new at Spout...
     
  17. Offline

    DarkFusion

    pls update
     
  18. Offline

    benjja1

    Hey raphfrk.. when i put the plugin in the plugin folder.. it cant load it.. like it never has been there ??

    Help !
     
  19. Offline

    To175

    Hi, how to do it without spout???
    Thanks
     

Share This Page