Refactor world bootstrap and allow empty startup worlds

This commit is contained in:
2026-03-29 13:22:48 -04:00
parent 640e147ea8
commit 0bb72bee35
79 changed files with 173146 additions and 9235 deletions

View File

@@ -0,0 +1,12 @@
{
"worldGeneration": {
"seed": 8,
"targetSystemCount": 2,
"useKnownSystems": true,
"aiControllerFactionCount": 0,
"generatePlayerFaction": false
},
"initialStations": [],
"shipFormations": [],
"patrolRoutes": []
}

View File

@@ -0,0 +1,425 @@
{
"worldGeneration": {
"seed": 8,
"targetSystemCount": 2,
"useKnownSystems": true,
"aiControllerFactionCount": 0,
"generatePlayerFaction": false
},
"initialStations": [
{
"label": "Dominion Power Relay",
"color": "#7ed4ff",
"objective": "power",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_liquid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 1,
"lagrangeSide": -1
},
{
"label": "Dominion Refinery",
"color": "#7ed4ff",
"objective": "refinery",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_solid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_refinedmetals_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 2,
"lagrangeSide": -1
},
{
"label": "Dominion Hullworks",
"color": "#7ed4ff",
"objective": "hullparts",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_hullparts_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 0,
"lagrangeSide": 1
},
{
"label": "Dominion Clay Grid",
"color": "#7ed4ff",
"objective": "claytronics",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_claytronics_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 2,
"lagrangeSide": null
},
{
"label": "Dominion Quantum Yard",
"color": "#7ed4ff",
"objective": "quantumtubes",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_quantumtubes_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 1,
"lagrangeSide": null
},
{
"label": "Dominion Graphene Array",
"color": "#7ed4ff",
"objective": "graphene",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_liquid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_graphene_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 0,
"lagrangeSide": -1
},
{
"label": "Dominion Wafer Foundry",
"color": "#7ed4ff",
"objective": "siliconwafers",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_solid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_siliconwafers_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 1,
"lagrangeSide": 1
},
{
"label": "Dominion Antimatter Forge",
"color": "#7ed4ff",
"objective": "antimattercells",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_liquid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_antimattercells_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 2,
"lagrangeSide": 1
},
{
"label": "Dominion Coolant Loop",
"color": "#7ed4ff",
"objective": "superfluidcoolant",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_liquid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_superfluidcoolant_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 3,
"lagrangeSide": -1
},
{
"label": "Dominion Hydro Plant",
"color": "#7ed4ff",
"objective": "water",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_solid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_water_01"
],
"systemId": "helios",
"factionId": "terran",
"planetIndex": 3,
"lagrangeSide": 1
},
{
"label": "League Power Relay",
"color": "#ff8f70",
"objective": "power",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_liquid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 1,
"lagrangeSide": 1
},
{
"label": "League Refinery",
"color": "#ff8f70",
"objective": "refinery",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_solid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_refinedmetals_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 2,
"lagrangeSide": 1
},
{
"label": "League Hullworks",
"color": "#ff8f70",
"objective": "hullparts",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_hullparts_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 3,
"lagrangeSide": -1
},
{
"label": "League Clay Grid",
"color": "#ff8f70",
"objective": "claytronics",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_claytronics_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 2,
"lagrangeSide": null
},
{
"label": "League Quantum Yard",
"color": "#ff8f70",
"objective": "quantumtubes",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_quantumtubes_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 1,
"lagrangeSide": null
},
{
"label": "League Graphene Array",
"color": "#ff8f70",
"objective": "graphene",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_liquid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_graphene_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 0,
"lagrangeSide": -1
},
{
"label": "League Wafer Foundry",
"color": "#ff8f70",
"objective": "siliconwafers",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_solid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_siliconwafers_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 0,
"lagrangeSide": 1
},
{
"label": "League Antimatter Forge",
"color": "#ff8f70",
"objective": "antimattercells",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_liquid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_antimattercells_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 1,
"lagrangeSide": -1
},
{
"label": "League Coolant Loop",
"color": "#ff8f70",
"objective": "superfluidcoolant",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_liquid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_superfluidcoolant_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 2,
"lagrangeSide": -1
},
{
"label": "League Hydro Plant",
"color": "#ff8f70",
"objective": "water",
"startingModules": [
"module_arg_dock_m_01_lowtech",
"module_arg_stor_solid_m_01",
"module_arg_stor_container_m_01",
"module_gen_prod_energycells_01",
"module_gen_prod_water_01"
],
"systemId": "sol",
"factionId": "argon",
"planetIndex": 3,
"lagrangeSide": 1
}
],
"shipFormations": [
{
"shipId": "ship_arg_s_fighter_01_a",
"count": 6,
"center": [
0,
0,
0
],
"systemId": "sol",
"factionId": "argon"
},
{
"shipId": "ship_ter_s_fighter_01_a",
"count": 6,
"center": [
200,
0,
0
],
"systemId": "helios",
"factionId": "terran"
},
{
"shipId": "ship_arg_s_miner_solid_01_a",
"count": 4,
"center": [
1200,
0,
-600
],
"systemId": "sol",
"factionId": "argon"
},
{
"shipId": "ship_ter_s_miner_solid_01_a",
"count": 4,
"center": [
-1200,
0,
600
],
"systemId": "helios",
"factionId": "terran"
}
],
"patrolRoutes": [
{
"systemId": "sol",
"points": [
[
-1800,
0,
-1600
],
[
1800,
0,
-1600
],
[
1800,
0,
1600
],
[
-1800,
0,
1600
]
]
},
{
"systemId": "helios",
"points": [
[
-1800,
0,
-1600
],
[
1800,
0,
-1600
],
[
1800,
0,
1600
],
[
-1800,
0,
1600
]
]
}
],
"miningDefaults": {
"nodeSystemId": "sol",
"refinerySystemId": "sol"
}
}