Promoting late-gameplay BG3 composition contracts in the TD2 SDL port
Promoting late-gameplay BG3 composition contracts in the TD2 SDL port This checkpoint moved one late-gameplay renderer hypothesis out of tooling and into the runtime. The late live-entry bundles at...

Source: DEV Community
Promoting late-gameplay BG3 composition contracts in the TD2 SDL port This checkpoint moved one late-gameplay renderer hypothesis out of tooling and into the runtime. The late live-entry bundles at frames 3250, 3400, and 3550 already had a strong signal from the cutoff sweep: the missing horizon strip was not explained by missing assets, but by a narrow composition rule. The best candidates were consistent enough to promote: frame 3250: enable BG3 in the top 79 scanlines and keep BG3 > BG2 there frame 3400: same 79-line window frame 3550: same rule with a deeper 95-line window The runtime now loads those rules from a versioned contract file instead of a hardcoded late-gameplay lookup: rom_analysis/docs/gameplay_composition_contracts.jsonc On the implementation side, td2_runtime resolves the matching profile for the loaded design pack, and td2_ppu now applies two concrete knobs in the native SDL render path: bg3_enable_top_scanlines bg3_above_bg2_top_scanlines That means the late-gam