 |
Cheat Engine The Official Site of Cheat Engine
|
| View previous topic :: View next topic |
| Author |
Message |
KIguy How do I cheat?
Reputation: 0
Joined: 09 Sep 2011 Posts: 1
|
Posted: Fri Sep 09, 2011 9:19 am Post subject: Is there any way to automate this? |
|
|
Okay there is a flash game I am playing. What I do is I make a score and scan for the first value 300 then I make a second score and scan for the next value 600 this gives me 3 three random addresses each time I play its three different address. Then I have to use the option find out what writes to this address on each of the three addresses found and then I score one more time to get 900 and the instructions show up in the windows. From the three windows I then go into the memory viewer and I go into the tools and use the Auto assembler and I do a code injection to those three memory spaces. On each of the 3 memory locations I change a mov [ebx+10],esi to an add [ebx+10],9999 the part in the [] brackets varies but the location is the same on each its line 11 and its always the first part changed and the part after the comma.
Of course I have to close out Cheat engine and restart the game to redo this entire process.
I just wonder if this can in some way be scripted so it can be done a bit quicker? I am not a programmer by any means I do my fair share of vbs and batch scripting but thats about all I have ever got into.
Is this feasible with any type of tools out there?
Basically its score once, scan, score twice, scan, select all three addresses,and get what writes to these three addresses with a third score then code inject all 3 locations with changing a mov to an add and chancing ,XXX to ,9999 and then release once the game is done. Seems like it should be able to be done I just need help on how I can do it.
Please speak slowly and direct nicely. I am very new to this.
|
|
| Back to top |
|
 |
gameplayer Advanced Cheater
Reputation: 2
Joined: 26 Jun 2011 Posts: 97 Location: Vietnam
|
Posted: Sun Sep 11, 2011 10:30 pm Post subject: |
|
|
| I don't understand what you say completely. You should give a clear request and give more details. I'm not good at reading abbreviations, slang, idioms, wrong grammatical expressions, etc. If you want to undo the code injection, you should use the "Cheat Table framework code" before using "code injection" so that you can disable the script without restarting the game. I don't think there's any problems if the change you made is at the lines after "originalcode" label. Make sure the found addresses is only used for the score. It's very odd to use three addresses for a score. Maybe, the game wants to prevent cheater. You should check if the addresses works by changing their values and return to the game to see what happens.
|
|
| Back to top |
|
 |
chASM Newbie cheater
Reputation: 0
Joined: 23 Jun 2011 Posts: 17
|
Posted: Fri Sep 16, 2011 6:01 pm Post subject: I think I understand |
|
|
I think he/she means to automate the searching, in this order (using semi-assumed functionality, as that is not entirely clear in the post):
1. Score in the game.
2. Scan for something.
3. Score again in the game.
4. Scan for a changed value.
5. Fetch the three resulting addresses.
6. Get where those addresses write to (by scoring in the game again).
7. Generate auto assembler script to code inject changes to the three locations.
8. Perform code injection by activating the script.
Should be easily possible using a plugin IMHO. Does not mean that it is an easy one to do, certainly not one for a 'non-coder', despite the experience with scripting (coding in C/C++ or Assembler vs writing script code is... well.. quite a leap, although ANSI C could be easily learned with the knowledge of script code, ANSI C is very easy (albeit verbose in certain areas) to code in, C++ just makes things a bit more complex, but requires less actual code (depending on what is being coded) than ANSI C. Assembler is a whole other beast and no amount of C/C++/scripting experience is going to help you a whole lot with that one (apart from, perhaps, an easier time with understanding the 'layout' of Assembler code, and other 'non-code' details).
But, I'd say that with a plugin, 99% of what he/she wants can be done, the problem I see is finding a 'starting point' for all this to happen, one would have to find where the game actually deals with 'scoring' so the plugin knows when to trigger a search. Alternatively, one could simply use a key combination to press once one 'scores'. The latter being far easier but defeating the '100% automated' abilities, but not too problematic.
Coding such a plugin for a single game is, however, in my opinion, overkill. It would be much more interesting to see a plugin like this with configuration options, and the ability to work with 'any' game.
I might give it a shot actually, sounds... challenging.
Oh, and much of the automation may be directly possible within CE using LUA, but LUA is the vilest thing ever and as thus, I avoid it like the plague (in fact, I would prefer actually GETTING the plague over the very IDEA of LUA). So, I know enough about it to point and laugh at its sheer idiocy (and/or those who actually use it), but not enough to determine (the lack of will to even LOOK at CEs implementation doesn't help here) what it can and can not do within CE.
chASM
|
|
| Back to top |
|
 |
gameplayer Advanced Cheater
Reputation: 2
Joined: 26 Jun 2011 Posts: 97 Location: Vietnam
|
Posted: Sat Sep 17, 2011 1:19 pm Post subject: |
|
|
Ok, I can understand now. I think finding pointers deserves a try before scripting is chosen. By the way, thank you very much.
I don't know how to install and use plugins. Could you show me what to do, please?
|
|
| Back to top |
|
 |
chASM Newbie cheater
Reputation: 0
Joined: 23 Jun 2011 Posts: 17
|
Posted: Sat Sep 17, 2011 11:38 pm Post subject: |
|
|
| gameplayer wrote: | Ok, I can understand now. I think finding pointers deserves a try before scripting is chosen. By the way, thank you very much.
I don't know how to install and use plugins. Could you show me what to do, please? |
Plugins need to be coded (in C/C++/Assembler/whatever other programming languages could deal with the CE "SDK". e.g., not scripting). I've coded several that perform distinctly non-cheating functions and one or two for cheating (mainly for testing purposes) that never went public.
As far as I am aware, besides a minimal packet sniffer, there are no plugins available for CE at this point in time, publicly anyway, I could be wrong though.
I assume that many of the 'famous' (or 'infamous' in some cases) trainer makers have their own plugins to quickly (and highly automated) find specific things in games to train but those will probably never go public.
As an example, anything running the Unreal 3 Engine is ridiculously easy to create cheats for using a (specifically designed, of course) plugin, this is what one of my testing plugins does, it generates auto assembler scripts for 12 or so cheats as well as a save/restore location option 99.9% automatically and works on most UE3 games. The 0.02% that is not automatic is simply pressing a key combo when the game is actually running, so, not on the menu or whatever, but actually in game. That triggers the code in the plugin to do a LOT of stuff to accurately determine all the bits and pieces it needs to generate the scripts and feed them to CE itself (this takes about 3 seconds, barely interrupting the game). One thing that could be added would be to have CE spit out a trainer automatically with the cheats, with a specific look, images, etc.
Either way, the plugin stuff is located in your CE directory, there are a few examples in there that don't do all that much but demonstrate the basic plugin code. It also contains the header file which contains the information needed to call specific CE functionality from the plugin and some other stuff.
Within CE itself, the plugin settings are located in the settings screen. Beware though, that particular settings screen is EXTREMELY buggy, but does not crash CE or things like that.
Pointer scans aren't all that useful in my opinion, sure some games will give you pointers that are 'stable' and always report the proper values, some, will not. The settings of the pointer scanner is very important in order to get good results, just experiment.
Personally, I think that a 'proper' cheat is implemented using an auto assembler script that modifies the actual game code that changes the values. I am however 'old skool' (and just 'old' as well), so I am biased towards 'code' over perhaps simpler solutions, I have been coding for 25 years or so after all. Scripting is like a bucket of vomit to me, but it has its uses (as long as it isn't LUA ).
I think it is perfectly possible to code a more generic plugin that does automatic scanning and script generation, it would just require a bit more user input than an almost entirely automated plugin (which is more specific to a game engine). When I have a little time, I'll throw some code at it and see how far CE can be pushed through the SDK itself or maybe by literally taking control of CE itself from the plugin. The latter may actually be easier than the former .
chASM
|
|
| Back to top |
|
 |
gameplayer Advanced Cheater
Reputation: 2
Joined: 26 Jun 2011 Posts: 97 Location: Vietnam
|
Posted: Sun Sep 18, 2011 8:38 am Post subject: |
|
|
| That means I hardly expect to get plugins from others. And I need advanced programming to make them on my own. I can somewhat comprehend your gist. Thanks a million.
|
|
| Back to top |
|
 |
|
|
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
|
|