Hotfix notice: a hotfix has been released to fix some rough edges. Please make sure to use version 3.8.1.303 of both MonoGame and the Visual Studio extension.
It’s been the long haul, thank you for your patience. Thanks to all the contributors and community members who made this release possible! Even though this release bears a minor version number, it boasts 143 changes and fixes from 43 contributors.
For existing MG users please read the what’s new section in the documentation then our migration guide to help ease the transition to 3.8.1.
The most notable change for existing users is that MonoGame will only support .NET 6 and Visual Studio 2022 moving forward. Prior versions are now considered deprecated. JetBrains Rider and Visual Studio Code are supported with this release, but will come with a limited debugging experience (especially when working with Android and iOS).
Also, the MGCB Editor is no more designed as a .NET global tool (and doesn’t need to be registered). It is now a project tool defined project templates (please make sure that you have a .config/dotnet-tools.json properly configured) which will be installed automatically. You can access it either via the CLI (dotnet mgcb-editor from within the project/solution folder) or by double-clicking a .mgcb file when the Visual Studio extension is installed (the mac extension need to be installed from downloading the mpack here).
As always the more detailed changes can be found in the change log.
I installed the VS extension, but I do not see any Monogame templates when I go to create a new project.
I am running Visual Studio 2022 version 17.2.6 on Windows 11 version 21H2.
The extension is listed as installed in the extension manager. I have tried restarting VS multiple times, restarting my computer and uninstalling and reinstalling the extension.
Thanks. The Monogame templates appeared after reparing my VS installation.
The Windows DX template has errors that have to be resolved before it will build:
Severity Code Description Project File Line Suppression State
Warning NETSDK1137 It is no longer necessary to use the Microsoft.NET.Sdk.WindowsDesktop SDK. Consider changing the Sdk attribute of the root Project element to 'Microsoft.NET.Sdk'. mg381 test2 C:\Program Files\dotnet\sdk\6.0.302\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.DefaultItems.targets 147
Error CS0104 'ButtonState' is an ambiguous reference between 'System.Windows.Forms.ButtonState' and 'Microsoft.Xna.Framework.Input.ButtonState' mg381 test2 D:\Code\mg381 test2\Game1.cs 32 N/A
Error CS0104 'Keys' is an ambiguous reference between 'System.Windows.Forms.Keys' and 'Microsoft.Xna.Framework.Input.Keys' mg381 test2 D:\Code\mg381 test2\Game1.cs 32 N/A
Error CS0104 'Color' is an ambiguous reference between 'System.Drawing.Color' and 'Microsoft.Xna.Framework.Color' mg381 test2 D:\Code\mg381 test2\Game1.cs 42 N/A
Just a few things to mention as a JetBrains Rider user transitioning from a 3.8.0 project.
This change made it so my project wouldn’t build, as it went from directly referencing the mgcb dll to the dotnet tool, which I didn’t have installed.
My workaround was to install it via cli:
dotnet tool install -g dotnet-mgcb
Which installed it to my ~/.dotnet/tools directory as mgcb.exe. Unfortunately, this is also not invoked correctly by the build script, because it is intended to be invoked directly, not prefaced by dotnet. See here for why.
To finally fix it I simply renamed the executable dotnet-mgcb.exe so it would be properly run. Not sure why I had to go through these steps, but hopefully this will be a help to any others running into this problem.
Does anyone have a different recommendation for the template. Only the attached one loads for me and I tried repairing installing directly, and from Visual Studio.
We noticed a few hiccups in the release that we’re presently addressing, we’re hoping to release a hotfix soon.
For the time being, if you’re running into issues with either MGCB, the MGCB Editor, or running the templates, please verify those points:
If converting projects, please check this updated migration guide. It is not yet published to the documentation site but will be soon;
If you can’t build the templates, please disable implicit usings by changing this property to false<ImplicitUsings>false</ImplicitUsings>. MonoGame will be updated to remove this feature;
If double-clicking an .mgcb file from Visual Studio with the extension installed freezes Visual Studio, please launch the MGCB Editor through the CLI with dotnet mgcb-editor within your project directory instead. An update to the Visual Studio extension will be published to fix this freeze.
I opened my old 3.8.0 in VS 2022, updated the packages to 3.8.1, set the TargetFramework in the project file for “net6.0” (but had to then set that to “net6.0-windows”, and now I get this build error.