Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
58 commits
Select commit Hold shift + click to select a range
314394b
First pass at building with 6.0. Fixed a good majority of the issues.
Bennyboy1695 Mar 9, 2025
d00842d
More work on the 6.0 update. Went through the remaining things. All t…
Bennyboy1695 Mar 11, 2025
04fe3f2
Finally add a way to get platform reach
Bennyboy1695 Mar 11, 2025
854a37b
Even more work towards 6.0. Basically just figuring out the rotatingd…
Bennyboy1695 Mar 11, 2025
18527ad
Migration clean up. Todo: fix deobfuscation
hlysine Mar 26, 2025
7f89261
Update versions
hlysine Mar 26, 2025
cb9d7d2
WIP fixes for Flywheel
hlysine Mar 26, 2025
6af5767
Use forge in common project
hlysine Mar 26, 2025
8e2af6f
Config fixes using our own stress config class
hlysine Mar 26, 2025
4c2a668
Fix pipe fluid rendering
hlysine Mar 26, 2025
db30be6
Update pipe model to follow the new pipe design in Create
hlysine Mar 26, 2025
0332168
Fix kinetic copycats when flywheel instancing is off
hlysine Mar 26, 2025
76c4ac7
Refactor in preparation for instancing support
hlysine Mar 26, 2025
b778e71
Fix instanced model rendering, texture update still WIP
hlysine Mar 28, 2025
12f6902
Model update logic for multi-state
hlysine Mar 28, 2025
a306f05
Model update logic for single state
hlysine Mar 28, 2025
4d8d209
Remove access widener
hlysine Mar 28, 2025
05f135b
Extract instance refresh logic to new class
hlysine Mar 29, 2025
210234f
Fix sliding/folding door rendering
hlysine Mar 29, 2025
dcc0769
Remove starlight from dev environment
hlysine Mar 29, 2025
8bebde8
Fix ghost block rendering
hlysine Mar 29, 2025
59faf6c
Set virtual render world to full darkness for correct lighting
hlysine Mar 30, 2025
27a7abb
Only build forge in all CI for now
hlysine Mar 30, 2025
8d439d1
Re-enable discord messaging
hlysine Mar 30, 2025
4e7fabb
Fix mixin remapping
hlysine Mar 30, 2025
0dbe8ff
Update light on instance change
hlysine Mar 30, 2025
ee58c6d
Mostly done on the 1.21 port. Just needs a few fixes
Bennyboy1695 Apr 3, 2025
f5d2a25
Fix all code errors for 1.21 port and run data generation
hlysine Apr 13, 2025
a60c88a
Minor code clean-ups
hlysine Apr 13, 2025
8bd8853
Fix creative tab issue, and make the tab a bit more advanced.
Bennyboy1695 Apr 14, 2025
3cffeed
Update CI to use java 21
hlysine Apr 15, 2025
4cfe788
Fix R-click crash
hlysine Apr 15, 2025
ce4fe1d
Update CI to build neoforge project
hlysine Apr 19, 2025
09dd89d
Fix mod registration on neoforge
hlysine Apr 22, 2025
4431db7
Fix shade issue (Making kinetics super dark)
Bennyboy1695 Apr 22, 2025
8ab34b6
Revert "Fix shade issue (Making kinetics super dark)"
hlysine Apr 23, 2025
42305c9
Small change to match create's code
hlysine Apr 24, 2025
0805139
Add EMI support (kinda)
Bennyboy1695 Apr 25, 2025
9946011
Fix recipes and sodium compat
Bennyboy1695 Apr 25, 2025
125862f
Actually fix the recipes and run datagen
Bennyboy1695 Apr 25, 2025
5937fef
Add RenderNurse to debug rendering issues
Bennyboy1695 Apr 25, 2025
284abcd
Fix cat variant definition
hlysine Apr 28, 2025
6efd7d4
Fix sliding doors using the incorrect render type
hlysine Apr 28, 2025
5b9843c
Fix Athena/Stitch Compat
Bennyboy1695 Apr 28, 2025
92ac2dc
Working way of doing renderdoc/nurse
Bennyboy1695 Apr 30, 2025
a30c638
Implement new neoforge API for thread-safe light levels
hlysine May 27, 2025
d7b05c7
Tidy up buildscript for renderdoc
hlysine May 27, 2025
224314c
Fix dark kinetic copycats
hlysine May 27, 2025
55760b7
Fix wrench not swinging when used on copycats
Bennyboy1695 May 28, 2025
878f1cd
Update placement helper signature
hlysine May 31, 2025
5461fde
Move swing animation to a more generalized place
hlysine May 31, 2025
cc6ce5e
Remove unused compat
hlysine May 31, 2025
caab853
Fix placement helpers not working in base Create copycats
hlysine May 31, 2025
c171515
Fix slopes having incorrect hitbox
hlysine May 31, 2025
d70c4d7
Limit copycat ladder placement assist to not affect other ladder blocks
hlysine May 31, 2025
6e09533
A potential fix for fluid pipe crashing schematics
hlysine May 31, 2025
ba5d3e0
Disable renderDoc setup in CI
hlysine May 31, 2025
d8e2efd
Do a redraw on placement, to prevent the placement helper render bug
Bennyboy1695 May 31, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
28 changes: 15 additions & 13 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,12 @@ jobs:
path: gradle.properties
properties: minecraft_version enabled_platforms archives_base_name

- name: Set up JDK 17
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: 17
java-version: 21
distribution: temurin
cache: 'gradle'

- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v3
Expand All @@ -55,21 +56,21 @@ jobs:
loom-cache

- name: Build jar
run: ./gradlew build
run: ./gradlew :neoforge:build

- name: Publish to GitHub Packages
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
if: env.GITHUB_TOKEN != ''
continue-on-error: true
run: ./gradlew publishMavenJavaPublicationToGitHubPackagesRepository
run: ./gradlew :neoforge:publishMavenJavaPublicationToGitHubPackagesRepository

- name: Publish to realRobotix Maven
env:
MAVEN_USER: ${{ secrets.MAVEN_USER }}
MAVEN_ACCESS_TOKEN: ${{ secrets.MAVEN_ACCESS_TOKEN }}
if: env.MAVEN_USER != '' && env.MAVEN_ACCESS_TOKEN != ''
run: ./gradlew publishMavenJavaPublicationToRealRobotixMavenRepository -PrealRobotixMavenUsername=${{ secrets.MAVEN_USER }} -PrealRobotixMavenPassword=${{ secrets.MAVEN_ACCESS_TOKEN }}
run: ./gradlew :neoforge:publishMavenJavaPublicationToRealRobotixMavenRepository -PrealRobotixMavenUsername=${{ secrets.MAVEN_USER }} -PrealRobotixMavenPassword=${{ secrets.MAVEN_ACCESS_TOKEN }}

- name: Find jars
id: find_jars
Expand All @@ -79,14 +80,15 @@ jobs:
find . -regextype posix-extended -regex "\.\/($(tr "," "|" <<< ${{ steps.read_properties.outputs.enabled_platforms }}))\/build\/libs\/${{ steps.read_properties.outputs.archives_base_name }}-${{ steps.get_mod_version.outputs.version }}\+mc\.${{ steps.read_properties.outputs.minecraft_version }}-($(tr "," "|" <<< ${{ steps.read_properties.outputs.enabled_platforms }}))-build\.${{ github.run_number }}\.jar" >> $GITHUB_OUTPUT
echo "$EOF" >> $GITHUB_OUTPUT

# - name: Send building message to discord
# env:
# DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
# if: env.DISCORD_WEBHOOK != ''
# uses: realRobotix/action-discord-notifier@master
# with:
# webhook: ${{ secrets.DISCORD_WEBHOOK }}
# message-title: Building mod from branch ${{ steps.get_branch.outputs.branch }}
- name: Send building message to discord
continue-on-error: true
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
if: env.DISCORD_WEBHOOK != ''
uses: realRobotix/action-discord-notifier@master
with:
webhook: ${{ secrets.DISCORD_WEBHOOK }}
message-title: Building mod from branch ${{ steps.get_branch.outputs.branch }}

- name: Send built file to discord
env:
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,12 @@ jobs:
path: gradle.properties
properties: minecraft_version enabled_platforms archives_base_name

- name: Set up JDK 17
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: 17
java-version: 21
distribution: temurin
cache: 'gradle'

- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v3
Expand All @@ -48,7 +49,7 @@ jobs:
cache-read-only: true

- name: Build jar
run: ./gradlew build
run: ./gradlew :neoforge:build

- name: Find jars
id: find_jars
Expand Down
30 changes: 16 additions & 14 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,12 @@ jobs:
path: gradle.properties
properties: minecraft_version enabled_platforms archives_base_name

- name: Set up JDK 17
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: 17
java-version: 21
distribution: temurin
cache: 'gradle'

- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v3
Expand All @@ -57,31 +58,31 @@ jobs:
- name: Build jar
env:
RELEASE: true
run: ./gradlew build
run: ./gradlew :neoforge:build

- name: Publish to GitHub Packages
env:
RELEASE: true
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
if: env.GITHUB_TOKEN != ''
continue-on-error: true
run: ./gradlew publishMavenJavaPublicationToGitHubPackagesRepository
run: ./gradlew :neoforge:publishMavenJavaPublicationToGitHubPackagesRepository

- name: Publish to realRobotix Maven
env:
RELEASE: true
MAVEN_USER: ${{ secrets.MAVEN_USER }}
MAVEN_ACCESS_TOKEN: ${{ secrets.MAVEN_ACCESS_TOKEN }}
if: env.MAVEN_USER != '' && env.MAVEN_ACCESS_TOKEN != ''
run: ./gradlew publishMavenJavaPublicationToRealRobotixMavenRepository -PrealRobotixMavenUsername=${{ secrets.MAVEN_USER }} -PrealRobotixMavenPassword=${{ secrets.MAVEN_ACCESS_TOKEN }}
run: ./gradlew :neoforge:publishMavenJavaPublicationToRealRobotixMavenRepository -PrealRobotixMavenUsername=${{ secrets.MAVEN_USER }} -PrealRobotixMavenPassword=${{ secrets.MAVEN_ACCESS_TOKEN }}

- name: Publish to Modrinth and CurseForge
env:
RELEASE: true
MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }}
CURSEFORGE_TOKEN: ${{ secrets.CURSEFORGE_TOKEN }}
if: env.MODRINTH_TOKEN != '' && env.CURSEFORGE_TOKEN != ''
run: ./gradlew publishMods -PMODRINTH_TOKEN=${{ secrets.MODRINTH_TOKEN }} -PCURSEFORGE_TOKEN=${{ secrets.CURSEFORGE_TOKEN }}
run: ./gradlew :neoforge:publishMods -PMODRINTH_TOKEN=${{ secrets.MODRINTH_TOKEN }} -PCURSEFORGE_TOKEN=${{ secrets.CURSEFORGE_TOKEN }}

- name: Find jars
id: find_jars
Expand All @@ -91,14 +92,15 @@ jobs:
find . -regextype posix-extended -regex "\.\/($(tr "," "|" <<< ${{ steps.read_properties.outputs.enabled_platforms }}))\/build\/libs\/${{ steps.read_properties.outputs.archives_base_name }}-${{ steps.get_mod_version.outputs.version }}\+mc\.${{ steps.read_properties.outputs.minecraft_version }}-($(tr "," "|" <<< ${{ steps.read_properties.outputs.enabled_platforms }}))\.jar" >> $GITHUB_OUTPUT
echo "$EOF" >> $GITHUB_OUTPUT

# - name: Send building message to discord
# env:
# DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
# if: env.DISCORD_WEBHOOK != ''
# uses: realRobotix/action-discord-notifier@master
# with:
# webhook: ${{ secrets.DISCORD_WEBHOOK }}
# message-title: Building mod from branch ${{ steps.get_branch.outputs.branch }}
- name: Send building message to discord
continue-on-error: true
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
if: env.DISCORD_WEBHOOK != ''
uses: realRobotix/action-discord-notifier@master
with:
webhook: ${{ secrets.DISCORD_WEBHOOK }}
message-title: Building mod from branch ${{ steps.get_branch.outputs.branch }}

- name: Send built file to discord
env:
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,6 @@ run-data
# Files from Forge MDK
forge*changelog.txt

secrets.properties
secrets.properties
/neoforge/lib/RenderDoc_1.37_64/
/neoforge/lib/RenderDoc_1.37_64/**
48 changes: 34 additions & 14 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
plugins {
id "architectury-plugin" version "3.4-SNAPSHOT"
id "architectury-plugin" version "3.4.+"
id "dev.architectury.loom" version "1.7.+" apply false
}

Expand Down Expand Up @@ -37,6 +37,7 @@ subprojects {
officialMojangMappings()
parchment("org.parchmentmc.data:parchment-${rootProject.minecraft_version}:${rootProject.parchment_version}@zip")
}
compileOnly 'com.google.code.findbugs:jsr305:3.0.2' // for nullability annotations
}

publishing {
Expand Down Expand Up @@ -74,12 +75,18 @@ allprojects {
String buildNumber = System.getenv("GITHUB_RUN_NUMBER")
version = "${getGitTag()}+mc.${minecraft_version}-${project.name}${nightly ? "-build.${buildNumber}" : ""}"
group = rootProject.maven_group
ext.ci = ci

repositories {
maven { url "https://maven.neoforged.net/releases/" }
maven {
name = 'ParchmentMC'
url = 'https://maven.parchmentmc.org'
}
maven {
name = 'createmod maven'
url = 'https://maven.createmod.net/'
}
maven {
name = 'tterrag maven'
url = 'https://maven.tterrag.com/'
Expand All @@ -99,6 +106,11 @@ allprojects {
name = "ModMaven"
url = "https://modmaven.dev"
}
maven {
//Location of EMI
name = "TerraformersMC"
url = "https://maven.terraformersmc.com/"
}
maven {
url = "https://cursemaven.com"
}
Expand All @@ -125,6 +137,7 @@ allprojects {
url = "https://jitpack.io/"
content { includeGroupAndSubgroups("com.github") }
}
maven { url "https://maven.neoforged.net/releases/" }
exclusiveContent {
forRepository {
maven {
Expand All @@ -141,7 +154,7 @@ allprojects {
}
}

configurations{
configurations {
findAndDelete
}

Expand All @@ -157,7 +170,7 @@ allprojects {

tasks.withType(JavaCompile).configureEach {
options.encoding = "UTF-8"
options.release.set(17)
options.release.set(21)
}

jar {
Expand All @@ -173,21 +186,28 @@ allprojects {

// set up properties for filling into metadata
var replaceProperties = [
version : version.replace("forge.", "").replace("fabric.", ""),
minecraft_version : minecraft_version,
fabric_api_version : fabric_api_version,
fabric_loader_version: fabric_loader_version,
create_forge_range : create_forge_range,
create_fabric_range : create_fabric_range,
mod_license : mod_license,
mod_authors : mod_authors,
mod_name : mod_name,
mod_description : mod_description
version : version.replace("neoforge.", "").replace("fabric.", ""),
minecraft_version : minecraft_version,
minecraft_version_range : minecraft_version_range,
fabric_api_version : fabric_api_version,
fabric_loader_version : fabric_loader_version,
neoforge_version_range : neoforge_version_range,
neoforge_loader_version_range: neoforge_loader_version_range,
create_neoforge_range : create_neoforge_range,
create_fabric_range : create_fabric_range,
archives_base_name : archives_base_name,
mod_license : mod_license,
mod_authors : mod_authors,
mod_name : mod_name,
mod_description : mod_description,
mod_credits : mod_credits,
mod_url : mod_url,
mod_issues : mod_issues
]

inputs.properties replaceProperties

filesMatching(["fabric.mod.json", "META-INF/mods.toml"]) {
filesMatching(["fabric.mod.json", "META-INF/neoforge.mods.toml"]) {
expand replaceProperties + [project: project]
}
}
Expand Down
23 changes: 17 additions & 6 deletions common/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,36 @@ architectury {
common(enabled_platforms.split(","))
}

loom {
accessWidenerPath = file("src/main/resources/copycats.accesswidener")
}

dependencies {
// We depend on fabric loader here to use the fabric @Environment annotations and get the mixin dependencies
// Do NOT use other classes from fabric loader
modImplementation "net.fabricmc:fabric-loader:${fabric_loader_version}"
neoForge "net.neoforged:neoforge:${neoforge_version}"

// Compile against Create Fabric in common
// beware of differences across platforms!
// dependencies must also be pulled in to minimize problems, from remapping issues to compile errors.
// All dependencies except Flywheel and Registrate are NOT safe to use!
// Flywheel and Registrate must also be used carefully due to differences.
modCompileOnly("com.simibubi.create:create-fabric-${minecraft_version}:${create_fabric_version}")
//TODO: Change to fabric when its out
modCompileOnly("com.simibubi.create:create-${minecraft_version}:${create_neoforge_version}:slim") { transitive = false }
modCompileOnly("com.tterrag.registrate:Registrate:${registrate_neoforge_version}")
modImplementation("dev.engine-room.flywheel:flywheel-neoforge-${minecraft_version}:${flywheel_neoforge_version}")
compileOnly("dev.engine-room.flywheel:flywheel-neoforge-api-${minecraft_version}:${flywheel_neoforge_version}")
modImplementation("net.createmod.ponder:Ponder-NeoForge-${minecraft_version}:${ponder_version}")

// required for proper remapping and compiling
modCompileOnly("net.fabricmc.fabric-api:fabric-api:${fabric_api_version}")
modCompileOnly("mezz.jei:jei-${minecraft_version}-common-api:${jei_common_version}")
modCompileOnly("dev.emi:emi-xplat-mojmap:${emi_common_version}+${minecraft_version}")

modCompileOnly("curse.maven:additional-placements-fabric-930469:${additionalplacements_fabric_curse_id}")
modCompileOnly("curse.maven:embeddium-908741:${embeddium_curse_id}")
modCompileOnly("curse.maven:selene-499980:${moonlight_curse_fabric_id}")
modCompileOnly("curse.maven:vertical-slabs-compat-724387:${vertical_slabs_curse_fabric_id}")
modImplementation("curse.maven:additional-placements-674852:${additionalplacements_neoforge_curse_id}")
modImplementation("curse.maven:sodium-394468:${sodium_neoforge_curse_id}")
modCompileOnly("curse.maven:selene-499980:${moonlight_curse_neoforge_id}")
modCompileOnly("curse.maven:vertical-slabs-compat-724387:${vertical_slabs_curse_neoforge_id}")

//Used for all diagonal mods as they all shadow a common library we can mixin
modCompileOnly("fuzs.diagonalblocks:diagonalblocks-common:${diagonal_mods_version}")
Expand Down
1 change: 1 addition & 0 deletions common/gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
loom.platform = neoforge

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading