Jump to content

[POC] Wondercard data stored in RAM, before accepting "Yes" to receive it.


Recommended Posts

I've coded a simple ntr cfw plugin that should dump the wc6 when enabled to the root of sdcard.

The same plugin has the cheat for XY and the cheat for ORAS, using the ntrdebugger ram offsets posted here. I advise to backup SDcard before trying it out, just in case I messed up something and the card corrupts (I know this doesn't sound very trustful).

Basically when you select the cheat, the 0x108 bytes from that memory offset are read, then written to a file in sd card. The plugin should check if the file already exists, and if it does, a new file with increased number count is created (filename may be weird, I couldn't use advanced string functions in the plugin, so it might end up as a little endian hex number in the filename...)

I couldn't test since I don't have my 3ds here right now

I don't think that will work since NTR disables Internet when using any cheat plugins.

Link to comment
Share on other sites

What I never understood is why this community doesn't collect the complete wondercard data...

A wondercard file is not 0x108 bytes, it's 0x310 bytes: http://s000.tinyupload.com/?file_id=59364408035435369863

0x000~0x003 = flags for which games can receive it (03 = X/Y, 0C = OR/AS, 0F = X/Y/OR/AS)

0x004~0x1FF = description

0x200~0x201 = flag for showing an icon next to the title

0x202~0x204 = checksum

0x204~0x207 = always 00464646

0x208~0x30F = part to be stored in the savegame file (0x108 bytes)

Collecting only half of the data is kinda weird. I mean if this was Generation 4, what you're doing here is like collecting only the PGT, but not the PCD file.

Link to comment
Share on other sites

What I never understood is why this community doesn't collect the complete wondercard data...

A wondercard file is not 0x108 bytes, it's 0x310 bytes: http://s000.tinyupload.com/?file_id=59364408035435369863

0x000~0x003 = flags for which games can receive it (03 = X/Y, 0C = OR/AS, 0F = X/Y/OR/AS)

0x004~0x1FF = description

0x200~0x201 = padding

0x202~0x204 = some checksum (i still don't know how to compute it)

0x204~0x207 = always 00464646

0x208~0x30F = part to be stored in the savegame file (0x108 bytes)

Collecting only half of the data is kinda weird. I mean if this was Generation 4, what you're doing here is like collecting only the PGT, but not the PCD file.

I'm ashamed that I never truly knew.

that begs the question:

Should a new standard for wondercards be set? what do we do with old submissions?

should pkhex be modified to accommodate this?

Link to comment
Share on other sites

doesnt that mean the full wondercard data is only collectable through ram?

Well in that case, yeah, it'll probably be pointless to have the extra data, besides custom distribution channel,

And there was a post on gbatemp where a Korean guy practically cracked it.

Link to comment
Share on other sites

That's correct.

It's all up to you guys, but I know I'm trying to collect and preserve the complete data before it's lost forever.

Link to comment
Share on other sites

What I never understood is why this community doesn't collect the complete wondercard data...

A wondercard file is not 0x108 bytes, it's 0x310 bytes: http://s000.tinyupload.com/?file_id=59364408035435369863

0x000~0x003 = flags for which games can receive it (03 = X/Y, 0C = OR/AS, 0F = X/Y/OR/AS)

0x004~0x1FF = description

0x200~0x201 = padding

0x202~0x204 = some checksum (i still don't know how to compute it)

0x204~0x207 = always 00464646

0x208~0x30F = part to be stored in the savegame file (0x108 bytes)

Collecting only half of the data is kinda weird. I mean if this was Generation 4, what you're doing here is like collecting only the PGT, but not the PCD file.

Are you sure the value at 0x202 is a checksum? I dumped the English and German GF Celebi from RAM and that value is 0000 for both.

Link to comment
Share on other sites

Ah, try to dump the data from the process called boss. Value 0x202 should be in there correctly.

Thanks. Does the boss process have other offsets?

EDIT: Nvm I got it.

data(0x080139FE, 0x310, filename='wc.bin', pid=0x20)

Edited by BlackShark
Link to comment
Share on other sites

Another important thing to note, data from boss also has the correct value for the Pokémon's gender in it.

The ones from the contribution threads have all already been modified and fixed by the game to be either male or female.

Link to comment
Share on other sites

  • 2 weeks later...
I was thinking if we should hold back that information for now, to prevent any faked submissions?

Well, we can always check the datas on the net. And even if it is a exact copy of the original, what is the difference between the bytes sequence written by the user and the one downloaded from the server, if it is the same ?

Link to comment
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
×
×
  • Create New...