ModernUO/Projects/UOContent/Mobiles
Kamron Batman 95177fb647
fix: a deleted character's followers, and familiars that never unregistered (#2675)
## Summary

**Followers of a deleted character.** `PlayerMobile.OnDelete` deleted stabled pets and left every active follower pointing at the deleted mobile. Pets stayed controlled by nobody, and after a restart they loaded as owned pets with no owner. Now, when a character is deleted:
- bonded or dead pets and summons (controlled or not) are deleted;
- unbonded pets are released: they go wild and despawn on the abandoned-pet timer;
- escorts and hirelings are left alone, because they already notice a deleted master and walk off on their own.

**Familiars and animated dead that never unregistered.** `BaseCreature` unregistered them in `OnAfterDelete`, after `OnDelete` had already cleared the master. Both calls did nothing, so `SummonFamiliarSpell.Table` and the animated-dead registry kept deleted creatures until the caster's next cast. The unregisters now run in `OnDelete`, before the master is cleared.

## Test plan

- [x] `DeletedMasterTests` (6 cases, all failing on main): unbonded pet released; bonded and bonded-dead pets deleted; controlled and uncontrolled summons deleted; familiar unregistered on delete
- [x] UOContent.Tests (1184 passed, 2 skipped) and Server.Tests (907) green
2026-09-24 23:01:40 -07:00
..
Abilities refactor: master views over BaseCreature's one master reference (#2674) 2026-09-24 22:45:24 -07:00
AI refactor: master views over BaseCreature's one master reference (#2674) 2026-09-24 22:45:24 -07:00
Animals refactor: master views over BaseCreature's one master reference (#2674) 2026-09-24 22:45:24 -07:00
Familiars refactor: master views over BaseCreature's one master reference (#2674) 2026-09-24 22:45:24 -07:00
Guards feat: Adjusts fame and karma system with era gates for OSI accuracy (#2389) 2026-04-25 11:19:57 -07:00
Healers feat: Adds Mobile.Murderer virtual property, consolidates kill-threshold checks (#2355) 2026-03-06 08:36:41 -08:00
Hireables refactor: fold hand-written serializable property setters into field hooks (#2587) 2026-08-22 18:20:39 -07:00
Monsters refactor: master views over BaseCreature's one master reference (#2674) 2026-09-24 22:45:24 -07:00
Special perf: keep damage entries in an inline intrusive list (#2605) 2026-09-01 23:25:14 -07:00
Townfolk feat: adopt serialization generator v4 (field-side linkage, anchored timers) (#2586) 2026-08-22 17:54:02 -07:00
Vendors refactor: one master reference behind ControlMaster and SummonMaster (#2670) 2026-09-24 21:37:28 -07:00
BaseCreature.cs fix: a deleted character's followers, and familiars that never unregistered (#2675) 2026-09-24 23:01:40 -07:00
CreatureEvents.cs refactor: Changes BaseCreature to the SerializationGenerator (delta save requirement) (#2611) 2026-09-06 14:11:51 -07:00
NPCSpeeds.cs refactor: Changes BaseCreature to the SerializationGenerator (delta save requirement) (#2611) 2026-09-06 14:11:51 -07:00
PlayerMobile.cs fix: a deleted character's followers, and familiars that never unregistered (#2675) 2026-09-24 23:01:40 -07:00
VirtualMountItem.cs fix: Fixes mount stamina, adds Pub46+ Ethereal stamina (#1716) 2024-04-05 21:05:16 -07:00