Jump to content
Moopler
  • 0
Blanc

Help Take Character Coordinate

Question

I'm trying to create my own trainer and I'm don't know how to take the char coordinate and assign it to button and use for spawn control and for mob vac. Thanks for help me out xD

Share this post


Link to post

15 answers to this question

Recommended Posts

  • 2

v180.1

CharacterPointer = 0x029E7028; //0085FD58: A1 ?? ?? ?? ?? 85 C0 75 ?? 5F C3 8D 48
CharXOffset = 0x13AF4; //01CDCE0C: 8B ? 8B ? ? ? ? ? 50 8D ? ? ? ? ? 51 E8 ? ? ? ? 83 ? ? 85 ? 74 ? 8B ? ? 83 (scroll up)
CharYOffset = 0x13AF8;

Share this post


Link to post
  • 2

//combo CharacterPointer + PeoplePointer + PeopleCountOffset
//01B68957: 64 A3 ? ? ? ? 89 4C ? ? 83 3D ? ? ? ? ? C6 44 ? ? ? 0F 84 ? ? ? ? 8B 0D
public const int StatisticsPointer = 0x02A1458C;
public const int HPOffset = 0x1640;
public const int HPOffset_1 = 0x1B4; //019E499C
public const int MPOffset = 0x1648;
public const int MPOffset_1 = 0x1B4; //019E4D3C
public const int CharacterPointer = 0x029E7028; //0085FD58: A1 ?? ?? ?? ?? 85 C0 75 ?? 5F C3 8D 48
public const int CharXOffset = 0x13AF4; //01CDCE0C: 8B ? 8B ? ? ? ? ? 50 8D ? ? ? ? ? 51 E8 ? ? ? ? 83 ? ? 85 ? 74 ? 8B ? ? 83 (scroll up)
public const int CharYOffset = 0x13AF8;
public const int MouseItemIDOffset = 0x122D0; //01C212AA: 39 99 ? ? ? 00 75 ? 33 C0
public const int MobPointer = 0x029EB8C4; //01C258EA: 8B 0D ? ? ? ? 57 0F B6 ? E8
//backup: 0087DD08: 8B 0D ? ? ? ? 50 E8 ? ? ? ? 3B ? 0F 84 ? ? 00 00 8B ? E8
//backup: "Sound/Mob/%d/Loop" scroll up to pointer
public const int MobCountOffset = 0x10;
public const int PeoplePointer = 0x029EB8C0; //01BA1FF7: 83 3D ? ? ? ? ? 0F B6 ? 0F 84 ? ? ? ? 85 C0
public const int PeopleCountOffset = 0x18;
public const int ItemPointer = 0x029EDB84; //0100D9A4: 7C 30 8B 56 ? 8B 52 ? 8D 4E ? 53 8B 1D(find mov, ebx below)
public const int ItemCountOffset = 0x14; //mov above ItemPointer
public const int MapPointer = 0x029FB300; //00BEDE0F: CC C7 ? ? ? ? ?  ? ? 00 00 8B 0D ? ? ? ? 85 C9 74 ? E8 ? ? ? ? C2 04 00
public const int MapIDOffset = 0x15AC; //01783314: 89 87 ? ? 00 00 C6 87 ? ? ? ? 01 E8

  • Like 2

Share this post


Link to post
  • 2

The answer to this entire thread is clear: don't.

Let's go through why you should not (and what):

  1. You're not really able to formulate proper english sentences, which gives me the impression that reading english is not your "strongest" aspect either.
    • As a result, you'll be incapable of reading in-depth documentation pages from Microsoft (MSDN), or undersand basic documentation.
  2. You're using C#.
    • The language itself was built for different task - to have an easy-to-learn language that abstracts itself from the underlying machine-code (which is a contradiction to the entire intent of this thread).
    • The language was never meant to be used for low-level memory modification, but rather high-level abstraction away from low-level memory.
  3. You're not familiar with the basic concepts of assembly.
    • You do not (yet?) know what a pointer is, or how to read (or write) from (or to) it.

What can you (we? :S) do about it?

  1. I'll make an educated guess, that you're not very old. Without making assumptions, I'll state that in my experience, people below the age of 14 are completely incapable of learning these things. However, based on your level of english understanding, I'd say it's .... likely? .... that you're around this age.
  2. If you insist on producing memory-modification tools, please do not use C#. It has never done anyone any good. Switch to C/++ for a continuous production of memory-modification tools, or simply don't produce memory-modification tools.
  3. Go read up on Assembly, or atleast learn the core features of assembly, before you try to apply your (yet inexistant) knowledge.
  • Like 3

Share this post


Link to post
  • 1
35 minutes ago, Blanc said:

Just one last question that how can i take the values from the address @@. Thanks again :>

Google "Reading the value of a pointer with offset in {your programming language}"

Edited by DAVHEED
  • Like 1

Share this post


Link to post
  • 0
45 minutes ago, ngnam87 said:

v180.1

CharacterPointer = 0x029E7028; //0085FD58: A1 ?? ?? ?? ?? 85 C0 75 ?? 5F C3 8D 48
CharXOffset = 0x13AF4; //01CDCE0C: 8B ? 8B ? ? ? ? ? 50 8D ? ? ? ? ? 51 E8 ? ? ? ? 83 ? ? 85 ? 74 ? 8B ? ? 83 (scroll up)
CharYOffset = 0x13AF8;

OMG, thanks for ur help :>. Btw, do you have mob/ppl count offset 

Share this post


Link to post
  • 0
25 minutes ago, DAVHEED said:

Google "Reading the value of a pointer with offset in {your programming language}"

Thanks for give me clue :>

Share this post


Link to post
  • 0
44 minutes ago, Blanc said:

Thanks for give me clue :>

he didn't gave you a clue, he literally told you that you need to read the value from a pointer using the offset, he can't guess what language you are working with.

  • Like 1

Share this post


Link to post
  • 0
3 hours ago, TricksterJoe said:

he didn't gave you a clue, he literally told you that you need to read the value from a pointer using the offset, he can't guess what language you are working with.

Oh, maybe I'm taking it wrong :<, i'm using C# :<

Share this post


Link to post
  • 0

i think what you are missing is concept of pointer/address/offset in assembly

it's basic and you should find a tutorial (i think it's best solution for you)

beside, in C# i use MemorySharp lib to read address's value

Edited by ngnam87
  • Like 1

Share this post


Link to post
  • 0
7 minutes ago, ngnam87 said:

i think what you are missing is concept of pointer/address/offset in assembly

it's basic and you should find a tutorial (i think it's best solution for you)

beside, in C# i use MemorySharp lib to read address's value

Oh okay, thanks for the advise :>

Share this post


Link to post
  • 0
5 hours ago, Blanc said:

Oh okay, thanks for the advise :>

to give you a quick summary, 

a pointer is pointing to an address (NOT THE VALUE)

and the address that the pointer is pointing to, holds a value, which you can view.

just so you will have a bettter understanding of what you are doing .

Share this post


Link to post
  • 0
On 1/23/2017 at 05:29, TricksterJoe said:

to give you a quick summary, 

a pointer is pointing to an address (NOT THE VALUE)

and the address that the pointer is pointing to, holds a value, which you can view.

just so you will have a bettter understanding of what you are doing .

After follow up a bit research and I end up with try to read values with Memorysharp lib in c# (same thing ngnam87 said). And after try to fix it still return wrong values. I know I'm quite stupid with this TT. Help me figure out :<

ss (2017-01-24 at 10.12.12).png

Share this post


Link to post
  • 0
On 1/25/2017 at 22:09, NewSprux2.0? said:

The answer to this entire thread is clear: don't.

Let's go through why you should not (and what):

  1. You're not really able to formulate proper english sentences, which gives me the impression that reading english is not your "strongest" aspect either.
    • As a result, you'll be incapable of reading in-depth documentation pages from Microsoft (MSDN), or undersand basic documentation.
  2. You're using C#.
    • The language itself was built for different task - to have an easy-to-learn language that abstracts itself from the underlying machine-code (which is a contradiction to the entire intent of this thread).
    • The language was never meant to be used for low-level memory modification, but rather high-level abstraction away from low-level memory.
  3. You're not familiar with the basic concepts of assembly.
    • You do not (yet?) know what a pointer is, or how to read (or write) from (or to) it.

What can you (we? :S) do about it?

  1. I'll make an educated guess, that you're not very old. Without making assumptions, I'll state that in my experience, people below the age of 14 are completely incapable of learning these things. However, based on your level of english understanding, I'd say it's .... likely? .... that you're around this age.
  2. If you insist on producing memory-modification tools, please do not use C#. It has never done anyone any good. Switch to C/++ for a continuous production of memory-modification tools, or simply don't produce memory-modification tools.
  3. Go read up on Assembly, or atleast learn the core features of assembly, before you try to apply your (yet inexistant) knowledge.

Sr about my bad english :(, english is not my mother language and I'm a second year student. Anw, thanks for your explaination :)

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×