Ipod Full Hack Cheat Engine Slay The Spire Without Login



Cheat Engine Original author(s) Eric "Dark Byte" Heijnen Developer(s) Community Stable release 7. 0 (August 20, 2019; 5 months ago) [±] Repository github /cheat-engine /cheat-engine Written in Object Pascal, C Operating system Windows, macOS (in development), [1] Linux (Wine, Server/Client for linux processes) [2] Available in 8 languages List of languages English Type Reverse engineering, debugging, disassembler License GNU LGPLv2 Website cheatengine Cheat Engine, commonly abbreviated as CE, is a Free and Open Source memory scanner / hex editor / debugger created by Eric Heijnen ("Dark Byte") for the Windows operating system. [3] Cheat Engine is mostly used for cheating in computer games [4], and is sometimes modified and recompiled to evade detection. This program resembles L. Spiro's Memory Hacking Software, TSearch, and ArtMoney. It searches for values input by the user with a wide variety of options that allow the user to find and sort through the computer's memory. Cheat Engine can also create standalone trainers that can operate independently of Cheat Engine, often found on user forums or at the request of another user. Features [ edit] Cheat Engine can view the disassembled memory of a process and allow the addition and/or alteration of game states to give the user advantages such as infinite health, time, or ammunition. It also has some Direct3D manipulation tools, allowing vision through walls "Wallhacking" and zooming in/out "FOV changes", and with some advanced configuration, Cheat Engine can move the mouse to get a certain texture into the center of the screen. This is commonly used to create aimbots. However, the main use for Cheat Engine is in single player aspect of games, and its use in multiplayer games is discouraged. [5] Cheat Engine can inject code into other processes, and as such, most antivirus programs mistake it for a virus. There are versions that avoid this false identification at the cost of many features (those which rely upon code injection). The most common reason for these false identifications is that Cheat Engine makes use of some techniques also used in Trojan rootkits to gain access to parts of the system and therefore gets flagged as suspicious, especially if heuristic scanning is enabled in the antivirus program's settings. Newer versions of Cheat Engine are less likely to be blocked by antivirus programs, so features like code injection can be used without problems. As of version 6. 1, Cheat Engine can produce game trainers from the tables. While trainers generated in this way are typically very large for their intended purpose, generally used for testing purposes, some have been released by trainers groups as "final" versions, [6] and even some popular sites are fully based on CE trainers [7] due to the ease of trainer creation with CE. However, despite their popularity, CE trainer maker has not been updated since its implementation in version 6. 1—it is largely unsupported, and emphasis is given on using Lua to generate trainers. Even the trainer maker itself uses Lua scripts to generate trainers. Implementations [ edit] Two branches of Cheat Engine exist, Cheat Engine Delphi and Cheat Engine Lazarus. Cheat Engine Delphi is primarily for 32-bit versions of Windows XP. Cheat Engine Lazarus is designed for 32 and 64 -bit versions of Windows 7. Cheat Engine is, with the exception of the kernel module, written in Object Pascal. Cheat Engine exposes an interface to its device driver with, a wrapper that handles both loading and initializing the Cheat Engine driver and calling alternative Windows kernel functions. Due to a programming bug in Lazarus pertaining to the use of try and except blocks, Cheat Engine Lazarus had to remove the use of and incorporate the driver functions in the main executable. The kernel module, while not essential to normal CE use, can be used to set hardware breakpoints and bypass hooked API in Ring 3, even some in Ring 0. The module is compiled with the Windows Driver development kit and is written in C. [8] Cheat Engine also has a plugin architecture for those who do not wish to share their source code with the community. They are more commonly used for game specific features, as Cheat Engine's stated intent is to be a generic cheating tool. These plugins can be found in several locations on the Cheat Engine website as well as other gaming sites. [9] Cheat Engine Lazarus has the ability to load its unsigned 64-bit device driver on Windows Vista and later x64 bit versions of Windows, by using DBVM, a virtual machine by the same developers that allows access to kernel space from user mode. It is used to allocate nonpaged memory in kernel mode, manually loading the executable image, and creating a system thread at DriverEntry. However, since the DriverEntry parameters are not actually valid, the driver must be modified for DBVM. Cheat Tables [ edit] Cheat Engine allows its users to share their addresses and code locations with other users of the community by making use of cheat tables. "Cheat Tables" is a file format used by Cheat Engine to store data such as cheat addresses, scripts including Lua scripts and code locations, usually carrying the file extension Using a Cheat Table is straightforward and involves simply opening the Cheat Table through Cheat Engine and enabling/ticking the cheats stored within it. The ability to save and share Cheat Tables has resulted in a large online community for sharing cheats through the Cheat Engine Forums. Popular Cheat Tables are hosted on the FearlessRevolution website. [10] In addition to simple memory addresses, cheat tables can extend the functionality of Cheat Engine using the Lua scripting language. Almost all of Cheat Engine's features are scriptable, and it is even possible to design custom dialogs to interact with scripts. Controversy [ edit] The Entertainment Software Association (ESA) sent a copyright infringement notice asking Dark Byte to cease and desist. The notice claimed Cheat Engine allowed evading anti-cheat technologies, accessing in-game DLC items/ microtransaction items that could only be bought with real money. Dark Byte responded by shutting down the cheat tables section to the public, asking them to be hosted off-site and coming to an agreement with ESA. [11] The Cheat Engine community has not been happy with the steps taken, and prominent members have now moved to a new community website called Fearless Revolution where old cheat tables have been uploaded and new ones are being posted. The Cheat Engine website and forums only focus on development of the tool itself now, and cheat tables have moved to Fearless Revolution forums. [12] [13] References [ edit] External links [ edit] Official website.

Welcome to the Cheat Engine wiki. Cheat Engine Help File How to attach to a process How to add script to table How to add addresses to the address list Lua Lua Functions and Classes Lua Basics Lua Object Oriented (Address class) Assembler Assembler Commands Commands Tables Commands List Auto Assembler Auto Assembler Commands Auto Assembler Basics Scripting Code injection DBVM Decompiling Debugging Ultimap Ultimap1 Ultimap2 generic gamehacking tutorials Hex editing Mono Features Mono Dissect Form Mono Structure Dissection Mono Lua Mono Lua Functions Mono AA Commands Tutorial - Mono - Basic Packet editing Programming Tutorials Cheat Engine: Value Types Pointers The Stack AOBs Cheat Engine Tutorial Guide (x32) Cheat Engine Tutorial Guide (x64) Finding values - Integers Finding values - Floats How to break and trace code in a process Tutorial - Cheat Form Auto Assembler: Auto Assembler Templates Code Injection - Basic injection Code Injection - Full injection Code Injection - Adding Editable Values Code Injection - Working with Integers Code Injection - Working with Floats Lua: How to setup a Lua auto attach script Introduction to Lua with CE: Beginner to Basic Script Writer Mono: Mono Basics Videos: Video Tutorials Contributing Register/log in to start contributing to this wiki. You can post any modding related information on this wiki related from Assembler, Cheat Engine, Code injection, Decompiling, Debugging, generic gamehacking tutorials, Hex editing, Mono Game Hacking Tools Packet editing, Programming, Tutorials, etc... We're also looking for help with improving/updating the wiki! If you are a lua/assembler expert, or just want to help fill in the gaps, head over to the Improvements section and pick a topic. There's also room for Cheat Engine forum related topics as long as it's within reason, and please, keep it in the Forum namespace (do that by adding Forum: in front of new pages). And if you're new to wiki's you can play around in the Sandbox, there's a less chance of getting blocked for adding complete gibberish.

This page is a sub page of: Creating a cheat table - Full guide Now after a restart, this is what my table looks like. And if you have followed along then you already have the health address so lets just start with the hook. Else you will need to complete these sections first: Finding the player coordinates Finding the Player base Finding the player health And the super speed and super jump hacks include stuff that I will not be going over, and are required information. Write a Super Speed hack Write a Super Jump hack But all we really need is the health address to start. Step 1 [ edit] With the health address in the address list let's check to see what accesses the address, in both normal conditions and when in combat. So here is what I found, the green is normal conditions, purple is when the player hits a combatant, and red is the player being hit by a combatant. And it looks like we found the player's death check. But these may just be checks the compiler or engine put in place to stop arithmetic problems. cmp dword ptr [ecx+00000344], 00 cmp dword ptr [ebx+00000344], 00 Top is when hitting a combatant, and the bottom is when being hit: So let's start with the player hit death check (bottom death check), select the instruction and click the Show disassembler button. And in the memory view form right click the instruction line and select Find out what addresses this instruction accesses. And here is what I found. So this instruction works on the player's and the combatants' health, probably shared by all actor objects in the game. So I think that the actor class will hold some kind of "Decrease Health" function that the player inherits. When the game or engine is written, actors and players might be written like this. //// Actor, base for all actors class Actor (object) { string Name = 'Actor';... int Health = 70;... function decreaseHealth (self, amount) {... if ( == 0) { ()}}} //// Player class Player (Actor) { //// Player inherits form Actor string Name = 'Player';... } Now there are different ways of handling shared instructions, we could look at the structures to find a unique identifier. But since we have a good base address for the player we can just check against that to determine if the actor is the player, no need for guess work here. Step 2 [ edit] So lets get a base script up, and then work from there. So if the base address was a multi-level pointer then to check it we would need some thing like this: n_code: push esi mov esi, [ptrCoordBase] test exi, esi jz @f // jump forward to the next label (@b is jmp back). mov esi, [esi+{the base offset}] test esi, esi jz @f cmp esi, ebx jne @f mov [ebx+{health offset}], (int)100 @@: pop esi o_code: But our base address is at the same level as the health address, so this is all we need. Note: The "Coord. Hook" must be enabled to have access to the "ptrCoordBase" symbol, if not enabled then this script will fail on syntax check and on injection. Note: Later I will set the "Coord. Hook" as a primary script with the other script(s) as it's child record(s), or in the table Lua script, to be run first. Step 3 [ edit] But if we look back at the debugger form we see that 1 instruction is constantly checking the player health, and another is constantly writing to the player health. My bet is that some where in there it checks to see if we are over the maximum health and the the other sets it to the maximum if over. So let's look for our health maximum, in the memory view form. And here I am betting that the "+348" is our health max which is just 4 bytes down from our health (this is so common that I always check around the value's address for it's maximum, but this was my process when first learning) so let's add that to the table. If it looks good then let's add it to the script, so if the health maximum goes up the script will still fill it. Now some people will just cram a large value in the address, but I have even seen this done on a 2 byte address with a 3 byte number being used, so there was numeric overflow that would corrupt the game saves (and that's no good, plus if it overflows to say the health maximum then that would get set very low and that is the opposite of what I am looking for, at least with this hack). So let's work on that script again. Step 4 [ edit] And let's test the script (remember to save your tables before injections just in case, even saving be for AOB scans is a good idea to me). But mine didn't work and if you just copied mine then I bet yours didn't work too. Debugging your script [ edit] Now I found my type-o but lets debug our script to find the problem. So lets look at that instruction when injecting to see that it is, in fact, injecting to the right spot. Now re-enable the script while looking at the memory view form. Then let's follow that to our assembled memory for the health hack. So right click the instruction line and select Follow. Then on the first line "cmp [ptrCoordBase], ebx" let's see what's going on, so right click and select Find out what addresses this instruction accesses, and go back to the game and get hit again to test. Now since we are looking at a base address let's view it in hexadecimal format, so right click the debugger form and select Show as hexadecimal. Now let's check the registry so in the debugger form right click the address and select Show register states. So I first check EDX and see that the address is wrong, but I see that EBX is the right address and then see that I used the wrong registry, so lets disable the script and then make the correction. cmp [ptrCoordBase], ebx // here I typed the right one push eax mov eax, [edx+348] // wrong one used here mov [edx+344], eax // wrong one used here again pop eax Now, having written to an unknown address or addresses, I will be closing the game to keep from screwing up the game or hack testing (I will close it with task manager or the form close button if in windowed mode, knowing that it doesn't save then, to insure nothing gets saved). And because Cheat Engine can't account for my mistakes, I will also be restarting Cheat Engine to make sure I didn't mess it up too. So let's restart (the game and Cheat Engine) and correct the script re-inject and retest the script. So here is my corrected script. So let's retest that script, don't just test to see if you have infinite health also test if the combatants can still be killed. So I will kill a combatant (try both standard sword kill and an animated stealth kill) and then stand in the middle of a group for a minute to see how this works out. And I now have a working health hack. This was after about 20 hits, now we could look for a better spot so our meter stays filled, but I am fine with it so moving on. Tip: The best place to insure that the display value and the real value match is in a write instruction. One hit kills [ edit] And sense this instruction handles all actors health let's just set this up as a primary script with 2 flags one for the player and the second for the combatants. So here is the new script. Now add the flags to the address list right click the player health flag and select Set/Change dropdown selection options. And set it like this. Then right click the combatant health flag and select Set/Change dropdown selection options. We could also add a toggle script for the flags: //// //// ------------------------------ ENABLE ------------------------------ [ENABLE] flgPlayerHealthHook: db 01 //// ------------------------------ DISABLE ------------------------------ [DISABLE] db 00 flgCombatantHealthHook: Now time to test. So let's inject the new script, and set a flag to test it out. Let's test the infinite health first, then one hit kills, then disable infinite health with one hit kills enabled to make sure we are not subject to one hit kills. So It looks like the infinite health works but one hit kills is not working, so let's have look at the other death check instruction. But in checking what addresses that instruction accesses I find only the player's health, so what we want is instruction that writes to actor health, this is where I had to just try different ones until I found the right area, test what addresses the instruction accesses to find a write that has all health run thought it. This is the one hit kills script that ended up working. And this is the cleaned up infinite health script. So I will be doing a little more testing (the best kind of testing), to insure it is working be for moving one. I also like to test going though load screens to insure no crashes for new scripts that write values. And, with every thing working, on to the next hack. Links [ edit] Tutorials Creating a cheat table - Full guide Finding the player base Write a Super Speed Hack Write a Super Jump Hack Write a Health Hack Write a Money Hack Write a Money and Runes Hook

If you haven't done the Cheat Engine Tutorial then please do so as this tutorial builds on that and some (basic) things that are mentioned will not be mentioned here. Tutorials:Cheat_Engine_Tutorial_Guide_x32 Tutorials:Cheat_Engine_Tutorial_Guide_x64 The game I'll be using is Dishonored, but pretty much any game will work. I pick this game because It's simple yet complex at the right levels, it loads quickly, and when paused in windowed mode it releases the mouse. Tip: Edit the '' it'll be at 'My Documents/My Games/Dishonored/DishonoredGame/Config/'. Find the key 'bForceNoStartupMovies' and set it to true: bForceNoStartupMovies=true Tip: When starting a table put the game in windowed mode to stop screen flickering when shifting focus. Tip: Make sure to always create a backup of saves, and keep an original save (before using Cheat Engine). I'm starting out at the Hound Pits Pub and this is where I'm creating my good save. I have chosen to start a new game, unlock the Blink power, but not pick up any thing at the Hound Pits Pub upon arrival. Note: The Hound Pits Pub is the player safe location or home base. I usually start with finding the player coordinates so let's start there. Finding the player coordinates Now After that we can find the player base. Finding the Player base Now that we have a player base, let's find the player health address. Finding the player health Now that we seem to have a good base address and some values, try to find the Mana address your self. Hint: It is in the same structure as health, oxygen, and coordinates. [ptrCoordBase]+??? So time for some real fun, on to the hooks and hacks. So let's start with my favorite, a super speed hack. Write a Super Speed hack And just because they go to together like peanut-butter and jelly, next let's go for a super jump hack. Write a Super Jump hack Now let's work on a health hack, for this I find it's best to get around combatants so that we can test to see if the instruction the we hook also works on combatants' health. Write a Health Hack So time to make some money for the player, on to a money hack. Write a Money Hack Now after the money hack we have a way to get to the Runes, but I want an address for the Runes and Coins to add a once run script to just add some when I need them and even clear the number of Runes to get rid of any repetitive messages. So on to a Runes and Coins Hook. Write a Money and Runes Hook Work in progress, continuing later. -- TheyCallMeTim13 02:47, 31 December 2017 (UTC) Links [ edit] Tutorials Creating a cheat table - Full guide Finding the player base Write a Super Speed Hack Write a Super Jump Hack Write a Money and Runes Hook.

Download Cheat Engine 7. 1 for Mac August 20 2019: Cheat Engine 7. 0 Released: New major version released. Many improvements and features to make your gaming better Download: Cheat Engine 7. 0 Please report bugs and give suggestions for improvements in the bug tracker or forum And you can of course contribute yourself by adding to the source on GitHub or become a patreon Additions and changes: Icons Added a way to dissect and show a function's working using a diagram Auto repeat option for unchanged value scans Added lua formula scans Moved the compare to first/saved from scan type to a checkbox Added a scanner that can detect and undo memory changes in the target process code sections (patch scanner under tools in memview) The tutorial now has a link to online help for each step Added a toolbar for stepping while debugging When a memoryrecord fails to activate, you can rightclick it and see why it failed AutoAssembler will now cut down on the nop's used Better error reporting in autoassembler scripts DBVM can now dynamically adjust the TSC. This can be disabled if it causes performance issues with dbvm_setTSCAdjust(disable) speedhack now also hooks gettickcount64 added dw 'utf16string' support implement VPID support in DBVM (performance increase) kernelmode->driverlist now also shows driver exports kernelmode symbols now also show in the enum dll's and exports change the way slow symbol lookup is handled several small updates to the codecave scanner several small updates to the hexview find window Use defered pdb loading instead of waiting for it Several more windows have been made DPI Aware Add option to show processid's as decimal in the processlist When pressing shift+space instead of space to follow an instruction you will now open a new memview window Added *:undefined support for dropdown lists Added files for translations to use Stackview now shows symbolnames as well Some extra windows will now save their location Exe trainer generator now lets you change the default files The description of conditional jumps is better to understand now Ultimap2 can now keep the tracer files and scan kernelmode memory as well if desired Groups now get created afgter the selected item Smartedit can now also 'smart'-edit children You can now pick a breakpoint type without having to go to settings, and once picked it will be the default type for Toggle breakpoints until changes again Floating point screen will now stay within the screen Clicking execute in the lua engine will now change focus back to the editor field Debugger interface settings will now only lock after a succesful attach Some translation improvements here and there DBVM changeregonbp's are now displayed in CE's interface as well The foundlist colors can be customized now Improved DBVM cloak performance when more than 20 regions are cloaked Implemented DBVM based execute watch and "find what addresses this code accesses" Implemented DBVM breakpoints (They always execute afterwards, including execute bp's) Improved autocomplete so it now doesn't delete old code Added hotkeys to ultimap2 Fixes: fixed BSOD in recent windows updates fixed VEH debug not handling breakpoints when a thread is created/destroyed right at the same time as a breakpoint fixed the stacktrace in 64-bit targets fixed rounded Extreme for float and double scans speedhack now waits for proper dll injection several disassembler instructions some assembler instructions improved the stability of dbvm find what * routines fixed the hit counter in dbvm find what * routines fixed kernelmode symbol loading fixed DBVM memoryleak when disabling watches fixed DBVM internal memory manager (more stable now) fixed internal VirtualToPhysicalCR3 when dealing with 2MB+ pagesizes fixed using megajmp's in cloaked regions fixed speech when using async records fixed executeCodeEx for more than 4 parameters fixed static field script in mono by adding 64-bit codegeneration fixed mono process crashing in some cases fixed megacall following fixed NO_CACHE memory being scanned anyhow even if it was disabled fixed dealing with floating point values that are too big to be useful fixed setting DR7 to a strange value when using global debug fixed clearing DR6 when in the wrong process in kernel debug fixed triggering kernelmode breakpoints in locations you can not properly break (no interrupts) fixed loading dbvm inside dbvm inside dbvm inside dbvm fixed autoassembler replacing words in quoted strings fixed processwatcher not getting a proper PID fixed hotkeys triggering changed/unganged for types they aren't supposed to fixed showing dr2, dr3 and dr4 types in the threadlist lua: New functions: compareMemory encodeFunctionEx enableKernelSymbols waitForExports waitForDotNet waitForPDB waitforsymbols searchPDBWhileLoading duplicateHandle getScreenDPI extendedToByteTable byteTableToExtended executeCodeLocalEx executeMethod allocateSharedMemoryLocal (un)registerCreateCallback (un)registerFirstShowCallback dbk_usePhysicalMemoryAccess dbk_setSaferPhysicalMemoryScanning dbk_readPhysicalMemory dbk_writePhysicalMemory dbvm_addMemory dbvm_removechangeregonbp dbvm_speedhack_setSpeed dbvm_setTSCAdjust changes: getWindowList now returns the results just like ce's window list documented OnChangeBounds for the Control class (was already there, now documented as well) executeCodeEx can now also taker just parameters without typedefs added Data field to ListItem's added description field to eateHotkey method added clear method to the menuItem class readStringEx() can now deal with partial memory reads executeCodeEx: Fixed more than 4 parameters added Point type fixed editbox selstart/sellength types, and added CaretPos added HeaderSection class and document HeaderSections added roundRect, drawFocusRect and textRect to the Canvas. added ansicode character support for textRect added loadFromStream and saveToStream to the RasterImage class added readAnsiString and writeAnsiString to the Stream class Better document the mode field of createFileStream Expose the handle of the LuaPipeServer Publish frmTracer Publish frmUltimap2 Publish frmCodeFilter Publish imagelist Added the DrawItemEvent general GUI property to Lua's callback system Added the MenuDrawItemEvent general GUI property to Lua's callback system Added the ContextPopupEvent general GUI property to Lua's callback system Created a new Diagram class group which can allow you to create graphs and diagrams Memoryrecord. DropDownValue and DropDownDescription work now (still RO) Post release patches: 8/21/2019: Fixed when scripts load other scripts using files in non ascii language encodings Russian translation files have been updated by SER[G]ANT Chinese translation files have been updated August 19 2019: Cheat Engine Patreon, because why not I've decided to join Patreon. If you wish to donate and you don't like paypal or bitcoin then this is an alternate way to support Cheat Engine Currently there's not much there but in the future I'll be adding some extras like special ranks in the forum, custom builds, pre-releases while stuff is being verified/certified, and other stuff. The link: February 7 2019: Cheat Engine 6. 8. 3 Released: New version with a bunch of improvements to make using CE easier and some bugfixes Download: Cheat Engine 6. 3 Please report bugs and give suggestions for improvements Fixes: debugging/stepping with hotkeys several high DPI visual glitches VEH debugger reattach works again Pointerscan resume works again Stackview can now show by reference, previously it did nothing disassembling imul speedhack while key down option assembling values with x*2/4/8 the "resume thread" in the threadlist now resumes threads instead of freezing them fixed an error popping up when editing registers with no debugger attached getNameFromAddress will not show userdefined symbols when symbols are disabled Additions and Changes: Waiting till all symbols have been loaded has been removed Launching structure compare from dissect data now only needs 1 address, though it's recommended to have at least 2 each Code completion in lua engine is now more smoother You can now compare traces generated by the tracer Threadlist window now has a copy to clipboard Structure compare now digs deeper into pointers Pointerscan import/export now works with newer types as well Better Lua comment support Added rudimentary sort to the structure compare window (based on levelwidth only) Referenced strings now also shows if it's unicode Formdesigner now has a context menu to add undocumented controls Lua: added enumMemoryRegions added getWriteLog (Let's you get the writelog and activate it) HexadecimalView: added the OnCharacterRender and OnValueRender events 02/11/2019: Don't search addresslist entries in PDB when still loading and give an option to quit slow load 02/17/2019: Fixed speedhack giving an error first time activating and removed a message when using ctrl and scanning December 24 2018: Cheat Engine 6. 2 Released: Here's a new version for the hollidays. Mainly minor improvements and some small bugfixes, but also a new 'ultimap like' feature called Code Filter for which you don't need any special hardware for. (Just an extensive list of addresses) Download: Cheat Engine 6. 2 Fixes: Disassembler: Several disassembler instructions had a comma too many or too few, fixed those Disassembler: Fixed the description for ret # Disassembler/Debug: Fixed the address that is being edited when a breakpoint hits while editing an instruction Assembler: Fixed assembling reg*2/4/8+unquotedsymbol Plugin: Fixed the SDK for C plugins that use the disassembler callback Hotkeys: Fixed the attach to foreground hotkey Memory Scan: Fixed the percentage scan Memory Scan: Fixed a rare situation that could cause an error Memory Scan: Simple values now works with groupscan Memory Scan Lua: Scanfiles now also get deleted if the memory scan object is freed before the scan is fully done Fill Memory: Now allows 64-bit addresses Structure Dissect: Fixed the popupmenu "change type" so it now affects all selected entries instead of just the first PointerOrPointee window: Fix the debug pointer or pointee window button text when using access instead of writes GUI: Fixed and restored the DPI Aware option in setting GUI: Some DPI fixes/adjustments here and there Graphical Memory view: Fixed DPI issues Symbolhandler: When the symbolhandler now waits till it's done, it won't wait for the structures to be parsed anymore Additions and Changes: Lua Engine: Added autocomplete DLL injection: On DLL injection failure CE tries to fall back on forced injection methods Assembler: Added multibyte NOP Plugins: Plugins can now have side dll's that are statically linked in their own folder (Windows 7 with updates and later) Debugging: Improved the FPU window editing when single stepping, allowing you to change the FPU registers Debugging: Threadview now updates when single stepping and cnanges made there will affect the currently debugged thread (before it didn't) Debugging: Added Code Filter. This lets you filter out code based on if it has been executed or not (Uses software breakpoints) Debugging: Added an option to chose if you wish to break on unexpected breakpoints, and if CE should break on unexpected breakpoints, or only on specified regions (like AA scripts) Disassembler: The comments now show multiple parameters Pointerscan: Add option to allow negative offset scanning Pointerscan: Add extra types to the display Advanced Options/CodeList: Now uses symbolnames Tutorial Game: Added a levelskip option when you've solved a step Tutorial Game: Added a secondary test Compare memory: Added a limit to the number of address values shown per row (can be changed) Address List: When the option to deactivate children is set, the children will get deactivated first Memory Scan: Add a lua script in autorun that lets you specify which module to scan ExecuteCodeEx(Let's you execute code in the target and pass parameters) Added 2 new parameters to getNameFromAddress (ModuleNames and Symbols) Added addModule and deleteModule to the symbollist class Added the ModuleLoader class which can force load dll's Fixed endUpdate for the listview Thanks go out to SER[G]ANT for updating the russion translation files already.