design config

This commit is contained in:
2026-06-12 18:00:04 +02:00
parent 282ace4c11
commit fba98c928f
5 changed files with 689 additions and 122 deletions

View File

@@ -1,122 +1,37 @@
[[module]]
id = "armor_plate"
unlock_at_station_level = -1
surface_mask = ["OO"]
materials = [{item = "armor_plate_module", amount = 1}]
player_production_level = 1
production_time_seconds = 3
fill_color = "#808080"
glyph = "A"
[module.health]
added_hp_formula = "40"
# modules.toml
#
# First real-content iteration: module ids and surface masks are the designed
# content; stats, materials, and threat costs are placeholders until the
# recipe and balancing passes.
#
# Surface mask footprint ladder — footprints gate which hulls can mount a
# module, purely through geometry (see ships.toml for the matching hull
# grids):
#
# 1x1 laser_cannon_s, salvager, repair_tool fits every hull, incl. drones
# 1x2 maneuvering_thrusters, sensor_booster,
# armor_plates frigate and up
# 1x3 afterburner frigate and up (eats most of a frigate)
# L-shape weapon_stabilizer, weapon_primer,
# weapon_upgrade frigate and up
# 2x2 laser_cannon_m, drone_bay cruiser and up (no 2x2 area on s hulls)
# 3x3 laser_cannon_l battleship and up (no 3x3 area on m hulls)
# 2x6 drone_hangar dreadnought and carrier only
# -----------------------------------------------------------------------------
# Weapons
# -----------------------------------------------------------------------------
[[module]]
id = "sensor_booster"
id = "laser_cannon_s"
unlock_at_station_level = -1
surface_mask = ["O"]
materials = [{item = "sensor_booster_module", amount = 1}]
player_production_level = 1
production_time_seconds = 2
fill_color = "#40A0FF"
glyph = "S"
[module.sensor]
added_sensor_range_m_formula = "50"
[[module]]
id = "manuvering_thrusters"
unlock_at_station_level = -1
surface_mask = ["O"]
materials = [{item = "manuvering_thrusters_module", amount = 1}]
player_production_level = 1
production_time_seconds = 2
fill_color = "#40A0FF"
glyph = "Mt"
[module.movement]
multiplied_speed_mps_formula = "1.2"
added_maneuvering_acceleration_mpss_formula = "10"
[[module]]
id = "afterburner"
unlock_at_station_level = -1
surface_mask = ["O"]
materials = [{item = "afterburner_module", amount = 1}]
player_production_level = 1
production_time_seconds = 2
fill_color = "#40A0FF"
glyph = "Ab"
[module.movement]
multiplied_speed_mps_formula = "1.6"
added_main_acceleration_mpss_formula = "60"
[[module]]
id = "weapon_upgrade"
unlock_at_station_level = -1
surface_mask = [
"OO",
"O ",
]
materials = [{item = "weapon_upgrade_module", amount = 1}]
player_production_level = 1
production_time_seconds = 4
fill_color = "#FF4040"
glyph = "Wu"
[module.weapon]
multiplied_damage_formula = "1.2"
[[module]]
id = "weapon_primer"
unlock_at_station_level = -1
surface_mask = [
"OO",
"O ",
]
materials = [{item = "weapon_primer_module", amount = 1}]
player_production_level = 1
production_time_seconds = 4
fill_color = "#FF4040"
glyph = "Wp"
[module.weapon]
multiplied_attack_rate_hz_formula = "1.2"
[[module]]
id = "weapon_stabilizer"
unlock_at_station_level = -1
surface_mask = [
"OO",
"O ",
]
materials = [{item = "weapon_stabilizer_module", amount = 1}]
player_production_level = 1
production_time_seconds = 4
fill_color = "#FF4040"
glyph = "Ws"
[module.weapon]
multiplied_attack_range_m_formula = "1.5"
multiplied_attack_rate_hz_formula = "0.8"
[[module]]
id = "laser_cannon_xs"
unlock_at_station_level = -1
surface_mask = ["O"]
materials = [{item = "iron_ore", amount = 1}]
materials = [{item = "laser_cannon_s_module", amount = 1}]
player_production_level = 1
production_time_seconds = 0.5
threat_cost = 5.0
fill_color = "#FF8040"
glyph = "L"
glyph = "Ls"
[module.weapon]
damage_formula = "2"
@@ -125,16 +40,17 @@ attack_rate_hz_formula = "2.0"
[[module]]
id = "laser_cannon_s"
id = "laser_cannon_m"
unlock_at_station_level = -1
surface_mask = [
"OO",
"OO"]
materials = [{item = "laser_cannon_s_module", amount = 1}]
materials = [{item = "laser_cannon_m_module", amount = 1}]
player_production_level = 1
production_time_seconds = 0.5
production_time_seconds = 2
threat_cost = 30.0
fill_color = "#FF8040"
glyph = "L"
glyph = "Lm"
[module.weapon]
damage_formula = "10"
@@ -142,6 +58,29 @@ attack_range_m_formula = "70"
attack_rate_hz_formula = "1.5"
[[module]]
id = "laser_cannon_l"
unlock_at_station_level = -1
surface_mask = [
"OOO",
"OOO",
"OOO"]
materials = [{item = "laser_cannon_l_module", amount = 1}]
player_production_level = 1
production_time_seconds = 8
threat_cost = 150.0
fill_color = "#FF8040"
glyph = "Ll"
[module.weapon]
damage_formula = "40"
attack_range_m_formula = "100"
attack_rate_hz_formula = "0.8"
# -----------------------------------------------------------------------------
# Utility tools
# -----------------------------------------------------------------------------
[[module]]
id = "salvager"
unlock_at_station_level = -1
@@ -149,6 +88,7 @@ surface_mask = ["O"]
materials = [{item = "salvager_module", amount = 1}]
player_production_level = 1
production_time_seconds = 2
threat_cost = 0.0
fill_color = "#AACC44"
glyph = "Sv"
@@ -165,9 +105,170 @@ surface_mask = ["O"]
materials = [{item = "repair_tool_module", amount = 1}]
player_production_level = 1
production_time_seconds = 2
threat_cost = 0.0
fill_color = "#66CCFF"
glyph = "Rp"
[module.repair]
repair_rate_hz_formula = "5 + x"
repair_range_m_formula = "800"
# -----------------------------------------------------------------------------
# Propulsion
# -----------------------------------------------------------------------------
[[module]]
id = "afterburner"
unlock_at_station_level = -1
surface_mask = ["OOO"]
materials = [{item = "afterburner_module", amount = 1}]
player_production_level = 1
production_time_seconds = 2
threat_cost = 1.0
fill_color = "#40A0FF"
glyph = "Ab"
[module.movement]
multiplied_speed_mps_formula = "1.6"
added_main_acceleration_mpss_formula = "60"
[[module]]
id = "maneuvering_thrusters"
unlock_at_station_level = -1
surface_mask = ["OO"]
materials = [{item = "maneuvering_thrusters_module", amount = 1}]
player_production_level = 1
production_time_seconds = 2
threat_cost = 1.0
fill_color = "#40A0FF"
glyph = "Mt"
[module.movement]
multiplied_speed_mps_formula = "1.2"
added_maneuvering_acceleration_mpss_formula = "10"
# -----------------------------------------------------------------------------
# Defense & sensors
# -----------------------------------------------------------------------------
[[module]]
id = "armor_plates"
unlock_at_station_level = -1
surface_mask = ["OO"]
materials = [{item = "armor_plates_module", amount = 1}]
player_production_level = 1
production_time_seconds = 3
threat_cost = 20.0
fill_color = "#808080"
glyph = "A"
[module.health]
added_hp_formula = "40"
[[module]]
id = "sensor_booster"
unlock_at_station_level = -1
surface_mask = ["OO"]
materials = [{item = "sensor_booster_module", amount = 1}]
player_production_level = 1
production_time_seconds = 2
threat_cost = 1.0
fill_color = "#40A0FF"
glyph = "S"
[module.sensor]
added_sensor_range_m_formula = "50"
# -----------------------------------------------------------------------------
# Weapon modifiers
# -----------------------------------------------------------------------------
[[module]]
id = "weapon_upgrade"
unlock_at_station_level = -1
surface_mask = [
"OO",
"OX",
]
materials = [{item = "weapon_upgrade_module", amount = 1}]
player_production_level = 1
production_time_seconds = 4
threat_cost = 10.0
fill_color = "#FF4040"
glyph = "Wu"
[module.weapon]
multiplied_damage_formula = "1.2"
[[module]]
id = "weapon_primer"
unlock_at_station_level = -1
surface_mask = [
"OO",
"OX",
]
materials = [{item = "weapon_primer_module", amount = 1}]
player_production_level = 1
production_time_seconds = 4
threat_cost = 10.0
fill_color = "#FF4040"
glyph = "Wp"
[module.weapon]
multiplied_attack_rate_hz_formula = "1.2"
[[module]]
id = "weapon_stabilizer"
unlock_at_station_level = -1
surface_mask = [
"OO",
"OX",
]
materials = [{item = "weapon_stabilizer_module", amount = 1}]
player_production_level = 1
production_time_seconds = 4
threat_cost = 10.0
fill_color = "#FF4040"
glyph = "Ws"
[module.weapon]
multiplied_attack_range_m_formula = "1.5"
multiplied_attack_rate_hz_formula = "0.8"
# -----------------------------------------------------------------------------
# Drone modules
#
# Footprint-only placeholders: the drone launching capability is not
# implemented yet, so these modules define no capability section.
# -----------------------------------------------------------------------------
[[module]]
id = "drone_bay"
unlock_at_station_level = -1
surface_mask = [
"OO",
"OO"]
materials = [{item = "drone_bay_module", amount = 1}]
player_production_level = 1
production_time_seconds = 5
threat_cost = 15.0
fill_color = "#CC66FF"
glyph = "Db"
[[module]]
id = "drone_hangar"
unlock_at_station_level = -1
surface_mask = [
"OOOOOO",
"OOOOOO"]
materials = [{item = "drone_hangar_module", amount = 1}]
player_production_level = 1
production_time_seconds = 20
threat_cost = 100.0
fill_color = "#9933CC"
glyph = "Dh"