Performance

The official server modpack to improve FPS & performance for both low & high-end systems for Minecraft 1.19.

Installing Fabric

You'll need to have Minecraft 1.20.1 installed first.

Fabric Download

If you're using the official minecraft launcher, use loader versions 0.14.21 and version 1.20.1.

If you're using TLauncher, you can just select "Fabric 1.20.1" in the version selector. If that doesn't appear, you'll have to install fabric manually, like above.

Installing the Modpack

Now we can install the official server modpack!
This adds most optifine features and massive performance increases.


You can download it with the links below!


Just extract the contents of the zip file to your mods folder, which is in '%appdata%\.minecraft\mods' by default.

standard

download

This is the standard version, without any bloat that adds shader support.



Last Updated [07/18/2023]


recommended

download

This is the recommended version that supports shaders.

You won't get any impact to performance, unless you actually install shaders on your own.

Last Updated [07/18/2023]

How much will I benefit from the modpack?

Expand this for a detailed summary of what each of the mods do.

Dependencies (Required for the mods to run)

Cloth Config - Used by all mods.

FabricAPI - Used by all mods.

Indium - Used by most visual mods.

Fabric Language Kotlin - Used by Fabric Capes.


Performance & Bug Fixes

AdvancementsDebug - Makes the Advancements logic faster and fixes crashes caused by StackOverflowErrors.

BetterBeds - Removes rendering of beds as entities and replaces it with the default model renderer.

Blanket - All-in-one mod that fixes a lot of render issues, server-client desync issues, etc.

CullLeaves - Optimizes leaves by a lot. Optional texture pack to make the leaves look better. 

            This mod's effects are a lot more apparent in Jungle biomes, where are lots of leaves. 

If you're using the quality modpack, I highly suggest using this texture pack along with it.

DynamicFPS - Minecraft takes massive amounts of resources when running in the background.

            This mod makes renderer lock to 1FPS or none at all (configurable) when Minecraft isn't in focus.

This is especially great if you AFK with Minecraft.

EnhancedBlockEntities - Optimizes block models.

*EntityCollisionFPSFix - Heavily optimizes fps areas where there's a lot of mobs by skipping collision checks, since they're always calculated server-side. It is redundant and unecessary to do the same with the client.

EntityCulling - Prevents rendering of all the entities and tile entities that you don't see.

            Doesn't impact visuals, but massive performance increase especially on places with lots of entities like mobs, hoppers & chests, etc. 

FastChest - Same effect of BetterBeds, but with chests. Up to +33% peformance increase when surrounded by an abundance of chests.

FastOpenLinksAndFolders - Removes the lag or freezing caused by opening links in-game.

FerriteCore - Dramatically decreases ram usage. Effects are more apparent depending on load.

*ForgetMeChunk - Prevents light map unloads on the client, eliminating fps drops caused by crossing certain chunk borders.

Item Model Fix - Fixes the transparent lines you see between the borders of blocks and items.

Krypton - Improves network performance for Minecraft. Useful for people who have lower internet connections or want lower latency. 

Ksyxis - Speeds up world loading by skipping vanilla's unnecessary 441 chunk loading-unloading on every login. 

LazyDFU - Leads to faster boot times while reducing the lag spike that minecraft causes on boot. Doesn't reduce performance in-game.

            Comparison here: https://www.youtube.com/watch?v=gXDqJ598kKA.

Lithium - All-around optimization mod.

*Mipmaplevel and Language Fix - Heavily decreases lag spikes caused when switching languages or changing mipmap levels in settings, by only reloading specific parts required for the changes instead of all game resources.

NotEnoughCrashes - Better handling of crashes.

Sodium - The most important mod in this list. Massively increases FPS.

SmoothBoot - Prevents Minecraft from using all cores thus freezing low-end pcs when booting up.

^ READ: If you're experiencing slower loading with the modpack compared to vanilla, change this mod's settings by going to your config folder -> smoothboot.json, and then setting "bootstrap" from 1, to how many threads your system has minus one or two.

Starlight - Second most important. This makes the lighting engine for minecraft up to 3500% faster than vanilla.

ToolTipFix - Fixes tooltips that extend farther than the screen.

TieFix - Fixes a lot of UI bugs, such as not being able to pause when in nether portals, etc. 

IRIS [Q] - A shaders mod that supports sodium. Currently is in its alpha stages for 1.18.

        Note that Optifine shaders will not always work for this. A list of usable shaders are available here.


Extras (Settings, Customization, Features, & Cosmetics)

Animatica - Adds support for animated textures.

AppleSkin - Shows how much hunger and health food will refill when holding it.

Beenfo - Shows information about a bee nest in advanced tooltips.
Bobby [Q] - Allows render distances higher than what the server's set to.
CIT Resewn - Adds CIT (Custom Item Textures) support back to the game.

Custom Entity Models - Adds support for texture packs with custom entity models.

Colormatic - Adds support for custom colors in texture packs.
Continuity - Adds connected textures to the game.

CraftPresence - Adds better & customizable Discord intergration to minecraft.

Don't Clear Chat History -  Makes it so that it won't clear the messages you've sent in up arrow on disconnect/relog.
Entity Texture Features - Adds support for custom,  emissive, and random textures for entities.
Fabric Capes - Adds and shows capes from Optifine, LabyMod, and MinecraftCapes.

FabriShot - Adds support for higher resolution screenshots.

LambDynamicLights - Adds dynamic lights back to the game.
LogicalZoom - Adds zoom via a hotkey.

ModMenu - Allows for easier configuration of mods.
No Telemetry - Prevents Microsoft from using your data and protects your privacy, as the system isn't compliant with GDPR standards.

Reese's Sodium Options - Accompaniment mod and soft-depency for SodiumExtras.

SodiumExtras - Adds more options for performance in video settings.


advanced

This section is as-is. You won't receive any official support due to the nature and complexity required to pull some of these off. This section is where more difficult modifications and obscure optimizations are put.


The performance modpack above is 98% of the way there,  but this is for those  wanting to go further.
There likely won't be anything partaining on to setting guides, since they're not really practical as they depend on what machine you're running Minecraft on.

 


Forcing GraalVM

Now that we have GraalVM installed, we have to force our Minecraft launch profile to use it instead of the default Java 17 installation.


3. Navigate to your installation of choice, in this case Fabric Loader 1.19, and then set your Java executable location to where graalvm's javaw.exe is.

"C:\Program Files\Java\graalvm-ce-java17-22.1.0\bin\javaw.exe" by default.


Don't set Xms = Xmx! While this may be beneficial for servers, it is not a welcome change for most users, and completely defeats the purpose of the mods we have that reduce memory usage.


If your computer has less than 4GB of ram, I recommend setting -Xmx2G to either -Xmx1G or -Xmx1500M. Likewise, if you want Minecraft to use more ram, (namely if you want to set your render distance to higher levels), you can allocate more ram as you wish; but do not allocate more than 10GB of ram. Giving Java too much ram will likely cause bad frame times and lag spikes.

Installing GraalVM

Java 17 is great, however we can go a step further and replace it with GraalVM, which is a high-performance JDK distribution.


Peformance wise, this benefits us only little in FPS, but our framerate a lot more stability. This will likely reduce or completely remove frame stuttering, as long as you do the steps partaining to the customization of startup flags.

Version 22.1.0

Note that the file says amd64, but it actually supports all x64 platforms, including intel.

Steps:

1. Download GraalVM from the link above.

2. Extract the 'graalvm-ce-java17-22.1.0' folder to 'C:\Program Files\Java'.


Optimizing Java Flags

Contrary to md_5's beliefs, Java must be optimized for the program it's being used for.


Optimized Flags make a world of difference. We'll be using Aikar's Flags, which the best known flags for Minecraft.


4. Navigate to your installation's advanced settings again, and this time, remove everything in 'jvm arguments' and replace them with the flags below.


-Xms128M -Xmx2G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true