ModernUO/dev-docs/runuo-migration-docs
Kamron Batman 861c7e5f4d refactor(factions): migrate Faction/Town from RunUO Parse(string) to ISpanParsable<T>
Faction and Town were never converted from RunUO's bare static Parse(string) to
IParsable/ISpanParsable, so they had only a 1-arg Parse(string) that returned null on
no-match. That made them unreachable through Server.Types' IParsable path (they fell to
Convert.ChangeType and failed) and, worse, would have let [set assign null silently on a
bad name. Both now implement ISpanParsable<T> (string + span Parse/TryParse, throw-on-
failure contract), matching Race/Poison. No external callers depended on the old
null-returning Parse.

Also documents the convention in dev-docs/runuo-migration-docs/01-foundation-changes.md
(new section 15 + checklist item): ModernUO expects any RunUO static Parse(string) to be
converted to IParsable<T>/ISpanParsable<T>. Server.Types still binds a legacy Parse(string)
by reflection as a safety net. Full suite 535/535.
2026-07-20 09:29:22 -07:00
..
00-overview.md feat: Adds AI skills to migrate from RunUO (#2366) 2026-03-13 00:33:45 -07:00
01-foundation-changes.md refactor(factions): migrate Faction/Town from RunUO Parse(string) to ISpanParsable<T> 2026-07-20 09:29:22 -07:00
02-serialization.md docs: Updates CLAUDE dev-docs/skills for serialization (#2372) 2026-03-15 01:05:03 -07:00
03-timers.md docs: Updates CLAUDE dev-docs/skills for serialization (#2372) 2026-03-15 01:05:03 -07:00
04-gumps.md feat: Adds AI skills to migrate from RunUO (#2366) 2026-03-13 00:33:45 -07:00
05-packets-networking.md feat: Adds AI skills to migrate from RunUO (#2366) 2026-03-13 00:33:45 -07:00
06-property-lists.md feat: Adds AI skills to migrate from RunUO (#2366) 2026-03-13 00:33:45 -07:00
07-commands-events.md feat: Adds AI skills to migrate from RunUO (#2366) 2026-03-13 00:33:45 -07:00
08-persistence.md feat: Adds AI skills to migrate from RunUO (#2366) 2026-03-13 00:33:45 -07:00
09-items-mobiles-creatures.md docs: Updates CLAUDE dev-docs/skills for serialization (#2372) 2026-03-15 01:05:03 -07:00
10-systems-engines.md docs: Updates CLAUDE dev-docs/skills for serialization (#2372) 2026-03-15 01:05:03 -07:00
11-api-reference.md feat: Adds AI skills to migrate from RunUO (#2366) 2026-03-13 00:33:45 -07:00