Jump to content
Visual Boy Advance-M
TheCanadianBacon

Cheat Database Discussion

Recommended Posts

Ok back in the suggestions thread there was discussion of a Cheat database like those found in other emulators such as Project64, Jnes, and even 1964. This thread is for creating that Database, it is by no means the final product since the actual implementation has yet to be coded in VBA-M

Share this post


Link to post
Share on other sites

Ok back in the suggestions thread there was discussion of a Cheat database like those found in other emulators such as Project64, Jnes, and even 1964. This thread is for creating that Database, it is by no means the final product since the actual implementation has yet to be coded in VBA-M

Great that you opened this thread. We really need to get this started, because IMHO the cheat system in VBA wasn't really that great or good, but now we have the possibility to create an impressive database for the Best Multi GB-Emulator available.

 

sounds good. which file format will be used for it (xml-based, perhaps?) ?

We don't know yet, but atm we're discussing a PJ64 styled INI system, but don't know exactly. Time will show.

Share this post


Link to post
Share on other sites

Our Major Concern is getting the codes first and then once we get organized to create either an ini system as MasterPhW suggested or something similer, anyways it's still really undecided atm

Share this post


Link to post
Share on other sites

Anyways I got a head start on an idea for the ini based idea by using the following idea

[superman-Countdown To Apokolips (U)]
;GameShark Codes
;Load the master cheat first
Mastercheat1=928177261526
Mastercheat2=2DD1D2A7161F
Mastercheat3=95FD3D92FA7A
;end comment
AllLevelsUnlocked1=CEB9D4F70585
AllLevelsUnlocked2=44BD0E00BEB3
InfiniteHealth=A08A7934CF99
Earn3Shields=D36F140A7180
Earn3Shields=6C91CEA5FE1B
Earn3Shields=0DE4BF876EFF
CompleteMission[L+R+Up]1=EF5F027B1404
CompleteMission[L+R+Up]2=2E9FB3B13C0F
;End Gameshark Codes
;Start Proaction Replay
;End Proaction Replay

Now mind you this isn't final and is due to change especially since the implementations has not yet been written yet.

Share this post


Link to post
Share on other sites

Isn't Qt 4.4 going to have some nice XML stuff built in?

Since we're using Qt for our GUI anyway it'd make sense to utilize these features if we can.

Share this post


Link to post
Share on other sites

xml is much sweeter indeed. there's more than enough codes avail online anyway, so as long as the format for these is finalized, updating a zip file with the latest correctly-formatted codes wouldnt be a tiresome task (even less, if directly queried inside the emu from a centrally-managed, constantly updated cheat db)

Share this post


Link to post
Share on other sites

hmm

 

i dislike large text files... the PEC codelist is 24mbs, and thats due to an excessive amount of Valkyrie Profile codes (yes,.. ONLY Valkyrie Profile Codes)

without them it'd be 6mbs, tops.

 

I would gather a central XML file to dictate the cheats to be loaded from other files would be better. so. for instance

 

Database.xml

- Minish Cap XML

 

the Database.xml would be used to match against the rom's hex, or crc, or w/e, and then load the cheats from the file specified.

 

 

.....but if we can keep a single file small, by not using mbs worth of cheats for one game, it'd be ok.

Share this post


Link to post
Share on other sites

or small, multipart xml files with a fixed number of cheat info (cut at 500 kbs for example),dated, and with user-input cheats separately added outside of the db (minish cap.xml). this way, the cheat format could be thought of with only storage requirments in mind, and not really reeditability (it'd be desirable for edits to be saved in separate files, easier submitting process, in case theyre not in central db yet).

 

Also, cheats could work in more than one game (euro, italian and US versions for example), so expanding matching to the gameid would sound nicer (for all kinds of reasons, one could have bad cartridge dumps which would fail a crc32 check)

Share this post


Link to post
Share on other sites

Ok what I am going to do is start a list put it in a text file for the database and upload it to my server and when the time comes to update it into the proper format at least we have the codes :)

Share this post


Link to post
Share on other sites

how about a database instead (or flatfiles)? easier updating, easily searchable (for updating it with new codes) that is, only for the code collecting effort itself, not the format itself that was discussed earlier

Share this post


Link to post
Share on other sites

What do you think about the cheat-database over here?

The problem with that system is that you have to manually load the one you want or else deal with the overhead of parsing all those little files every time you start up.

 

If it were me, I'd use a bunch of XML files. It'd be a lot like Squall's suggestion but with a slight twist which is that shared data would be loaded separately. This will decrease the amount of space needed for, let's say, the GameBoy Pokémon games. The encounter codes use Pokédex number converted to HEX. Instead of having who knows how many copies of the same data, just load it from the individual game's cheat file.

Share this post


Link to post
Share on other sites

I'm with Cyrez on this one.

 

Also, why not limit it to pokemon type games, we could do it for games of different regions which use the same value range for items but use a different memory address range.

Share this post


Link to post
Share on other sites

That was my idea all along... I just used Pokémon as an example because I figured everyone reading would get the reference. :banana_cool:

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×