mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-03-07 20:31:51 +09:00
Former-commit-id: 8c662c7cb637ae4565e95e661b0e627d9bfd7e5a Former-commit-id: 4a5279b47f7c8f4fadb62ee6843b3848f803f433
2.1 KiB
2.1 KiB
Format
-
Save meta
- GZip'd binary (for more security)
- Filename : world (with no extension)
Type Mnemonic Description Byte[4] TESV Magic Byte[n] name Savegame name, UTF-8 Byte NULL String terminator Byte[8] terraseed Terrain seed Byte[8] rogueseed Randomiser seed Byte[32] hash1 SHA-256 hash of worldinfo1 being stored (when not zipped) Byte[32] hash2 SHA-256 hash of worldinfo2 being stored (when not zipped) Byte[32] hash3 SHA-256 hash of worldinfo3 being stored (when not zipped) Byte[32] hash4 SHA-256 hash of worldinfo4 being stored (when not zipped) Endianness: Big
-
Actor/Faction data
- GZip'd GSON
- Filename : (refid) (with no extension)
-
Prop data
- GZip'd CSV
- Filename : (with no extension) worldinfo2 -- tileprop worldinfo3 -- itemprop worldinfo4 -- materialprop
-
Human-readable
- Tiles_list.txt -- list of tiles in csv
- Items_list.txt -- list of items in csv
- Materials_list.txt -- list of materials in csv
How it works
- If hash discrepancy has detected, (hash of csv in save dir != stored hash || hash of TEMD != stored hash), printout "Save file corrupted. Continue?" with prompt "Yes/No"
Directory:
+--- <save1>
--- 2a93bc5fd...f823 Actor/DynamicItem/Faction/etc. data (JSON)
--- 423bdc838...93bd Actor/DynamicItem/Faction/etc. data (JSON)
--- Items_list.txt Human-readable
--- Materials_list.txt Human-readable
--- Tiles_list.txt Human-readable
--- world save meta (binary, GZip)
--- worldinfo1 TEMD (binary, GZip)
--- worldinfo2 tileprop (GZip)
--- worldinfo3 itemprop (GZip)
--- worldinfo4 materialprop (GZip)