# GTNH 2.5.1 Client Setup Wow, a new stable version! Follow the guide below to get your client updated so you can play on the server. If you're installing for the first time you can ignore the section about transferring your data. :::info **Note:** I recommend using Prism Launcher as your launcher as it will automatically include the server in your server list, and in the case of the Java 17 version will ensure your configuration is correct. ::: [ToC] ## Prism Launcher I recommend using Prism Launcher as your modpack launcher. Prism Launcher will automatically add the server to your server list, as well as better facilitating the Java 17 version if you're using it. You can download it here: https://prismlauncher.org/download/ ## Java 17 (Experimental, but Potentially Faster!) :::warning Note that the links in this section are specifically for Java 17, if you previously had the Java 8 version you **need** to use the new ZIP. ::: ### Installing Java 17 (Virtually Mandatory) :::warning I really recommend using GraalVM here as the setup is very straight-forward and I have tested that it works with GTNH. If you want to use your own Java 17+ version your mileage may vary. ::: I recommend using GraalVM Java, which is a version produced by Oracle which provides a decent amount of performance increase over regular Java. 1. Download GraalVM JRE from here: https://cdn.bee.osaka/graalvm-ee-java17-windows-amd64-22.3.4.zip 2. Extract the archive to a location on your disk, like ``C:/graalvm-ee-java17-22.3.4/`` 3. Edit your instance in your Prism Launcher. Go to settings, and set your java installation to point at ``bin/javaw.exe`` in the directory you extracted it to, like this: ``C:/graalvm-ee-java17-22.3.4/bin/javaw.exe`` 4. Set your max memory equal to minimum memory, I use 8GB so min and max are both 8096MiB. 5. Set your java arguments to the ones provided below, be sure to change the last two options (``-XX:ConcGCThreads=14 -XX:ParallelGCThreads=14``) to be the number of **cores** you have - 2. I have a Ryzen 7 5800X3D with 16 cores, so I use 14 in the example below. ``` -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+AlwaysActAsServerClassMachine -XX:+AlwaysPreTouch -XX:+DisableExplicitGC -XX:+UseNUMA -XX:AllocatePrefetchStyle=3 -XX:NmethodSweepActivity=1 -XX:ReservedCodeCacheSize=400M -XX:NonNMethodCodeHeapSize=12M -XX:ProfiledCodeHeapSize=194M -XX:NonProfiledCodeHeapSize=194M -XX:-DontCompileHugeMethods -XX:+PerfDisableSharedMem -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:+EagerJVMCI -Dgraal.TuneInlinerExploration=1 -Dgraal.CompilerConfiguration=enterprise --illegal-access=warn -Djava.security.manager=allow -Dfile.encoding=UTF-8 --add-opens java.base/jdk.internal.loader=ALL-UNNAMED --add-opens java.base/java.net=ALL-UNNAMED --add-opens java.base/java.nio=ALL-UNNAMED --add-opens java.base/java.io=ALL-UNNAMED --add-opens java.base/java.lang=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/jdk.internal.reflect=ALL-UNNAMED --add-opens java.base/sun.nio.ch=ALL-UNNAMED --add-opens jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED,java.naming --add-opens java.desktop/sun.awt.image=ALL-UNNAMED --add-modules jdk.dynalink --add-opens jdk.dynalink/jdk.dynalink.beans=ALL-UNNAMED --add-modules java.sql.rowset --add-opens java.sql.rowset/javax.sql.rowset.serial=ALL-UNNAMED -XX:ConcGCThreads=14 -XX:ParallelGCThreads=14 ``` ### Download 2.5.1 Client I've prepared a custom client version for us in 2.5.1, this includes several changes from the default version distributed. These changes are... - Replaced JourneyMap Fairplay with Ultimate - Removed Fastcraft and replaced it with Archaicfix (open-source version produced by GTNH community) - Added NotFine and Neodynium (performance improvements, open-source recommended by GTNH community) - Added JustEnoughCalculations, a really neat (optional, clientside) mod for calculating crafting recipes - Added Server Utilities (replaced FTB Utilities) You can download the custom client for **Java 17** [here](https://cdn.bee.osaka/GTNH_2.5.1_Java_17-21_CUSTOM_v1.zip). Simply add this zip to your launcher. ## Moving Your Client Data Over :::info Follow this if you're upgrading your previous install! **If you're installing for the first time, you can ignore this section.** ::: Open the folder for both your old instance and your new one. In Multi-MC you do this by right-clicking the instance and clicking ``Folder``. Copy the following files and directories from your old instance to your new instance: - ``.minecraft/journeymap/`` - ``.minecraft/TCNodeTracker/`` - ``.minecraft/visualprospecting/`` - ``.minecraft/options.txt`` - ``.minecraft/saves/`` - IF you had JustEnoughCalculation before: ``.minecraft/config/JustEnoughCalculation/`` ## You're Done! Congrats, you're all good to go. Hop on the server! ## Troubleshooting ### I don't see the server in my server list... What gives! You probably didn't use Prism Launcher. That's fine, just add it to your list: ``gtnh.melonmesa.com`` ### My map isn't right when I get on the server Don't panic! We just need to move the folder where the map data is to the new one created for the server. First, disconnect from the server (don't need to close the game), then go into your new instance's folder and go to ``.minecraft/journeymap/data/mp/``. Note that there should be several folders, you need to replace the contents of the newly created folder for the GTNH MelonMesa Official server with the contents of your old folder. Once you do this reconnect to the server. This likely looks like moving the contents of a folder with the previous server's name to a folder called ``MelonMesa~Official~GTNH``.