どこに投稿すればいいか分からなかったので、ここに投稿しました...

最近、プロジェクトのベータテスターを1人見つけてテストしてもらったんですが、昨日バグが見つかりました。彼はWindows 11でプレイしていたので、何が起きているのか全く見当がつきません。

自分は自分のビルドでプレイしているのですが、何も問題ありません。
何か解決策をご存知ですか?

理由は分かりません。ただし、類似したエラーに遭遇した経験から、プラグインの競合が原因だと推測します。通常であれば、すべてのプラグインを無効化し、一つずつ有効化して原因を特定します。ただし、ご自身でこのエラーが発生していない場合は、これが難しいかもしれません。

追記。Geminiに問題の特定を依頼したところ、Khas Ultra Lightning.Js というプラグインに関連しているようです。AIからの情報なので正確かどうかは分かりませんが、私にはコードの知識が全くありません。しかし、参考になれば幸いです。

​核心的な問題

TypeError: Cannot read property ‘blendModes’ of undefined

​平易な英語で説明すると、ゲームのコードが視覚的なブレンドオプション(乗算、スクリーン、オーバーレイ効果など)のリストを参照しようとしていますが、そのオプションを保持すべきオブジェクトが存在しません(undefined)。

​発生理由

​スタックトレースを下に追っていくと、誰が問題を引き起こしているかが明確に分かります。

  • KhasUltraLighting.js: これはRPG Maker MVで動的なライティング、影、松明の効果を処理するために使用される人気のあるカスタムスクリプトです。
  • rpg_core.js / PIXIフレームワーク: RPG Maker MVは、PixiJSというHTML5グラフィックスエンジンに依存しています。

ライティングプラグイン(KhasUltraLighting)は、ゲームの起動シーケンス(_createRenderer)中にPIXIのレンダリングプロパティを読み込もうとします。undefinedが見つかるということは、ゲームで使用されているPixiJSのバージョンが、この特定のライティングスクリプトのバージョンと互換性がないことを意味します。

​一般的な原因と解決策

ゲームをプレイしている場合:

  • ゲームファイルの古いバージョン: 開発者がコアゲームファイルを更新したが、ライティングプラグイン(またはその逆)を更新し忘れた可能性があります。開発者のパッチを待つ必要があるでしょう。
  • インストールの破損: 場合によっては、コアファイルの欠落によりエンジンが正常に初期化されないことがあります。ゲームファイルを再ダウンロードするか、検証することで修正できることがあります。

ゲームを開発している場合:

  • PIXI.jsバージョンの不整合: 最近、ゲームのエンジンバージョンを更新した場合(例:RPG Maker MVを古いバージョンから1.6以降に更新)、PixiJSのバージョンも変更されています。Khasの古いライティングスクリプトは、PIXIがキャンバスレンダラーとブレンドモードの処理方法を再構築したため、新しいMVエンジンバージョンで壊れやすいことで知られています。Khasスクリプト用のコミュニティ互換パッチを探すか、プロジェクトのコアスクリプトをダウングレードする必要があるかもしれません。
  • プラグインの順序: KhasCore.jsがプラグインマネージャーでKhasUltraLighting.jsのに配置されていることを確認し、YanflyのCore Engine(YEP_CoreEngine.js)との相対的な配置も確認してください。YEP_CoreEngine.jsもここで実行されています。
「いいね!」 1

変なことに、最近自分のビルドしたゲームを遊んでいて、game.exe の「互換性設定」をいじっていたら、WinXP/Vista ではゲームが動かないことがわかった。他のバージョンなら問題なく動作する。私には本当に不思議だった。


(またまた、英語が下手でごめんね。)

説明欄に、そのプラットフォームではゲームが動作しないことを明記したらいかがでしょうか。なぜ一部のWindowsバージョンでのみプラグインが競合するのか、私には見当もつきません。

「いいね!」 1

必要な情報を揃えて修正できるまで、ゲームはW11では動作しません。少なくとも互換性はありません。