Skip to content

WIP AF savegame format#231

Draft
GooberRF wants to merge 55 commits intomasterfrom
asg
Draft

WIP AF savegame format#231
GooberRF wants to merge 55 commits intomasterfrom
asg

Conversation

@GooberRF
Copy link
Owner

@GooberRF GooberRF commented Jan 10, 2026

still needs a significant amount of work

GooberRF added 26 commits July 24, 2025 00:54
…on of player, handle jeep gunners, handle undercover player,
Removed redundant padding declaration in GenericEvent structure.
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request implements a new TOML-based savegame format (.asg) to replace the legacy binary format (.svl). The changes include comprehensive serialization/deserialization of game state including entities, items, triggers, events, movers, decals, and more. The implementation is marked as "WIP" (work in progress) and requires significant additional work.

Changes:

  • Adds toml++ library license information and dependency
  • Implements complete savegame serialization/deserialization system with TOML format
  • Adds new game engine API bindings for save/restore functionality
  • Introduces configuration option to toggle between new and legacy formats

Reviewed changes

Copilot reviewed 28 out of 29 changed files in this pull request and generated no comments.

Show a summary per file
File Description
resources/licensing-info.txt Adds MIT license for toml++ library
game_patch/misc/alpine_savegame.h Defines data structures for new savegame format
game_patch/misc/alpine_savegame.cpp Implements 4800+ lines of serialization/deserialization logic
game_patch/misc/alpine_settings.h/cpp Adds configuration toggle for new savegame format
game_patch/os/commands.cpp Adds console command to toggle savegame format
game_patch/rf/*.h Exposes additional game engine APIs for save/restore
game_patch/CMakeLists.txt Includes new savegame source files
common/include/common/version/version.h Defines ASG_VERSION constant

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

… to avoid confusion, fix weapon savegame block struct, fix types for savegame object data block, fix some errors in savegame saving and parsing
…tate, fix corpse light level not being maintained
…d for some object types (item and corpse for example)
… events asg approach from deleted_event_uids to match other object types and save all event instances
…eport, teleport_player, and play_vclip, fix def for cyclic_timer event
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant