ModernUO/Projects/UOContent/Multis
Kamron Batman 3e8d548f38
feat: Add spawn position caching and spiral scan optimization (#2295)
### Summary

Adds spawn position caching and optimization for constrained spawners (e.g., those near houses, water, or blocked terrain).

### Key features:
- Sector-based bitmap cache (32 bytes per 16x16 sector) stores valid spawn positions
- Spiral scan progressively discovers positions from spawner center outward
- Automatic mode detects constrained spawners after 5+ non-transient failures
- Prevents mob spawning inside private houses (allows public AoS buildings)
- Deduplicates sector lookups for multi-bounds spawners (RegionSpawner)
- Cache invalidation on house placement/demolition
- Moves SpawnBounds to Spawner

### New spawner properties:
- SpawnPositionMode: Automatic (default), Enabled, Disabled, Abandoned
- MaxSpawnAttempts: Configurable attempts before optimization engages (default: 5)
2025-12-28 02:40:21 -08:00
..
Boats chore: Use var everywhere (#2294) 2025-12-27 16:47:28 -08:00
Camps fix: Fixes timer leak in BaseCamp (#2259) 2025-11-12 09:49:35 -08:00
Houses feat: Add spawn position caching and spiral scan optimization (#2295) 2025-12-28 02:40:21 -08:00
ComponentVerification.cs feat: Replaces params array with params ReadOnlySpan (#2125) 2025-02-13 21:19:02 -08:00
Deeds.cs fix: Converts houses/deeds to serialization generator (#2288) 2025-12-04 21:26:39 -08:00
DynamicDecay.cs Cleanup & Fixes for .NET 5 (#309) 2020-11-15 10:03:50 -08:00
HouseDeed.cs fix: Converts houses/deeds to serialization generator (#2288) 2025-12-04 21:26:39 -08:00
HousePlacementTarget.cs chore: Use var everywhere (#2294) 2025-12-27 16:47:28 -08:00