A question about Minecraft Java configs when using the Twitch App

  • Please make sure you are posting in the correct place. Server ads go here and modpack bugs go here

Ieldra

Popular Member
Apr 25, 2014
1,811
734
129
I've downloaded and started a new modpack and I found the memory allocation to be insufficient. I went to the profiles page, changed the Java parameters and saved the settings, and it worked - for that session. Leaving the game and coming back later, I find the parameters are reset to their default. How can I get my settings to stay permanently? I don't want to have to change them every time I start up this modpack?

There is an "install" directory where these settings appear to be stored, but apparently they only apply to the current session and are re-downloaded whenever you start a new session.
 

lenscas

Over-Achiever
Jul 31, 2013
2,031
1,807
248
I believe you need to set them through the twitch app instead of the minecraft launcher. Not sure where though as I don't use it
 

Drbretto

Popular Member
Mar 5, 2016
1,893
783
139
The memory allocation arguments are disabled by twitch in favor of a sliding bar. That *does* sound like you were in the right place possibly. But just in case, I'll explain exactly how I do it:

On the Twitch app, on the top right where your twitch name is displayed, hit the down arrow and go to settings. On the left of that window, scroll down to minecraft and you'll see options for which version of java to use, the launcher to use, etc, as well as the RAM slider and a box to enter your java arguments.

If that's what you did and it still didn't stick, sometimes changes don't stick if the client crashes by the end of your session. Try saving those settings, exiting the twitch app and see if they're still there.

Edit: If you're running 1.10.2 or up, the best garbage collection arguments I've ever used are:

Code:
-XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC
-XX:+UseParNewGC -XX:+UseNUMA -XX:+CMSParallelRemarkEnabled
-XX:MaxTenuringThreshold=15 -XX:MaxGCPauseMillis=30
-XX:GCPauseIntervalMillis=150 -XX:+UseAdaptiveGCBoundary
-XX:-UseGCOverheadLimit -XX:+UseBiasedLocking -XX:SurvivorRatio=8
-XX:TargetSurvivorRatio=90 -XX:MaxTenuringThreshold=15
-Dfml.ignorePatchDiscrepancies=true
-Dfml.ignoreInvalidMinecraftCertificates=true
-XX:+UseFastAccessorMethods -XX:+UseCompressedOops
-XX:+OptimizeStringConcat -XX:+AggressiveOpts
-XX:ReservedCodeCacheSize=2048m -XX:+UseCodeCacheFlushing
-XX:SoftRefLRUPolicyMSPerMB=10000 -XX:ParallelGCThreads=10
Which covers everything but the memory allocation, which is exclusive to the slider.
 
Last edited:

Drbretto

Popular Member
Mar 5, 2016
1,893
783
139
And much should be allocated with -Xmx?
No, it ignores that argument entirely, sorry. I've been meaning to take it out. But it pops up a warning saying it ignores that line every time I run it. The memory allocation is overwritten by the slider.

Edit: That argument and only that argument, BTW. It's harmless so I never bothered removing it.
 

Ieldra

Popular Member
Apr 25, 2014
1,811
734
129
No, it ignores that argument entirely, sorry. I've been meaning to take it out. But it pops up a warning saying it ignores that line every time I run it. The memory allocation is overwritten by the slider.

Edit: That argument and only that argument, BTW. It's harmless so I never bothered removing it.
Actually, that parameter is not ignored. Instead, it is automatically set in your MC launcher profile according to your slider setting in the Twitch App. Or is there yet another place where you can set it?
 

Drbretto

Popular Member
Mar 5, 2016
1,893
783
139
Actually, that parameter is not ignored. Instead, it is automatically set in your MC launcher profile according to your slider setting in the Twitch App. Or is there yet another place where you can set it?
It's ignored *because* of the slider in the twitch app. It notes it in the launcher every time. That parameter wouldn't' be ignored if I was using, say MMC, but the twitch slider overwrites memory allocation arguments in place of what the slider sets.