Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding
You last visited: Today at 20:13

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

Advertisement



Finding Chat Log with Cheat Engine

Discussion on Finding Chat Log with Cheat Engine within the General Coding forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Aug 2013
Posts: 7
Received Thanks: 0
Question Finding Chat Log with Cheat Engine

Hi guys,

I am creating a C# bot for FFXIV just for fun, but having some problems finding out how to pull the chat log text out of memory.

I used Cheat Engine to successfully find the base pointers for HP, MP and TP, but can't figure out how to go about finding the static basepointer to the address the chat log is stored at.

So far, I can easily find the dynamic section in memory where the log is stored. I haven't been able to find the static base-pointer though.

The end goal is to have a List<String> with the chat log entries stored.

Thanks a lot for any and all help.
Tilp is offline  
Old 11/06/2013, 15:36   #2
 
​Tension's Avatar
 
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
You have may need to find the print function for the chat and hook it to receive the string which gets printed into the chatbox. Then you can just call your function to log it.
​Tension is offline  
Thanks
1 User
Old 11/06/2013, 17:36   #3
 
elite*gold: 0
Join Date: Aug 2013
Posts: 7
Received Thanks: 0
Thanks a lot for the response. I am avoiding injecting any of my own assembly code and will initially stick to only reading memory.

That is due to two reasons:
1) I currently do not know how to hook
2) I want to avoid any tampering as the ban risk then comes into play

I figure I somehow have to find the static base pointer that points to the start of the chat log. That pointer most likely won't change on restart. So, I find the address of the first bit of chat log text by doing a string search. Then, i want to see what access / writes to that address, to track down the parent address (and eventually the base pointer). The problem however, is that with Cheat Engine, after you click "find out what accesses / writes to this address", you need to do something in-game that changes the value in order to populate the debug list with opcodes. But there is nothing you can do to change the value, as it is set when you log into the game and the welcome text shows up. I therefore find myself a bit lost here...

Any tips, thoughts, hints or instructions are greatly appreciated.
Tilp is offline  
Old 11/06/2013, 18:48   #4
 
​Tension's Avatar
 
elite*gold: 110
Join Date: Jun 2013
Posts: 599
Received Thanks: 510
If you don't want to hook the function, you could still create a extern hardware breakpoint to the function and read the EBP register for the parameter. But i don't know if it's possible with C#.
​Tension is offline  
Old 11/06/2013, 19:12   #5
 
elite*gold: 0
Join Date: Aug 2013
Posts: 7
Received Thanks: 0
Thanks tension, could you perhaps provide some more specific details on what you suggested? I am not following you on exactly what to do.

Anyone have any thoughts on how to use Cheat Engine here, to find the base pointer?


Thanks a lot again,

Magnus

I found the attached instructions, but got confused by the indented section under step 5.

Does someone have this game installed and can help me figure it out?

I understand what the indented section says, but step 5 itself should find the base pointers, not sure why the indented part then says "The base pointers can be found by doing a new memory scan". Is it a typo there?

I think I am close, but messing it up somewhere.


Thanks again!
Attached Files
File Type: pdf Finding Memory Chains.pdf (1.20 MB, 114 views)
Tilp is offline  
Old 11/11/2013, 14:17   #6
 
[uLow]Beni's Avatar
 
elite*gold: 0
Join Date: May 2011
Posts: 1,781
Received Thanks: 618
Are you sure, that it is really the first byte?
[uLow]Beni is offline  
Old 11/18/2013, 15:34   #7
 
elite*gold: 0
Join Date: Aug 2013
Posts: 7
Received Thanks: 0
Quote:
Originally Posted by [uLow]Beni View Post
Are you sure, that it is really the first byte?
I think it works, but I have no clue how the author figured this out, and would love to know how to do this myself.

Also, any thoughts on how to save the log down from memory and represent it in C#? It basically has a starting address in memory, then fills in new addresses after that as new chat text is sent. Do I just scan the addresses all the way until I hit 0, and then compare it to what my array (for instance?) already contains, and just add in the new line as a new index in the array?


Thanks again,

Magnus
Tilp is offline  
Reply


Similar Threads Similar Threads
[Video] Finding Offsets with Cheat Engine
06/04/2013 - Battle of the Immortals - 5 Replies
Ok, I have been getting asked quite a bit lately how to find offsets. I figured rather than explaining it over, over, and over again I would just make a set of videos. The first video will show you how to find the Target Pointer Offset. This process is extremely easy to do but for some reason many people can't figure it out. Time permitting I will be making a couple more videos to show the process for almost all offsets. Video #1: Target Pointer Offset (Battle of the Immortals) Video...
help about finding addresses cheat engine
07/18/2012 - Cabal Online - 2 Replies
aki've got some time in elite and would like to ask for help Brazil full game COBR wanted someone to teach me how can I find the addresses in cabalmain someone might need to find me through the following tutorial addresses AOE COMBO SPEED RANGE LEVEL ZOOM HACK
Mit Cheat Engine Chat offen lassen.
10/04/2011 - 4Story - 5 Replies
Hallo zusammen meine Frage ist ist es ürgend wie möglich mit Cheat Engine den Chat im Game offen zu lassen also bei mir schließt er sich ich kann nicht sehen was andere schreiben nur mein eigenen scheiß...
Finding Addys with REL (Rare Engine Light)
09/08/2006 - Kal Online - 1 Replies
Is there any possible HEX/Memory Viewer that I can open while using REL OR am i blind and REL does have MEmory View... Or is there any way of finding the addressess??? I know most values but Im having trouble finding them as some are static... (Dont Change) Any ideas?



All times are GMT +1. The time now is 20:14.


Powered by vBulletin®
Copyright ©2000 - 2025, 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 ©2025 elitepvpers All Rights Reserved.