Complete the audited environmental-hazard subset beyond decay, lightning, and explosions, only where a server-safe 1.21.1 implementation is practical.
Acceptance criteria:
Compare Legacy meteor, erosion, and scorching behavior against modern world height, block tags, entity APIs, and protection hooks. Implement each supported provider or document a concrete blocker in the issue before closing it.
Bound affected area, frequency, active entities, block changes, and per-tick work; use only loaded chunks in the affected Age and never force-load distant terrain.
Expose independent destructive-effect toggles and safe defaults; protect spawn/link infrastructure and block entities. Avoid client-only classes on a dedicated server.
Check local Legacy sounds/textures/models before creating replacements, record reused-asset provenance, and add deterministic/restart/multiplayer isolation tests.
Complete the audited environmental-hazard subset beyond decay, lightning, and explosions, only where a server-safe 1.21.1 implementation is practical.
Acceptance criteria:
- Compare Legacy meteor, erosion, and scorching behavior against modern world height, block tags, entity APIs, and protection hooks. Implement each supported provider or document a concrete blocker in the issue before closing it.
- Bound affected area, frequency, active entities, block changes, and per-tick work; use only loaded chunks in the affected Age and never force-load distant terrain.
- Expose independent destructive-effect toggles and safe defaults; protect spawn/link infrastructure and block entities. Avoid client-only classes on a dedicated server.
- Check local Legacy sounds/textures/models before creating replacements, record reused-asset provenance, and add deterministic/restart/multiplayer isolation tests.
Dependencies: #63 audit and #66 runtime.
dnorberg
added this to the Milestone 6 — Instability milestone 2026-10-08 06:10:14 -04:00
Implemented in commit 779699d and released as V0.5.8.2, with the built JAR attached. Meteor and burning use the audited Legacy cards; erosion is enabled by default for testing when an Age reaches the destructive instability threshold. Effects are bounded to loaded chunks and respect Age isolation, spawn protection, and config toggles. Legacy meteor sound provenance and modern adaptations are documented in docs/INSTABILITY_ENVIRONMENTAL.md.
Validation: Gradle build passed; 47 GameTests passed in an earlier run. The final GameTest invocation stalled and was stopped per the project rule. The player confirmed burning works in-game on retest.
Implemented in commit 779699d and released as [V0.5.8.2](https://gitea.tail180fb1.ts.net/dnorberg/rivencraft/releases/tag/V0.5.8.2), with the built JAR attached. Meteor and burning use the audited Legacy cards; erosion is enabled by default for testing when an Age reaches the destructive instability threshold. Effects are bounded to loaded chunks and respect Age isolation, spawn protection, and config toggles. Legacy meteor sound provenance and modern adaptations are documented in docs/INSTABILITY_ENVIRONMENTAL.md.
Validation: Gradle build passed; 47 GameTests passed in an earlier run. The final GameTest invocation stalled and was stopped per the project rule. The player confirmed burning works in-game on retest.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Complete the audited environmental-hazard subset beyond decay, lightning, and explosions, only where a server-safe 1.21.1 implementation is practical.
Acceptance criteria:
Dependencies: #63 audit and #66 runtime.
Implemented in commit
779699dand released as V0.5.8.2, with the built JAR attached. Meteor and burning use the audited Legacy cards; erosion is enabled by default for testing when an Age reaches the destructive instability threshold. Effects are bounded to loaded chunks and respect Age isolation, spawn protection, and config toggles. Legacy meteor sound provenance and modern adaptations are documented in docs/INSTABILITY_ENVIRONMENTAL.md.Validation: Gradle build passed; 47 GameTests passed in an earlier run. The final GameTest invocation stalled and was stopped per the project rule. The player confirmed burning works in-game on retest.