Esempio n. 1
0
        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|");
        }
Esempio n. 2
0
        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|");
        }
Esempio n. 3
0
    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);
    }
Esempio n. 4
0
        public void SendConsoleMessage(string msg, int delay = 0)
        {
            VariantList var = new VariantList()
            {
                "OnConsoleMessage", msg
            };

            Send(var, -1, delay);
        }
Esempio n. 5
0
        public void SendTextOverlay(string text)
        {
            VariantList var = new VariantList()
            {
                "OnTextOverlay", text
            };

            Send(var);
        }
Esempio n. 6
0
        public void SendOnRemove(int netId)
        {
            VariantList var = new VariantList()
            {
                "OnRemove", "netID|" + netId + "\n"
            };

            Send(var);
        }
Esempio n. 7
0
        public void SendPlayPositioned(int netId, string soundName, int delay = 0)
        {
            VariantList var = new VariantList()
            {
                "OnPlayPositioned", $"audio/{soundName}.wav"
            };

            Send(var, netId, delay);
        }
Esempio n. 8
0
 public void GenerateVariants()
 {
     // Add variants by string
     variants = new List <Variant>();
     foreach (string s in variant_strings)
     {
         variants.Add(VariantList.GetVariant(s));
     }
 }
Esempio n. 9
0
        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);
        }
Esempio n. 10
0
        public void SendGrowID()
        {
            VariantList var = new VariantList()
            {
                "SetHasGrowID", 1, Name, Password
            };

            Send(var);
        }
Esempio n. 11
0
        public void SendFailedToEnterWorld(int delay = 0)
        {
            VariantList var = new VariantList()
            {
                "OnFailedToEnterWorld", 1
            };

            Send(var, -1, delay);
        }
Esempio n. 12
0
        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);
        }
Esempio n. 13
0
        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);
        }
Esempio n. 14
0
        public void SendDialog(string dialog)
        {
            InDialog = true;

            VariantList var = new VariantList()
            {
                "OnDialogRequest", dialog + "\n"
            };

            Send(var);
        }
Esempio n. 15
0
        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);
        }
Esempio n. 16
0
        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);
        }
Esempio n. 17
0
        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);
        }
Esempio n. 18
0
        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);
        }
Esempio n. 19
0
        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);
        }
Esempio n. 20
0
        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
            {
            }
        }