How to use pointer from CheatEngine in C#

Posts 1–15 of 25 · Page 1 of 2
How to use pointer from CheatEngine in C#
Hello,
I am new to mw3 coding world and trying to start make some program for MW3.

Using the specified addresses is different but finding an address seems to be whole different thing.

I mean i tried to find an address for name faking.

Current MW3Version I use :1.4382

i think i found the static pointer but now how to use it. cuz when i put the pointer in c# program it dont work but when i try to change value from C.E it works?

please see the pic.



Code Behind Button.
Code:
        private void fkbtn_Click(object sender, EventArgs e)
        {
            if (Process_Handle("iw5mp"))
            {

                WriteString(0x058CB138, fktxtbx.Text);
            }

            else
            {
                MessageBox.Show("Process No Found");
            }
        }
what to do? can anyone help me in this?
You read the value of the pointer to get the address it's pointed to and then add the offset..
Code:
private void fkbtn_Click(object sender, EventArgs e)
        {
            if (Process_Handle("iw5mp"))
            {

                WriteString((0x08ED1542 + ReadInteger(0x058CB138)), "Hey");
            }

            else
            {
                MessageBox.Show("Process No Found");
            }
        }
try something like that.
I don't remember for sure tho :P
First of all many many thanks for your replies. Its so good to see ppl helping others here.

@Jorndel
I tried the values, basically copy pasted what you gave. but it didn't worked.
isn't there any way to know the exact static address for name for mw3.

i am using visual studio and c#. To be honest i am inspired from your given 28min video. I applied your method on Prestige Tokens, XP, Double XP and they are working awesome but i got there values from here mpgh and tried on MW3 and its working flawlessly.

Dear PG Friend, but i couldnt find nickname address from here so tried CheatEngine to find adderess and then tried to find the pointer of which i displayed pic.

Pointer was i think static cuz when i closed and restarted game the pointer was working even the address was changed. i mean when i put value it changed my name in game.

but i dont understand how to change value through pointer in C#.

I am very sorry if i wrote too much. Again i am new in coding of mw3 and CheatEngine. I am learning Cheatengine throught its tuts.

Regards,
haider
Quote Originally Posted by pakistanihaider View Post
First of all many many thanks for your replies. Its so good to see ppl helping others here.

<!-- BEGIN TEMPLATE: dbtech_usertag_mention -->
@<a href="http://www.mpgh.net/forum/member.php?u=599915" target="_blank">Jorndel</a>
<!-- END TEMPLATE: dbtech_usertag_mention -->
I tried the values, basically copy pasted what you gave. but it didn't worked.
isn't there any way to know the exact static address for name for mw3.

i am using visual studio and c#. To be honest i am inspired from your given 28min video. I applied your method on Prestige Tokens, XP, Double XP and they are working awesome but i got there values from here mpgh and tried on MW3 and its working flawlessly.

Dear PG Friend, but i couldnt find nickname address from here so tried CheatEngine to find adderess and then tried to find the pointer of which i displayed pic.

Pointer was i think static cuz when i closed and restarted game the pointer was working even the address was changed. i mean when i put value it changed my name in game.

but i dont understand how to change value through pointer in C#.

I am very sorry if i wrote too much. Again i am new in coding of mw3 and CheatEngine. I am learning Cheatengine throught its tuts.

Regards,
haider
You sure you did the pointers right?


I might bother to try to give you the real stuff.
But who knows :P

EDIT:
Looked, and register there is = no no.
So, good luck anyway
Quote Originally Posted by pakistanihaider View Post
Pointer was i think static cuz when i closed and restarted game the pointer was working even the address was changed. i mean when i put value it changed my name in game.
1. Start CE and find your name -> pointerscan -> get a million results
2. Restart the game -> find new address -> check the previous pointerscan for results to your address -> get 100 results
3. Restart the game -> find new address -> check the previous pointerscan for results to your address -> get 10 results
4. Restart the game -> find new address -> check the previous pointerscan for results to your address -> get 2 results

And there you have a static pointer which can be used.

Then:
Get the base memory address for MW3 (the "iw5mp.exe" part).
Read the integer value stored at the address of the pointer.
Take the value and add the offset.
Use the new value as an address and write something to it.
Profit.

Maybe it's easier in code..
Code:
#include <windows.h>

int main()
{
	DWORD pointer_add = 0x18C21;
	DWORD offset = 0xC;
	DWORD address = NULL;
	
	char meep[] = "I'm a cake";
	
	BYTE *Cake = NULL;
	Cake = Get_base("IW5"); // IW5mp.exe, base from windowclass
	
	address = (DWORD)(Cake + pointer_add + offset);
	Set_Memory("IW5", address, meep); // I'll just have the function fill in the handles by windowclass because I'm lazy..
	/*
	WriteProcessMemory(
    __in      HANDLE hProcess,
    __in      LPVOID lpBaseAddress,
    __in_bcount(nSize) LPCVOID lpBuffer,
    __in      SIZE_T nSize,
    __out_opt SIZE_T * lpNumberOfBytesWritten
    )
	*/
	
	return 0x1C3;
}
Hmm.. nope..
@pakistanihaider AOA, Im a paki too, I hope You find some solution to your problem, You play on Steam or AlterIWnet?
i play on both steam and teknomw3.

No. i am still figuring out how to use cheatengine
rescan and again rescan how and how to find base value ??
Quote Originally Posted by pakistanihaider View Post
i play on both steam and teknomw3.

No. i am still figuring out how to use cheatengine
rescan and again rescan how and how to find base value ??
You have seen the video I showed you?
If I remember right I will show you the pointer values you need to take and use.
Also remember to put them in the right order.

Doing more re-scans just give you a more "secure" pointer. Instead of some that might not work for all. (Or every time)
Quote Originally Posted by Jorndel View Post
You have seen the video I showed you?
If I remember right I will show you the pointer values you need to take and use.
Also remember to put them in the right order.
what do you mean exactly? So to read/write pointers you have to add offsets to it? And then use that as an adress? Or not...?
Quote Originally Posted by stevonator View Post
what do you mean exactly? So to read/write pointers you have to add offsets to it? And then use that as an adress? Or not...?
CoNfUsEd...

You have to read the value from the offset you are pointed to.
Then you add that to the Main Offset, and continue reading and adding until you reach the pointer end.
Quote Originally Posted by Jorndel View Post


CoNfUsEd...

You have to read the value from the offset you are pointed to.
Then you add that to the Main Offset, and continue reading and adding until you reach the pointer end.
Offset = Adress ? ...
Quote Originally Posted by Horror View Post
Offset = Adress ? ...
I don't really remember what is what now :S

Wiki: An offset usually denotes the number of address locations added to a base address in order to get to a specific absolute address

Means an Offset is the Value added to the Main Address.
And the address is the "point" in the memory.
(Like XP and such. And offsets are what you read that are used for pointers)

If I remember/understand it right :P
@Horror

Offset:


Address:
Quote Originally Posted by Jorndel View Post


I don't really remember what is what now :S

Wiki: An offset usually denotes the number of address locations added to a base address in order to get to a specific absolute address

Means an Offset is the Value added to the Main Address.
And the address is the "point" in the memory.
(Like XP and such. And offsets are what you read that are used for pointers)

If I remember/understand it right :P


Just a "thing":

Offsets: (Memory View)
1-2-3
A-B-C

Address:
1+B = Address

Think that is mainly what it means :S
Adress : 0x01B3DCD
Offset : 0x6B
Like that ? Im confused too now xD
Still don't get it could you maybe make a voice tutorial please?
Posts 1–15 of 25 · Page 1 of 2

Post a Reply

Similar Threads

Tags for this Thread

None

Talk with us