Skip to content

Repository files navigation

ArenaSaveEditor

License: MIT .NET Platform

A free, open-source save editor for The Elder Scrolls: Arena (1994), built with .NET 8 and WPF. ArenaSaveEditor reads and writes SAVEENGN.NN files directly, letting you tweak items without touching a hex editor.

Fan project. Not affiliated with or endorsed by Bethesda Softworks / ZeniMax Media. The Elder Scrolls: Arena is a trademark of its respective owner.

Status

🚧 Early development. The first milestone — editing items dropped on the ground — is implemented and working. Character stats, inventory, and gold editing are planned next (see Roadmap).

Features

  • Open a SAVEENGN.NN save and list every item record found on the ground.
  • Edit weapon type, material, current/max condition, and inspect value & file offset through a normal UI — no manual byte editing required.
  • Safe by design:
    • An automatic timestamped .bak backup is created before every write.
    • Saves are written strictly in-place; the file size never changes.
    • Edits are validated as you type (e.g. current condition can never exceed the maximum).

Getting started

Prerequisites

Build & run

git clone https://github.com/guilhermevnbraga/ArenaSaveEditor.git
cd ArenaSaveEditor
dotnet run

Or open ArenaSaveEditor.slnx in Visual Studio 2022+ and press F5.

Usage

  1. Click Open Save (SAVEENGN.NN) and select your save file.
  2. Select an item from the Ground Items list to edit it.
  3. Click Save Changes to write your changes back. A .bak copy of the original file is created automatically alongside it first.

Project structure

ArenaSaveEditor/
├── Models/        # Binary structures and enums mapped to the save file format
├── ViewModels/     # Presentation/state logic (MVVM, CommunityToolkit.Mvvm)
├── Views/          # WPF XAML views
├── Services/       # File I/O, backups, and native dialogs
└── Converters/      # WPF value converters used by the views

The architecture follows a strict MVVM separation: the Models layer never touches the UI, ViewModels never touch the file system or System.Windows APIs directly (those live in Services), and Views carry no logic beyond InitializeComponent().

Roadmap

  • Ground item array editor (0x2F3F+)
  • Character attributes / level / experience
  • Gold
  • Inventory (volatile block)
  • Spellbook

Contributing

Issues and pull requests are welcome. If you've reverse-engineered a new save offset or item type, opening an issue with your findings is just as valuable as code.

Acknowledgments

  • OpenTESArena — open-source reimplementation of the Arena engine, a great reference for data structures.
  • UESP — weapon, armor, and material reference data for The Elder Scrolls: Arena.

License

Released under the MIT License.

About

Open-source save editor for The Elder Scrolls: Arena (1994), built with .NET 8 + WPF.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages