savaughn / pksav

Small, fast Pokémon save file parsing C library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PKSav

license GitHub release (latest by date) GitHub Workflow Status GitHub issuesGitHub all releases

The goal of PKSav is to be a small, fast, and portable library for interacting with and manipulating Pokémon save files. It is written in pure C with no external dependencies, which allows it to be deployed on a wide variety of platforms, from PC's to smartphones to handheld consoles.

It is not meant to be a plug-and-play solution to save editing but rather the internal workings of a larger library that provides users with a more convenient interface. Being written in C, it can easily be wrapped in a larger C/C++/Objective-C library or be called as native functions in languages such as C# or Java.

Currently, only American save files are supported, as save files from different regions are often laid out differently, usually to accomodate strings having different lengths between regions.

Component Status

  • Generation I: complete
  • Generation II: complete
  • Game Boy Advance: complete
  • All other generations: not implemented

Acknowledgments

  • PKSAV (@ncorgan), the original library this was forked from.
  • PRET (@pret), whose Pokémon disassemblies greatly contributed to this library's functionality.
  • Vicky "Endrift" Flau (@endrift), whose mGBA emulator allowed for further reverse-engineering.
  • Michael Bond (@codemonkey85), for consulting on game mechanics.

About

Small, fast Pokémon save file parsing C library

License:Other


Languages

Language:C 94.1%Language:CMake 5.4%Language:Shell 0.3%Language:Batchfile 0.2%