Skip to content

Game Internals

Stefan Lau edited this page Mar 4, 2022 · 4 revisions

Map format version history

This describes the various version numbers, and a change history reconstructed from source code (Stracciatella and 1.13).

Major verion Minor version JA2 version Change log
3.13 N/A JA2 demo
4.00 N/A Pre-release?
5.00 15 - 25 Vanilla JA2 type-subindex changed to UINT16
26 JA2 Wildfire Wildfire items
27 JA "2.5" UB Added MAP_RADARMAP_SAVED
6.00 Russian JA2 Extra 148 bytes of unknown data
7.00 JA2 1.13 Map dimensions (WORLD_COL/WORLD_ROW) in map file
28 JA2 1.13 included weapon overheated and tripwire feature
29 JA2 1.13 increased range of room numbers to full UINT16 by DBrot
30 JA2 1.13 change due to repair system
31 JA2 1.13 changed sObjectFlag from INT32 to UINT64

Save game format version history

Based on code change history

Version Changelog Date Release Pull
99 Initial import (JA2 Gold) 2004-09-06
100 Bump save game version to 100, handle the different sizes of pathing data in different versions 2016-03-31 0.16.0 #277
101 Append extra JSON game states to the end of the save file, to better support mods 2021-09-08 0.19.0 #1282
102 Store enabed mod versions in JSON game states stracciatella:mods key. Adds JSON game states size to header. 2022-03-04 0.19.0 #1450