diff --git a/README.md b/README.md index d867b8ff..1ab02b62 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ ### :warning: WARNING :warning:: You **CANNOT** publish any code generated by this tool. ### Supported versions: -1.13->1.20 +1.13->1.20.1 ### Important 1.17< Needs JDK 16 diff --git a/build.gradle b/build.gradle index 9188408b..d1fc51df 100644 --- a/build.gradle +++ b/build.gradle @@ -6,12 +6,13 @@ buildscript { gradlePluginPortal() } dependencies { - classpath 'net.minecraftforge.gradle:ForgeGradle:5+' + classpath 'net.minecraftforge.gradle:ForgeGradle:6+' classpath "gradle.plugin.org.jetbrains.gradle.plugin.idea-ext:gradle-idea-ext:1.1.3" } } -import net.minecraftforge.forge.tasks.* +import net.minecraftforge.gradle.common.util.Utils +import net.minecraftforge.gradle.common.util.VersionJson import org.jetbrains.gradle.ext.* apply plugin: 'eclipse' @@ -78,47 +79,52 @@ jar { } } -task runclient(type: JavaExec) { +var assetsFolder = file('run/assets') + +tasks.register('runclient', JavaExec) { group = "MCP" description = "Runs the client" classpath sourceSets.main.runtimeClasspath if (System.getProperty("os.name").toLowerCase().contains("mac")) { jvmArgs '-XstartOnFirstThread' } + + var runFolder = file('run') + var versionJson = Utils.loadJson(downloadAssets.getMeta().get().getAsFile(), VersionJson.class) + + workingDir runFolder args '--gameDir', '.' args '--version', minecraft_version - args '--assetsDir', downloadAssets.output - args '--assetIndex', "1.20" + args '--assetsDir', runFolder.relativePath(assetsFolder) + args '--assetIndex', versionJson.assetIndex.id args '--accessToken', '0' main 'net.minecraft.client.main.Main' - workingDir 'run' } - -task setup() { +tasks.register('setup') { group = "MCP" description = "Setups the dev workspace" dependsOn ':extractMapped' - mkdir 'run/assets' + mkdir assetsFolder copy { from downloadAssets.output.path - into 'run/assets' + into assetsFolder } } -task copyAssets { +tasks.register('copyAssets') { group = "MCP" description = "Download and place the assets into the run folder" dependsOn ':downloadAssets' mkdir 'run/assets' copy { from downloadAssets.output.path - into 'run/assets' + into assetsFolder } } -task runserver(type: JavaExec) { +tasks.register('runserver', JavaExec) { mkdir 'runserver' group = "MCP" description = "Runs the server" @@ -136,4 +142,4 @@ idea.project.settings { moduleName = idea.module.name + '.main' } } -} +} \ No newline at end of file diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 00000000..128e5846 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,6 @@ +# Sets default memory used for gradle commands. Can be overridden by user or command line properties. +# This is required to provide enough memory for the Minecraft decompilation process. +org.gradle.jvmargs=-Xmx6G +org.gradle.daemon=true +org.gradle.parallel=true +org.gradle.configureondemand=true diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index 249e5832..c1962a79 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 8049c684..37aef8d3 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.1.1-bin.zip +networkTimeout=10000 zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index a69d9cb6..aeb74cbb 100755 --- a/gradlew +++ b/gradlew @@ -55,7 +55,7 @@ # Darwin, MinGW, and NonStop. # # (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # within the Gradle project. # # You can find Gradle at https://github.com/gradle/gradle/. @@ -80,13 +80,10 @@ do esac done -APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit - -APP_NAME="Gradle" +# This is normally unused +# shellcheck disable=SC2034 APP_BASE_NAME=${0##*/} - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' +APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit # Use the maximum available, or set MAX_FD != -1 to use that value. MAX_FD=maximum @@ -143,12 +140,16 @@ fi if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then case $MAX_FD in #( max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 MAX_FD=$( ulimit -H -n ) || warn "Could not query maximum file descriptor limit" esac case $MAX_FD in #( '' | soft) :;; #( *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC3045 ulimit -n "$MAX_FD" || warn "Could not set maximum file descriptor limit to $MAX_FD" esac @@ -193,6 +194,10 @@ if "$cygwin" || "$msys" ; then done fi + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + # Collect all arguments for the java command; # * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of # shell script including quotes and variable substitutions, so put them in diff --git a/gradlew.bat b/gradlew.bat index 53a6b238..6689b85b 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -26,6 +26,7 @@ if "%OS%"=="Windows_NT" setlocal set DIRNAME=%~dp0 if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused set APP_BASE_NAME=%~n0 set APP_HOME=%DIRNAME%