feat: Deduplicates spawns. Adds spawnbounds where needed. (#2299)
### Summary - Add z-restricted spawnBounds to 35 spawners across 15 files to prevent creatures from spawning on incorrect floors - Building spawners (Pyramid, Fire dungeon, Shame, Vendors) use minZ = spawner_z to prevent spawning below - Ground level spawners (Graveyards, Outdoors, Tokuno) use minZ = -128 for natural terrain variation - Multi-floor structures in Ilshenar use floor-specific Z restrictions ### Test plan - Verify spawners in Fire dungeon building don't spawn creatures on floors below - Verify Pyramid spawners keep creatures on their respective levels - Verify ground level spawners (graveyards, outdoors) still spawn correctly on terrain - Check Ilshenar multi-floor structure spawns creatures on correct floors
This commit is contained in:
parent
598223703f
commit
723e1a836d
184 changed files with 83110 additions and 175383 deletions
|
|
@ -1,4 +1,4 @@
|
|||
[
|
||||
[
|
||||
{
|
||||
"type": "Spawner",
|
||||
"guid": "35fb2ebe-b2e6-4a64-af3a-ce1eaacd9a54",
|
||||
|
|
@ -11,7 +11,9 @@
|
|||
"team": 0,
|
||||
"homeRange": 15,
|
||||
"walkingRange": 15,
|
||||
"entries": [{ "name": "Hydra", "maxCount": 8, "probability": 100 }]
|
||||
"entries": [
|
||||
{ "name": "Hydra", "maxCount": 8, "probability": 100 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Spawner",
|
||||
|
|
@ -25,7 +27,9 @@
|
|||
"team": 0,
|
||||
"homeRange": 5,
|
||||
"walkingRange": 5,
|
||||
"entries": [{ "name": "MaddeningHorror", "maxCount": 1, "probability": 100 }]
|
||||
"entries": [
|
||||
{ "name": "MaddeningHorror", "maxCount": 1, "probability": 100 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Spawner",
|
||||
|
|
@ -39,7 +43,9 @@
|
|||
"team": 0,
|
||||
"homeRange": 20,
|
||||
"walkingRange": 20,
|
||||
"entries": [{ "name": "SlasherOfVeils", "maxCount": 1, "probability": 100 }]
|
||||
"entries": [
|
||||
{ "name": "SlasherOfVeils", "maxCount": 1, "probability": 100 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Spawner",
|
||||
|
|
@ -53,7 +59,9 @@
|
|||
"team": 0,
|
||||
"homeRange": 10,
|
||||
"walkingRange": 10,
|
||||
"entries": [{ "name": "StygianDragon", "maxCount": 1, "probability": 100 }]
|
||||
"entries": [
|
||||
{ "name": "StygianDragon", "maxCount": 1, "probability": 100 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Spawner",
|
||||
|
|
@ -125,7 +133,9 @@
|
|||
"team": 0,
|
||||
"homeRange": 18,
|
||||
"walkingRange": 18,
|
||||
"entries": [{ "name": "ClockworkScorpion", "maxCount": 16, "probability": 100 }]
|
||||
"entries": [
|
||||
{ "name": "ClockworkScorpion", "maxCount": 16, "probability": 100 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Spawner",
|
||||
|
|
@ -157,7 +167,9 @@
|
|||
"team": 0,
|
||||
"homeRange": 20,
|
||||
"walkingRange": 20,
|
||||
"entries": [{ "name": "ClanRibbonPlagueRat", "maxCount": 15, "probability": 100 }]
|
||||
"entries": [
|
||||
{ "name": "ClanRibbonPlagueRat", "maxCount": 15, "probability": 100 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Spawner",
|
||||
|
|
@ -189,7 +201,9 @@
|
|||
"team": 0,
|
||||
"homeRange": 20,
|
||||
"walkingRange": 20,
|
||||
"entries": [{ "name": "ClanScratchSavageWolf", "maxCount": 18, "probability": 100 }]
|
||||
"entries": [
|
||||
{ "name": "ClanScratchSavageWolf", "maxCount": 18, "probability": 100 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Spawner",
|
||||
|
|
@ -318,7 +332,9 @@
|
|||
"team": 0,
|
||||
"homeRange": 15,
|
||||
"walkingRange": 15,
|
||||
"entries": [{ "name": "Medusa", "maxCount": 1, "probability": 100 }]
|
||||
"entries": [
|
||||
{ "name": "Medusa", "maxCount": 1, "probability": 100 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Spawner",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue