An ES3 file typically contains:
-- ES3 --
type: UnityEngine.Vector3
key: player_position
value: (10.5, 0.0, 20.3)
----
type: System.Int32
key: money
value: 50000
----
Or in JSON-like format (depending on game settings):
"money": "__type": "System.Int32", "value": 50000,
"position": "__type": "UnityEngine.Vector3", "value": [10.5,0,20.3]
Important fields:
This is the most common use case.
Automatically detects if a value is an integer, float, boolean, or string. Editing a float as an integer can crash your game. A high-quality editor prevents type mismatches. es3 save editor high quality
Some ES3 saves use reference IDs for Unity objects (e.g., ref: 12345). Do not change these unless you also adjust the referenced object’s definition elsewhere in the file.
To modify an array (e.g., list of owned trucks): An ES3 file typically contains: -- ES3 --
key: owned_trucks
type: System.Collections.Generic.List`1[System.UInt64]
value: [1001, 1002, 1005]
You can add/remove IDs if the target objects exist. Otherwise, the game will crash.