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:
Kamron Batman 2025-12-30 00:21:03 -08:00 • committed by GitHub
parent 598223703f
commit 723e1a836d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
184 changed files with 83110 additions and 175383 deletions

View file

@ -0,0 +1,66 @@
[
{
"type": "Spawner",
"guid": "3e3f2805-df30-4d29-abdd-e8a53002b1d2",
"name": "Spawner (305)",
"location": [1415, 1498, -27],
"map": "Ilshenar",
"count": 4,
"minDelay": "00:02:00",
"maxDelay": "00:05:00",
"team": 0,
"homeRange": 4,
"walkingRange": 4,
"entries": [
{ "name": "MushroomTrap", "maxCount": 4, "probability": 100 }
]
},
{
"type": "Spawner",
"guid": "46803838-2abe-45af-8c77-4deccf2e99d7",
"name": "Spawner (305)",
"location": [1444, 1519, -28],
"map": "Ilshenar",
"count": 4,
"minDelay": "00:02:00",
"maxDelay": "00:05:00",
"team": 0,
"homeRange": 10,
"walkingRange": 10,
"entries": [
{ "name": "MushroomTrap", "maxCount": 4, "probability": 100 }
]
},
{
"type": "Spawner",
"guid": "e7588959-6148-4bf7-a0b1-829b3dca6e1b",
"name": "Spawner (305)",
"location": [1464, 1495, -28],
"map": "Ilshenar",
"count": 4,
"minDelay": "00:02:00",
"maxDelay": "00:05:00",
"team": 0,
"homeRange": 10,
"walkingRange": 10,
"entries": [
{ "name": "MushroomTrap", "maxCount": 4, "probability": 100 }
]
},
{
"type": "Spawner",
"guid": "f5a9bc72-4489-4b3a-83ee-7c476d4c9396",
"name": "Spawner (305)",
"location": [1441, 1532, -28],
"map": "Ilshenar",
"count": 4,
"minDelay": "00:02:00",
"maxDelay": "00:05:00",
"team": 0,
"homeRange": 10,
"walkingRange": 10,
"entries": [
{ "name": "MushroomTrap", "maxCount": 4, "probability": 100 }
]
}
]