Jump to content


  • Please log in to reply

We need a Pokemon GBA PokeSAV equivalent.

, Anyone up for it, I'll gladly donate $$$ (Go to first unread post)
MarkusE Post #1 Posted 15 October 2007 - 11:30 AM

    Advanced Member

  • PipPip

  • Group: Newcomers
  • Posts: 54
  • Member No.: 98,143
  • Joined: 28-August 07

  •  

PokemonMaker, etc. just don't cut it. They generate action replay codes and AR-created Pokemon are highly prone to data corruptions.

We need a program that works just like the DS Pokesav except for R/S/E/FR/LG. Which works by directly editing the .sav

I'd be willing to contribute up to $100 towards the donation fund for a programmer to get working on this.

This document explains how a Pokemon is structured and how the encryption works:
http://www.princeton.edu/~jdonald/pokemon/...onMakerHelp.txt

Steps:
1. Get Pokemon parameters (nature, gender, OT data, moves, etc. etc.) via user input
2. Generate .pkm file (80 bytes) - this is the unencrypted data as outlined in the document above
3. Load .pkm files into .sav - use the XOR encryption algorithm as outlined in the document above and store it into the .sav
(Where to store varies by game -- I believe FireRed stores the beginning of Box 01, Position 01 at around 0x5050)
4. Recompute the game's checksum -- check filb.de for details on the algorithm

So it's doable. Just a lot of work and I'm still working on the DP Pokesav PHP upgrade right now. So anyone who wants to tackle this will get a lot of praise from me and probably some donations, too. smile.gif



gizmo_gal Post #2 Posted 09 May 2008 - 12:02 AM

    QWEEN of the RadioActive Force!!!


  • Group: Members
  • Posts: 1,172
  • Member No.: 122,636
  • Joined: 10-April 08
  • Location: 1st dimension, Earth

  •  

I dont have any finances to contribute, but I'd love to help any other way. Make a website maybe, or help monetize the site.


Urza Post #3 Posted 09 May 2008 - 12:02 AM

    BASE TRADE SCENARIO


  • Group: Members
  • Posts: 6,442
  • Member No.: 90,032
  • Joined: 18-July 07

  •  

I said LAST COUPLE DAYS.


ItsMetaKnight Post #4 Posted 09 May 2008 - 12:06 AM

    GBAtemp Fan

  • PipPipPipPip

  • Group: Members
  • Posts: 456
  • Member No.: 119,084
  • Joined: 04-March 08

  •  

nobody would do this, gba is dead man


Chotaz Post #5 Posted 09 May 2008 - 12:14 AM

    I'm back! :D

  • PipPipPipPipPip

  • Group: Members
  • Posts: 757
  • Member No.: 102,287
  • Joined: 20-September 07

  •  

QUOTE(ItsMetaKnight @ May 9 2008, 12:06 AM) <{POST_SNAPBACK}>
nobody would do this, gba is dead man


No console dies, until everyone quits playing it, and hell fucking yeah I play my snes <.<



PuppyBoy Post #6 Posted 09 May 2008 - 10:31 AM

    Newbie


  • Group: Newcomers
  • Posts: 3
  • Member No.: 124,712
  • Joined: 09-May 08

  •  

I was looking at coding something similar for the DS, so you could view pokémon from your GBA game's hidden stats and such without dumping the data and reading it with PokéReader. I probably wouldn't go as far as editing them though due to the huge potential for fuck-upages and corruption of the data.

Is there any other documentation of pokemon GBA save data like this? My previous attempts to find anything usually turn up nothing.


Jack-Of-Trades Post #7 Posted 09 May 2008 - 06:41 PM

    GBAtemp Fan

  • PipPipPipPip

  • Group: Members
  • Posts: 311
  • Member No.: 123,358
  • Joined: 21-April 08

  •  

You could probably

Take a save file with slot 6 empty
and another sav where slot 6 has a hacked pokemon

And then use something like hex compare
So you can see where it store's it's data


PuppyBoy Post #8 Posted 09 May 2008 - 09:17 PM

    Newbie


  • Group: Newcomers
  • Posts: 3
  • Member No.: 124,712
  • Joined: 09-May 08

  •  

QUOTE
So you can see where it store's it's data


If only it was as simple as that. I've compared three save files and the location changes everytime. There's probably some way it structures everything based on your trainer ID or something. There's no way I can work it out on my own though...


Xeronage Post #9 Posted 10 May 2008 - 10:26 PM

    GBAtemp Advance Fan

  • PipPipPipPipPip

  • Group: Members
  • Posts: 611
  • Member No.: 46,461
  • Joined: 06-August 06

1. Checksum
2. It contains 2 or 3 savefile backups in one (Against Data corruption)


PuppyBoy Post #10 Posted 12 May 2008 - 10:56 AM

    Newbie


  • Group: Newcomers
  • Posts: 3
  • Member No.: 124,712
  • Joined: 09-May 08

  •  

QUOTE(Xeronage @ May 10 2008, 10:26 PM) <{POST_SNAPBACK}>
1. Checksum

In what context?

QUOTE(Xeronage @ May 10 2008, 10:26 PM) <{POST_SNAPBACK}>
2. It contains 2 or 3 savefile backups in one (Against Data corruption)


There's only one backup I believe. From what I've read it uses 128kb of flash memory to store a 64kb save file aswell as a backup of it. I think that it puts the main save at 0x0A010000, 64kb into the save data and the backup at 0x0A000000 - this would explain why running in VBA gives you the 'File is corrupt, previous file will be loaded' message - VBA just doesn't save the full 128kb sav file - but I have to confirm this...

Okay, ignore that. There's one back up. The save file's split into 28 4096kbyte, slightly out of order ,chunks - 14 for the most recent save, 14 for the previous save. Only 16 chunks are saved in the 64kb file that VBA outputs unless you give it a 128kb file, it doesn't seem to like generating them itself. :S

Edited by PuppyBoy, 16 May 2008 - 03:52 PM.


Lumstar Post #11 Posted 12 May 2008 - 11:10 AM

    Lum~cha


  • Group: Members
  • Posts: 2,960
  • Member No.: 37,324
  • Joined: 07-March 06
  • Location: Darling

  •  

We need a flash cart with proper 128kb save support, for that matter... Most either handle them oddly or choke on it.


Jack-Of-Trades Post #12 Posted 12 May 2008 - 06:40 PM

    GBAtemp Fan

  • PipPipPipPip

  • Group: Members
  • Posts: 311
  • Member No.: 123,358
  • Joined: 21-April 08

  •  

QUOTE
We need a flash cart with proper 128kb save support, for that matter... Most either handle them oddly or choke on it.


Yeah reason i hate to use VBA to use cheats then put them back on my cart

turns my 32KB file to a 64KB file (still work's on card though)

My Cart handles
8,16,32,64,128 Files

Edited by Jack-Of-Trades, 12 May 2008 - 06:47 PM.


Eternal Myst Post #13 Posted 16 May 2008 - 07:45 PM

    Vanished into the Myst.


  • Group: Members
  • Posts: 1,626
  • Member No.: 124,109
  • Joined: 02-May 08
  • Location: I have a bomb alallalallala

  •  

QUOTE(ChotaZ @ May 9 2008, 12:14 AM) <{POST_SNAPBACK}>
QUOTE(ItsMetaKnight @ May 9 2008, 12:06 AM) <{POST_SNAPBACK}>
nobody would do this, gba is dead man


No console dies, until everyone quits playing it, and hell fucking yeah I play my snes <.<

What do you mean snes...I still play my nes,and snes.


TSPhoenix Post #14 Posted 20 May 2008 - 06:45 AM

    GBAtemp Regular

  • PipPipPip

  • Group: Members
  • Posts: 156
  • Member No.: 93,758
  • Joined: 07-August 07

  •  

I've been working (I use that term loosely, I'm pretty crap at this) on a tool that can read savefiles for the original Red/Blue games. (If you have relevant links/info a PM would be appreciated)

In a similar vein if we could make an editor for older games it'd be nice to have a converter that will import old generation Pokemon into newer generations. I know this means adding in data such as gender and doubling (with 50% +1) IVs and capping EVs and so forth but what I eventually want to do is find an old GB(C/A) linker I can use to dump/restore saves from real Pokemon RBY(GSC/RSE) carts and process the data. I don't see my Blue savefile lasting that much longer so I'd like to salvage it.


gumbyscout Post #15 Posted 20 May 2008 - 06:50 AM

    GBAtemp Regular

  • PipPipPip

  • Group: Members
  • Posts: 203
  • Member No.: 99,400
  • Joined: 02-September 07
  • Location: Who cares?

  •  

QUOTE(TSPhoenix @ May 20 2008, 12:45 AM) <{POST_SNAPBACK}>
I've been working (I use that term loosely, I'm pretty crap at this) on a tool that can read savefiles for the original Red/Blue games. (If you have relevant links/info a PM would be appreciated)

In a similar vein if we could make an editor for older games it'd be nice to have a converter that will import old generation Pokemon into newer generations. I know this means adding in data such as gender and doubling (with 50% +1) IVs and capping EVs and so forth but what I eventually want to do is find an old GB(C/A) linker I can use to dump/restore saves from real Pokemon RBY(GSC/RSE) carts and process the data. I don't see my Blue savefile lasting that much longer so I'd like to salvage it.

It would be awesome to have a Red/Blue/Yellow/Silver/Gold/Crystal to LGreen/FRed/Ruby/Sapphire/Emerald/Diamond/Pearl converter. I've always wanted one, but It would require someone who knew ALOT about how pokemon are stored, and how to program.







Users browsing this topic

1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users