FANDOM


You're setting such a bad example, Father.
 
Robin

IMPORTANT NOTEEdit

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 EngineEdit

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 EngineEdit

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 Edit

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.

The ScriptEdit

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 namesEdit

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

ID Name Notes
10 ProN
11 ArmySize
12 ArmyQuality
15 Social
16 Religion
17 Economy
19 Trin Copies
20 Trin Max
29 Chapter 2 Travel Timer
30 Withered Mountain Acceptance
44 Jade Sabatoge
45 Yhilin Poverty
49 Empress Approval
52 Orgasmic Empire Physical Training
53 Orgasmic Empire Mental/Sex Training
57 Simon Path Day
66 Battle of Yhilin: Victory Points
67 Battle of Yhilin: Collateral Damage
68 Battle of Yhilin: Chaos
69 Battle of Yhilin: Enemy Forces
70 Yhilin Acceptance
72 Seed Orcs
73 Discretionary Fund
74 Orc Strength
75 Orc Intelligence
76 Orc Discipline
77 Orc Sapience
78 Orc Attractiveness
79 Orc MAG
81 Ardoheim
82 Yhilin
83 Aram
84 Eustrin
85 Zirantia
86 Darghelon
87 Gheldaron
89 Ghenalon
92 Tatseni
93 Stenai
94 Orgasmic Empire
96 Chalice States
97 New Givini
98 Tak'Kan
101 Aka
103 Yarra
105 Qum
107 Robin
109 Hilstara
111 Megail
113 Trin
115 Janine
117 Carina
119 Sarai
121 Altina
123 Varia
125 Esthera
127 Nalili
129 Balia
131 Vhala
133 Dari
135 Ginasta
137 Lynine
139 Orilise
141 Wynn
143 Uyae
145 Elleani
147 Riala
149 Iris
156 Mestan
157 Neranda
161 Elf Investigation
164 Aka's Storgan
167 Slum Petition Fund
168 Zirantia Investigation
169 Simon's Anger at Wynn
179 Trade Negotiations
181 Eustrin Impact
184 Border Incident
186 War Preparations
187 Arclent Acceptance
188 3rd Arclent War: Army Extensions
189 3rd Arclent War: Instability
190 3rd Arclent War: IKD Morale
191 3rd Arclent War: Yhilin CD
192 3rd Arclent War: Aram CD
193 3rd Arclent War: Stineford CD
194 3rd Arclent War: Ardoheim CD
195 3rd Arclent War: Zirantia CD
196 3rd Arclent War: IKD CD
197 3rd Arclent War: Aramite Front
198 3rd Arclent War: Stineford Preparations
199 3rd Arclent War: Yhilin Coup
201 Orc Summit
208 Social Reserves
209 Economic Reserves

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.