Phase 7: practice-boss and guardian-reset commands; steadier spawn survey

Adrian (2026-11-02): a way to force-spawn the bosses.

- /cobblesurvival boss <zone|end>: a practice copy next to you (same
  species, level, size, attacks; no drops, not the guardian's defeat).
- /cobblesurvival guardians reset <zone>: despawns the zone's guardian
  and clears its defeat, so it appears again when someone comes near
  (Guardians.reset, formerly resetForTest).
- Self-test practice_bosses_spawn.
- spawn_survey stands on the ground below trees: on a mangrove's roots
  it found no natural ground and nothing could spawn at the Mire sample.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
claudeandClaude Opus 5.5 committed 2026-11-02 16:40:23 +01:00
1 parent cd232bdf6a
commit c451c58483
6 files changed
+116 -6

No files matched your search

@@ -9,6 +9,7 @@ import dev.cobblesurvival.dev.OreVeins
import dev.cobblesurvival.ore.BaseLoot
import dev.cobblesurvival.ore.OreNodes
import dev.cobblesurvival.permadeath.Permadeath
import dev.cobblesurvival.boss.BossCommands
import dev.cobblesurvival.boss.BossFights
import dev.cobblesurvival.boss.EndBoss
import dev.cobblesurvival.machine.MachineShowcase
@@ -132,7 +133,8 @@ class CobbleSurvival {
val lines = Guardians.status(context.source.server.overworld())
context.source.sendSuccess({ Component.literal(lines.joinToString("\n").ifEmpty { "no guardians loaded" }) }, false)
1
})
}.then(BossCommands.guardianReset()))
.then(BossCommands.practice())
if (SelfTest.enabled) root.then(SelfTest.command())
event.dispatcher.register(root)
}