implement unlock dependencies
This commit is contained in:
@@ -4,6 +4,11 @@
|
||||
# content; stats, materials, and threat costs are placeholders until the
|
||||
# recipe and balancing passes.
|
||||
#
|
||||
# Unlock progression is mostly disabled (unlock_at_station_level = -1) pending
|
||||
# the balancing pass. The laser cannons are the exception: laser_cannon_m is
|
||||
# gated to station level 1, and laser_cannon_l requires laser_cannon_m to be
|
||||
# unlocked first (unlock_requires) — a demonstration of the prerequisite chain.
|
||||
#
|
||||
# Surface mask footprint ladder — footprints gate which hulls can mount a
|
||||
# module, purely through geometry (see ships.toml for the matching hull
|
||||
# grids):
|
||||
@@ -39,7 +44,7 @@ attack_rate_hz = 2.0
|
||||
|
||||
[[module]]
|
||||
id = "laser_cannon_m"
|
||||
unlock_at_station_level = -1
|
||||
unlock_at_station_level = 1
|
||||
surface_mask = [
|
||||
"OO",
|
||||
"OO"]
|
||||
@@ -56,7 +61,8 @@ attack_rate_hz = 1.5
|
||||
|
||||
[[module]]
|
||||
id = "laser_cannon_l"
|
||||
unlock_at_station_level = -1
|
||||
unlock_at_station_level = 1
|
||||
unlock_requires = ["laser_cannon_m"]
|
||||
surface_mask = [
|
||||
"OOO",
|
||||
"OOO",
|
||||
|
||||
@@ -2,8 +2,10 @@
|
||||
#
|
||||
# First real-content iteration of the production tree. Quantities and
|
||||
# durations are a first guess; the balancing pass will tune them and assign
|
||||
# real unlock_at_station_level values (everything is unlocked for now so the
|
||||
# full tree is testable).
|
||||
# real unlock_at_station_level values. Almost everything is unlocked for now so
|
||||
# the full tree is testable; the only gated recipe schematics are the medium and
|
||||
# large laser-cannon item recipes, which demonstrate the unlock_requires
|
||||
# prerequisite chain (large requires medium — see modules.toml / ships.toml).
|
||||
#
|
||||
# Input chain per game phase — each phase adds exactly one new base input:
|
||||
#
|
||||
@@ -293,7 +295,7 @@ duration_seconds = 4.0
|
||||
|
||||
[[recipe]]
|
||||
id = "laser_cannon_m_module"
|
||||
unlock_at_station_level = -1
|
||||
unlock_at_station_level = 1
|
||||
building = "assembler"
|
||||
inputs = [{item = "targeting_unit", amount = 1}, {item = "titanium_frame", amount = 1}]
|
||||
outputs = [{item = "laser_cannon_m_module", amount = 1}]
|
||||
@@ -317,7 +319,8 @@ duration_seconds = 6.0
|
||||
|
||||
[[recipe]]
|
||||
id = "laser_cannon_l_module"
|
||||
unlock_at_station_level = -1
|
||||
unlock_at_station_level = 1
|
||||
unlock_requires = ["laser_cannon_m_module"]
|
||||
building = "assembler"
|
||||
inputs = [
|
||||
{item = "targeting_unit", amount = 2},
|
||||
|
||||
@@ -4,6 +4,11 @@
|
||||
# content; stats, materials, and production times are placeholders until the
|
||||
# recipe and balancing passes.
|
||||
#
|
||||
# Unlock progression is mostly disabled (unlock_at_station_level = -1) pending
|
||||
# the balancing pass. The capital hulls are the exception: battleship is gated
|
||||
# to station level 1, and dreadnought (level 2) requires battleship to be
|
||||
# unlocked first (unlock_requires) — a demonstration of the prerequisite chain.
|
||||
#
|
||||
# Size classes:
|
||||
# xs drone 1 cell — exactly one 1x1 module
|
||||
# s frigate, destroyer no 2x2 area anywhere: only 1x1/1x2/1x3/L modules fit
|
||||
@@ -169,7 +174,7 @@ sensor_range_m = 260
|
||||
# so no 2x6 drone hangar fits.
|
||||
[[ship]]
|
||||
id = "battleship"
|
||||
unlock_at_station_level = -1
|
||||
unlock_at_station_level = 1
|
||||
layout = [
|
||||
"XOOOOX",
|
||||
"OOOOOO",
|
||||
@@ -203,7 +208,8 @@ sensor_range_m = 280
|
||||
# stay the only hangar hull. Bow and stern strips hold supports.
|
||||
[[ship]]
|
||||
id = "dreadnought"
|
||||
unlock_at_station_level = -1
|
||||
unlock_at_station_level = 2
|
||||
unlock_requires = ["battleship"]
|
||||
layout = [
|
||||
"XXXOOOOOXXX",
|
||||
"OOOXOOOXOOO",
|
||||
|
||||
Reference in New Issue
Block a user