Modded 26.3 targets

- Fabric, Forge, and NeoForge build against Minecraft 26.3 with Fabric Loader 0.19.5, Forge 26.3-66.0.8, and NeoForge 26.3.0.33-beta
- Fabric API modules follow fabric-api 0.161.0+26.3, ForgeGradle is 7.0.40, and ModDevGradle is 2.0.147
- Loader metadata requires Fabric Loader 0.19.5, Forge 66, NeoForge 26.3, and Minecraft 26.3
- The mod resource pack declares formats 97.1 through 121.0
- The v26_3_R1 headless sources no longer unpack a version overlay
- The README lists the 26.3 loader targets
This commit is contained in:
Brian Neumann-Fopiano committed 2026-09-29 02:48:50 -04:00
1 parent b7626ab23f
commit 94c7181aec
12 files changed
+38 -45

No files matched your search

+3 -3
View File
@@ -23,9 +23,9 @@ Canonical English is defined in the typed Java catalogs under `core/src/main/jav
| Paper / Purpur / Leaf / Canvas | plugin jar | 26.1.2 - 26.2 | Full feature set | | Paper / Purpur / Leaf / Canvas | plugin jar | 26.1.2 - 26.2 | Full feature set |
| Folia | plugin jar | 26.1.2 - 26.2 | Region-safe scheduling throughout | | Folia | plugin jar | 26.1.2 - 26.2 | Region-safe scheduling throughout |
| Spigot / CraftBukkit | plugin jar | 26.1.2 - 26.2 | Managed `iris:*` creation and generation; exact vanilla-slot `/iris replace` is unavailable | | Spigot / CraftBukkit | plugin jar | 26.1.2 - 26.2 | Managed `iris:*` creation and generation; exact vanilla-slot `/iris replace` is unavailable |
| Fabric | mod jar | 26.2 | Server worldgen + client HUD; requires Fabric Loader 0.19.3+ | | Fabric | mod jar | 26.3 | Server worldgen + client HUD; requires Fabric Loader 0.19.5+ |
| Forge | mod jar | 26.2 | Server worldgen + client HUD; current target is Forge 26.2-65.1.1 | | Forge | mod jar | 26.3 | Server worldgen + client HUD; current target is Forge 26.3-66.0.8 |
| NeoForge | mod jar | 26.2 | Server worldgen + client HUD; current target is NeoForge 26.2.0.59 | | NeoForge | mod jar | 26.3 | Server worldgen + client HUD; current target is NeoForge 26.3.0.33-beta |
Java 25 is required on every platform. Java 25 is required on every platform.
+2 -2
View File
@@ -60,8 +60,8 @@ apply from: file('../../gradle/modded-generation-build-revision.gradle')
Properties rootProperties = new Properties() Properties rootProperties = new Properties()
file('../../gradle.properties').withInputStream { InputStream stream -> rootProperties.load(stream) } file('../../gradle.properties').withInputStream { InputStream stream -> rootProperties.load(stream) }
String irisVersion = providers.gradleProperty('irisVersion').getOrElse(rootProperties.getProperty('irisVersion', '4.1.2-26.2')) String irisVersion = providers.gradleProperty('irisVersion').getOrElse(rootProperties.getProperty('irisVersion', '4.1.2-26.2'))
String minecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse(rootProperties.getProperty('minecraftVersion', '26.2')) String minecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse(rootProperties.getProperty('minecraftVersion', '26.3'))
String fabricLoaderVersion = providers.gradleProperty('fabricLoaderVersion').getOrElse(rootProperties.getProperty('fabricLoaderVersion', '0.19.3')) String fabricLoaderVersion = providers.gradleProperty('fabricLoaderVersion').getOrElse(rootProperties.getProperty('fabricLoaderVersion', '0.19.5'))
String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate').getOrElse(rootProperties.getProperty('volmLibCoordinate', 'com.github.VolmitSoftware:VolmLib:master-SNAPSHOT')) String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate').getOrElse(rootProperties.getProperty('volmLibCoordinate', 'com.github.VolmitSoftware:VolmLib:master-SNAPSHOT'))
Closure<String> irisArtifactName = { String platform, String targetVersion -> Closure<String> irisArtifactName = { String platform, String targetVersion ->
return "Iris v${project.version} [${platform}] ${targetVersion}.jar" return "Iris v${project.version} [${platform}] ${targetVersion}.jar"
@@ -70,7 +70,7 @@
} }
], ],
"depends": { "depends": {
"fabricloader": ">=0.19.3", "fabricloader": ">=0.19.5",
"minecraft": "~${minecraftVersion}", "minecraft": "~${minecraftVersion}",
"java": ">=25" "java": ">=25"
} }
+4 -4
View File
@@ -42,7 +42,7 @@ buildscript {
plugins { plugins {
id 'java' id 'java'
id 'net.minecraftforge.gradle' version '7.0.31' id 'net.minecraftforge.gradle' version '7.0.40'
alias(libs.plugins.shadow) alias(libs.plugins.shadow)
} }
@@ -60,8 +60,8 @@ apply from: file('../../gradle/modded-generation-build-revision.gradle')
Properties rootProperties = new Properties() Properties rootProperties = new Properties()
file('../../gradle.properties').withInputStream { InputStream stream -> rootProperties.load(stream) } file('../../gradle.properties').withInputStream { InputStream stream -> rootProperties.load(stream) }
String irisVersion = providers.gradleProperty('irisVersion').getOrElse(rootProperties.getProperty('irisVersion', '4.1.2-26.2')) String irisVersion = providers.gradleProperty('irisVersion').getOrElse(rootProperties.getProperty('irisVersion', '4.1.2-26.2'))
String minecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse(rootProperties.getProperty('minecraftVersion', '26.2')) String minecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse(rootProperties.getProperty('minecraftVersion', '26.3'))
String forgeVersion = providers.gradleProperty('forgeVersion').getOrElse(rootProperties.getProperty('forgeVersion', '26.2-65.1.1')) String forgeVersion = providers.gradleProperty('forgeVersion').getOrElse(rootProperties.getProperty('forgeVersion', '26.3-66.0.8'))
String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate').getOrElse(rootProperties.getProperty('volmLibCoordinate', 'com.github.VolmitSoftware:VolmLib:master-SNAPSHOT')) String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate').getOrElse(rootProperties.getProperty('volmLibCoordinate', 'com.github.VolmitSoftware:VolmLib:master-SNAPSHOT'))
Closure<String> loaderDisplayVersion = { String loaderVersion -> Closure<String> loaderDisplayVersion = { String loaderVersion ->
String coordinatePrefix = "${minecraftVersion}-" String coordinatePrefix = "${minecraftVersion}-"
@@ -272,7 +272,7 @@ tasks.named('shadowJar', ShadowJar).configure {
} }
} }
manifest { manifest {
// FML 26.2 has no TOML mixin handling at all (ModFileParser reads neither [[mixins]] nor // FML 26.3 has no TOML mixin handling at all (ModFileParser reads neither [[mixins]] nor
// accessTransformers on Forge). This manifest attribute is the only registration mechanism; // accessTransformers on Forge). This manifest attribute is the only registration mechanism;
// do not move it into mods.toml. // do not move it into mods.toml.
attributes('MixinConfigs': 'volmlib.entity.mixins.json,volmlib.client.mixins.json') attributes('MixinConfigs': 'volmlib.entity.mixins.json,volmlib.client.mixins.json')
@@ -1,5 +1,5 @@
modLoader = "javafml" modLoader = "javafml"
loaderVersion = "[65,66)" loaderVersion = "[66,67)"
license = "GPL-3.0" license = "GPL-3.0"
issueTrackerURL = "https://github.com/VolmitSoftware/Iris/issues" issueTrackerURL = "https://github.com/VolmitSoftware/Iris/issues"
@@ -16,7 +16,7 @@ logoFile = "assets/irisworldgen/icon.png"
[[dependencies.irisworldgen]] [[dependencies.irisworldgen]]
modId = "forge" modId = "forge"
mandatory = true mandatory = true
versionRange = "[65,66)" versionRange = "[66,67)"
ordering = "NONE" ordering = "NONE"
side = "BOTH" side = "BOTH"
@@ -1,7 +1,7 @@
{ {
"pack": { "pack": {
"description": "Iris client resources and mod data", "description": "Iris client resources and mod data",
"min_format": [88, 0], "min_format": [97, 1],
"max_format": [107, 1] "max_format": [121, 0]
} }
} }
+3 -3
View File
@@ -42,7 +42,7 @@ buildscript {
plugins { plugins {
id 'java' id 'java'
id 'net.neoforged.moddev' version '2.0.141' id 'net.neoforged.moddev' version '2.0.147'
alias(libs.plugins.shadow) alias(libs.plugins.shadow)
} }
@@ -60,8 +60,8 @@ apply from: file('../../gradle/modded-generation-build-revision.gradle')
Properties rootProperties = new Properties() Properties rootProperties = new Properties()
file('../../gradle.properties').withInputStream { InputStream stream -> rootProperties.load(stream) } file('../../gradle.properties').withInputStream { InputStream stream -> rootProperties.load(stream) }
String irisVersion = providers.gradleProperty('irisVersion').getOrElse(rootProperties.getProperty('irisVersion', '4.1.2-26.2')) String irisVersion = providers.gradleProperty('irisVersion').getOrElse(rootProperties.getProperty('irisVersion', '4.1.2-26.2'))
String minecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse(rootProperties.getProperty('minecraftVersion', '26.2')) String minecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse(rootProperties.getProperty('minecraftVersion', '26.3'))
String neoForgeVersion = providers.gradleProperty('neoForgeVersion').getOrElse(rootProperties.getProperty('neoForgeVersion', '26.2.0.59')) String neoForgeVersion = providers.gradleProperty('neoForgeVersion').getOrElse(rootProperties.getProperty('neoForgeVersion', '26.3.0.33-beta'))
String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate').getOrElse(rootProperties.getProperty('volmLibCoordinate', 'com.github.VolmitSoftware:VolmLib:master-SNAPSHOT')) String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate').getOrElse(rootProperties.getProperty('volmLibCoordinate', 'com.github.VolmitSoftware:VolmLib:master-SNAPSHOT'))
Closure<String> irisArtifactName = { String platform, String targetVersion -> Closure<String> irisArtifactName = { String platform, String targetVersion ->
return "Iris v${project.version} [${platform}] ${targetVersion}.jar" return "Iris v${project.version} [${platform}] ${targetVersion}.jar"
@@ -25,7 +25,7 @@ logoFile = "assets/irisworldgen/icon.png"
[[dependencies.irisworldgen]] [[dependencies.irisworldgen]]
modId = "neoforge" modId = "neoforge"
type = "required" type = "required"
versionRange = "[26.2,26.3)" versionRange = "[26.3,26.4)"
ordering = "NONE" ordering = "NONE"
side = "BOTH" side = "BOTH"
+5 -12
View File
@@ -70,12 +70,12 @@ project(':core') {
group = 'art.arcane' group = 'art.arcane'
version = rootProject.version version = rootProject.version
} }
String minecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse('26.2') String minecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse('26.3')
// The Bukkit jar retains 26.1.2 and 26.2 alongside 26.3; loader jars stay 26.2-only. // The Bukkit jar retains 26.1.2 and 26.2 alongside 26.3; loader jars are 26.3-only.
String bukkitMinecraftRange = providers.gradleProperty('bukkitMinecraftRange').getOrElse('26.1.2-26.3') String bukkitMinecraftRange = providers.gradleProperty('bukkitMinecraftRange').getOrElse('26.1.2-26.3')
String fabricLoaderVersion = providers.gradleProperty('fabricLoaderVersion').getOrElse('0.19.3') String fabricLoaderVersion = providers.gradleProperty('fabricLoaderVersion').getOrElse('0.19.5')
String forgeVersion = providers.gradleProperty('forgeVersion').getOrElse('26.2-65.1.1') String forgeVersion = providers.gradleProperty('forgeVersion').getOrElse('26.3-66.0.8')
String neoForgeVersion = providers.gradleProperty('neoForgeVersion').getOrElse('26.2.0.59') String neoForgeVersion = providers.gradleProperty('neoForgeVersion').getOrElse('26.3.0.33-beta')
String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate') String volmLibCoordinate = providers.gradleProperty('volmLibCoordinate')
.orElse('com.github.VolmitSoftware:VolmLib:master-SNAPSHOT') .orElse('com.github.VolmitSoftware:VolmLib:master-SNAPSHOT')
.get() .get()
@@ -997,15 +997,8 @@ project(':adapters:bukkit:nms:v26_3_R1') {
TaskProvider<Sync> unpackHeadlessNativeSources = tasks.register('unpackHeadlessNativeSources', Sync) { TaskProvider<Sync> unpackHeadlessNativeSources = tasks.register('unpackHeadlessNativeSources', Sync) {
dependsOn(headlessNativeSources) dependsOn(headlessNativeSources)
inputs.property('nativeTypes', headlessNativeTypes) inputs.property('nativeTypes', headlessNativeTypes)
inputs.property('nativeVersion', '26.3')
from(provider { headlessNativeSources.collect { File artifact -> zipTree(artifact) } }) { from(provider { headlessNativeSources.collect { File artifact -> zipTree(artifact) } }) {
headlessNativeTypes.each { String type -> include("art/arcane/volmlib/nativelib/minecraft26_2/modded/${type}.java") } headlessNativeTypes.each { String type -> include("art/arcane/volmlib/nativelib/minecraft26_2/modded/${type}.java") }
include('versions/26.3/**')
eachFile { FileCopyDetails source ->
if (source.path.startsWith('versions/26.3/')) {
source.path = source.path.substring('versions/26.3/'.length())
}
}
} }
from(rootProject.file('adapters/modded-common/src/main/java')) { from(rootProject.file('adapters/modded-common/src/main/java')) {
include('art/arcane/iris/modded/ModdedDecoratorHooks.java', include('art/arcane/iris/modded/ModdedDecoratorHooks.java',
+4 -4
View File
@@ -22,10 +22,10 @@ org.gradle.caching=true
org.gradle.configureondemand=false org.gradle.configureondemand=false
irisVersion=4.1.2-26.2 irisVersion=4.1.2-26.2
minecraftVersion=26.2 minecraftVersion=26.3
# Bukkit plugin api-version: lowest supported Minecraft release line so one artifact loads on 26.1.2 and 26.2 # Bukkit plugin api-version: lowest supported Minecraft release line so one artifact loads on 26.1.2 and 26.2
apiVersion=26.1 apiVersion=26.1
fabricLoaderVersion=0.19.3 fabricLoaderVersion=0.19.5
forgeVersion=26.2-65.1.1 forgeVersion=26.3-66.0.8
neoForgeVersion=26.2.0.59 neoForgeVersion=26.3.0.33-beta
volmLibCoordinate=com.github.VolmitSoftware.VolmLib:volmlib-shared:d24d28acddbf3555c0c30ac99569ebacd476ce27 volmLibCoordinate=com.github.VolmitSoftware.VolmLib:volmlib-shared:d24d28acddbf3555c0c30ac99569ebacd476ce27
+10 -10
View File
@@ -49,16 +49,16 @@ multiverseCore = "5.8.0"
craftengine = "26.8.2" # https://github.com/Xiao-MoMi/craft-engine/releases craftengine = "26.8.2" # https://github.com/Xiao-MoMi/craft-engine/releases
# Fabric API (net.fabricmc.fabric-api) - each module is independently versioned # Fabric API (net.fabricmc.fabric-api) - each module is independently versioned
fabricApi-base = "2.0.4+ece063239e" fabricApi-base = "2.0.6+fcdff87f5d"
fabricApi-registrySync = "7.1.0+c7bd5b8e9e" fabricApi-registrySync = "8.0.1+fcdff87f5d"
fabricApi-resourceLoader = "2.0.13+9edec1269e" fabricApi-resourceLoader = "3.0.4+fcdff87f5d"
fabricApi-lifecycleEvents = "4.1.3+4575b05f9e" fabricApi-lifecycleEvents = "4.1.9+ffef5f675d"
fabricApi-commandApi = "3.1.0+00cb03469e" fabricApi-commandApi = "3.1.2+fcdff87f5d"
fabricApi-eventsInteraction = "5.2.6+8f57f7ee9e" fabricApi-eventsInteraction = "5.3.6+3434d6d95d"
fabricApi-networking = "6.3.3+72073ef09e" fabricApi-networking = "6.3.8+fcdff87f5d"
fabricApi-rendering = "25.3.1+6988455e9e" fabricApi-rendering = "27.0.14+901a437c5d"
fabricApi-keyMapping = "2.0.5+e2bdee789e" fabricApi-keyMapping = "2.0.8+3434d6d95d"
fabricApi-permission = "1.0.3+b7020ca29e" fabricApi-permission = "1.0.8+fcdff87f5d"
[libraries] [libraries]
# Core Libraries # Core Libraries
+1 -1
View File
@@ -9,7 +9,7 @@ String nativeLibraryCoordinate = providers.gradleProperty('volmLibCoordinate')
.getOrElse(nativeLibraryProperties.getProperty('volmLibCoordinate')) .getOrElse(nativeLibraryProperties.getProperty('volmLibCoordinate'))
String nativeSourceLoader = extensions.extraProperties.get('nativeSourceLoader') String nativeSourceLoader = extensions.extraProperties.get('nativeSourceLoader')
String nativeSourceImplementation = 'minecraft26_2' String nativeSourceImplementation = 'minecraft26_2'
String nativeSourceMinecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse('26.2') String nativeSourceMinecraftVersion = providers.gradleProperty('minecraftVersion').getOrElse('26.3')
extensions.extraProperties.set('nativeSourceImplementation', nativeSourceImplementation) extensions.extraProperties.set('nativeSourceImplementation', nativeSourceImplementation)
dependencies.add(nativeMinecraftSources.name, dependencies.add(nativeMinecraftSources.name,
"com.github.VolmitSoftware.VolmLib:native-${nativeSourceImplementation}-sources:${nativeLibraryCoordinate.tokenize(':').last()}") "com.github.VolmitSoftware.VolmLib:native-${nativeSourceImplementation}-sources:${nativeLibraryCoordinate.tokenize(':').last()}")