Paradise
Paradise copied to clipboard
feat: dynamic Lavaland bridge lengths.
What Does This PR Do
This PR replaces the lavaland bridge maps with a spawner that permits dynamic sizing. Bridges can now spawn any size from 4 to 8 tiles long. Because there are more places that qualify for a bridge, more bridges spawn overall, at least based on my testing (although I'm still not happy about the overall amount and may make more tweaks later).
It adds a turf flag, LAVA_BRIDGE
, in order to prevent most bridge collisions, though there still may occasionally be collisions because pillars etc aren't checked -- it would be too late in the placement process to back out if the pillars intersected a bridge.
See code docs for implementation details.
Why It's Good For The Game
It inreases the amount of variety in bridges without requiring more maps and more code for each map size.
More bridges spawn overall, which was a common pain point for miners.
Longer bridges add a hint of atmosphere as they may feel more dangerous to cross, especially for chasms.
If people want to add more bridge themes, it can be done easily without having to create new map templates.
Images of changes
Example bridges of different lengths (ignore the little maptext labels, was testing)
Examples of bridge themes (not representative of how often they spawn in-game)
Spooky long chasm bridge (would be cool if it had torches)
Cool double bridge bookending an island
I wish I had more cool screenshots but quite honestly the river spawner still doesn't generate great results and its waypoints are far too clumped together for aesthetically pleasing results.
Testing
Spawned lots and lots of Lavaland, walked over bridges to ensure they worked as expected.
Declaration
- [X] I confirm that I either do not require pre-approval for this PR, or I have obtained such approval and have included a screenshot to demonstrate this below.
Changelog
:cl: add: Bridges on Lavaland can now vary in size from four to eight tiles long. More bridges spawn as a side-effect due to increased number of valid spawn points. /:cl: