add example config files

This commit is contained in:
2026-04-17 22:13:34 +02:00
parent 6e737c908d
commit 8505c27cfa
5 changed files with 251 additions and 0 deletions

86
bin/config/buildings.toml Normal file
View File

@@ -0,0 +1,86 @@
[[building]]
id = "belt"
cost = 2
player_placeable = true
construction_time_seconds = 1
surface_mask = ["A>"]
[[building]]
id = "splitter"
cost = 3
player_placeable = true
construction_time_seconds = 1
surface_mask = ["<A>"]
[[building]]
id = "miner"
cost = 15
player_placeable = true
construction_time_seconds = 10
surface_mask = [
"AA",
"A>",
]
[[building]]
id = "smelter"
cost = 20
player_placeable = true
construction_time_seconds = 15
surface_mask = [
"AA ",
"AA>",
]
[[building]]
id = "assembler"
cost = 35
player_placeable = true
construction_time_seconds = 20
surface_mask = [
"AAA ",
"AAA>",
"AAA ",
]
[[building]]
id = "reprocessing_plant"
cost = 40
player_placeable = true
construction_time_seconds = 25
surface_mask = [
"AAA ",
"AAA>",
"AAA ",
]
[[building]]
id = "shipyard"
cost = 60
player_placeable = true
construction_time_seconds = 30
surface_mask = [
"AAAS>",
"AAAS ",
]
[[building]]
id = "salvage_bay"
cost = 25
player_placeable = true
construction_time_seconds = 15
surface_mask = [
"SAA",
"SAA>",
]
[[building]]
id = "hq"
cost = 0
player_placeable = false
construction_time_seconds = 0
surface_mask = [
"AAA",
"AAA",
"AAA",
]

42
bin/config/recipes.toml Normal file
View File

@@ -0,0 +1,42 @@
[[recipe]]
id = "iron_ingot"
building = "smelter"
inputs = [{item = "iron_ore", amount = 2}]
outputs = [{item = "iron_ingot", amount = 1}]
duration_seconds = 2.0
[[recipe]]
id = "circuit_board"
building = "assembler"
inputs = [{item = "iron_ingot", amount = 3}, {item = "copper_ingot", amount = 2}]
outputs = [{item = "circuit_board", amount = 1}]
duration_seconds = 5.0
[[recipe]]
id = "building_blocks"
building = "assembler"
inputs = [{item = "iron_ingot", amount = 4}]
outputs = [{item = "building_block", amount = 10}]
duration_seconds = 4.0
[[recipe]]
id = "reprocessing_cycle"
building = "reprocessing_plant"
inputs = [{item = "scrap", amount = 5}]
duration_seconds = 3.0
[[recipe.outputs]]
item = "iron_ingot"
amount = 2
probability = 0.6
[[recipe.outputs]]
item = "circuit_board"
amount = 1
probability = 0.3
[[recipe.outputs]]
item = "advanced_alloy"
amount = 1
probability = 0.1

78
bin/config/ships.toml Normal file
View File

@@ -0,0 +1,78 @@
[[ship]]
id = "interceptor"
available_from_start = true
[ship.blueprint]
materials = [{item = "iron_ingot", amount = 3}, {item = "circuit_board", amount = 1}]
shipyard_level = 3
[ship.threat]
cost_formula = "5 + 1*x"
[ship.health]
hp_formula = "40 + 5*x"
[ship.movement]
speed_formula = "200 + 5*x"
[ship.combat]
damage_formula = "10 + 2*x"
attack_range = 150
attack_rate_formula = "2.0"
target_priority = "lowest_hp"
[ship.loot]
scrap_drop = 2
[[ship]]
id = "destroyer"
available_from_start = true
[ship.blueprint]
materials = [{item = "iron_ingot", amount = 5}, {item = "circuit_board", amount = 2}]
shipyard_level = 5
[ship.threat]
cost_formula = "10 + 2*x"
[ship.health]
hp_formula = "120 + 15*x"
[ship.movement]
speed_formula = "120"
[ship.combat]
damage_formula = "12 + 2*x"
attack_range = 250
attack_rate_formula = "1.0"
target_priority = "closest"
[ship.loot]
scrap_drop = 4
[[ship]]
id = "salvage_ship"
available_from_start = true
[ship.blueprint]
materials = [{item = "iron_ingot", amount = 4}]
shipyard_level = 3
[ship.threat]
cost_formula = "0"
[ship.health]
hp_formula = "40 + 4*x"
[ship.movement]
speed_formula = "110"
[ship.salvage]
collection_range = 50
cargo_capacity = 10
[ship.loot]
scrap_drop = 2

21
bin/config/stations.toml Normal file
View File

@@ -0,0 +1,21 @@
[player_station]
surface_mask = [
"SS",
"SS",
]
hp = 500
damage = 25
range = 400
fire_rate = 1.5
scrap_drop = 5
[enemy_station]
surface_mask = [
"SS",
"SS",
]
hp_formula = "300 + 150*x"
damage_formula = "20 + 10*x"
range_formula = "350 + 20*x"
fire_rate_formula = "1.0 + 0.2*x"
scrap_drop_formula = "10 + 5*x"

24
bin/config/world.toml Normal file
View File

@@ -0,0 +1,24 @@
[world]
height_tiles = 60
refund_percentage = 75
scrap_despawn_seconds = 30
[regions]
asteroid_width = 40
player_buffer_width = 10
contest_zone_width = 30
enemy_buffer_width = 15
[expansion]
columns_per_expansion = 10
cost_building_blocks = 200
[push]
push_expand_columns = 20
scaling_factor = 1.2
[waves]
threat_rate_formula = "1*x - 30"
gap_min_seconds = 15
gap_max_seconds = 45
spawn_duration_seconds = 10