Results 1 to 5 of 5
  1. #1
    102387's Avatar
    Join Date
    Feb 2013
    Gender
    male
    Posts
    11
    Reputation
    10
    Thanks
    0

    Post K-Relay multibox followME

    I really want to test this code out but i can't seem to get MS visual to work with me, IDK what is the matter with it it just refuses to compile.(had to use a dell venue 7 tablet to create what i have, pc's MSV cant/wont find missing files even after 5 reinstall... thanks windows 7.)
    K_relay states that i'm missing the assembly manifest. i never worked with MSV before....
    you will need to reference Lib K Relay.dll and K RelayMove.dll (found at pixelzerg's: K Relay Move - A framework for simulating movement with K Relay)
    IF YOU DO GET IT WORKING TAKE IT AS YOUR IDEA message me back so i can get the .dll file from you too.
    just remember to keep it quiet if you do get it working, don't want hundreds 10 year old leechers getting a hold of this.

    code is meant to
    /followme sets a client as client(1) and sets all others to client 2 client 3 client4
    if client 2,3,4 is away from client1, k_relayMove will walk them to client 1
    it will walk them in that order , so having 10 clients may become a problem
    plugin is meant to only adjust small deviances between clients, ie fixing runaways in a standalone multiboxer/key broadcasting without using the tp.
    i personally use kronkboxer 0.2
    i have it set for only 4 clients total now but more can be added if need be.
     
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using Lib_K_Relay;
    using Lib_K_Relay.Utilities;
    using Lib_K_Relay.Interface;
    using Lib_K_Relay.Networking;
    using Lib_K_Relay.Networking.Packets;
    using Lib_K_Relay.Networking.Packets.Client;
    using Lib_K_Relay.Networking.Packets.Server;
    using Lib_K_Relay.Networking.Packets.DataObjects;
    using K_RelayMove;

    namespace followme
    {
    public class followme : IPlugin
    {
    public string GetAuthor()
    { return "CLW/102387"; }
    public static List<Client> clientlist = new List<Client>();
    public static bool Enabled = false;
    public static Client WhoFollowme;
    public string GetName()
    {return "followme";}
    public string GetDescription()
    { return "pro multiboxing k-relay"; }
    public string[] GetCommands()
    { return new string[] { "/followme" }; }
    public void Initialize(Proxy proxy)
    {
    proxy.HookCommand("followme", new Proxy.CommandHandler(this.OnCommand));
    proxy.HookPacket(PacketType.NEWTICK, new Proxy.PacketHandler(this.NT));
    proxy.ClientConnected += new Proxy.ConnectionHandler(this.proxy_ClientConnected );
    proxy.ClientDisconnected += new Proxy.ConnectionHandler(this.proxy_ClientDisconnec ted);
    }
    private void NT(Client client, Packet packet)
    {
    foreach (Client client2 in clientlist)
    {
    if (client != WhoFollowme)
    {
    if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client2.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step)
    {
    if (client2.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X)
    {
    KRelayMove.MoveClient(client2, KRelayMove.Direction.left, 1, 8.332474E+09f);
    }
    else
    {
    KRelayMove.MoveClient(client2, KRelayMove.Direction.right, 1, 8.332474E+09f);
    }
    }
    if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client2.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step)
    {
    if (client2.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y)
    {
    KRelayMove.MoveClient(client2, KRelayMove.Direction.down, 1, 8.332474E+09f);
    }
    else
    {
    KRelayMove.MoveClient(client2, KRelayMove.Direction.up, 1, 8.332474E+09f);
    }
    }
    }
    }
    foreach (Client client3 in clientlist)
    {
    if (client != WhoFollowme)
    {
    if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client3.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step)
    {
    if (client3.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X)
    {
    KRelayMove.MoveClient(client3, KRelayMove.Direction.left, 1, 8.332474E+09f);
    }
    else
    {
    KRelayMove.MoveClient(client3, KRelayMove.Direction.right, 1, 8.332474E+09f);
    }
    }
    if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client3.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step)
    {
    if (client3.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y)
    {
    KRelayMove.MoveClient(client3, KRelayMove.Direction.down, 1, 8.332474E+09f);
    }
    else
    {
    KRelayMove.MoveClient(client3, KRelayMove.Direction.up, 1, 8.332474E+09f);
    }
    }
    }
    }
    foreach (Client client4 in clientlist)
    {
    if (client != WhoFollowme)
    {
    if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client4.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step)
    {
    if (client4.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X)
    {
    KRelayMove.MoveClient(client4, KRelayMove.Direction.left, 1, 8.332474E+09f);
    }
    else
    {
    KRelayMove.MoveClient(client4, KRelayMove.Direction.right, 1, 8.332474E+09f);
    }
    }
    if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client4.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step)
    {
    if (client4.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y)
    {
    KRelayMove.MoveClient(client4, KRelayMove.Direction.down, 1, 8.332474E+09f);
    }
    else
    {
    KRelayMove.MoveClient(client4, KRelayMove.Direction.up, 1, 8.332474E+09f);
    }
    }
    }
    }
    }
    private void OnCommand(Client client, string command, string[] args)
    {
    Enabled = !Enabled;
    if (Enabled)
    {
    WhoFollowme = client;
    PluginUtils.CreateNotification(client.ObjectId, "Now Leader " + client.PlayerData.Name);
    }
    else
    {
    PluginUtils.CreateNotification(client.ObjectId, "Followme Plugin Disabled");
    }
    }

    private void proxy_ClientConnected(Client client)
    {
    clientlist.Add(client);
    }

    private void proxy_ClientDisconnected(Client client)
    {
    clientlist.Remove(client);
    KRelayMove.MoveClient(client, KRelayMove.Direction.up, 5);
    }
    }
    }
    Last edited by 102387; 08-26-2015 at 07:51 PM. Reason: code too long

  2. #2
    AmejiOrape's Avatar
    Join Date
    Dec 2014
    Gender
    male
    Posts
    184
    Reputation
    27
    Thanks
    99
    My Mood
    Relaxed
    Dear lord, put that in pastebin or a code tab.

  3. #3
    059's Avatar
    Join Date
    Mar 2011
    Gender
    male
    Location
    California
    Posts
    3,312
    Reputation
    700
    Thanks
    92,771
    Quote Originally Posted by AmejiOrape View Post
    Dear lord, put that in pastebin or a code tab.
    Code:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using Lib_K_Relay;
    using Lib_K_Relay.Utilities;
    using Lib_K_Relay.Interface;
    using Lib_K_Relay.Networking;
    using Lib_K_Relay.Networking.Packets;
    using Lib_K_Relay.Networking.Packets.Client;
    using Lib_K_Relay.Networking.Packets.Server;
    using Lib_K_Relay.Networking.Packets.DataObjects;
    using K_RelayMove;
    
    namespace followme {
    	public class followme: IPlugin {
    		public string GetAuthor() {
    			return "CLW/102387";
    		}
    		public static List < Client > clientlist = new List < Client > ();
    		public static bool Enabled = false;
    		public static Client WhoFollowme;
    		public string GetName() {
    			return "followme";
    		}
    		public string GetDescription() {
    			return "pro multiboxing k-relay";
    		}
    		public string[] GetCommands() {
    			return new string[] {
    				"/followme"
    			};
    		}
    		public void Initialize(Proxy proxy) {
    			proxy.HookCommand("followme", new Proxy.CommandHandler(this.OnCommand));
    			proxy.HookPacket(PacketType.NEWTICK, new Proxy.PacketHandler(this.NT));
    			proxy.ClientConnected += new Proxy.ConnectionHandler(this.proxy_ClientConnected);
    			proxy.ClientDisconnected += new Proxy.ConnectionHandler(this.proxy_ClientDisconnec ted);
    		}
    		private void NT(Client client, Packet packet) {
    			foreach(Client client2 in clientlist) {
    				if (client != WhoFollowme) {
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client2.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client2.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X) {
    							KRelayMove.MoveClient(client2, KRelayMove.Direction.left, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client2, KRelayMove.Direction.right, 1, 8.332474E+09f);
    						}
    					}
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client2.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client2.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y) {
    							KRelayMove.MoveClient(client2, KRelayMove.Direction.down, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client2, KRelayMove.Direction.up, 1, 8.332474E+09f);
    						}
    					}
    				}
    			}
    			foreach(Client client3 in clientlist) {
    				if (client != WhoFollowme) {
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client3.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client3.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X) {
    							KRelayMove.MoveClient(client3, KRelayMove.Direction.left, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client3, KRelayMove.Direction.right, 1, 8.332474E+09f);
    						}
    					}
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client3.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client3.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y) {
    							KRelayMove.MoveClient(client3, KRelayMove.Direction.down, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client3, KRelayMove.Direction.up, 1, 8.332474E+09f);
    						}
    					}
    				}
    			}
    			foreach(Client client4 in clientlist) {
    				if (client != WhoFollowme) {
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client4.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client4.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X) {
    							KRelayMove.MoveClient(client4, KRelayMove.Direction.left, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client4, KRelayMove.Direction.right, 1, 8.332474E+09f);
    						}
    					}
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client4.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client4.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y) {
    							KRelayMove.MoveClient(client4, KRelayMove.Direction.down, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client4, KRelayMove.Direction.up, 1, 8.332474E+09f);
    						}
    					}
    				}
    			}
    		}
    		private void OnCommand(Client client, string command, string[] args) {
    			Enabled = !Enabled;
    			if (Enabled) {
    				WhoFollowme = client;
    				PluginUtils.CreateNotification(client.ObjectId, "Now Leader " + client.PlayerData.Name);
    			} else {
    				PluginUtils.CreateNotification(client.ObjectId, "Followme Plugin Disabled");
    			}
    		}
    
    		private void proxy_ClientConnected(Client client) {
    			clientlist.Add(client);
    		}
    
    		private void proxy_ClientDisconnected(Client client) {
    			clientlist.Remove(client);
    			KRelayMove.MoveClient(client, KRelayMove.Direction.up, 5);
    		}
    	}
    }
    My Vouches
    Having an issue with RotMG? Check for the solution here.


    Need Realm items? Come to RealmStock!

    Accepting PayPal - Bitcoin - Giftcards
    Selling ST Sets, Class Top Sets, Life Pots, and much more!


    Find it here: MPGH Sales Thread

  4. #4
    102387's Avatar
    Join Date
    Feb 2013
    Gender
    male
    Posts
    11
    Reputation
    10
    Thanks
    0
    is this better?
    Last edited by 102387; 08-26-2015 at 07:31 PM.

  5. #5
    OncePhoenix's Avatar
    Join Date
    Sep 2013
    Gender
    male
    Posts
    790
    Reputation
    121
    Thanks
    285
    My Mood
    Angelic
    Quote Originally Posted by 059 View Post
    Code:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using Lib_K_Relay;
    using Lib_K_Relay.Utilities;
    using Lib_K_Relay.Interface;
    using Lib_K_Relay.Networking;
    using Lib_K_Relay.Networking.Packets;
    using Lib_K_Relay.Networking.Packets.Client;
    using Lib_K_Relay.Networking.Packets.Server;
    using Lib_K_Relay.Networking.Packets.DataObjects;
    using K_RelayMove;
    
    namespace followme {
    	public class followme: IPlugin {
    		public string GetAuthor() {
    			return "CLW/102387";
    		}
    		public static List < Client > clientlist = new List < Client > ();
    		public static bool Enabled = false;
    		public static Client WhoFollowme;
    		public string GetName() {
    			return "followme";
    		}
    		public string GetDescription() {
    			return "pro multiboxing k-relay";
    		}
    		public string[] GetCommands() {
    			return new string[] {
    				"/followme"
    			};
    		}
    		public void Initialize(Proxy proxy) {
    			proxy.HookCommand("followme", new Proxy.CommandHandler(this.OnCommand));
    			proxy.HookPacket(PacketType.NEWTICK, new Proxy.PacketHandler(this.NT));
    			proxy.ClientConnected += new Proxy.ConnectionHandler(this.proxy_ClientConnected);
    			proxy.ClientDisconnected += new Proxy.ConnectionHandler(this.proxy_ClientDisconnec ted);
    		}
    		private void NT(Client client, Packet packet) {
    			foreach(Client client2 in clientlist) {
    				if (client != WhoFollowme) {
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client2.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client2.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X) {
    							KRelayMove.MoveClient(client2, KRelayMove.Direction.left, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client2, KRelayMove.Direction.right, 1, 8.332474E+09f);
    						}
    					}
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client2.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client2.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y) {
    							KRelayMove.MoveClient(client2, KRelayMove.Direction.down, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client2, KRelayMove.Direction.up, 1, 8.332474E+09f);
    						}
    					}
    				}
    			}
    			foreach(Client client3 in clientlist) {
    				if (client != WhoFollowme) {
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client3.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client3.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X) {
    							KRelayMove.MoveClient(client3, KRelayMove.Direction.left, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client3, KRelayMove.Direction.right, 1, 8.332474E+09f);
    						}
    					}
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client3.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client3.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y) {
    							KRelayMove.MoveClient(client3, KRelayMove.Direction.down, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client3, KRelayMove.Direction.up, 1, 8.332474E+09f);
    						}
    					}
    				}
    			}
    			foreach(Client client4 in clientlist) {
    				if (client != WhoFollowme) {
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client4.PlayerData.Pos.X)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client4.PlayerData.Pos.X > WhoFollowme.PlayerData.Pos.X) {
    							KRelayMove.MoveClient(client4, KRelayMove.Direction.left, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client4, KRelayMove.Direction.right, 1, 8.332474E+09f);
    						}
    					}
    					if (Math.Abs((float)(WhoFollowme.PlayerData.Pos.X - client4.PlayerData.Pos.Y)) > KRelayMove.clientlist[KRelayMove.IndexOfClient(client)].Step) {
    						if (client4.PlayerData.Pos.Y > WhoFollowme.PlayerData.Pos.Y) {
    							KRelayMove.MoveClient(client4, KRelayMove.Direction.down, 1, 8.332474E+09f);
    						} else {
    							KRelayMove.MoveClient(client4, KRelayMove.Direction.up, 1, 8.332474E+09f);
    						}
    					}
    				}
    			}
    		}
    		private void OnCommand(Client client, string command, string[] args) {
    			Enabled = !Enabled;
    			if (Enabled) {
    				WhoFollowme = client;
    				PluginUtils.CreateNotification(client.ObjectId, "Now Leader " + client.PlayerData.Name);
    			} else {
    				PluginUtils.CreateNotification(client.ObjectId, "Followme Plugin Disabled");
    			}
    		}
    
    		private void proxy_ClientConnected(Client client) {
    			clientlist.Add(client);
    		}
    
    		private void proxy_ClientDisconnected(Client client) {
    			clientlist.Remove(client);
    			KRelayMove.MoveClient(client, KRelayMove.Direction.up, 5);
    		}
    	}
    }
    thanks lord, ur the best

Similar Threads

  1. [Realm Relay] [Orape] Hotkey teleport to unnamed leader (for multiboxing)
    By 059 in forum Realm of the Mad God Tutorials & Source Code
    Replies: 7
    Last Post: 05-27-2015, 08:33 AM
  2. [Request] RotMG Hacked Client/Multibox for Mac
    By pyropeanut63 in forum Realm of the Mad God Hacks & Cheats
    Replies: 2
    Last Post: 08-12-2012, 07:38 PM
  3. Multiboxing for dummies (Includes some extras!)
    By DirtySpartan in forum Realm of the Mad God Hacks & Cheats
    Replies: 32
    Last Post: 07-13-2012, 01:28 AM
  4. Multiboxing with trinity?
    By oLoGiiCzx in forum Realm of the Mad God Hacks & Cheats
    Replies: 9
    Last Post: 07-02-2012, 11:37 PM
  5. " The Mass Relay "
    By Faux in forum Showroom
    Replies: 9
    Last Post: 05-19-2011, 07:06 PM