1.20.6, 1.21, 1.21.2, 1.21.4, 1.21.5, 1.21.7, 1.21.10, 1.21.11, and 26.1 all exist in settings.gradle.kts. The work
is:
For each target version (e.g. 1.21.4-neoforge, 1.20.1-neoforge):
1. Create a versions/<version>-neoforge/ directory with gradle.properties pointing to the right NeoForge version
2. Copy the NeoForge-specific source files (ReplayModBackend.java, NeoForgeEventBridge.java, KonamiCode.java,
BuildMeta.java, LangResourcePack.java, KonamiCode.java) into it
3. Add the version to settings.gradle.kts
4. Fix mods.toml per version so the NeoForge version range is tight (e.g. [21.4,21.5) not [21.1,))
5. Build, verify, upload to GitHub as a separate release asset tagged per MC version
Priority order (most requested NeoForge versions):
- 1.21.4-neoforge (NeoForge 21.4.x)
- 1.21.1-neoforge fix the version range in the current release first
- 1.20.1-neoforge (NeoForge 20.1.x very common)
- 26.1-neoforge (latest)
The biggest unknown is whether the preprocessor flags handle the API differences cleanly for each version, or
whether additional NeoForge-specific source files are needed.
1.20.6, 1.21, 1.21.2, 1.21.4, 1.21.5, 1.21.7, 1.21.10, 1.21.11, and 26.1 all exist in settings.gradle.kts. The work
is: