Esempio n. 1
0
        private void setEnvironmentButton_Click(object sender, EventArgs e)
        {
            TCPGecko gecko = ((Form1)this.Owner).Gecko;

            gecko.poke32(environmentFlagsAddress, 0x0);
            gecko.poke32(environmentFlagsAddress + 0x4, 0x001FFFFF);
            gecko.poke32(environmentFlagsAddress + 0x8, 0x0);
            gecko.poke32(environmentFlagsAddress + 0xC, 0x0003EFBE);
        }
Esempio n. 2
0
        private void ApplyButton_Click(object sender, EventArgs e)
        {
            hold();
            RecalculatePointer();

            if (!FreezeCheckBox.Checked)
            {
                Gecko.poke32(timerAddress, (uint)TimerBox.Value * 60);
            }
            else
            {
                Gecko.poke32(timerAddress, 0xFFFFFFFE);
            }

            release();
        }
Esempio n. 3
0
        private void OKButton_Click(object sender, EventArgs e)
        {
            // poke weapons into memory
            PokeWeapons(weapons, gecko, diff);

            // poke the equipped weapon
            gecko.poke32(Form1.equippedWeaponAddress, equippedWeapon);
        }
Esempio n. 4
0
        private void ApplyButton_Click(object sender, EventArgs e)
        {
            RecalculatePointer();

            if (!BattleDojoRadioButton.Checked && !ReconRadioButton.Checked && !AmiiboRadioButton.Checked)
            {
                MessageBox.Show(Properties.Strings.SELECT_TIMER_TYPE_TEXT);
                return;
            }

            if (!FreezeCheckBox.Checked)
            {
                gecko.poke32(timerAddress, Convert.ToUInt32(TimerBox.Value * 60));
            }
            else
            {
                gecko.poke32(timerAddress, 0xFFFFFFFE);
            }
        }
Esempio n. 5
0
        public int fixStuff(string str1, int invalid, string str2, uint fixAddress, int newPokeVal, int newVal,
                            int noVal)
        {
            var fix = MessageBox.Show(str1 + invalid + str2, Strings.INVALID, MessageBoxButtons.YesNo);

            if (fix == DialogResult.Yes)
            {
                _gecko.poke32(fixAddress + MemoryUtils.Offset, Convert.ToUInt32(newPokeVal));
                return(newVal);
            }
            return(noVal);
        }
Esempio n. 6
0
        private void applyButton_Click(object sender, EventArgs e)
        {
            SetFlag(ref progression, 0x1, tutorialBox.Checked);
            SetFlag(ref progression, 0x2, splatfestBox.Checked);
            SetFlag(ref progression, 0x4, rankedNewsBox.Checked);
            SetFlag(ref progression, 0x8, lobbyBox.Checked);
            SetFlag(ref progression, 0x10, heroSuitBox.Checked);
            SetFlag(ref progression, 0x80, greatZapfishBox.Checked);
            SetFlag(ref progression, 0x100, cuttlefishPostGameBox.Checked);
            SetFlag(ref progression, 0x800, rankedUnlockedBox.Checked);
            SetFlag(ref progression, 0x1000, rankShownBox.Checked);
            SetFlag(ref progression, 0x10000, snailsShownBox.Checked);
            SetFlag(ref progression, 0x100000, levelCapRaisedBox.Checked);
            SetFlag(ref progression, 0x200000, warningBox.Checked);

            gecko.poke32(progressBitsAddress + ((Form1)this.Owner).diff, progression);
        }
Esempio n. 7
0
        private void OKButton_Click(object sender, EventArgs e)
        {
            TCPGecko gecko = ((Form1)this.Owner).Gecko;

            // poke save slots in the list into memory
            uint currentPosition = saveSlotsAddress;

            foreach (LevelData data in levelSaveData)
            {
                // poke values
                gecko.poke32(currentPosition, data.levelNumber);
                gecko.poke32(currentPosition + 0x4, data.clearState);
                gecko.poke32(currentPosition + 0x8, Convert.ToUInt32(data.scroll));

                // move to next save slot
                currentPosition += 0xC;
            }

            // fill in the rest of the slots with dummy data
            for (int i = levelSaveData.Count; i < 64; i++)
            {
                // poke values
                gecko.poke32(currentPosition, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0x4, 0x00000000);
                gecko.poke32(currentPosition + 0x8, 0x00000000);

                // move to next save slot
                currentPosition += 0xC;
            }

            // poke power eggs
            gecko.poke32(powerEggsAddress, Convert.ToUInt32(powerEggsBox.Value));

            // poke upgrades
            gecko.poke32(heroShotAddress, Convert.ToUInt32(heroShotBox.SelectedIndex));
            gecko.poke32(inkTankAddress, Convert.ToUInt32(inkTankBox.SelectedIndex));
            gecko.poke32(splatBombAddress, Convert.ToUInt32(splatBombBox.SelectedIndex));

            // for these upgrades, 0xFFFFFFFF = locked
            if (burstBombBox.SelectedIndex == 0)
            {
                gecko.poke32(burstBombAddress, 0xFFFFFFFF);
            }
            else
            {
                gecko.poke32(burstBombAddress, Convert.ToUInt32(burstBombBox.SelectedIndex - 1));
            }

            if (seekerBox.SelectedIndex == 0)
            {
                gecko.poke32(seekerAddress, 0xFFFFFFFF);
            }
            else
            {
                gecko.poke32(seekerAddress, Convert.ToUInt32(seekerBox.SelectedIndex - 1));
            }
        }
Esempio n. 8
0
        public static void PokeWeapons(List <Weapon> weapons, TCPGecko gecko, uint diff)
        {
            uint currentPosition = Form1.weaponsAddress + diff;

            foreach (Weapon weapon in weapons)
            {
                gecko.poke32(currentPosition, weapon.id);
                gecko.poke32(currentPosition + 0x4, weapon.weaponSpecificNumber);
                gecko.poke32(currentPosition + 0x8, (uint)weapon.subWeapon);
                gecko.poke32(currentPosition + 0xc, (uint)weapon.specialWeapon);
                gecko.poke32(currentPosition + 0x10, weapon.turfInked);
                gecko.poke32(currentPosition + 0x18, weapon.lastUsageTimestamp);

                if (weapon.isNew)
                {
                    gecko.poke32(currentPosition + 0x1c, 0x0);
                }
                else
                {
                    gecko.poke32(currentPosition + 0x1c, 0x00010000);
                }

                // move to next slot
                currentPosition += 0x28;
            }

            // fill the rest of the slots with dummy data
            for (int i = weapons.Count; i < 128; i++)
            {
                gecko.poke32(currentPosition, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0x4, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0x8, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0xc, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0x10, 0x0);
                gecko.poke32(currentPosition + 0x18, 0x0);
                gecko.poke32(currentPosition + 0x1c, 0x0);

                // move to next slot
                currentPosition += 0x28;
            }
        }
Esempio n. 9
0
        public void load()
        {
            hold();

            rank   = Convert.ToInt32(Gecko.peek(rankAddress + diff)) + 1;
            okane  = Convert.ToInt32(Gecko.peek(okaneAddress + diff));
            ude    = Convert.ToInt32(Gecko.peek(udeAddress + diff));
            mae    = Convert.ToInt32(Gecko.peek(maeAddress + diff));
            sazae  = Convert.ToInt32(Gecko.peek(sazaeAddress + diff));
            gender = Convert.ToInt32(Gecko.peek(genderAddress + diff));
            eyes   = Convert.ToInt32(Gecko.peek(eyesAddress + diff));
            skin   = Convert.ToInt32(Gecko.peek(skinAddress + diff));
            figure = Gecko.peek(amiiboAddress + diff);

            try
            {
                rankBox.Value = rank;
            }
            catch (ArgumentOutOfRangeException)
            {
                int rankDisplay = fixStuff(Properties.Strings.BAD_RANK_1, rank, Properties.Strings.BAD_RANK_2, 0x12CDC1A8, 49, 50, 1);
                rankBox.Value = rankDisplay;
            }

            try
            {
                kaneBox.Value = okane;
            }
            catch (ArgumentOutOfRangeException)
            {
                int okaneDisplay = fixStuff(Properties.Strings.BAD_OKANE_1, okane, Properties.Strings.BAD_OKANE_2, 0x12CDC1A0, 9999999, 9999999, 0);
                kaneBox.Value = okaneDisplay;
            }

            try
            {
                maeBox.Value = mae;
            }
            catch (ArgumentOutOfRangeException)
            {
                int maeDisplay = fixStuff(Properties.Strings.BAD_MAE_1, mae, Properties.Strings.BAD_MAE_2, 0x12CDC1B0, 99, 99, 0);
                maeBox.Value = maeDisplay;
            }

            try
            {
                sazaeBox.Value = sazae;
            }
            catch (ArgumentOutOfRangeException)
            {
                int sazaeDisplay = fixStuff(Properties.Strings.BAD_SAZAE_1, sazae, Properties.Strings.BAD_SAZAE_2, 0x12CDC1B4, 999, 999, 0);
                sazaeBox.Value = sazaeDisplay;
            }

            try
            {
                udeBox.SelectedIndex = ude;
            }
            catch (ArgumentOutOfRangeException)
            {
                int udeDisplay = fixStuff(Properties.Strings.BAD_UDE_1, ude, Properties.Strings.BAD_UDE_2, 0x12CDC1AC, 10, 10, 0);
                udeBox.SelectedIndex = udeDisplay;
            }

            try
            {
                genderBox.SelectedIndex = gender;
            }
            catch (ArgumentOutOfRangeException)
            {
                genderBox.SelectedIndex = 0;
                Gecko.poke32(genderAddress, 0x00000000);
            }

            if (figure == 0xFFFFFFFF)
            {
                amiiboBox.SelectedIndex = 0;
            }
            else
            {
                amiiboBox.SelectedIndex = Convert.ToInt32(figure + 1);
            }

            eyeBox.SelectedIndex  = eyes;
            skinBox.SelectedIndex = skin;
            release();
        }
Esempio n. 10
0
        public static void PokeWeapons(List <Weapon> weapons, TCPGecko gecko, uint offset)
        {
            var currentPosition = (uint)GearAddress.Weapons + offset;

            foreach (var weapon in weapons)
            {
                gecko.poke32(currentPosition, weapon.Id);
                gecko.poke32(currentPosition + 0x4, weapon.WeaponSpecificNumber);
                gecko.poke32(currentPosition + 0x8, (uint)weapon.SubWeapon);
                gecko.poke32(currentPosition + 0xc, (uint)weapon.SpecialWeapon1);
                gecko.poke32(currentPosition + 0x10, weapon.TurfInked);
                gecko.poke32(currentPosition + 0x18, weapon.LastUsageTimestamp);

                if (weapon.IsNew)
                {
                    gecko.poke32(currentPosition + 0x1c, 0x0);
                }
                else
                {
                    gecko.poke32(currentPosition + 0x1c, 0x00010000);
                }
                // move to next slot
                currentPosition += 0x28;
            }

            // fill the rest of the slots with dummy data
            for (var i = weapons.Count; i < 128; i++)
            {
                gecko.poke32(currentPosition, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0x4, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0x8, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0xc, 0xFFFFFFFF);
                gecko.poke32(currentPosition + 0x10, 0x0);
                gecko.poke32(currentPosition + 0x18, 0x0);
                gecko.poke32(currentPosition + 0x1c, 0x0);

                // move to next slot
                currentPosition += 0x28;
            }
        }
Esempio n. 11
0
 private void OKButton_Click(object sender, EventArgs e)
 {
     hold();
     pokeRank(0x12CDC1A4);                                     //rank
     Gecko.poke32(0x12CDC1A0 + diff, ToUInt32(kaneBox.Value)); //money
     Gecko.poke32(0x12CDC1B4 + diff, ToUInt32(sazaeBox.Value));
     pokeUdemae(0x12CDC1AC + diff);                            //udemae
     Gecko.poke32(0x12CDC1B0 + diff, ToUInt32(maeBox.Value));  //udemae2
     pokeGender(0x12CD1D90 + diff);                            //gender
     pokeSkin(0x12CD1D94 + diff);                              //skin
     pokeEyes(0x12CD1D98 + diff);                              //eyes
     pokeAmiibo(0x12D1F130 + diff);                            //amiibo
     release();
 }