You are viewing our Forum Archives. To view or take place in current topics click here.
Making an MW3 Tool - Need a bit of help.
Posted:

Making an MW3 Tool - Need a bit of help.Posted:

oMew
  • TTG Senior
Status: Offline
Joined: May 26, 201410Year Member
Posts: 1,030
Reputation Power: 45
Status: Offline
Joined: May 26, 201410Year Member
Posts: 1,030
Reputation Power: 45
Hey, you experienced coders out there. I was just wondering if any of you would be willing to give me a hand with this tool I am making. I have little experience in C# and I just want some guidance in how I should go about some things.

[ Register or Signin to view external links. ]

I know that it isn't much, but from when I started reading how to make an XRPC tool to actually get to where it is now is about 2 hours. I just need some help fixing a few things as well as a few questions. The main problem I am having would be disabling the mods with an "Off" next to them. I have no clue how to go about doing so, I tried setting the bytes to 0 to see if it would work, which it did to some extent. I did try out the tool on my RGH to see if everything worked, which it did, but when deactivating some of the mods, I would see it deactivate, then I would get a fatal crash shortly after.

Throughout making this, I have been debugging and fixing my errors to make sure everything is good, and the occasional test on my RGH here and there. I just don't want to go on without fixing these issues beforehand.

Any help would be greatly appreciated!


Last edited by oMew ; edited 1 time in total
#2. Posted:
MacMiller
  • TTG Contender
Status: Offline
Joined: Jul 12, 201014Year Member
Posts: 3,078
Reputation Power: 211
Status: Offline
Joined: Jul 12, 201014Year Member
Posts: 3,078
Reputation Power: 211
I can help you if you PM me.
#3. Posted:
Skittle
  • Comment King
Status: Offline
Joined: Aug 20, 201410Year Member
Posts: 6,813
Reputation Power: 413
Status: Offline
Joined: Aug 20, 201410Year Member
Posts: 6,813
Reputation Power: 413
I am not sure about how to turn the mods off, but by the looks of it on your tool there is no way to select which clients to activate the mods for. The easiest way to do this in my opinion is by using a Structure (struct in C#)
You will need to look up structures and how to create them (which is very easy) but I will walk you through the basics.
You have your structure with as many variables as you want, like this:

public struct clients
{
    public bool redbox
    public bool laser
    public bool god
    public bool unlimammo
    //etc..
}

You will have a 18 element array (hence a max of 18 clients

clients clientsArray[17];

So each element of the array will have the redbox, laser, god, unlimammo etc properties, which can be read and changed like so:

clientsArray[0].god = true
bool myBool = clientsArray[0].god

So when a button is pressed to activate a mod, the client number of the selected client in a ListView/ListBow will be stored in a variable, for the first client the client number would be 0. Let's say the toggle laser button was clicked in this case: (I am doing this code off the top of my head so anyone feel free to correct me)

private void btnLaser_Click(Object sender, EventArgs e)
{
int selectedClient = ListView.FocusedItem.Tag;
clientsArray[selectedClient].laser = !clientsArray[selectedClient].laser
//changes laser from true to false, or false to true
}

All you would need later is a procedure which is called after all of the above code which would then use Jtag.SetMemory to turn the mods on/off

private void setmods(string modType)
{
    switch(modType)
    {
        case "laser"
        {
            if(clientsArray[selectedClient].laser == true)
            {
                //turn mod on
            }
            else
            {
                //turn mod off
            }
        }
        case "redbox"
        {
            if(clientsArray[selectedClient].redbox == true)
            {
                //turn mod on
            }
            else
            {
                //turn mod off
            }
        }
        //ETC
    }
}

feel free to PM me if you need any more help
#4. Posted:
IDA
  • Powerhouse
Status: Offline
Joined: Sep 21, 201311Year Member
Posts: 454
Reputation Power: 26
Status: Offline
Joined: Sep 21, 201311Year Member
Posts: 454
Reputation Power: 26
-Skittle wrote I am not sure about how to turn the mods off, but by the looks of it on your tool there is no way to select which clients to activate the mods for. The easiest way to do this in my opinion is by using a Structure (struct in C#)
You will need to look up structures and how to create them (which is very easy) but I will walk you through the basics.
You have your structure with as many variables as you want, like this:

public struct clients
{
    public bool redbox
    public bool laser
    public bool god
    public bool unlimammo
    //etc..
}

You will have a 18 element array (hence a max of 18 clients

clients clientsArray[17];

So each element of the array will have the redbox, laser, god, unlimammo etc properties, which can be read and changed like so:

clientsArray[0].god = true
bool myBool = clientsArray[0].god

So when a button is pressed to activate a mod, the client number of the selected client in a ListView/ListBow will be stored in a variable, for the first client the client number would be 0. Let's say the toggle laser button was clicked in this case: (I am doing this code off the top of my head so anyone feel free to correct me)

private void btnLaser_Click(Object sender, EventArgs e)
{
int selectedClient = ListView.FocusedItem.Tag;
clientsArray[selectedClient].laser = !clientsArray[selectedClient].laser
//changes laser from true to false, or false to true
}

All you would need later is a procedure which is called after all of the above code which would then use Jtag.SetMemory to turn the mods on/off

private void setmods(string modType)
{
    switch(modType)
    {
        case "laser"
        {
            if(clientsArray[selectedClient].laser == true)
            {
                //turn mod on
            }
            else
            {
                //turn mod off
            }
        }
        case "redbox"
        {
            if(clientsArray[selectedClient].redbox == true)
            {
                //turn mod on
            }
            else
            {
                //turn mod off
            }
        }
        //ETC
    }
}

feel free to PM me if you need any more help


could do it this way seems less code, didnt read over yours properly but ..
EDIT : read through it i get it now lol, anyway heres my way (just showing it for the turning mods "off") in no way am i meaning its better than Skittles, just preference...

bool[] god = new bool[17];

void GodMode(int client)
{
if(god[client] == false)
{
     //god mode on code
    god[client] =true;
}
else
{
    //god mode off code
    god[client] = false;
}
}


And also OP to turn the mod off i will show you an example ....

1st way : look in IDA at the offset and see the original hex

2nd way : instead of having an on off button do something like this, usefull if you have something with playerstate


public bool[] redbox =  new bool[17];
public uint original_value;
button click blah blah
{
  int client = Convert.ToInt32(numericUpDown1.Value);
  if(redbox[client] == false)
  {
    original_value = JTAG.ReadUInt32(getPlayerState(client) + 0x13);//this gets oringinal value
    JTAG.WriteUInt32(getPlayerState(client) + 0x13, 0x10);//this turns it on
    redbox[client] = true;//toggle system
  }
  else
  {
    JTAG.WriteUInt32(getPlayerState(client) + 0x13, original_value);//makes it go back to original value
    redbox[client] = false;//toggle system
  }
}

right i do believe that would work never failed me
if you need further assistance pm me
#5. Posted:
cpp_modder
  • Resident Elite
Status: Offline
Joined: Aug 20, 201212Year Member
Posts: 256
Reputation Power: 9
Status: Offline
Joined: Aug 20, 201212Year Member
Posts: 256
Reputation Power: 9
-Skittle wrote I am not sure about how to turn the mods off, but by the looks of it on your tool there is no way to select which clients to activate the mods for. The easiest way to do this in my opinion is by using a Structure (struct in C#)
You will need to look up structures and how to create them (which is very easy) but I will walk you through the basics.
You have your structure with as many variables as you want, like this:

public struct clients
{
    public bool redbox
    public bool laser
    public bool god
    public bool unlimammo
    //etc..
}

You will have a 18 element array (hence a max of 18 clients

clients clientsArray[17];

So each element of the array will have the redbox, laser, god, unlimammo etc properties, which can be read and changed like so:

clientsArray[0].god = true
bool myBool = clientsArray[0].god

So when a button is pressed to activate a mod, the client number of the selected client in a ListView/ListBow will be stored in a variable, for the first client the client number would be 0. Let's say the toggle laser button was clicked in this case: (I am doing this code off the top of my head so anyone feel free to correct me)

private void btnLaser_Click(Object sender, EventArgs e)
{
int selectedClient = ListView.FocusedItem.Tag;
clientsArray[selectedClient].laser = !clientsArray[selectedClient].laser
//changes laser from true to false, or false to true
}

All you would need later is a procedure which is called after all of the above code which would then use Jtag.SetMemory to turn the mods on/off

private void setmods(string modType)
{
    switch(modType)
    {
        case "laser"
        {
            if(clientsArray[selectedClient].laser == true)
            {
                //turn mod on
            }
            else
            {
                //turn mod off
            }
        }
        case "redbox"
        {
            if(clientsArray[selectedClient].redbox == true)
            {
                //turn mod on
            }
            else
            {
                //turn mod off
            }
        }
        //ETC
    }
}

feel free to PM me if you need any more help
very nice skittles you was in this scene last time I was modding I have just moved into my own flat still need to get my computer and Internet installed but when I get them I would like to work with you on a project for aw or a newly released game and Ida I like that way but for a beginner programmer I think he should stick with skittles way but I would use the same way
#6. Posted:
oMew
  • TTG Senior
Status: Offline
Joined: May 26, 201410Year Member
Posts: 1,030
Reputation Power: 45
Status: Offline
Joined: May 26, 201410Year Member
Posts: 1,030
Reputation Power: 45
Still looking to get a bit of guidance with pulling Client Gamertags. Any help is appreciated!

Also looking to get some suggestions on what to add as well.
#7. Posted:
iiShez
  • Resident Elite
Status: Offline
Joined: Jan 18, 201410Year Member
Posts: 225
Reputation Power: 11
Status: Offline
Joined: Jan 18, 201410Year Member
Posts: 225
Reputation Power: 11
Prestige and level in the recovery part
#8. Posted:
oMew
  • TTG Senior
Status: Offline
Joined: May 26, 201410Year Member
Posts: 1,030
Reputation Power: 45
Status: Offline
Joined: May 26, 201410Year Member
Posts: 1,030
Reputation Power: 45
iiShez wrote Prestige and level in the recovery part


I'm looking to start working on that as soon as I fix everything else in the tool. I don't want to be skipping over any issues with the tool before starting something else.
#9. Posted:
iiShez
  • Resident Elite
Status: Offline
Joined: Jan 18, 201410Year Member
Posts: 225
Reputation Power: 11
Status: Offline
Joined: Jan 18, 201410Year Member
Posts: 225
Reputation Power: 11
And also a gamertah changer would make the tool even better
#10. Posted:
ip
  • Blind Luck
Status: Offline
Joined: Dec 30, 201211Year Member
Posts: 3,778
Reputation Power: 3016
Status: Offline
Joined: Dec 30, 201211Year Member
Posts: 3,778
Reputation Power: 3016
I know you aren't as experienced to know this as you said you were new, but instead of having two buttons that turn on and off the modifications, you could have somethingl like this.

button1_Click(object sender, EventArgs e)
{
     if (button1.Text == "Godmode On")
     {
          // toggle godmode on
          button1.Text = "Godmode Off";
     }
     else if (button1.Text == "Godmode Off")
     {
          // toggle godmode off
          button1.Text = "Godmode On";
     }
}

Hope this helps you, and it would make it look a lot better!
Jump to:
You are viewing our Forum Archives. To view or take place in current topics click here.