Skip to content

Commit 4671ce0

Browse files
committed
Update to MC 1.21.10
1 parent 077ca1f commit 4671ce0

13 files changed

Lines changed: 123 additions & 96 deletions

File tree

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,6 @@ extra-mods
3030
# Ignore files specific to dev environments
3131
secrets.properties
3232
changelog.txt
33+
34+
loader-neoforge/.cache
35+
loader-neoforge/config

build.gradle

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
plugins {
2-
id 'net.darkhax.curseforgegradle' version '1.1.26' apply false
2+
id 'net.darkhax.curseforgegradle' version '1.1.28' apply false
33
id 'com.diffplug.spotless' version '6.25.0' apply false
44
id 'com.modrinth.minotaur' version '2.+' apply false
55

6-
id 'fabric-loom' version '1.10-SNAPSHOT' apply false
7-
id 'net.neoforged.moddev' version '2.0.95' apply false
8-
id 'net.neoforged.gradle.userdev' version '7.0.185' apply false
9-
id 'net.minecraftforge.gradle' version '[6.0.36,6.2)' apply false
6+
id 'fabric-loom' version '1.13-SNAPSHOT' apply false
7+
id 'net.neoforged.moddev' version '2.0.119' apply false
8+
id 'net.minecraftforge.gradle' version '[6.0.46,6.2)' apply false
109
}
1110

buildSrc/src/main/groovy/multiloader-common.gradle

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -274,16 +274,6 @@ tasks.withType(JavaCompile).configureEach {
274274
options.encoding = 'UTF-8' // Use the UTF-8 charset for Java compilation
275275
}
276276

277-
// The following is required to fix running unit tests during build phase
278-
tasks.configureEach { task ->
279-
if (task.name.startsWith("test")) {
280-
task.enabled = true
281-
}
282-
if (task.name.startsWith("testJunit")) {
283-
task.enabled = false
284-
}
285-
}
286-
287277
javadoc {
288278
// prevent java 8's strict doclint for javadocs from failing builds
289279
options.addStringOption('Xdoclint:accessibility,html,reference,syntax', '-quiet')

buildSrc/src/main/groovy/multiloader-loader-neoforge.gradle

Lines changed: 37 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
plugins {
44
id 'multiloader-loader'
5-
id 'net.neoforged.gradle.userdev'
5+
id 'net.neoforged.moddev'
66
}
77

88
// All jar files from this folder will be added automatically as runtime mod dependencies (inspired by AE2's build.gradle)
@@ -16,10 +16,13 @@ repositories {
1616
}
1717

1818
dependencies {
19-
implementation "net.neoforged:neoforge:${neoforge_version}"
20-
21-
testImplementation "junit:junit:4.12"
22-
testImplementation "org.mockito:mockito-core:1.+"
19+
testImplementation 'org.junit.jupiter:junit-jupiter:5.7.1'
20+
testImplementation 'org.junit.jupiter:junit-jupiter-params:5.7.1'
21+
testImplementation 'org.junit.platform:junit-platform-suite-api:1.14.1'
22+
testImplementation 'org.hamcrest:hamcrest:2.1'
23+
testImplementation "org.mockito:mockito-core:2.+"
24+
testRuntimeOnly 'org.junit.platform:junit-platform-suite-engine'
25+
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
2326

2427
// Locally sourced extra mods for runtime (i.e. testing)
2528
for (extraModJar in fileTree(dir: extraModsDir, include: '*.jar')) {
@@ -34,45 +37,45 @@ dependencies {
3437

3538
sourceSets.main.resources { srcDir 'src/generated/resources' }
3639

37-
minecraft {
38-
// Automatically enable neoforge AccessTransformers if the file exists
39-
def at = project(':loader-common').file('src/main/resources/META-INF/accesstransformer.cfg')
40-
if (at.exists()) {
41-
accessTransformers {
42-
file(at.absolutePath)
43-
}
44-
}
45-
}
40+
neoForge {
41+
version = "${neoforge_version}"
4642

47-
subsystems {
4843
parchment {
49-
minecraftVersion = "${parchment_minecraft_version}"
5044
mappingsVersion = "${parchment_version}"
51-
}
52-
}
53-
54-
runs {
55-
configureEach {
56-
systemProperty 'neoforge.logging.markers', 'REGISTRIES'
57-
systemProperty 'neoforge.logging.console.level', 'debug'
58-
modSource project.sourceSets.main
45+
minecraftVersion = "${parchment_minecraft_version}"
5946
}
6047

61-
client {
62-
systemProperty 'neoforge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
48+
// Automatically enable neoforge AccessTransformers if the file exists
49+
def at = project(':loader-common').file('src/main/resources/META-INF/accesstransformer.cfg')
50+
if (at.exists()) {
51+
accessTransformers = [ at.absolutePath ]
6352
}
6453

65-
server {
66-
systemProperty 'neoforge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
67-
argument '--nogui'
68-
}
54+
// TODO: enable this once the Forge ATs change format
55+
// validateAccessTransformers = true
6956

70-
gameTestServer {
71-
systemProperty 'neoforge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
57+
runs {
58+
client {
59+
client()
60+
}
61+
server {
62+
server()
63+
programArgument '--nogui'
64+
}
65+
gameTestServer {
66+
type = "gameTestServer"
67+
}
68+
configureEach {
69+
systemProperty 'forge.logging.markers', 'REGISTRIES'
70+
logLevel = org.slf4j.event.Level.DEBUG
71+
systemProperty 'neoforge.enabledGameTestNamespaces', "cyclopscore,${mod_id}"
72+
}
7273
}
7374

74-
clientData {
75-
arguments.addAll '--mod', mod_id, '--all', '--output', file('src/generated/resources/').getAbsolutePath(), '--existing', file('src/main/resources/').getAbsolutePath()
75+
mods {
76+
"${mod_id}" {
77+
sourceSet(sourceSets.main)
78+
}
7679
}
7780
}
7881

gradle.properties

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ group=org.cyclops.structuredcrafting
44
java_version=21
55

66
# Common
7-
minecraft_version=1.21.8
7+
minecraft_version=1.21.10
88
mod_name=StructuredCrafting
99
mod_author=rubensworks (aka kroeser)
1010
mod_id=structuredcrafting
@@ -14,25 +14,25 @@ issue_tracker_url=https://github.com/CyclopsMC/StructuredCrafting/issues
1414
display_url=https://www.curseforge.com/minecraft/mc-mods/structured-crafting
1515
description=Craft stuff in your world, automatically.
1616
fingerprint=bd0353b3e8a2810d60dd584e256e364bc3bedd44
17-
neo_form_version=1.21.7-20250630.141722
18-
parchment_version=2025.06.15
19-
parchment_minecraft_version=1.21.5
17+
neo_form_version=1.21.10-20251010.172816
18+
parchment_version=2025.10.12
19+
parchment_minecraft_version=1.21.10
2020
curseforge_project_id=233151
2121
modrinth_project_id=GTi2kHAW
2222

2323
# Fabric
24-
fabric_version=0.130.0+1.21.8
25-
fabric_loader_version=0.16.14
24+
fabric_version=0.138.3+1.21.10
25+
fabric_loader_version=0.18.1
2626
# Dependencies
27-
fabric_forgeconfigapiport_version=21.8.0
27+
fabric_forgeconfigapiport_version=21.10.1
2828

2929
# NeoForge
30-
neoforge_version=21.8.20
30+
neoforge_version=21.10.53-beta
3131
neoforge_loader_version_range=[4,)
3232
neoforge_update_json_url=https://raw.githubusercontent.com/CyclopsMC/Versions/master/neoforge_update/structured-crafting.json
3333

3434
# Forge
35-
forge_version=58.0.1
35+
forge_version=60.1.0
3636
forge_loader_version_range=[2,)
3737
forge_update_json_url=https://raw.githubusercontent.com/CyclopsMC/Versions/master/forge_update/structured-crafting.json
3838

@@ -42,4 +42,4 @@ org.gradle.daemon=false
4242
org.gradle.caching=true
4343

4444
# Common dependencies
45-
cyclopscore_version=1.25.5-793
45+
cyclopscore_version=1.25.5-854

loader-common/src/main/java/org/cyclops/structuredcrafting/block/BlockStructuredCrafter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ protected MapCodec<? extends BaseEntityBlock> codec() {
5252
@Override
5353
@Nullable
5454
public <T extends BlockEntity> BlockEntityTicker<T> getTicker(Level level, BlockState blockState, BlockEntityType<T> blockEntityType) {
55-
return level.isClientSide ? null : BaseEntityBlock.createTickerHelper(blockEntityType, RegistryEntries.BLOCK_ENTITY_STRUCTURED_CRAFTER.value(), new BlockEntityStructuredCrafter.Ticker());
55+
return level.isClientSide() ? null : BaseEntityBlock.createTickerHelper(blockEntityType, RegistryEntries.BLOCK_ENTITY_STRUCTURED_CRAFTER.value(), new BlockEntityStructuredCrafter.Ticker());
5656
}
5757

5858
@Override

loader-common/src/main/java/org/cyclops/structuredcrafting/blockentity/BlockEntityStructuredCrafter.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ protected void update(Level level, BlockPos pos, BlockState blockState, BlockEnt
5050
super.update(level, pos, blockState, blockEntity);
5151

5252
blockEntity.setTickOffset((blockEntity.getTickOffset() + 1) % SPEED);
53-
if(!level.isClientSide && blockEntity.getTickOffset() == 0) {
53+
if(!level.isClientSide() && blockEntity.getTickOffset() == 0) {
5454
if(level.hasNeighborSignal(pos)) {
5555
blockEntity.getMatrix().craft(false);
5656
} else {

loader-common/src/main/java/org/cyclops/structuredcrafting/gametest/GameTestsCommon.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -564,7 +564,7 @@ protected void assertChestEmpty(GameTestHelper helper, BlockPos pos) {
564564
}
565565

566566
protected void assertChestContains(GameTestHelper helper, BlockPos pos, ItemStack itemStack) {
567-
helper.assertBlockEntityData(pos, ChestBlockEntity.class, (ChestBlockEntity chest) -> ItemStack.matches(chest.getItem(0), itemStack), () -> Component.literal("Chest is not empty"));
567+
helper.assertBlockEntityData(pos, ChestBlockEntity.class, (ChestBlockEntity chest) -> ItemStack.matches(chest.getItem(0), itemStack), () -> Component.literal("Chest does not contain: " + itemStack));
568568
}
569569

570570
}

loader-neoforge/build.gradle

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,12 @@ dependencies {
3636
}
3737
}
3838

39-
runs {
40-
configureEach {
41-
modSource project.sourceSets.main
42-
modSource project.sourceSets.api
39+
neoForge {
40+
addModdingDependenciesTo sourceSets.api
41+
mods {
42+
structuredcrafting {
43+
sourceSet(sourceSets.api)
44+
}
4345
}
4446
}
4547

0 commit comments

Comments
 (0)