Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Nostale
You last visited: Today at 07:37

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



NosTale Memory Pattern

Discussion on NosTale Memory Pattern within the Nostale forum part of the MMORPGs category.

Reply
 
Old   #1
 
elite*gold: 214
Join Date: Mar 2011
Posts: 149
Received Thanks: 25
Question NosTale Memory Pattern

Hey,

I am currently attempting to code in Python and am using NosTale as a learning tool. Specifically, I am trying to read HP values, but I am having difficulty as the address for the current HP changes after each reboot. Despite my efforts, I have not been able to identify a pattern to consistently read the HP. Does anyone have any experience or tips they can share to help me with this issue?
Florian.K is offline  
Old 03/18/2023, 04:30   #2
 
elite*gold: 0
Join Date: Dec 2011
Posts: 42
Received Thanks: 18
hey,
you have to find a pointer that points to the hp value and find pattern for the pointer.
JONNST4R is offline  
Old 03/18/2023, 08:42   #3
 
Hatz~'s Avatar
 
elite*gold: 0
Join Date: May 2020
Posts: 365
Received Thanks: 436
Quote:
Originally Posted by Florian.K View Post
Hey,

I am currently attempting to code in Python and am using NosTale as a learning tool. Specifically, I am trying to read HP values, but I am having difficulty as the address for the current HP changes after each reboot. Despite my efforts, I have not been able to identify a pattern to consistently read the HP. Does anyone have any experience or tips they can share to help me with this issue?
Just wanted to mention that you don't pattern scan for a specific value (in this case HP) you use pattern scanning to find a specific instruction in the assembly code.

So the correct procedure would be to first find the memory address of the structure that holds the value you want (in your case the HP), then you have to find a static pointer to that structure address (green address in cheat engine) and finally you find a instruction in the code that access that static address (for example a mov eax, [xxxxxx]). Since the address will be embedded in the instruction bytes you can pattern scan for that address and get the static pointer to the structure you want.
Hatz~ is offline  
Thanks
1 User
Old 03/18/2023, 11:27   #4
 
elite*gold: 0
Join Date: Oct 2018
Posts: 257
Received Thanks: 206
In addition to Hatz comment, you can also use the "Pointer scan for this address" feature from Cheat Engine to find a static pattern (useful, as sometimes you will not end up with a static pointer)
Apourtartt is offline  
Old 03/18/2023, 17:35   #5
 
elite*gold: 214
Join Date: Mar 2011
Posts: 149
Received Thanks: 25
I always find the address for the HP, but I'm not quite sure how to find a static pointer with cheat engine.
Currently, I'm searching with the pointer scanner, but I'm finding over 163,000 entries.

Picture
Florian.K is offline  
Old 03/18/2023, 19:29   #6
 
elite*gold: 0
Join Date: Oct 2018
Posts: 257
Received Thanks: 206
Save those entries, close Nostale, restart and do that all over again until you don't have much left, and then you are done
Apourtartt is offline  
Old 03/19/2023, 00:39   #7


Trade Restricted
 
FI0w's Avatar
 
elite*gold: 50
Join Date: Jul 2014
Posts: 1,679
Received Thanks: 1,152
Quote:
Originally Posted by Florian.K View Post
Hey,

I am currently attempting to code in Python and am using NosTale as a learning tool. Specifically, I am trying to read HP values, but I am having difficulty as the address for the current HP changes after each reboot. Despite my efforts, I have not been able to identify a pattern to consistently read the HP. Does anyone have any experience or tips they can share to help me with this issue?
If it reaches to get the % of the HP

patternAddr = PatternScan(
"\x50\x6a\x00\x6a\x00\x6a\x00\x6a\x00\x6a\x00\x6a\ x00\x33\xd2\x33\xc0\xe8\x00\x00\x00\x00\x8b\xd0\xa 1\x00\x00\x00\x00",
"xx?x?x?x?x?x?xxxxx????***????", 25);
source:

here the pattern to TPlayerMapObjManager with that you can get the own Character by getting the TMapPlayerObj
Then the Address of
TMapPlayerObj + 0xC0 -> HP %
TMapPlayerObj + 0xC1 -> MP %

both are int8 aka 8bit integer

but dont forget after a map Change the address to TMapPlayerObj changes so you need to re-read it from TPlayerMapObjManager so better if you use a function to always read it from there.

What could you help too:

FI0w is offline  
Thanks
1 User
Old 03/19/2023, 02:58   #8
 
elite*gold: 214
Join Date: Mar 2011
Posts: 149
Received Thanks: 25
Quote:
Originally Posted by Apourtartt View Post
Save those entries, close Nostale, restart and do that all over again until you don't have much left, and then you are done
I am now at a point where after every restart, I have only about minus 100 entries left. There are still over 224,000..
Florian.K is offline  
Old 03/19/2023, 04:14   #9
 
elite*gold: 0
Join Date: Oct 2018
Posts: 257
Received Thanks: 206
It is fine, try to find one that has not that much offsets (3 or less for example) and use this one
Apourtartt is offline  
Old 03/19/2023, 21:24   #10
 
elite*gold: 214
Join Date: Mar 2011
Posts: 149
Received Thanks: 25
Okay, just so I understand correctly, the item I selected in the image is the static pointer (3rd row)? This accesses mov eax, which would then be an offset? Then there's another offset at the bottom, the address 6FF35E, where HP, Mana, and some other values are stored. Is that right? And now I need to use the memory pattern to find the pointer?

Picture


Edit: I did it and it was easier than expected, thank you very much.
Edit2: Is there any way to show the exact amount of XP? I can only see 9% XP for something like 9.23%.
Florian.K is offline  
Old 03/20/2023, 12:59   #11
 
romdrak's Avatar
 
elite*gold: 0
Join Date: Oct 2013
Posts: 99
Received Thanks: 154
The experience is not stored as %, at least not in the non-gui related structures, check the packets that contain xp and look in memory for those values.
romdrak is offline  
Reply

Tags
memory, nostale, pattern


Similar Threads Similar Threads
Memory - Pattern
07/01/2013 - AutoIt - 4 Replies
Halli Hallo :) ich entschuldige mich schon einmal falls das hier die falsche Section ist, wusste aber nicht so recht, wo ich es posten sollte.... Und zwar habe ich eine Frage bezüglich Pattern. Wie ich sie verwende etc. weiß ich. Jedoch habe ich noch nie welche selber erstellt und bekomme es nicht hin :( Vielleicht weiß jemand wie das geht? Habe mich auch etwas informiert, aber nichts richtiges gefunden.... Also ich habe eine Baseadresse und würde dazu gerne Pattern haben... Bei...
Quick Memory Editor - Alternative Memory Hacking Software
11/21/2009 - Cabal Hacks, Bots, Cheats, Exploits & Macros - 11 Replies
This might be detected or not by GameGuard, I have not tested this on Official servers however it worked perfectly fine on other private servers. http://imagenic.net/images/x0jxwzwpg2zxmkdtcf36.p ng This is just an alternative memory editing tool. Press thanks if this helps. Remember, scan before using this. Cause its 5.5MB.
Fragen Zur Memory!!!(Auslesen von Spawn/Memory)
12/31/2008 - Guild Wars - 3 Replies
hey leute, ich wollte mal einen bot schreiben und nun bin ich ganz verwirrt. könnte mir jmd bitte schritt für schritt erklären wie das mit Memory auslesen, benutzen und der Spawnpointer funktioniert. Ich wär sehr dankbar wenn jmd kontakt mit mir aufnehmen würde... und sobald der bot fertig ist bekommt der ihn natürlicherweise umsonst:D ICQ: 481799773 oder hier im forum
Sample of memory search in PW for memory bot learner
02/25/2008 - Perfect World - 6 Replies
im learning how to make a memory bot as of know.. im expirience in pixel botin but the mob seacrh for it is quite slow.. ill be using au3 and the include nomadmemory.au3 from nomad in au3 forum. credits to him... this is my sample of my memory script: it will be good for who wants to learn memory botin and has no available bot in their respective server #include <Memory.au3> Global $Pointer = d pointer in 4bytes in whch its store the modId when clicked just search in hex format in 4bytes...
Pattern based memory Search ?
12/26/2006 - General Coding - 3 Replies
Is there any tool that allows to search for patterns in memory ? All I tried (TSearch / Cheatengine) only allow you to search for one value or a fixed array of bytes. But I need a tool that lets me search for patterns, like XX XX 00 00 XX XX 00 00 while XX can be 00 to FF etc ?



All times are GMT +1. The time now is 07:37.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.