Every code change requires a full game restart (30-60 second cycle). .NET Framework 4.8 doesn't support AssemblyLoadContext (that's .NET Core+), so the only path is AppDomain isolation, loading mods into a separate AppDomain that can be torn down and recreated. This is painful: all cross-domain calls require marshaling, Harmony patches can't cross AppDomain boundaries easily, and reflection-heavy code becomes significantly more complex. Even partial hot-reload (re-read configs, re-run Initialize without restarting) would require mods to implement cleanup/teardown, which none currently do. Biggest dev velocity improvement if achieved, but fighting the runtime.
- Inidar