The Latest

feat. HG/SS Save Editor attempt


Date created: 7/23/22

With all honesty, I haven't pulled together the motivation to make a nice and complete post about what I've been coding lately. Please accept this quick-n-dirty thing instead.

Pokemon HG/SS Save Editor

I haven't finished this just yet because this project has undergone a few different steps. When listed out, they're pretty dumb.

  • Start writing the project in Kotlin.
  • Get tired of Kotlin's syntax (mostly with bitwise operations and unsigned numbers) and switch the project to TypeScript.
  • Decide to try writing an entire language specifically for saved/serialized data notation, too in-depth without a useful outcome.
  • Start again in TypeScript with a more abstract approach that can be applied to other games' save data as well

So yeah, the project is in a pretty cool spot in terms of design...I think. It's just gone through quite a few stages, from messing with a new language to making a new language. I'm hoping to have something substantial to show from it soon, but for now am looking for ways that Javascript can aid in making the tool nice to work with. We're talking both from user standpoint and from coder standpoint who wants to add support for more games.

My own NKit-to-ISO tool

Yeaaaahhh! I started off with Typescript on this one before deciding that C would be better suited for handling giant files. Typescript was probably fine, but I also needed to brush up on C for another project. Either way, I had an nkit.iso of Super Mario Strikers along with a proper iso of it for reference. My output iso was the correct size but rather than having the files padded across the disk, they were all placed at the very end. I assume Nintendo padded out files on Wii/GameCube games across the entire ISO so the disks would be more forgiving on scratches. Overall, the documentation for the NKit format frustrated me a bit much, and I've also learned that while popular, NKit is being superseded by the RVZ format. So we'll say this one was just for the experience.

That's all for now. Tune in for more.