Cheating

IMPORTANT NOTE
This page, as stated below, has to do with cheating in the game through use of third-party programs to manipulate data in the game. For the most part, changing things in-game with Cheat Engine is unlikely to have an adverse effect, but keep in mind that any issues encountered after cheating might not be legitimate "bugs" in the game, so please consider that before submitting such reports to Sierra.

Cheat Engine
As Raphael367 states in his walkthrough, Sierra Lee doesn't mind cheating, but, on the other hand, she doesn't use this program, so she can't give support to it.

Much of the text below has been created by Lunasmeow. He can be contacted in his wall.

A quick and simple guide to cheating in RPGMaker Games without having to do the math yourself. Especially since sometimes the math just flat out doesn't work, as there have been games where (value*2)+1 didn't find what I needed. Oddly enough, it was only on random variables as the math did usually work on the majority of things. But those small random errors made me try and find a better way.

Using Cheat Engine
There's actually an easy way to use Cheat Engine with RPG maker games... a script you use to make it search correctly for those games alone so you don't have to use binary and get millions of hits.

Games with RPG VX ACE or normal VX. People often tell you to search for (value*2)+1. So if you're looking for 123 gold that you want to change, search for 247. But if you wish to use this custom type (so you don't have to do that *2 stuff) then do the following:


 * 1) Start Cheat Engine.
 * 2) Open any process.
 * 3) Right-click the "value type" dropdown menu box.
 * 4) Click "define new custom type (Auto Assembler)".
 * 5) Delete and replace the existing script with the script posted here.
 * 6) Click OK.
 * 7) You can now search for the values as they appear! No need to double and add one or anything like that.

Note: I save this as RPG VX type, and it will open with Cheat Engine forever after as another type option. Easy-peasy. Have fun cheating RPGMaker games everyone!

Game's Reaction
In some cases the game will notice that you have cheated and react to it:
 * You may miss the Incubus King armor from the Deep Cache, if Simon's level is 40 or greater, or the party's Sx is 100,000 or greater - though you miss it anyway if you don't get it on the first trip through Devil's Pass.
 * Dialogue from the old man in Yhilin Outskirts about whether you are doing well will be different.
 * If you try to get an investment that requires an impossible amount of ProN, the game creator will encourage you not to cheat at this part ("Think of the economic stuff as part of the plot!")
 * If you defeat the Rodak Elite during the Trials of Orcish Strength, the hidden Orcent Fights variable is reset to 0. This has the effect of lowering your prize money to 900 Sx, which is 1100 Sx less than if you had lost to the Elite.
 * During confrontation with Fucklord if Simon's level is 61 or higher you don't get any bonus to a hidden variable determining outcome of the battle.

The Script
alloc(TypeName,256) alloc(ByteSize,4) alloc(PreferedAlignment, 4) alloc(ConvertRoutine,1024) alloc(ConvertBackRoutine,1024)

TypeName: db 'RPG VX type',0

ByteSize: dd 4

PreferedAlignment: dd 1

//The convert routine should hold a routine that converts the data to an nteger (in eax) //function declared as: stdcall int ConvertRoutine(unsigned char *input);

//Note: Keep in mind that this routine can be called by multiple threads at the same time.

ConvertRoutine: [32-bit] push ebp mov ebp,esp push ecx mov ecx,[ebp+8] [/32-bit]

//at this point ecx contains the address where the bytes are stored

//put the bytes into the eax register mov eax,[ecx] //second fun fact, addressing with 32-bit registers doesn't work in 64-bit, it becomes a 64-bit automatically (most of the time) shr eax,1 //shift right by 1 bit (divide by 2)

//and now exit the routine [64-bit] ret [/64-bit] [32-bit] pop ecx pop ebp ret 4 [/32-bit]

//The convert back routine should hold a routine that converts the given integer back to a row of bytes (e.g when the user wats to write a new value) //function declared as: stdcall void ConvertBackRoutine(int i, unsigned char *output); ConvertBackRoutine: [32-bit] push ebp mov ebp,esp push edx //save the registers push ecx mov edx,[ebp+0c] mov ecx,[ebp+08] [/32-bit]

//at this point edx contains the address to write the value to //and ecx contains the value

push eax push edx

mov edx,[edx] //edx now contains the original value and edx,1 //only save the first bit

mov eax,ecx //eax gets the user input value shl eax,1 //shift left by 1 bit (multiply by 2) or eax,edx //add the bits of the original value

pop edx mov [edx],eax //write the new value into the old value pop eax

[64-bit] //everything is back to what it was, so exit ret [/64-bit]

[32-bit] //cleanup first pop ecx pop edx pop ebp ret 8 [/32-bit]

Variable names
Originally collected by Omega2501 and shared in the blog. They can be modified by using RPGMakerSaveEdit (ULMF link, TinyUpload link) or SaveEditOnline.

Second Playthrough Story Mode Mod
Before you download and use this, '''Read the Warnings. ''' This mod is for a second or later playthrough where the user does not wish to dedicate the same amount of time to combat as they did in their first. It will allow the player to instantly win any battles they choose to. The mod is made as follows: ''' Warnings/Disclaimers: ''' Current version of this mod is equivalent to release 0.34.3 of TLS and can be grabbed here.
 * 1) All basic/small Health Potions will be replaced by Revelations . The first opportunity to get these is in the chest during the Prologue, and they can be bought at shops that would otherwise be selling the unmodded item.
 * 2) A Revelation can be used in battle by anyone to kill all enemies before they act, and is not consumed on use. You can also fight the battles normally if you choose, aside from the fact that the single item has been changed.
 * 3) The value of a single Revelation hasn't been changed from 100 Sx, so you can buy/sell them like normal hp pots with minimal impact on the economic balance.
 * 4) This mod only edits the data for the Health Potion, which means that transferring your save to an official release at any time will change your whole stack of Revelations into normal health potions, and vice versa. In other words, it's fairly safe. Read the warnings.
 * 1) Try not to use this to win battles you shouldn't be winning: Riala (start), Empress (battle where she crushes you), Rodak Elite (versus Orcent), Elite Succubus (before learning Domination) etc. You may have weird things happening to your variables and outcomes.
 * 2) Using this mod at all bypasses solid, balanced content, as in the battles Sierra Lee has created. Loading your save into this mod will get you past any battles that you're having trouble with, but it might be more satisfying (!) to come out on top in a legitimate way, because the turn-based combat RPG side of things is that coherent in this game.
 * 3) This is intended for people who want to skip battles to relive/change the story they've seen. Everything that should be winnable is winnable in the base game and not in a luck-based way. The mooks in an area will teach you the patterns, tactics, and compositions that you'll need to take on the area boss, who in turn often summons the same minions you just learned the weaknesses of. It's a lot of fun.

This mod does nothing for your ProN, Sx, and Exp gain, which are balanced as they normally are, nor does it allow you to edit variables. The other tools provided on the Cheating page should more than suffice if you choose to go that route. This mod has been given official sanction by the game's author, but she's not responsible for issues you may encounter while playing a modified version of her game edited by a stranger online.