MonoGame 3.8.1 で「共有プロジェクトにある mgcb ファイルをダブルクリックしても MGCB Editor を開けない問題」「MGCB Editor でビルドしても無反応な問題」の対応方法

共有プロジェクトにある mgcb ファイルをダブルクリックしても MGCB Editor を開けない問題

まずこの現象については MonoGame 3.8.1 のテンプレートから「MonGame Shared Library Project」を作成すれば確認できます。今回の共有プロジェクトは mgcb がビルドできるので便利です。

作成後「Content/Content.mgcb」をダブルクリックしても MGCB Editor は起動しません。

image

ちなみに他のプロジェクトはダブルクリックすれば開けます。

image

image

MGCB Editor でビルドしても無反応な問題

まず他のゲームプロジェクトで開いた MGCB のプロジェクトはビルドをすれば通ります。

image

しかし、この MGCB Editor から他の MGCB プロジェクト、例えば先ほどの共有プロジェクトで作成された mgcb ファイルや、他のフォルダにコピーした mgcb ファイルを開いてビルドしても全く無反応になります。

image

image

対処方法

他のプロジェクトとの差異を調べてみたのですがどうやら mgcb ファイルのある場所から見て「..\.config\dotnet-tools.json」ファイルがあるかどうかでダブルクリックで開けたりビルドができるようになるみたいです。

image

なので共有プロジェクトの場合は、一度他の MonoGame のプロジェクトを作成してから「.config」フォルダを共有プロジェクトにコピーすればダブルクリックで開けるようになり、ビルドもできるようになるみたいです。

image

image

ちなみにプロジェクトとは全く関係ない場所に mgcb ファイルを置いている場合は下の図のように1階層上のフォルダに .config フォルダを置いておけばビルドはできるみたいです。ちょっといまいちですが。まあ単独でビルドすることはあまりないとは思います。

image

image

ちなみになぜこんなことになっているかというと、OS に MGCB Editor をインストールさせてしまうと、バージョンの異なるプロジェクトが複数あった場合に問題になることが多いため、プロジェクトにくっつけてしまいバージョンは全てプロジェクト依存にさせれば問題はなくなるだろう、ということらしいです。以下の記事にそれっぽいことが書いてありました。

【Hollow Knight】ボス:戦いの血族 戦 攻略参考動画【ノーダメージ】

ボス「戦いの血族」をノーダメージで倒してみました。
こういう適度な強さで反射ゲーするのは楽しい。

【MonoGame】 3.8.0 の MGCB Editor を削除する方法

2022/07 に MonoGame 3.8.1 がリリースされ MonoGame のテンプレートや MGCB Editor は Visual Studio 2022 の拡張機能に全て統合されました。

ただ、3.8.0 で使用していた MGCB Editor は「dotnet tool」でインストールしているため、3.8.1 をインストールしたあとも残り続けます。これを削除するにはコマンドプロンプトなどで以下の手順を実行します。

インストールされている .NET Tool を確認します。

dotnet tool list --global

その中に以下のものがあるか確認します。

  • dotnet-mgcb             3.8.0.1641      mgcb
  • dotnet-mgcb-editor      3.8.0.1641      mgcb-editor

あった場合は以下のコマンドをそれぞれ実行して削除します。

dotnet tool uninstall --global dotnet-mgcb

dotnet tool uninstall --global dotnet-mgcb-editor

もう一度リストを表示してなくなっていることを確認します。

image

ちなみにスタートメニューには MGCB Editor のショートカットは残ってしまうのでクリックして削除してください。

【A Hat in Time】 Minimum Shippable 実績解除プレイ動画

Steam 版「A Hat in Time」から「Minimum Shippable」の実績解除方法を動画にしました。
単独ステージでの実績では最難関だと思います。

実績解除関連の動画はこれで最後になります。実績解除関連のページは引き続き以下のページで公開しています。

β版開発室に「ウディタ用オートタイルを汎用マップチップに展開 (Blazor 版)」を追加しました

前回β版開発室に「ウディタ用オートタイルを汎用マップチップに展開」を追加しましたが、今回は同様の機能で Blazor 版 を公開しました。機能については変わりはないので簡単な説明は前回のブログを参照してください。

image

Blazor とは WebAssembly を作るフレームワークのことで、WebAssembly は基本的に Web ブラウザー内でプログラムが動作します。

前回公開したものは画像データをサーバーに送信してサーバーで展開したマップチップを画面に表示する、という動作をしていましたが、Blazor 版は全てクライアントで処理されるため、画像データをサーバーに送信せずにマップチップを展開して表示できます。

また WebAssembly には「PWA」という機能があり、Web ブラウザからインストールしてスタートメニューに登録できる仕組みもあります。

image

image

ちなみに現在β版という形で公開していますが、よっぽどのことがない限りは消さずにしばらく置いていると思います。正式版になるかどうかは今後の利用状況なども見て考えます。

【A Hat in Time】 Secret Intruder 実績解除プレイ動画

Steam 版「A Hat in Time」から「Secret Intruder」の実績解除方法を動画にしました。
見つかり判定がシビアなので何回か挑戦することになる場合もあります。