Java11を用いて最新のLWJGLで純正RTMを動かす(1.7.10)

経緯

・Java15でNashornScriptEngineが削除されたので、新しいJavaでRTMを動かすのが厳しい。

・LWJGL3ifyはJava17以降対応だが、一部の引数を削除すればJava8も使える。

・しかし、LWJGL3ifyが、各modが使うNashornを単独で動作する新しいものに置き換える。これがJava8非対応だったため、動かない。

・先述の新しいNashornはJava11以降に対応するので、Java11に変えたところ、上手く行った。

概要

ーメリットー

・純正RTM、KaizPatchの両方が使える。

・Java25よりもスクリプトの互換性が高くなる。

ーデメリットー

・引数調整のためにPrismLauncherが必須。

・ランチャーの移行も含め、手間がかかる(一度移行したら簡単)。

・Beddium、Angelicaが使えず、実質OptiFine環境専用(正規の方法ではないので)。

PrismLauncherの導入

prismlauncher.org

・この画面まで行ければOK。

・1.7.10の起動構成を作成する。

LWJGL3ifyの導入

・Lwjgl3ify(3.0.0-beta1以降)とUnimixins(0.1.23以降)を導入。

・lwjgl3ify-x.x.x-multimc.zipをダウンロードする。

github.com

・構成を選択し、「フォルダー」を開く。

・ダウンロードしたZipの中身をコピー&ペースト(上書き)する。

・「patches」フォルダにあるme.eigenraven.lwjgl3ify.forgepatches.jsonを開く。

・"--enable-native-access", "ALL-UNNAMED", を削除。

・ランチャーに戻り、構成を選択して「編集」を開き、「設定」タブに行く。

・「Javaの指定」に☑️して、「Javaの互換性チェックをスキップ」に☑️。

・「Javaのダウンロード」を開いて、「Adoptium」を選択して「Recommended」の☑️を外し、Java11の最新版をダウンロードする。

・ダウンロードされたら、「自動検出」を開いて先程ダウンロードしたJava11を指定する。

起動する前に

ー引数ー

・下にある「Javaの引数」に☑️すると引数を設定出来る。Java11はデフォルトでG1GCを使うので空白でも問題ない。

※Java8では-XX:+UseG1GCを追加しないとG1GCにならず、起動時にプチフリーズが頻発してしまうので注意(公式ランチャーではデフォルトの引数でG1GCを使うようになっている)。

ーLiteloaderー

VoxelMapやMacro/KeyBindのためにLiteloaderを使う場合は追加でLiteloaderLoaderを入れる。

LiteloaderLoader - Minecraft Mod