ModernUO/Projects/UOContent/Mobiles
Kamron Batman 4238980c6d
feat: treat the four speeds as one block against the bucket
Either all four values (active/passive think + move) conform to the
creature's speed entry - elided as a set - or the creature is fully
custom and all four serialize. Partial conformance cannot exist on the
wire, so no value is ever left silently tracking the table beside a
hand-tuned sibling.

"Fully custom" is a real state: SpeedLevel.Custom (None already means
"resolve by type list" for the type-listed species, so it cannot double
as the custom marker). Tuning any speed flips the bucket to Custom (the
label never lies), Custom resolves no entry and short-circuits the
conformance check, a custom creature is its own GetSpeeds reference
(paragon snap becomes a natural no-op), and assigning a real bucket
un-customs it via ApplySpeedClass. A re-entrancy guard keeps the flip
from misreading ApplySpeedClass's half-assigned block, and constructors
seed raw fields so DefaultSpeedClass types do not flip at birth.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-23 13:05:51 -07:00
..
Abilities refactor: BaseCreature to the SerializationGenerator with SaveFlag elision 2026-08-23 10:50:38 -07:00
AI feat: Adds independent think/move clocks for creature AI to fix speed (#2591) 2026-08-23 10:19:59 -07:00
Animals feat: convert all delta-time serialization to anchored time (#2589) 2026-08-22 19:34:43 -07:00
Familiars fix: Fixes container enumeration not recycling pooled arrays (#2341) 2026-02-17 09:54:32 -08: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: BaseCreature to the SerializationGenerator with SaveFlag elision 2026-08-23 10:50:38 -07:00
Special feat: Adds independent think/move clocks for creature AI to fix speed (#2591) 2026-08-23 10:19:59 -07:00
Townfolk feat: adopt serialization generator v4 (field-side linkage, anchored timers) (#2586) 2026-08-22 17:54:02 -07:00
Vendors feat: convert all delta-time serialization to anchored time (#2589) 2026-08-22 19:34:43 -07:00
BaseCreature.cs feat: treat the four speeds as one block against the bucket 2026-08-23 13:05:51 -07:00
CreatureEvents.cs refactor: BaseCreature to the SerializationGenerator with SaveFlag elision 2026-08-23 10:50:38 -07:00
NPCSpeeds.cs feat: treat the four speeds as one block against the bucket 2026-08-23 13:05:51 -07:00
PlayerMobile.cs fix: Streamlines insurance. Insurance only executes when enabled. (#2550) 2026-07-26 09:47:49 -07:00
VirtualMountItem.cs fix: Fixes mount stamina, adds Pub46+ Ethereal stamina (#1716) 2024-04-05 21:05:16 -07:00