MON-FS might be the most impractical use of a Pokemon Emerald cartridge yet

aaaaaa.png

In the years since its release Pokemon Emerald has received a lot of attention. Outside of being beloved by fans of the series, there have been people attempting to beat the game with any number of ridiculous conditions, all while sticking to the vanilla game. The creativity of the larger community has always stood out, seeing the game tackled without Pokemon Centers, through various nuzlocke challenges, and with any number of unusual Pokemon choices. What have I never seen in Pokemon Emerald though? An incredibly inefficient file system.

MON-FS is here to solve a problem nobody has ever had, and enables you to store a colossal 3.5kb of data in the PC of your Pokemon Emerald save. The principle here is nothing revolutionary, but the fact somebody went out of their way to make it is worth talking about in itself. The way MON-FS works is by utilising each Pokemon slot in your PC, with each slot acting as 68 bits of data. To keep things simple, only things you’re able to see at catch time are factored in, with two bits representing the four most common species on Route 116, 60 bits being the Pokemon's nickname, one bit for its gender, and five bits for whatever held item it’s given. By processing each Pokemon in the 14 available boxes, these bits are interpreted and can be converted back to whatever data you used as an input. Creator Paul Sarda uploaded a YouTube video explaining the process to truly highlight its capabilities:


Beyond just the system of encoding and decoding, a modified version of shiny hunting bot pokebot-gen3 was released to assist in catching the Pokemon you’re wanting. If you happen to have a lot of free time and are interested in trying this out for yourself, you can find both the GitHub page and a site created for encoding and decoding below.

:arrow: MON-FS
:arrow: GitHub Page
 

aoimatsuri

Member
Newcomer
Joined
Mar 7, 2024
Messages
19
Trophies
0
Age
33
XP
55
Country
Germany
Finally a safe place for my diary and passwords

Noone will find it in my Emerald gamecard


Whats that ?
"Sjjejsn828283+€:3€+8€+" LVL87 pidgey?

Yeah I caught it myself.
No. You can't have it


-----
Hmmm nice.
view-source:https://sardap.github.io/mon-fs/
 

Attachments

  • Screenshot_20240929-162353_Brave.png
    Screenshot_20240929-162353_Brave.png
    122.9 KB · Views: 1

cearp

瓜老外
Developer
Joined
May 26, 2008
Messages
8,788
Trophies
2
XP
8,816
Country
Tuvalu
Funny, I made something very very very similar a few years ago - https://github.com/llakssz/PyEmeraldSaveSteg
As you can see, it stores data in pokemon, getting 67 bytes per pokemon (tool in the OP gets 68 BITS), from what I remember 67 is the max if you want the data to be "hidden".
By that I mean, looking at the boxes in the PC, you'll just see eggs, and won't see a bunch of pokemon with junk names, that could look "suspicious". (The idea is that you can "hide" data, just a fun concept)

You can also store data just in the pokemon names, as base64 - this means you can technically set up data yourself by renaming your pokemon.

But didn't inform anyone or make a video lol :D

Data can also be stored in the hall of fame block too if we're desperate, but I didn't support that.
Mine's written in python, pretty easy to see what's going on and it also works as a save editor if you want to edit pokemon in your boxes :)

Post automatically merged:

Why can't you just expand the game ROM to the biggest size possible and put all your captured monsters in the free space?
Working with a regular rom is best, it means you can store data on a real cart.
 
Last edited by cearp,

Scarlet

Editorial Aspirant
OP
Editorial Team
GBAtemp Patron
Joined
Jan 7, 2015
Messages
5,494
Trophies
2
Location
Middleish South-Left
Website
scarlet.works
XP
17,601
Country
United Kingdom
Funny, I made something very very very similar a few years ago - https://github.com/llakssz/PyEmeraldSaveSteg
As you can see, it stores data in pokemon, getting 67 bytes per pokemon (tool in the OP gets 68 bytes), from what I remember 67 is the max if you want the data to be "hidden".
By that I mean, looking at the boxes in the PC, you'll just see eggs, and won't see a bunch of pokemon with junk names, that could look "suspicious". (The idea is that you can "hide" data, just a fun concept)

You can also store data just in the pokemon names, as base64 - this means you can technically set up data yourself by renaming your pokemon.

But didn't inform anyone or make a video lol :D

Data can also be stored in the hall of fame block too if we're desperate, but I didn't support that.
Mine's written in python, pretty easy to see what's going on and it also works as a save editor if you want to edit pokemon in your boxes :)

Post automatically merged:


Working with a regular rom is best, it means you can store data on a real cart.
I was thinking of giving something more thorough a stab myself, fun to see it's already been done lol. Gotta appreciate the simplicity on show with this one though. Only using a few parts of the data that you could feasibly eyeball and only using common Pokemon of one specific route is an interesting approach. Not to mention how easy it would be for anybody to just do this on a retail copy without any tools.

Whether they'd actually want to do that...................
 
  • Like
Reactions: cearp and raxadian

KleinesSinchen

GBAtemp's Backup Reminder + Fearless Testing Sina
Member
Joined
Mar 28, 2018
Messages
4,599
Trophies
4
XP
16,102
Country
Germany
  • Like
Reactions: bonkmaykr and cearp

shadow1w2

Still here.
Member
Joined
Mar 16, 2004
Messages
1,729
Trophies
2
XP
1,908
Country
United States
In the future we wont have treasure maps, no it'll be files stored on an old pokemon cartridge.
There will be a big ol pirate hacker battle over it then some kid who happens to have a working GBA picks it up, plays the game a bit, uses and levels up one of the pokemon then saves thus ruining the treasure map file.
Can't wait,
 

Asdolo

the Hedgehog
Member
Joined
Apr 29, 2016
Messages
605
Trophies
3
Age
30
Location
Buenos Aires
Website
twitter.com
XP
1,359
Country
Argentina
Funny, I made something very very very similar a few years ago - https://github.com/llakssz/PyEmeraldSaveSteg
As you can see, it stores data in pokemon, getting 67 bytes per pokemon (tool in the OP gets 68 bytes), from what I remember 67 is the max if you want the data to be "hidden".
By that I mean, looking at the boxes in the PC, you'll just see eggs, and won't see a bunch of pokemon with junk names, that could look "suspicious". (The idea is that you can "hide" data, just a fun concept)

You can also store data just in the pokemon names, as base64 - this means you can technically set up data yourself by renaming your pokemon.

But didn't inform anyone or make a video lol :D

Data can also be stored in the hall of fame block too if we're desperate, but I didn't support that.
Mine's written in python, pretty easy to see what's going on and it also works as a save editor if you want to edit pokemon in your boxes :)

Post automatically merged:


Working with a regular rom is best, it means you can store data on a real cart.

Also this is 68 bits per slot, not bytes. Yours is 67 bytes, not bits. So yours is better.
 

Scarlet

Editorial Aspirant
OP
Editorial Team
GBAtemp Patron
Joined
Jan 7, 2015
Messages
5,494
Trophies
2
Location
Middleish South-Left
Website
scarlet.works
XP
17,601
Country
United Kingdom
Also this is 68 bits per slot, not bytes. Yours is 67 bytes, not bits. So yours is better.
In fairness both approaches have merits. Cearp's is certainly more efficient, but you'd have no chance of using it without external tools. The beauty of this one to me is that it's weirdly accessible. Heck it could even be expanded on while remaining accessible if they opened up the species further and other small things, but I do appreciate the fact they just picked four common and relatively easy to catch Pokemon on one route. It's just such a novel thing.
 

InsaneNutter

Well-Known Member
Member
Joined
Dec 26, 2007
Messages
1,102
Trophies
2
Age
38
Location
Yorkshire, UK
Website
digiex.net
XP
3,382
Country
United Kingdom
Security by obscurity? Not a good concept.

That's true, doing something like exposing Remote Desktop to the internet on port 8933 instead of 3389 is really not anymore secure, however that is different to steganography, which can still be a great way to hide something in plain sight.

You could store an encrypted text file with your Bitcoin on your genuine Pokemon Emerald cart and take that in / out of a repressive country. Its unlikely anyone would ever suspect anything suspicious. Even if they somehow did and managed to get the data out that save, they still need to decrypt it with your key to get the Bitcoins for example.

Someone could have encrypted some important data in their GBA Temp avatar. Who is ever going to suspect that? or even be able to decrypt it if they somehow do know a member have done this.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • K3Nv2 @ K3Nv2:
    Except when kid rock comes on
  • BigOnYa @ BigOnYa:
    Only when I'm drinking bud light
    +1
  • K3Nv2 @ K3Nv2:
    You only like grandfather music
  • ZeroT21 @ ZeroT21:
    the music you heard while growing up will still be the most memorable, but sounds like dogshit listening through studio quality headwear
  • BigOnYa @ BigOnYa:
    I like gangster grandpa rap
  • K3Nv2 @ K3Nv2:
    You label me
  • ZeroT21 @ ZeroT21:
    i hate meself turning into audiophile addict
  • K3Nv2 @ K3Nv2:
    At least you didn't turn into a mj type of phile
  • ZeroT21 @ ZeroT21:
    ruined me childhood memories
  • ZeroT21 @ ZeroT21:
    mj's music didn't get ruined luckily
  • K3Nv2 @ K3Nv2:
    Just the tabloids ruined him
  • ZeroT21 @ ZeroT21:
    his vocals were just that gud
  • BigOnYa @ BigOnYa:
    He was an awesome dancer, nobody can deny that.
  • ZeroT21 @ ZeroT21:
    no comment on dat part

    :rolleyes:
  • BigOnYa @ BigOnYa:
    Ken just upset he wasn't molested by him
  • K3Nv2 @ K3Nv2:
    Vote for trump
  • BigOnYa @ BigOnYa:
    I'm voting for Kanye. Yeet Yeet mofo.
  • K3Nv2 @ K3Nv2:
    Until info gets leaked Kanye was at a diddy party
    +1
  • BigOnYa @ BigOnYa:
    Wasn't Trump, Kanye, and Diddy all friends? What a freak show that would be.
  • K3Nv2 @ K3Nv2:
    Probably in the woods some place
    +1
  • Domestica @ Domestica:
    A surprising amount of mods on. Something about to happen?
  • BigOnYa @ BigOnYa:
    Its Bantober....Mods are preparing.
  • Veho @ Veho:
    It's Bansgiving.
    Veho @ Veho: It's Bansgiving.