fixes seed ruin logic preventing forced ruins from spawning when budget is zero, fixes map_logging CI test (#87910)

## About The Pull Request

The ruins get added to forced_ruins, quite often after all ruin budget
is exhausted and thus they don't get spawned.

This adjusts the logic to ignore the budget when there's forced_ruins to
be had.

Also apparently fixes map_logging CI test which was broken by the logic,
and makes the stacked_lights test scream at you with the area name for
the sake of easier debugging as it can proc on the ruins now

## Why It's Good For The Game

Adjusts some logic to allow multi-ruins to spawn correctly, and to make
sure our mappers make good space ruins too

## Changelog

🆑
fix: Ruins will now correctly spawn their tied ruins in
fix: The map_logging test now runs proper
code: The stacked_lights test now screams with area names too.
/🆑
This commit is contained in:
Waterpig
2024-12-04 14:04:55 +01:00
committed by Majkl-J
parent 22bdc2db42
commit 016c3ed21a
8 changed files with 6 additions and 19 deletions

View File

@@ -30,7 +30,6 @@
/area/ruin/space/djstation)
"t" = (
/obj/structure/closet/secure_closet/freezer/fridge/all_access,
/obj/machinery/light/directional/south,
/obj/effect/turf_decal/tile/bar/opposingcorners,
/obj/machinery/light/small/directional/south,
/turf/open/floor/iron,

View File

@@ -351,7 +351,7 @@
"kp" = (
/obj/effect/spawner/random/environmentally_safe_anomaly/immobile,
/turf/template_noop,
/area/space)
/area/space/nearstation)
"kt" = (
/obj/effect/turf_decal/tile/purple/half/contrasted{
dir = 1

View File

@@ -285,7 +285,7 @@
/turf/open/misc/asteroid/airless,
/area/ruin/space)
"ET" = (
/mob/living/basic/lizard,
/mob/living/basic/lizard/space,
/turf/open/misc/asteroid/airless,
/area/ruin/space)
"Fo" = (

View File

@@ -122,7 +122,6 @@
/area/ruin/space/has_grav/garbagetruck/toystore)
"lm" = (
/obj/structure/spider/stickyweb,
/obj/structure/spider/stickyweb/very_sticky,
/turf/open/floor/plating,
/area/ruin/space/has_grav/garbagetruck/toystore)
"mf" = (
@@ -182,7 +181,6 @@
/turf/open/floor/plating,
/area/ruin/space/has_grav/garbagetruck/toystore)
"qX" = (
/obj/structure/spider/stickyweb/very_sticky,
/obj/item/food/badrecipe/moldy,
/obj/structure/spider/stickyweb,
/obj/item/food/spidereggs{

View File

@@ -147,8 +147,8 @@
/turf/open/floor/iron/dark/airless,
/area/ruin/space/prison_shuttle)
"O" = (
/mob/living/basic/cockroach,
/obj/effect/turf_decal/tile/brown/fourcorners,
/obj/effect/decal/cleanable/xenoblood/xsplatter,
/turf/open/floor/iron/dark/airless,
/area/ruin/space/prison_shuttle)
"P" = (

View File

@@ -736,7 +736,6 @@
/turf/open/floor/iron/grimy,
/area/shuttle/abandoned/crew)
"yM" = (
/obj/machinery/light/cold/directional/south,
/obj/effect/decal/cleanable/dirt,
/obj/machinery/light/broken/directional/south,
/obj/machinery/firealarm/directional/east,
@@ -1084,15 +1083,6 @@
},
/turf/open/floor/iron/small,
/area/shuttle/abandoned/pod)
"Jk" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/power/apc/auto_name/directional/south,
/obj/structure/cable,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden{
dir = 4
},
/turf/open/floor/iron/smooth_large,
/area/shuttle/abandoned/cargo)
"Jn" = (
/obj/structure/dresser,
/obj/effect/decal/cleanable/dirt,
@@ -1712,7 +1702,7 @@ wE
RX
gV
EX
Jk
Ui
kQ
Jn
iS

View File

@@ -115,7 +115,7 @@
if(R.unpickable)
continue
ruins_available[R] = R.placement_weight
while((budget > 0 || mineral_budget > 0) && (ruins_available.len || forced_ruins.len))
while(((budget > 0 || mineral_budget > 0) && ruins_available.len) || forced_ruins.len)
var/datum/map_template/ruin/current_pick
var/forced = FALSE
var/forced_z //If set we won't pick z level and use this one instead.

View File

@@ -99,7 +99,7 @@
continue
if(on_turf.dir != dir)
continue
stack_trace("Conflicting double stacked light [on_turf.type] found at ([our_location.x],[our_location.y],[our_location.z])")
stack_trace("Conflicting double stacked light [on_turf.type] found at [get_area(our_location)] ([our_location.x],[our_location.y],[our_location.z])")
qdel(on_turf)
if(!mapload) //sync up nightshift lighting for player made lights