Blue Byte · 1996 & 2006

Settlers II savegame editor

Opens savegames from the original 1996 Settlers II and from the 2006 10th Anniversary remake, recognising which is which from the file itself. Everything runs in this browser tab — nothing is ever uploaded.

1996 named stock editor
2006 container + scanner
0 bytes uploaded
Drop a savegame here
Original Settlers II / GoldTRANS900.DAT through TRANS909.DAT in the game's SAVE directory, one per save slot.
10th Anniversary — the save files under Documents\S2.
Back up
Copy your save folder before you use this. These are old, largely undocumented binary formats. The editor is careful — it validates checksums, and re-encodes nothing it cannot decode back byte-for-byte first — but a save the game refuses to load is still a save you have lost.
File
Size
Anchor
Stores found
Stores in this save
Manual offset
Use this if auto-detection missed a warehouse.
Inventory
Raw record — 145 bytes
Marker Reserved — never write here Inventory Focused slot Edited by you
File size
Bytes changed0
Stores edited0
What the game does with these numbers
  • Beer + one sword + one shield = one soldier. On loading, the game converts stock into troops, so those three counters will read lower than you set them and your private count will be higher.
  • The headquarters conscripts its own guard — one soldier of each rank it has available — which reduces the ranks you entered.
  • Settlers II tops out around 64,000 people across the whole map. Putting 30,000 workers in every warehouse will hit that ceiling and behave badly. Large but sane numbers hold up; the source guide suggests values in the low thousands.
  • Tools are not workers. A hammer in the store is not a builder — the game pairs a helper with a tool to make one. Raising both keeps the economy consistent.
How the record is laid out

Each store is a fixed 145-byte record. A 2-byte marker (8A 1B for your own headquarters, 18 00 for an enemy one), then 2 reserved bytes, then the 61 stock counters as little-endian 16-bit integers — 122 bytes — then 19 reserved bytes. Your headquarters is located by the signature 8D 00, sixteen variable bytes that appear to be its coordinates, then 8A 1B. Enemy headquarters follow, and any warehouses you have built come after those.

This editor writes only inside the 122-byte inventory span of records you edit. Markers and reserved bytes are read-only, and the file length is asserted unchanged before download.

File
Game
On disk
Decoded
Container
The 10th Anniversary wraps every file in an encrypted, LZSS-compressed container. This editor unwraps it, lets you change the bytes inside, then rebuilds the container with corrected checksums. Where the goods and soldiers sit within that decoded data is not publicly documented, so instead of named fields you get a scanner: search for a number you can read off the in-game screen, then narrow the candidates using a second save.
Find a value
Note a number from the game — boards in the headquarters, say — scan for it, then save again after it changes, reload, and narrow down. Two or three passes usually leaves a handful of offsets.
Edit at offset
Written using the type selected above.
Decoded data
Decoded size
Bytes changed0
How the container works

A 20-byte header: the magic number 12 18 09 06, a four-character game tag (rc00 for the 10th Anniversary, sadk for Rise of Cultures), a CRC32 of the decoded data, a CRC32 of the encryption key, and the decoded length. The rest is the payload.

The key is a fixed 16-byte GUID. For .sav and .s2m files it is used as-is; for other assets it is scrambled with a generator seeded from the filename. That key seeds a Lehmer generator (multiplier 16807, modulus 231−1) which produces a repeating XOR pad, plus a second pad applied at a periodic stride. Underneath the encryption is LZSS with a 1024-byte window pre-filled with spaces and match lengths of 3 to 18.

Rebuilding re-emits the payload as uncompressed LZSS literals. That is larger than what the game writes but decodes identically, and it removes any chance of a subtly wrong compressor corrupting your save. Every rebuilt file is decoded again in memory and compared against the intended bytes before the download is offered — if that check fails, the download is refused.