You are viewing our Forum Archives. To view or take place in current topics click here.
How To Make A XRPC Tool (Very Detailed)
Posted:

How To Make A XRPC Tool (Very Detailed)Posted:

Zero_Point_Five_Jr
  • TTG Addict
Status: Offline
Joined: Mar 03, 201212Year Member
Posts: 2,739
Reputation Power: 128
Status: Offline
Joined: Mar 03, 201212Year Member
Posts: 2,739
Reputation Power: 128

How To Make A XRPC Tool

This tutorial has taken over 2 hours to write so if you are going to copy and paste it anywhere please at least leave credit.


Requirements
Visual Studios
XRPC
XRPC++
Basic Knowledge Of C#
Jtag/RGH For Testing

Download Links At the Bottom


Please note this can get very confusing so please don't complain if you find it hard to understand. If you do need help with anything atalll please feel free to comment below and i will help you.

Part 1
Firstly, you need to open up visual Studios and Click on New Project. You can then select the name of your project and choose where you wish to save it. In my case i am going to call it "TTG 0.5Jr Tutorial". You then select ok and move onto the next step. Now you should have a white square in the middle of your screen like the one shown below:
[ Register or Signin to view external links. ]
You can use any of the points around the white box to resize and reshape the Form. Once you have got the shape that you wanted, look along the top of Visual Studios until you see a Tab Called "Project". Hover over that and then select "Add Reference". Here you need to browse through your files until you find XRPC.dll (Downloaded earlier) and add that to your references. Now check the checkbox next to XRPC as shown below:
[ Register or Signin to view external links. ]
Then select ok.


Part 2

In this step we will be adding the essential buttons needed. First you are going to need to go to your tool box (Located on the Left of the Visual Studios Screen and look for button. Here is what it will look like :
[ Register or Signin to view external links. ]

Then you need to select the button and drag it onto your Form (WhiteBox in the middle). You will then get something like this:
[ Register or Signin to view external links. ]
Once again you can reshape and resize to you liking. You can also go to the Properties tab and look for something called "Text". Editing this will allow you to change the text in the Button. We need to change the Text to "Connect" as Shown Below:
[ Register or Signin to view external links. ]
Now we need to double click on the button. Lots of text will appear on your screen but don't be overwhelmed buy this. Next thing you need to do is scroll up to the top of your page until you see lots of text saying Using Something;. You will then need to add the following:

[ Register or Signin to view external links. ]
If you installed XRPC.dll correctly earlier this should work without any errors. Now you need to scroll down a bit until you see The following:
 public partial class Form1 : Form
    {
        public Form1()


you need that to this:


public partial class Form1 : Form
    {
        XRPC Jtag = new XRPC();
        public Form1()

Once you have added that you can scroll down until you get into your "Connect" Button again. You then need to add the following into that button:


The code below will basically attempt to connect to your console when you click the connect button. If it connects it will display the first message box saying "Successfully Connected To JTAG!" But if it doesnt connect it will say the second message bpx "Error when connecting to console!". This is a very simple code ehoch you will learn in know time. An easier way to remember is is because we are using If/Else statements. So IF it connects it will display message box 1 ELSE it will display thother message box:


Jtag.Connect();
            if (Jtag.activeConnection)
                MessageBox.Show("Successfully Connected To Jtag!");

            else
            {
                MessageBox.Show("Error When Connecting To Console!");
            }
        }


Once you have done that without any errors it means you have successfully made a Tool that connects to your JTAG.

Part 3

In this part I will be showing you how to actually activate mods after your JTAG Has been connected. What you will need to do is thnk of the game that you are wanting to do this for. In my example i am going to be doing MW3. So the first mod i am going to add is Laser. So i am gojng to add a button Like we did earlier and name it "Laser". I will then once again double click on the button and enter the following Code:

The following code is used to set a mod/Cheat onto the game. In this example we well be doing laser for ,MW3. As you can dee it says set memory so its obviously going to set some kind of change onto your xbox (mods). Then it has the offset and bytes which we will talk about more later:

Jtag.SetMemory(0x8215A2C0, new byte[] { 0x2F, 10, 00, 01 });

As you can see by the name of that code "SetMemory" this option means that if your JTAG is connected it is going to Set the memprys that you choose to add so whatever mods you choose it is going to send that to your Console. The Code 0x8215A2C0 is called an Offset. You may have heard of these before as they are very common in the modding world. This is the code that will actually Activate the Mod so E.G Laser = 0x8215A2C0, Unlimited Ammo = 0x820F63E0. The other series of smaller codes ( 0x2F, 10, 00, 01 ) are called bytes. This determines whether you want the mod to Be Activated, or Deactivated. Some mods don't use Bytes as explained later in the tutorial. Once you have done that you can turn on your JTAG connect to your tool and boot up the game your tool is for. You can then press the Start Icon as shown below to open your tool:
[ Register or Signin to view external links. ]
This will open the tool along as there are no build errors. If there are build errors you have Done something wrong. Once the tool has opened you can connect to your JTAG and start the game on your JTAG. then activate the mod that you have tried (In my example it was laser and the mod should then appear on the screen of your JTAG. If done successfully you have now made your First Modding tool. You can now go onto adding more and more mods until you eventually have all the mods that you want. To add a different mod you just need to do the exact same thing as above but you will need to change the offsets/Bytes.

Part 4

In this step i will show you about setting different Mods such as Jump Height. These mods are different as they don't require you to use Bytes but instead you need to use the value of what you want. Firstly we are going to add 3 Buttons. Button one called "Normal Jump", Button 2 Called " Super Jump" and button 3 Called "No Jump". Here is what it should look like:
[ Register or Signin to view external links. ]
You can then click in one of the buttons and add the following Codes:

For Super Jump Button Add:  Jtag.WriteFloat(0x82001D68, 1200);
For Normal Jump Button Add:  Jtag.WriteFloat(0x82001D68, 30);
For No Jump Button Add:  Jtag.WriteFloat(0x82001D68, 0);


As you can see, only the value at the end changes. This is the value of which you would like the mod to be. 1200 = jump height times 1200. ETC

As you can see only the number at the end changes. Tis is because you are changing the value. E.G "1200" is the highest so that is Super Jump where as "0" is the lowest and that means it is No Jump.



FAQ

Do I need to have a JTAG for This?
Yes you cant use XRPC Tools on a normal xbox.

Does My JTAG Need To be Online?
it depends if the mods you are using work Offline altough most do.

What games Can I MAKE a xrpc tool FOR?
You can make one for almots any game.

Will this get me banned?
Well if your modding then there is a chace you will get banned.



Downloads/Extras


Visual Studios 2013

Download: [ Register or Signin to view external links. ]
Virus Scan: None needed as its a link and doesn't lead directly to a download therefore i cant add a Virus Scan


XRPC

Download: [ Register or Signin to view external links. ]
Virus Scan: [ Register or Signin to view external links. ]


XRPCPlusPlus

Download: [ Register or Signin to view external links. ]
Virus Scan: [ Register or Signin to view external links. ]




Last edited by Zero_Point_Five_Jr ; edited 2 times in total

The following 15 users thanked Zero_Point_Five_Jr for this useful post:

Reaper_TTG (06-10-2014), TTG_Works_V1 (06-09-2014), IZephyrXeX (06-09-2014), marsupiallizard (06-09-2014), -yoghurt (06-09-2014), Uhm (06-08-2014), tell (06-08-2014), Gary (06-08-2014), EnlightenedLobbies (06-08-2014), Batman- (06-08-2014), Nissan (06-08-2014), Reqzay (06-08-2014), -Excite- (06-08-2014), nice_gamer (06-08-2014), Suddenly (06-08-2014)
#2. Posted:
SaxbyxD
  • Wise One
Status: Offline
Joined: Oct 14, 201212Year Member
Posts: 589
Reputation Power: 23
Status: Offline
Joined: Oct 14, 201212Year Member
Posts: 589
Reputation Power: 23
Very nice tutorial but i saw a few mistakes on grammer and stuff

p.s sorry for being a grammer nazi..


Will help alot of people though!
#3. Posted:
Zero_Point_Five_Jr
  • TTG Addict
Status: Offline
Joined: Mar 03, 201212Year Member
Posts: 2,739
Reputation Power: 128
Status: Offline
Joined: Mar 03, 201212Year Member
Posts: 2,739
Reputation Power: 128
SaxbyxD wrote Very nice tutorial but i saw a few mistakes on grammer and stuff

p.s sorry for being a grammer nazi..


Will help alot of people though!

Oops will spell check now. I had spent long enough forgot to do that
#4. Posted:
Udyr
  • TTG Senior
Status: Offline
Joined: Mar 30, 201014Year Member
Posts: 1,482
Reputation Power: 70
Status: Offline
Joined: Mar 30, 201014Year Member
Posts: 1,482
Reputation Power: 70
Zero_Point_Five_Jr wrote
SaxbyxD wrote Very nice tutorial but i saw a few mistakes on grammer and stuff

p.s sorry for being a grammer nazi..


Will help alot of people though!

Oops will spell check now. I had spent long enough forgot to do that
I really liked the "grammer" part.
#5. Posted:
Vhekular
  • Resident Elite
Status: Offline
Joined: May 30, 201311Year Member
Posts: 235
Reputation Power: 10
Status: Offline
Joined: May 30, 201311Year Member
Posts: 235
Reputation Power: 10
Very nice tutorial, i have to say.
#6. Posted:
-Tupac
  • Gold Gifter
Status: Offline
Joined: Dec 08, 201310Year Member
Posts: 1,492
Reputation Power: 127
Status: Offline
Joined: Dec 08, 201310Year Member
Posts: 1,492
Reputation Power: 127
Really detailed tutorial man!

You have Zero.5 will have to help me out alot when my jtag is here :L
#7. Posted:
ObscureCoder
  • Resident Elite
Status: Offline
Joined: Jun 29, 201311Year Member
Posts: 211
Reputation Power: 13
Status: Offline
Joined: Jun 29, 201311Year Member
Posts: 211
Reputation Power: 13
You've got some of the information incorrect. Mainly the stuff about bytes. You also missed out that you need XBDM as a plugin along with DashLaunch.

"These mods are different as they don't require you to use Bytes but instead you need to use the value of what you want" - When you write float it gets the int bits then parses it to a hex string. It is then sent of as an XBDM command.
My point is:
using this

Jtag.WriteFloat(0x8200183c, 999);

is the same as:

Jtag.SetMemory(0x8200183c, new byte[]{ 0x44, 0x79, 0xC0 0x00 });

or the same as the uncommon cross language available XBDM command:

setmem addr=0x8200183c data=4479C000

Just saying. You seem to have a lib usage understanding of memory editing.

Props for making a tutorial though.
You should probably catch the exception that XRPC throws on connect if it can't connect.
#8. Posted:
Zero_Point_Five_Jr
  • TTG Addict
Status: Offline
Joined: Mar 03, 201212Year Member
Posts: 2,739
Reputation Power: 128
Status: Offline
Joined: Mar 03, 201212Year Member
Posts: 2,739
Reputation Power: 128
ObscureCoder wrote You've got some of the information incorrect. Mainly the stuff about bytes. You also missed out that you need XBDM as a plugin along with DashLaunch.

"These mods are different as they don't require you to use Bytes but instead you need to use the value of what you want" - When you write float it gets the int bits then parses it to a hex string. It is then sent of as an XBDM command.
My point is:
using this

Jtag.WriteFloat(0x8200183c, 999);

is the same as:

Jtag.SetMemory(0x8200183c, new byte[]{ 0x44, 0x79, 0xC0 0x00 });


or the same as the uncommon cross language available XBDM command:

setmem addr=0x8200183c data=4479C000

Just saying. You seem to have a lib usage understanding of memory editing.

Props for making a tutorial though.
You should probably catch the exception that XRPC throws on connect if it can't connect.

The reason I decide to go with the JTAG.Writefloat one is is because impersonally think it's a lot easier to understand. If your using JTAG.writefloat your just adding the value of what you want so E.G "999" that way you don't have to get confused with Bytes and stuff. I appreciate and understand where your coming from though ;)
#9. Posted:
nice_gamer
  • 2 Million
Status: Offline
Joined: Jul 19, 201113Year Member
Posts: 2,037
Reputation Power: 1150
Status: Offline
Joined: Jul 19, 201113Year Member
Posts: 2,037
Reputation Power: 1150
Great post, a lot of time obviously gone into this, you have my thanks!
#10. Posted:
ObscureCoder
  • Resident Elite
Status: Offline
Joined: Jun 29, 201311Year Member
Posts: 211
Reputation Power: 13
Status: Offline
Joined: Jun 29, 201311Year Member
Posts: 211
Reputation Power: 13
Zero_Point_Five_Jr wrote
ObscureCoder wrote You've got some of the information incorrect. Mainly the stuff about bytes. You also missed out that you need XBDM as a plugin along with DashLaunch.

"These mods are different as they don't require you to use Bytes but instead you need to use the value of what you want" - When you write float it gets the int bits then parses it to a hex string. It is then sent of as an XBDM command.
My point is:
using this

Jtag.WriteFloat(0x8200183c, 999);

is the same as:

Jtag.SetMemory(0x8200183c, new byte[]{ 0x44, 0x79, 0xC0 0x00 });


or the same as the uncommon cross language available XBDM command:

setmem addr=0x8200183c data=4479C000

Just saying. You seem to have a lib usage understanding of memory editing.

Props for making a tutorial though.
You should probably catch the exception that XRPC throws on connect if it can't connect.

The reason I decide to go with the JTAG.Writefloat one is is because impersonally think it's a lot easier to understand. If your using JTAG.writefloat your just adding the value of what you want so E.G "999" that way you don't have to get confused with Bytes and stuff. I appreciate and understand where your coming from though ;)


I'm mainly trying to get out there that using libs for writing floats is pretty insane.
You can do it in like every programming language #cross_platform_tools
Jump to:
You are viewing our Forum Archives. To view or take place in current topics click here.