#74: RESEARCH_LAB_CHANCE raised from 0.08 to 0.16 - research points gate mid/late skill-tree nodes and vessel/lab research now (#63), so 0.08 was too scarce for how central they'd become to progression. #75: an extractor placed on a research_lab planet would sit on an empty resource id forever, since it yields nothing by design. Refused in BuildController's placement confirm, with the same "explain the refusal" idiom every other build gate uses. register_capture_points() gained an optional definition_id parameter so the refusal/reward logic can tell a research_lab planet apart without threading an extra argument through every existing caller. #76: conquering a research_lab awarded a research point with no on-screen acknowledgement beyond a HUD number the player has no reason to be watching at that exact moment. CaptureLabel's existing "CONQUERED" flash now names the reward directly on a research_lab. test_extractor_building.gd and test_planet_conquest_gate.gd both use a "first planet chunk found" scan with no regard for definition_id; in this world's fixed seed that chunk happens to be a research_lab, so #75's new gate started refusing their otherwise-unrelated extractor placement checks. Both now skip a research_lab chunk when picking their target, same as test_research_lab_extractor_gate.gd does on purpose for its own dedicated coverage of that refusal.
This commit is contained in:
parent
d68aac6444
commit
63d0d6a496
5 changed files with 146 additions and 7 deletions
|
|
@ -29,7 +29,12 @@ func _initialize() -> void:
|
|||
for x in range(-15, 15):
|
||||
for y in range(-15, 15):
|
||||
var chunk: Vector2i = Vector2i(x, y)
|
||||
if WorldGen.has_planet_at_chunk(chunk):
|
||||
# #75: this test is about the conquest gate, not resource type -
|
||||
# skip a research_lab specifically, since it yields nothing and
|
||||
# is correctly refused regardless of conquest (see
|
||||
# test_research_lab_extractor_gate.gd for that behaviour).
|
||||
if WorldGen.has_planet_at_chunk(chunk) \
|
||||
and WorldGen.planet_data_at_chunk(chunk).definition_id != "research_lab":
|
||||
target_chunk = chunk
|
||||
found = true
|
||||
break
|
||||
|
|
|
|||
Loading…
Reference in a new issue