Skip to content
/ EdiZon Public

💡 A homebrew save management, editing tool and memory trainer for Horizon (Nintendo Switch)

License

Notifications You must be signed in to change notification settings

WerWolv/EdiZon

Repository files navigation

EdiZon


Latest Release Discord Server Build Status

A Homebrew save file dumper, injector and on-console editor for Horizon, the OS of the Nintendo Switch. Please note if you are using Atmosphere 0.10.0+, you must use the snapshot version of EdiZon. Older versions of EdiZon do not work on the latest Atmosphere.

Overview

EdiZon consists of 3 different main functionalities.

  • Save file management
    • Extraction of game saves.
    • Injection of extracted game saves (Your own and your friends save files).
    • Uploading of savefiles directly to https://anonfile.com.
    • Batch extraction of all save files of all games on the system.
  • Save file editing
    • Easy to use, scriptable and easily expandable on-console save editing.
      • Lua and Python script support.
    • Built-in save editor updater.
  • On-the-fly memory editing
    • Cheat Engine like RAM editing.
    • Freezing of values in RAM via Atmosphère's cheat module.
    • Interface for loading, managing and updating Atmosphère cheats.

All packed into one easy to use and easy to install Homebrew.

Images

Save editor Config and Script files

To download working Editor Config and Editor Script files, visit this repository

Check out our Wiki page for more information on how to build your own Editor Config and Editor Script files.

How to install

  1. Download the latest release from the GitHub release page.
  2. Unpack the downloaded zip file, put the files on your Nintendo Switch's SD card and let the folders merge.
  3. Use a free open source CFW like Atmosphère to launch the hbmenu and start EdiZon from there.
    1. If you want to use the cheat manager you absolutely have to use Atmosphère as only their cheats are supported.
    2. For the best experience, open the /atmosphere/system_settings.ini file and change dmnt_cheats_enabled_by_default = u8!0x1 to dmnt_cheats_enabled_by_default = u8!0x0.

How to compile

  1. Clone the EdiZon repo to your computer using git clone https://github.com/WerWolv/EdiZon.
  2. Download and install devkitA64. It comes bundled with the devkitPro toolchain.
  3. Use the pacman package manager that comes with devkitPro to download and install libNX, portlibs (switch-portlibs) and freetype2 (switch-freetype).
  4. The rest of the compilation works using the make command.

Discord

For support with the usage of EdiZon or the creation of save editor configs and scripts, feel free to join the EdiZon server on Discord: https://discord.gg/qyA38T8

Credits

Thanks to...

  • devkitPro for their amazing toolchain!
  • 3096 for save dumping/injecting
  • Bernardo Giordano for some code from Checkpoint.
  • SwitchBrew for the Homebrew Launcher GUI and shared font code.
  • thomasnet-mc for most of the save backup and restore code and the updater script.
  • trueicecold for batch backups and the editable-only mode.
  • onepiecefreak for the edizon debugger and LOTS of reviewing implementations.
  • Jojo for the Travis CI configuration and the config creator.
  • Ac_K for help with the server side update scripts and the EdiZon save website.
  • jakibaki for her massive help with the implementation of RAM editing and sys-netcheat which was used as inspiration.
  • SciresM for the aarch64 hardware accelerated SHA256 code, his implementation of the Atmosphère cheat engine and his support during development.
  • kardch for the beautiful current icon.
  • bernv3 for the beautiful old icon.
  • All config creators for bringing this project to life!

  • nlohmann for his great json library.
  • Martin J. Fiedler for the nanojpeg JPEG decoding library.
  • Lua for their scripting language.
  • Python and nx-python for their scripting language respectively their python port to the switch.