ModernUO/Projects/Server.Tests/Tests
Kamron Batman 9af7dd555a
fix: LastMoved and stat-gain stamps stay absolute across restarts (#2729)
ReadAnchoredTime shifted Item.LastMoved, Item.DecayResetTime and
Mobile.LastStr/Int/DexGain forward by the downtime at load. The bytes
were stable from save to save, but the first save after every restart
rewrote one timestamp in nearly every item record and most mobile
records, which defeats any per-record backup or delta save.

- LastMoved and DecayResetTime are read as saved. The downtime credit
  is applied after load by Item.CreditDowntimeToDecay, which moves
  DecayResetTime only for items whose decay countdown was still running
  when the save started. Every other item keeps its bytes, and decay
  timing is unchanged.
- World.LoadedSaveStartTime exposes the loaded save's anchor so the
  credit can tell which countdowns were running.
- Stat-gain stamps are read raw. The cooldown is minutes long, so
  downtime counting toward it costs nothing.

No format change: these fields were already absolute ticks.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-25 16:27:12 -07:00
..
Buffers test: remove trivial, duplicate and content-value tests (#2721) 2026-10-18 20:08:19 -07:00
Client test: fix shared state, CI-vacuous tests and harness duplication (#2722) 2026-10-18 20:11:33 -07:00
Collections test: remove trivial, duplicate and content-value tests (#2721) 2026-10-18 20:08:19 -07:00
Console test: fix shared state, CI-vacuous tests and harness duplication (#2722) 2026-10-18 20:11:33 -07:00
Geometry test: fix shared state, CI-vacuous tests and harness duplication (#2722) 2026-10-18 20:11:33 -07:00
Items test: fix shared state, CI-vacuous tests and harness duplication (#2722) 2026-10-18 20:11:33 -07:00
Json test: remove trivial, duplicate and content-value tests (#2721) 2026-10-18 20:08:19 -07:00
Localization test: fix shared state, CI-vacuous tests and harness duplication (#2722) 2026-10-18 20:11:33 -07:00
Maps test: run tile-dependent tests on synthetic terrain instead of client files (#2725) 2026-10-18 22:07:40 -07:00
Mobiles perf: keep damage entries in an inline intrusive list (#2605) 2026-09-01 23:25:14 -07:00
Network test: run tile-dependent tests on synthetic terrain instead of client files (#2725) 2026-10-18 22:07:40 -07:00
PropertyList test: fix shared state, CI-vacuous tests and harness duplication (#2722) 2026-10-18 20:11:33 -07:00
Serialization fix: LastMoved and stat-gain stamps stay absolute across restarts (#2729) 2026-10-25 16:27:12 -07:00
Terrain test: run tile-dependent tests on synthetic terrain instead of client files (#2725) 2026-10-18 22:07:40 -07:00
Text chore: Code Cleanup (#1239) 2022-11-10 22:49:25 -08:00
Timer fix: ClearAllTimers stops every timer in a slot, not just the first (#2723) 2026-10-18 20:10:19 -07:00
Utility test: remove trivial, duplicate and content-value tests (#2721) 2026-10-18 20:08:19 -07:00
World test: fix shared state, CI-vacuous tests and harness duplication (#2722) 2026-10-18 20:11:33 -07:00
SerialTests.cs fix: Adds ISpanFormattable support to Serial (#1065) 2022-06-14 18:39:46 -07:00