Do work before Terraria's Main constructor runs. Currently the injector loads the game assembly and immediately calls game.EntryPoint.Invoke(). A pre-injection phase could modify the assembly in memory (via Cecil, which is already a dependency) or patch static constructors. Would let the asset system's TypeExtension resize arrays before they're first allocated instead of racing against initialization. Requires changing the injection model; currently mods get PrePatch(AssemblyDefinition) but this is underused and the hook ordering is fragile.
- Inidar