Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


Getting a list of all items in a game

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking
View previous topic :: View next topic  
Author Message
SIIT
How do I cheat?
Reputation: 0

Joined: 23 Nov 2012
Posts: 1

PostPosted: Fri Nov 23, 2012 4:55 am    Post subject: Getting a list of all items in a game Reply with quote

Sorry for the vague generalisation of what I'm about to post, but I'm wondering if someone could explain the theory behind a couple of scenarios of using Cheat Engine to get information from a game.

I'm not looking to change any values, I'm more interested in getting a list of information.

For example, if a game has a shop, within that shop there are categories of items, and each item contains some information (such as cost, HP increase, speed increase) what would the process be to list all these items, and all these categories, without knowing how many items or how many categories there would be in that shop?

If someone could talk me through the theory of how this sort of thing can be done that would be fantastic.
Back to top
View user's profile Send private message
pox911
Grandmaster Cheater
Reputation: 28

Joined: 29 Nov 2008
Posts: 918

PostPosted: Fri Nov 23, 2012 10:16 am    Post subject: Reply with quote

It could go in many different ways and all depends on how the game is setup. A couple of examples would be that if the shop has limited quanity of items then you could use that to find the basic location of the shops data. After that you would browse the memory region to see how the rest of it is setup, explained a little later. Like you stated before, you could also try to find the basic area based on the items cost.

The item identifier could be either a pointer or a simple ItemID and would usually be close to the quantity, cost, or some other value related to finding the basic shop address. If the game uses a pointer for its items then you could end up searching for stats of an item, get where the itemdata starts, and find all places it's referenced and try to find an item list that way.

Say you found a list of items for your shop, you could then try to pointer scan the first item in the list while the shop is open and then do the scan again after finding the first item of another shop keeper so you could try to find a pointer that goes to the location of the current shop keeper you are talking to.

As for making something read all the data instantly, that would require a lua form. Most games have a value either at the start of a table or right next to a pointer one level up that tells how many entries there are in shop keeper table. You would make a lua take the count of the shop table and times it by the length of each item entry via a For statement. In that for statement you would have the basic reading of the table and telling it to output it in what ever way you setup your form to display it.

In some cases there wont be count value and it will be a simple set chunk of data and if the data isnt empty then the game will read it and display as such. An example of this is the vending machines in borderlands. There is a set number of slots a machine can use and each one is just a 4 byte pointer, no pointer no item shown.


oh, just thought of another way to find shop keep info. If the price is stored inside hte base stats of the item and the shop has infinite then it wont work for finding his inventory. However if you have limited inventory then buy several of things from him, get your inventory via the quantity and figure out how the item modifier works for you. Say you find out that the 6 swords you bought from a guy had the ID 97400 and another item you bought from him had the ID of 100 since it's a common item. Do a search for the sword ID and try to widdle down your results. Try replacing random values of the 97400 with the 100 and see if the shop keep ends up with the basic item twice in his inventory. You will find his inventory memory this wan and then you can poke around for any of the other data.

Hopefully you understood some of the stuff i talked about. Other people could try to exlain better than i can Razz
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites