Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Saving System: Difference between revisions

From New Stars Wiki
No edit summary
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 61: Line 61:
</syntaxhighlight>
</syntaxhighlight>


== Identifiers 101 ==
== Identifiers ==
Some fields in save files implicitly contain integer values, such as [[Saving System#Planet Type|planet type]]. This does not mean that all numerical fields are, as some are floating points and represent are decimal numbers (e.g. '''HyperlaneDensity''').
Some fields in save files implicitly contain string values, which represent an integer value behind the scenes (enums). In this example, 'Origin' and 'Ethics' use a specific ID or Identifier to represent a value. All identifiers use underscores where there are spaces (snake case). Saves should also load with numbers instead of IDs, although using listed identifiers is the recommended approach.<syntaxhighlight lang="yaml">
...
Origin: Stellar_Nomarchs
Ethics:
- Cooperative
- Cooperative
...
</syntaxhighlight>


== Technology Identifiers ==
=== Ship Types ===
{| class="wikitable"
!ID
!Type
|-
|0
|Gunboat
|-
|1
|Frigate
|-
|2
|Light_Cruiser
|-
|3
|Heavy_Cruiser
|-
|4
|Star_Cruiser
|-
|25
|Explorer
|-
|26
|Builder
|-
|27
|Colonist
|}
 
=== Game Events ===
 
==== Diplomatic Events ====
{| class="wikitable"
!ID
!Name
|-
|1
|Establish_Embassy
|-
|2
|Request_Trade
|-
|3
|Declare_War
|-
|5
|Make_Peace
|-
|6
|Denounce
|-
|7
|Integrate_Player
|-
|8
|Establish_Alliance
|-
|9
|Leave_Alliance
|-
|10
|Meet_Player
|-
|11
|Make_Puppet
|-
|12
|Make_Suzerain
|-
|14
|Make_Independent
|-
|16
|Borders_Closed
|-
|18
|Declare_Friendship
|-
|19
|Defeat_Player
|-
|20
|Join_Wars
|-
|21
|Accept_Trade
|-
|22
|Game_Event_Occurred
|-
|23
|Form_Business_Partnership
|-
|24
|End_Business_Partnership
|-
|25
|Form_Galactic_Union
|-
|26
|Join_Galactic_Union
|-
|27
|Leave_Galactic_Union
|-
|28
|Invite_Galactic_Union
|-
|29
|Request_Galactic_Union
|-
|30
|Kick_Galactic_Union
|-
|31
|Accept_Galactic_Union
|}
 
==== Self Events ====
{| class="wikitable"
!ID
!Name
|-
|50
|Tech_Complete
|-
|51
|Went_Bankrupt
|-
|52
|Fleet_Lost
|-
|53
|New_Discovery
|-
|54
|Old_Stars
|-
|55
|Colony_Queue_Complete
|-
|56
|StarBase_Queue_Complete
|-
|57
|Fleet_Idle
|-
|58
|Colony_Founded
|-
|59
|Colony_Occupied
|-
|60
|Colony_Liberated
|-
|61
|StarBase_Lost
|-
|62
|Report_Bug_Reminder
|}
 
==== Galactic Natural Disasters ====
{| class="wikitable"
!ID
!Name
|-
|200
|Supernova
|-
|201
|Solar_Storm
|-
|203
|Hypernova
|}
 
==== Colony Discoveries ====
{| class="wikitable"
!ID
!'''Name'''
|-
|'''300'''
|Colony_Exotic_Planet_Life
|-
|301
|Colony_Unpredictable_Weather_Patterns
|-
|302
|Colony_Unique_Wildlife
|-
|303
|Colony_Dangerous_Wildlife
|-
|304
|Colony_Dense_Forests
|-
|305
|Colony_Abandoned_Alien_Colony
|-
|306
|Colony_Geothermal_Hot_Springs
|-
|307
|Colony_Abundant_Natural_Wonders
|-
|308
|Colony_Widespread_Volcanic_Regions
|-
|309
|Colony_Extreme_Polar_Regions
|}
 
==== Colony Natural Disasters ====
{| class="wikitable"
!ID
!Name
|-
|1050
|Global_Cooling
|-
|1052
|Global_Nothing
|-
|1053
|Global_Warming
|-
|1054
|Global_Ice_Age
|-
|1100
|Asteroid_Appears
|-
|1101
|Asteroid_Disappears
|-
|1102
|Asteroid_Impact
|-
|1103
|Asteroid_Does_Nothing
|}
 
==== '''Midgame Events''' ====
{| class="wikitable"
!ID
!Name
|-
|1500
|'''Cosmic_Convergence'''
|-
|1501
|'''Celestial_Squid_Slain'''
|}
 
=== Technology Identifiers ===
(unimplemented)
(unimplemented)



Latest revision as of 05:32, 20 July 2024

Save files are YAML-based and are backed-up with Steam cloud. They also work cross-platform on Windows and Linux. Save files typically take up around 1-2MB in space.

Save Locations

Windows

C:\Users\[username]\AppData\LocalLow\NewStars\NewStars\[steam_user_id]\Saves

Linux (Ubuntu)

~/.config/unity3d/NewStars/NewStars/[steam_user_id]/Saves

Save File

Here is what part of an example save file looks like:

GameManager:
  PlayerPreset:
    EmpireName: Crusaders of Ales
    Origin: Stellar_Nomarchs
    Ethics:
    - Cooperative
    - Cooperative
    Species:
      Name: Ales
      ShipIndex: 0
      Type: Synthetic
      Preference: Arid
      _avatarName: Portrait_03_nbg
    _iconName: hades-symbol
    _primaryColor:
      r: 0.8941177
      g: 0.6078432
      b: 0.05882353
      a: 1
    _secondaryColor:
      r: 0
      g: 0
      b: 0
      a: 0
  MapSettings:
    AIClanCount: 6
    AIPlayerCount: 12
    Difficulty: Hard_Renegade
    Duration: Comet
    Size: Tiny
    EnabledVictories:
    - Time
    - Survival
    - Conquest
    - Ascension
    - Defeat
    HyperlaneDensity: 1
    WormholeDensity: 1
    Seed: -240221925
    GalaxyName: Milky Way
    MeetAllPlayers: false
    RevealAll: false
    ...

Identifiers

Some fields in save files implicitly contain string values, which represent an integer value behind the scenes (enums). In this example, 'Origin' and 'Ethics' use a specific ID or Identifier to represent a value. All identifiers use underscores where there are spaces (snake case). Saves should also load with numbers instead of IDs, although using listed identifiers is the recommended approach.

...
Origin: Stellar_Nomarchs
Ethics:
- Cooperative
- Cooperative
...

Ship Types

ID Type
0 Gunboat
1 Frigate
2 Light_Cruiser
3 Heavy_Cruiser
4 Star_Cruiser
25 Explorer
26 Builder
27 Colonist

Game Events

Diplomatic Events

ID Name
1 Establish_Embassy
2 Request_Trade
3 Declare_War
5 Make_Peace
6 Denounce
7 Integrate_Player
8 Establish_Alliance
9 Leave_Alliance
10 Meet_Player
11 Make_Puppet
12 Make_Suzerain
14 Make_Independent
16 Borders_Closed
18 Declare_Friendship
19 Defeat_Player
20 Join_Wars
21 Accept_Trade
22 Game_Event_Occurred
23 Form_Business_Partnership
24 End_Business_Partnership
25 Form_Galactic_Union
26 Join_Galactic_Union
27 Leave_Galactic_Union
28 Invite_Galactic_Union
29 Request_Galactic_Union
30 Kick_Galactic_Union
31 Accept_Galactic_Union

Self Events

ID Name
50 Tech_Complete
51 Went_Bankrupt
52 Fleet_Lost
53 New_Discovery
54 Old_Stars
55 Colony_Queue_Complete
56 StarBase_Queue_Complete
57 Fleet_Idle
58 Colony_Founded
59 Colony_Occupied
60 Colony_Liberated
61 StarBase_Lost
62 Report_Bug_Reminder

Galactic Natural Disasters

ID Name
200 Supernova
201 Solar_Storm
203 Hypernova

Colony Discoveries

ID Name
300 Colony_Exotic_Planet_Life
301 Colony_Unpredictable_Weather_Patterns
302 Colony_Unique_Wildlife
303 Colony_Dangerous_Wildlife
304 Colony_Dense_Forests
305 Colony_Abandoned_Alien_Colony
306 Colony_Geothermal_Hot_Springs
307 Colony_Abundant_Natural_Wonders
308 Colony_Widespread_Volcanic_Regions
309 Colony_Extreme_Polar_Regions

Colony Natural Disasters

ID Name
1050 Global_Cooling
1052 Global_Nothing
1053 Global_Warming
1054 Global_Ice_Age
1100 Asteroid_Appears
1101 Asteroid_Disappears
1102 Asteroid_Impact
1103 Asteroid_Does_Nothing

Midgame Events

ID Name
1500 Cosmic_Convergence
1501 Celestial_Squid_Slain

Technology Identifiers

(unimplemented)

Planet Identifiers

Planet Type

The type of a planet.

ID Type
0 Barren
1 Asteroid
2 Giant
3 World
4 Broken

Types of Climate

Note that only valid planet and climate combinations, defined on the planet page, will work.

ID Type
0 Stormy
1 Calm
2 Ice
3 Ocean
4 Arid
5 Toxic
6 Molten
7 Rocky
8 Terrestrial
9 Pristine
10 Void