public void CanGenerateCorrectSelectionData() { OptionList options = GetSampleOptions(); VariantList target = new VariantList(); MerchantTribeApplication mtapp = MerchantTribeApplication.InstantiateForMemory(new RequestContext()); List <OptionSelectionList> data = mtapp.CatalogServices.VariantsGenerateAllPossibleSelections(options); Assert.IsNotNull(data, "Data should not be null"); Assert.AreEqual(6, data.Count, "There should be six possible combinations"); List <string> keys = new List <string>(); foreach (OptionSelectionList o in data) { string k = OptionSelection.GenerateUniqueKeyForSelections(o); keys.Add(k); } Assert.AreEqual(6, keys.Count, "Key Count should be six."); Assert.IsTrue(keys.Contains("1-101|2-201|"), "Keys should contain 1-101|2-201|"); Assert.IsTrue(keys.Contains("1-101|2-202|"), "Keys should contain 1-101|2-202|"); Assert.IsTrue(keys.Contains("1-101|2-203|"), "Keys should contain 1-101|2-203|"); Assert.IsTrue(keys.Contains("1-102|2-201|"), "Keys should contain 1-102|2-201|"); Assert.IsTrue(keys.Contains("1-102|2-202|"), "Keys should contain 1-102|2-202|"); Assert.IsTrue(keys.Contains("1-102|2-203|"), "Keys should contain 1-102|2-203|"); }
public void CanGenerateCorrectSelectionData() { OptionList options = GetSampleOptions(); VariantList target = new VariantList(); MerchantTribeApplication mtapp = MerchantTribeApplication.InstantiateForMemory(new RequestContext()); List<OptionSelectionList> data = mtapp.CatalogServices.VariantsGenerateAllPossibleSelections(options); Assert.IsNotNull(data, "Data should not be null"); Assert.AreEqual(6, data.Count, "There should be six possible combinations"); List<string> keys = new List<string>(); foreach (OptionSelectionList o in data) { string k = OptionSelection.GenerateUniqueKeyForSelections(o); keys.Add(k); } Assert.AreEqual(6, keys.Count, "Key Count should be six."); Assert.IsTrue(keys.Contains("1-101|2-201|"), "Keys should contain 1-101|2-201|"); Assert.IsTrue(keys.Contains("1-101|2-202|"), "Keys should contain 1-101|2-202|"); Assert.IsTrue(keys.Contains("1-101|2-203|"), "Keys should contain 1-101|2-203|"); Assert.IsTrue(keys.Contains("1-102|2-201|"), "Keys should contain 1-102|2-201|"); Assert.IsTrue(keys.Contains("1-102|2-202|"), "Keys should contain 1-102|2-202|"); Assert.IsTrue(keys.Contains("1-102|2-203|"), "Keys should contain 1-102|2-203|"); }
private void Awake() { var tagInp = transform.Find("Tags").GetComponent <TMP_InputField>(); tagInp.onValueChanged.AddListener((s) => { SetTagsDropdown(VariantList.SuggestedVariants(s)); }); tagInp.onSubmit.AddListener((s) => { var res = VariantList.SuggestedVariants(s); if (res.Count == 0) { return; } ToggleVariant(res[0]); EventSystem.current.SetSelectedGameObject(transform.Find("Tags").gameObject, null); transform.Find("Tags").GetComponent <TMP_InputField>().ActivateInputField(); }); VariantSuggestions = new List <GameObject>(); for (int i = 0; i < 5; i++) { var g = Instantiate(VariantSuggestionsPrefab, transform); g.transform.localPosition += new Vector3(0, -i * g.GetComponent <RectTransform>().sizeDelta.y, 0); g.SetActive(false); VariantSuggestions.Add(g); } selectedVariants = new List <VariantList.VariantType>(); selectedVariants.Add(VariantList.VariantType.Base); }
public void SendConsoleMessage(string msg, int delay = 0) { VariantList var = new VariantList() { "OnConsoleMessage", msg }; Send(var, -1, delay); }
public void SendTextOverlay(string text) { VariantList var = new VariantList() { "OnTextOverlay", text }; Send(var); }
public void SendOnRemove(int netId) { VariantList var = new VariantList() { "OnRemove", "netID|" + netId + "\n" }; Send(var); }
public void SendPlayPositioned(int netId, string soundName, int delay = 0) { VariantList var = new VariantList() { "OnPlayPositioned", $"audio/{soundName}.wav" }; Send(var, netId, delay); }
public void GenerateVariants() { // Add variants by string variants = new List <Variant>(); foreach (string s in variant_strings) { variants.Add(VariantList.GetVariant(s)); } }
public static JToken ToJson(VariantList variantList) { var obj = (JObject)ToJson((SyntaxNode)variantList); obj["type"] = "VariantList"; obj["variants"] = new JArray(variantList.Variants.Select( x => ToJson(x))); return(obj); }
public void SendGrowID() { VariantList var = new VariantList() { "SetHasGrowID", 1, Name, Password }; Send(var); }
public void SendFailedToEnterWorld(int delay = 0) { VariantList var = new VariantList() { "OnFailedToEnterWorld", 1 }; Send(var, -1, delay); }
public void SendRequestWorldMenu() { VariantList var = new VariantList() { "OnRequestWorldSelectMenu", "default|retard\nadd_button|Showing: `wWorlds``|_catselect_|0.6|3529161471|\nadd_floater|Hey|69|0.55|3529161471\n" }; Send(var); }
public void SendSpawn(Player target, Vector2 pos, int id, int userId, string name) { string spawn = "spawn|avatar\nnetID|" + id + "\nuserID|" + userId + "\ncolrect|0|0|20|30\nposXY|" + pos.X + "|" + pos.Y + "\nname|``" + name + "``\ncountry|us\ninvis|0\nmstate|0\nsmstate|0\n"; VariantList var = new VariantList() { "OnSpawn", spawn }; target.Send(var, -1, -1); }
public void SendDialog(string dialog) { InDialog = true; VariantList var = new VariantList() { "OnDialogRequest", dialog + "\n" }; Send(var); }
public void SendSpawn(Vector2 pos) { string spawn = "spawn|avatar\nnetID|" + NetId + "\nuserID|" + UserId + "\ncolrect|0|0|20|30\nposXY|" + pos.X + "|" + pos.Y + "\nname|``" + Name + "``\ncountry|us\ninvis|0\nmstate|0\nsmstate|0\ntype|local\n"; VariantList var = new VariantList() { "OnSpawn", spawn }; Send(var, -1, -1); }
public void SendClothes(Player target, bool withSound = false) { Vector3 v = new Vector3(Clothes.Hair, Clothes.Shirt, Clothes.Pants); Vector3 v2 = new Vector3(Clothes.Feet, Clothes.Face, Clothes.Hand); Vector3 v3 = new Vector3(Clothes.Back, Clothes.Mask, Clothes.Neck); Vector3 v4 = new Vector3(Clothes.Ances, withSound ? 1.0f : 0.0f, 0.0f); VariantList var = new VariantList() { "OnSetClothing", v, v2, v3, (int)Clothes.SkinColor, v4 }; target.Send(var, NetId); }
public void SendTalkBubble(int netId, string text, bool append = false) { VariantList var = new VariantList() { "OnTalkBubble", netId, text, 0 }; if (append) { var.Add(1); } Send(var); }
public void SendLogin() { VariantList var = new VariantList() { "OnSuperMainStartAcceptLogonHrdxs47254722215a", (int)ItemBuilder.ItemDataHash, "127.0.0.1", "cache/", "cc.cz.madkite.freedom org.aqua.gg idv.aqua.bulldog com.cih.gamecih2 com.cih.gamecih com.cih.game_cih cn.maocai.gamekiller com.gmd.speedtime org.dax.attack com.x0.strai.frep com.x0.strai.free org.cheatengine.cegui org.sbtools.gamehack com.skgames.traffikrider org.sbtoods.gamehaca com.skype.ralder org.cheatengine.cegui.xx.multi1458919170111 com.prohiro.macro me.autotouch.autotouch com.cygery.repetitouch.free com.cygery.repetitouch.pro com.proziro.zacro com.slash.gamebuster", "proto=84|choosemusic=audio/mp3/about_theme.mp3|active_holiday=0|server_tick=226933875|clash_active=0|drop_lavacheck_faster=1|isPayingUser=0|" }; Send(var); }
public void Send(VariantList var, int id = -1, int delay = 0) { TankPacket tank = new TankPacket() { Type = 0x1, State = 0x8, NetId = id, Tile = delay, Size = var.Size, Data = var.SerializeToMemory() }; Send(tank); }
private void Peer_OnReceive_Client(object sender, ENetPacket e) { try { // this is a specific, external client made only for the purpose of using the TRACK packet for our gains/advantage in order to check all accounts quick and efficiently. byte[] packet = e.GetPayloadFinal(); Console.WriteLine("RECEIVE TYPE: " + packet[0].ToString()); updatestatus("Received:" + packet[0].ToString(), 1); switch (packet[0]) { case 1: // HELLO server packet. { PacketSending packetSender = new PacketSending(); packetSender.SendPacket(2, CreateLogonPacket(animaTextBox4.Text, animaTextBox3.Text), eNetP); updatestatus("Loginning: " + packet[0].ToString(), 1); break; } case 2: case 3: { Console.WriteLine("[ACCOUNT-CHECKER] TEXT PACKET CONTENT:\n" + Encoding.ASCII.GetString(packet.Skip(4).ToArray())); string game = Encoding.ASCII.GetString(packet.Skip(4).ToArray()); if (game.Contains("suspend")) { updatestatus("Account Suspended!", 3); eNetP.Disconnect(0); } if (game.Contains("ban")) { updatestatus("Account Banned!", 3); eNetP.Disconnect(0); } if (game.Contains("maint")) { updatestatus("Growtopia servers f**k!", 3); eNetP.Disconnect(0); } if (game.Contains("play.sfx")) { updatestatus("Account Bug!", 3); eNetP.Disconnect(0); } if (game.Contains("UPDATE REQUIRED")) { game.Replace("msg|`4", ""); game = Regex.Match(game, @"\d+").Value; game = game.Insert(1, "."); ACCOUNTCHECK.Properties.Settings.Default.gamever = game; ACCOUNTCHECK.Properties.Settings.Default.Save(); ACCOUNTCHECK.Properties.Settings.Default.gamever = game_version; Console.WriteLine("fuckchecker:" + game); updatestatus("Restart need!", 1); } if (game.Contains("password is wrong")) { updatestatus("Wrong Password!", 3); eNetP.Disconnect(0); } //Incorrect logon token.. if (game.Contains("Incorrect logon token")) { VariantList ad = new VariantList(); byte[] tankPacket = ad.get_struct_data(packet); VariantList.VarList vList = ad.GetCall(ad.get_extended_data(tankPacket)); vList.netID = BitConverter.ToInt32(tankPacket, 4); // add netid vList.delay = BitConverter.ToUInt32(tankPacket, 20); // add keep track of delay modifier string ip = (string)vList.functionArgs[4]; if (ip.Contains("|")) { ip = ip.Substring(0, ip.IndexOf("|")); } int port = (int)vList.functionArgs[1]; userID = (int)vList.functionArgs[3]; token = (int)vList.functionArgs[2]; lmode = (int)vList.functionArgs[5]; Growtopia_IP = ip; Growtopia_Port = port; ConnectCurrent(); updatestatus("Peer Reset Success!", 1); Thread.Sleep(10); } //Incorrect logon token.. break; } case 4: { VariantList ad = new VariantList(); byte[] tankPacket = ad.get_struct_data(packet); if (tankPacket[0] == 1) { VariantList.VarList vList = ad.GetCall(ad.get_extended_data(tankPacket)); vList.netID = BitConverter.ToInt32(tankPacket, 4); // add netid vList.delay = BitConverter.ToUInt32(tankPacket, 20); // add keep track of delay modifier // Console.WriteLine(VarListFetched.FunctionName); if (vList.FunctionName == "OnSendToServer") { string ip = (string)vList.functionArgs[4]; if (ip.Contains("|")) { ip = ip.Substring(0, ip.IndexOf("|")); } int port = (int)vList.functionArgs[1]; userID = (int)vList.functionArgs[3]; token = (int)vList.functionArgs[2]; lmode = (int)vList.functionArgs[5]; Growtopia_IP = ip; Growtopia_Port = port; ConnectCurrent(); updatestatus("Peer Reset Success!", 1); } // variant call, just rn used for subserver switching } break; } case (byte)NetTypes.NetMessages.TRACK: // TRACK packet. { Console.WriteLine("[ACCOUNT-CHECKER] TRACK PACKET CONTENT:\n" + Encoding.ASCII.GetString(packet.Skip(4).ToArray())); File.AppendAllText("s.temp", Encoding.ASCII.GetString(packet.Skip(4).ToArray())); Growtopia_Port = Growtopia_Master_Port; // todo auto get port Growtopia_IP = Growtopia_Master_IP; PacketSending asd = new PacketSending(); asd.SendPacket(2, "action|enter_game", eNetP); if (Encoding.ASCII.GetString(packet.Skip(4).ToArray()).Contains("Gem")) { File.AppendAllText("d.temp", Encoding.ASCII.GetString(packet.Skip(4).ToArray())); eNetP.Disconnect(0); } break; } default: break; } } catch { } }