EZ Flash/Cheats

Cheats or cheating describes a generic term meaning to alter a game being played so certain game variables and values are adjusted in the players favour.

Cheats can come in a variety of fashions and do quite a number of things. The most common form of cheat is Infinite Lives. This is where the players character never runs out of lives, no matter how many times that player's character "dies" in the game, they can keep on living and playing.

The most common forms of cheats are :

  • Infinite (Never run out of)
  • Get (A specific item is given to you)
  • Skip/Warp (To a particular level)
  • Maximum (A value is set to it's highest)
  • All (You are given everything in that category)
  • Invincible (Your character cannot be harmed)

Cheats for the EZ Flash range of Flash carts are stored in cht files.

Basics

Now on to the actual making of cheat files. As i mention before cheat files are of the .cht variety. Each game gets its own cheat file placed in the CHT folder. To create a new cheat file the name of the file must be the same as the game ID, the middle part of the game seriel number(NTR-XXXX-YYY). This can be found on codejunkies at the top of the AR codes for a DS game. You can also use a header reader to find it. To enter a cheat code you need to use the following grammer:

[CheatName]
ON=xxxxxx,dd,cc,bb,aa

There can be several of these in a single cheat file seperated by a blank line. However at the moment it seems that there is a certain amount of cheats the system can handle so for now please try to keep the files small.

Single-Line Codes

When you look up AR codes it won't be in this format. They will be in the format zzxxxxxx aabbccdd. When entering the codes th zz is excluded. You can only currently use codes thats first number(first z)is 0,1, or 2. The basics are that you type On= type in xxxxxx and type in dd,cc,bb,aa in that order. If the zz starts with 2 you only need dd, if it starts with 1 you need dd,cc, if its 0 you need all of them.

Multi-Line Codes

Now that only really covers single line AR codes. For Bigger codes you need to use something called Array Lock. Here is ZackaruS's explaination of it:

The general formula is:
[Address 1 (Begin)]-[Address2 (End)]+[Offset]*[Increment for "AA,...,DD"],AA,BB,CC,DD

Example:
Try an AR code at random (it's not real. It's just for the example):

Have all of things
0211514c 99990002
02115150 9999000C
02115154 99990016
02115158 99990020
0211515c 9999002A
Step 1:
We can see:
0211514c 99990002
02115150 9999000C
02115154 99990016
02115158 99990020
0211515c 9999002A

So at this instant, we have:
11514c-11515c+[Offset]*[Increment for "AA,...,DD"],02,00,99,99
Step 2:
Now, for the offset, we can see:
0211514c 99990002
02115150 9999000C
02115154 99990016
02115158 99990020
0211515c 9999002A
offset=115150-11514c=4
So at this instant, we have:
11514c-11515c+4*[Increment for "AA,...,DD"],02,00,99,99
Step 3:
Now, for the increment, we can see:
0211514c 99990002
02115150 9999000C
02115154 99990016
02115158 99990020
0211515c 9999002A

increment=9999000C-99990002=A
So the EZV code is:
[Have all of things]
11514c-11515c+4*A,02,00,99,99

I think (but I'm not sure) for decrement we change [Address 1 (Begin)] by [Address2 (End)] and [Address2 (End)] by [Address 1          (Begin)] and AA,BB,CC,DD by the last value.


You will need to use hexadecimal calculations to get this working

End of the file

At the end of the file you need:

[GameInfo]
Name=Name of game
System=NDS
Text=Name to appear

Pretty self explanatory i hope

/!\ Please refer to The Quick Start Guide for help with using .cht files on the EZ 5 /!\

CHT

CHT is the filetype that the EZTeam uses for their cheat files.

The files are simple text based files in a specific format/structure.

That structure looks like this :

[Cheat Description]

  Self explanatory header

ON=xxxxxxxx,xx

  The first part is required for all basic ON/OFF cheats. The second part is a 16 digit hexidecimal memory location. A comma then 
  separates the values to be poked (or put) into the memory location. Multiple values can be input, separating each one with a
  comma.

[Cheat Description]

Effect1=

Effect2=

  Cheats can also have a single heading and multiple choices. An example may be Street Fighter where you can choose your start up 
  character or a shoot-em-up where you can choose the guns you have.

[GameInfo]

  This tells EZManager/EZClient what details follow. I do not believe this information is used in any way.

NAME=

  Freeform text, usually specifying the rom release name / details.

System=GBA

  Details which specify the platform or target hardware the cheat file is for.

Text=

  Freeform text, again usually specifying the rom / game name.

Here is an example cheat file :

[Inf Gold]
ON=454E0,FF
[Inf Health]
ON=457AF,20
[Inf Lives]
ON=408D0,9
[Invincible]
ON=455E8,C8
[GameInfo]
Name=1077 - ¼ÓÀձȺ£µÁ [Pirates of the Caribbean - The Curse of the Black Pearl]
System=GBA
Text=¼ÓÀձȺ£µÁ

Cheat Editors

Two cheat editors are available for users today. Both have been written by different members of the Unofficial EZ-Flash Forums.

CHTED was written by Slade and is a program designed to allow loading, editing, saving and verifiying of CHT files. Current version is 1.9. You can download the file here.

EZ-Cheat was written by Hankchill and comes in both a Windows and MacOS binary. From the read me: 'Basically, EZ-Cheat is a tool available for Windows 98/NT/2000/XP and Mac OS X that allows you to open, modify, and create your own Cheat (.cht) files for use with either the SuperCard (SD or CF) and EZ-Flash III. It's a pretty organized tool that sorts out all of the codes for easy access, and allows entering codes easy as well. There's not much else to say about EZ-Cheat.' Current version is 0.1. You can download the Windows & MacOS here.

Cheat Converters

Cheat2Cheat was written by Slade and is a small tool designed to convert VisualBoy Advance clt (cheat) files to EZ-Flash cht files. It will currently only process one cheat file at a time and is available in a Windows binary only. Current version is 1.2, which you can download here.