mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-06-09 10:04:05 +09:00
new doc SAVE_FORMAT, new unihan font WenQuanYi
Former-commit-id: 654fe713ae8165ed37fc85535e9536b01a5fe611 Former-commit-id: 34468f4d34b3dfd4be01c48c7fab34fe04678a6b
This commit is contained in:
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -104,8 +104,9 @@
|
||||
|
||||
== (De)serialisation ==
|
||||
|
||||
* Custom binary + GSON
|
||||
see SAVE_FORMAT
|
||||
|
||||
* Custom binary: Game map
|
||||
|
||||
* GSON: Actors, game configurations
|
||||
== Actor being universal ==
|
||||
|
||||
* Utility tiles that have states (e.g. noteblock) are implemented using Actor.
|
||||
|
||||
Binary file not shown.
@@ -0,0 +1,55 @@
|
||||
* Save meta
|
||||
- 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] <arb name> possible other seeds
|
||||
Byte[32] hash1 SHA-256 hash of worldinfo1 being stored
|
||||
Byte[32] hash2 SHA-256 hash of worldinfo2 being stored
|
||||
Byte[32] hash3 SHA-256 hash of worldinfo3 being stored
|
||||
Byte[32] hash4 SHA-256 hash of worldinfo4 beihg stored (TEMD data) [32, 214, 42, 3, 76, ...]
|
||||
|
||||
|
||||
* Actor data
|
||||
- GZip'd GSON
|
||||
- Filename : <refid> (with no extension)
|
||||
|
||||
|
||||
* Prop data
|
||||
- GZip'd CSV
|
||||
- Filename : worldinfo1 -- tileprop.csv
|
||||
worldinfo2 -- itemprop.csv (with no extension)
|
||||
|
||||
|
||||
* Roguelike randomiser data
|
||||
- GZip'd GSON
|
||||
- Filename : worldinfo3
|
||||
|
||||
|
||||
* Human-readable
|
||||
- Tiles_list.txt -- list of tiles in csv
|
||||
- Items_list.txt -- list of items in csv
|
||||
|
||||
|
||||
|
||||
== How it works ==
|
||||
* If hash discrepancy is 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 data
|
||||
--- 423bdc838...93bd Actor data
|
||||
--- Items_list.txt Human-readable
|
||||
--- Tiles_list.txt Human-readable
|
||||
--- world save meta
|
||||
--- worldinfo1 tileprop
|
||||
--- worldinfo2 itemprop
|
||||
--- worldinfo3 Roguelike randomiser
|
||||
--- worldinfo4 TEMD binary
|
||||
Binary file not shown.
|
Can't render this file because it contains an unexpected character in line 1 and column 18.
|
Reference in New Issue
Block a user