Table of Contents
Time ago I did a save editor for Super Mario 64, but it was exclusive for Windows and I never published it. I decided to rewrite it from scratch, improve it, and make it cross-platform. I know, there are already save editors for this game, but I haven’t found any that is cross-platform AND works. Just one or the other. And even if there is, I just wanted to make my own, what the hell.
I have some kind of fascination or interest in save formats. I like to know how a game saves its data and all the secrets stored there. So a save editor is the perfect tool to learn about a save format, make the information visible and understandable, and be able to edit it easily. And I would like to work on save editors for other games. Banjo-Kazooie is one candidate.
Some technical notes #
The previous one was written in C# and the UI was done with WPF, hence the Windows exclusivity. Since I wanted to make it cross-platform, I rewrote it in C++. I’m not too comfortable with this language, so this was a bit of an exercise to improve my C++ skills. But making UI programs in C++ is a bit of a pain, and I didn’t want to deal with huge frameworks. So what better to use than ImGui. You might have seen some programs have interfaces done with this, as by default it has a very recognizable style.
With just a few code files added to the project, you can start building a UI that will work on everything, as it doesn’t have any dependency on any operating system. The only requisite is to have a GPU, as this UI system renders frame by frame on top of a graphics API like Direct3D, OpenGL or Vulkan. Like what a video game does. In fact, this is commonly used to develop debug UIs for games or interactive applications. But this UI system is so versatile that it’s being used more and more on normal desktop applications.
More info #
You can check more info about the program and download it here: Super Mario 64 - Save Editor