Open Naohiro2g opened 3 years ago
@Naohiro2g
私の方でも以下の手順でrunClient
タスクの実行までやってみました!
gradlew genIntellijRuns
を実行runClient
タスクを実行結果はビルド失敗で以下のようなエラーメッセージでした。
AgentRenderer.java:3: エラー: シンボルを見つけられません
import net.minecraft.client.renderer.entity.EntityRendererManager;
^
シンボル: クラス EntityRendererManager
場所: パッケージ net.minecraft.client.renderer.entity
AgentRenderer.java:5: エラー: パッケージnet.minecraft.entityは存在しません
import net.minecraft.entity.Entity;
^
AgentRenderer.java:6: エラー: シンボルを見つけられません
import net.minecraft.util.ResourceLocation;
^
シンボル: クラス ResourceLocation
場所: パッケージ net.minecraft.util
Spec2など知らないので、MCP configをロードできない
上記のエラーとは違うような気はしますが、デバッグを開始することはできませんでした。 (どうやらいろんなクラスがなくなったりしているようなので対応する必要がありそうです)
@takecx Forge1.17自体が、まだバグっぽいみたいなので、こちらの対応もそれほど急がなくてもいい感じ?もあります。OptifineもForge経由では未対応です。どちらの作業が足りていないのか不明。
おそらく、1.17でMinecraft-Forgeの開発環境がある程度変化している予感。この辺のノウハウが海外でもいいので出回ると助かりそう。
私の環境はVS Code/Windowsで、実はrunClient(マイクラ起動できる?)はやったことなく、gradle buildだけです。ちなみにgradlew buildでなくても行けてる。。違いがわかっていません。
ラズパイにJava版マイクラを動かす方法で1.17 対応を調べてみると、やはり、Java8はサポートが無くなり Java16が必要になったとのこと。現在は、1.16.5まで手元のラズパイで動いています。
MCP config云々は、開発環境のバージョンが関係しているような気がします。spec2は、config.jsonのフォーマットバージョンで、takecxさんの環境でエラーが出ないのはforge MDK-java-gradleのバージョンが上がっているからではないでしょうか?
@Naohiro2g エラーが出ていたコードを少し触ってみましたが、やはり情報が無いと厳しいですね。。。 コンストラクタの引数が変わっていたり、継承していたクラスがパラメータを取るようになっていたりでダメでした 🤔
ForgeのDocumentも見てみましたが、まだ1.16の状態から変更無いみたいです(1.17用のブランチは作られているようですが1.16からの差分は無しでした)
情報が出てくるのを待ってから対応したほうが良さそうですね(少なくともDocumentページは更新してもらわないと何もわからないです)
日本語で良い記事/開発者を発見しました。MCのjava16へのupdateの件、次はjava17だろうとのこと。 https://minecraft.mixjuice.info/2021/06/01/minecraft1-17-java-16/ https://twitter.com/syokkendesuyo
ちなみに、ラズパイ4Bの最新OSではjava11がインストールされており、今まではjava8を手動でインストールして対応していました。
Forge 1.17.1がリリースされたので、対応したい。
ビルドを試みると、エラーメッセージ「Spec2など知らないので、MCP configをロードできない」でストップ。
まず、メジャーバージョンアップの際は、 build.gradleに記述されている、mappings channelとversionを更新しないといけない模様。 現在は、
mappings channel: 'snapshot', version: '20210309-1.16.5'
参考ページ https://minecraft.fandom.com/wiki/Tutorials/Creating_Forge_mods#3.C2.BD._A_note_about_mappings
さらに、spec2について、 C:\Users\USERNAME.gradle\caches\forge_gradle\maven_downloader\de\oceanlabs\mcp\mcp_config\1.17.1-20210706.113038\mcp_config-1.17.1-20210706.113038.zip を開いて、config.jsonを見ると、
となっており、jsonのフォーマットが変わっている、Java SE16を期待しているなどの変化が読み取れる。
そもそも、使っているgradleのバージョンが4.10.3なので、これを上げないとダメかな?? java16が必要なら、gradleも7が必要。