MonoUE - C# and F# for UE4

Good catch, sorry! I’ve pushed a fix.

One of the problems right now is that UBT doesn’t rebuild rules files and re-run them when they change. It’s very easy to think a change worked when in fact UBT/UHT just didn’t pick it up. I have a couple GitHub issues open to fix this.

@fireapache this should fix your issue too :slight_smile:

You can just add a new class to the csproj like any other C# project.

The original UE 4.4 version of this plugin had an “Add C# class” dialog in Unreal Editor, but it depended on an engine patch that I wasn’t easily able to port to 4.16, so it’s on the backburner for now.

I’ll write some docs after the Visual Studio plugins are done, since the workflows will be different :slight_smile:

Wow, that’s was quick! Heheheh

I was able to generate project files successfully, but I got an error when opening the CSharpTest_Managed.sln file.

I only have Visual Studio 2017 Community currently installed, is that the problem? Any work around for this one? :stuck_out_tongue:

I’m very excited to start playing around with C# on UE4! :smiley:


Unsupported
This version of Visual Studio is unable to open the following projects. The project types may not be installed or this version of Visual Studio may not support them. 
For more information on enabling these project types or otherwise migrating your assets, please see the details in the "Migration Report" displayed after clicking OK.
	 - CSharpTestMono, "E:\UnrealProjects\CSharpTest\Source\CSharpTestMono\CSharpTestMono.csproj"


No changes required
These projects can be opened in Visual Studio 2015, Visual Studio 2013, Visual Studio 2012, and Visual Studio 2010 SP1 without changing them.
	 - CSharpTest_Managed, "E:\UnrealProjects\CSharpTest\CSharpTest_Managed.sln"




@fireapache that’s because I didn’t write a VS extension yet to handle opening this new project type. It’s #1 on the issue list though :slight_smile:

For a workaround see MonoUE - C# and F# for UE4 - Engine Source & GitHub - Unreal Engine Forums

Nice, it worked!

All references from MonoUE binaries were broken, I had to remove and add all them back in.

Compilations are super fast! :slight_smile:

No Hot-Reload though :frowning:

Thank you @mhutch for the support, appreciated!

Looking forward to test next versions.

By the way, how many people are working on the plugin at the moment?

Is there any estimation on when it will be released?

Any public Trello board?

Thank you again!

@fireapache I’m the only person actively working on it, and it’s a side project so I do most of the work in my free time. I don’t have a solid estimate for when it’ll be ready to be called stable. I’m tracking features and bugs in GitHub issues.

[COLOR=#333333][COLOR=#333333][COLOR=#333333]@[/COLOR][/COLOR][/COLOR]mhutch

Thanks you for replying. I am just curious on what is currently supported in the plugin.

Hello @mhutch … I re downloaded with the MonoUEDirectory fix and got a lot further in the build on my Mac… Now it seems like get a bunch of namespace errors when building the C# API

That has gotta be something we fix in the ‘C# project generation scripts’

Should be just some kinda of assembly reference somewhere … Right ???

Do you have any idea why I would get the following error and maybe what .cs file to go look at to fix…

These are the type of errors I get now:

Showing Recent Issues
IntMargin.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

Paper2DModule.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperCharacter.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperFlipbook.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperFlipbookActor.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperFlipbookComponent.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperGroupedSpriteActor.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperGroupedSpriteComponent.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperSprite.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperSpriteActor.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperSpriteAtlas.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

@MackeyK24 could you gist/pastebin the full build failure? These errors would most likely have been caused by an earlier error.

@mhutch

Who should we pester to get you to work on this full time?

I’m pretty sure having good C# support in UE4 will pay off for Microsoft in the long run. Making games is a gateway into programming and the more people knowing C# the bigger potential market for other .NET products.

Hi @mhutch… Thanks for responding… I re-build the project… and this is what I get… the whole build is a bunch of the same namespace errors but the top does not show anything wrong that I can see… UNLESS the 2.0.0.0 to 4.0.0.0 conflicts are the problem

Maybe does not like the MONO setup from my Mac… Use Visual Studio For Mac (Used to use Xamarin Studio… Same thing really) that should have setup the latest mono properly on machine.

Anyways… here is the top part of the build

Showing Recent Issues
Setting up Mono

Building UE4Editor…

2017-08-03 11:54:47.407 defaults[12867:652761]

The domain/default pair of (com.apple.dt.Xcode, IDEBuildOperationMaxNumberOfConcurrentCompileTasks) does not exist

Running command : Engine/Binaries/DotNET/UnrealBuildTool.exe UE4Editor Mac Development

Performing 1 actions (8 in parallel)

[1/1] mac-msbuild.sh UE4_Bindings.sln

MonoUE.Tasks -> /Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Binaries/DotNET/UE4_Build.dll

Consider app.config remapping of assembly “mscorlib, Culture=neutral, PublicKeyToken=b77a5c561934e089” from Version “2.0.0.0” ] to Version “4.0.0.0” [/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/4.6-api/mscorlib.dll] to solve conflict and get rid of warning.

Consider app.config remapping of assembly “System, Culture=neutral, PublicKeyToken=b77a5c561934e089” from Version “2.0.0.0” [/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll] to Version “4.0.0.0” [/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/4.6-api/System.dll] to solve conflict and get rid of warning.

/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/msbuild/15.0/bin/Microsoft.Common.CurrentVersion.targets(1980,5): warning MSB3276: Found conflicts between different versions of the same dependent assembly. Please set the “AutoGenerateBindingRedirects” property to true in the project file. For more information, see Enable or disable autogenerated binding redirects | Microsoft Docs. [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Source/Programs/MonoAssemblyProcess/MonoAssemblyProcess.csproj]

MonoAssemblyProcess -> /Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Binaries/DotNET/UE4_Build.exe

UnrealEngine.MainDomain -> /Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Binaries/Mac/MonoEditor/UE4_Build.dll

Consider app.config remapping of assembly “System, Culture=neutral, PublicKeyToken=b77a5c561934e089” from Version “2.0.0.0” [/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/gac/System/4.0.0.0__b77a5c561934e089/System.dll] to Version “4.0.0.0” [/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/4.5-api/System.dll] to solve conflict and get rid of warning.

Consider app.config remapping of assembly “mscorlib, Culture=neutral, PublicKeyToken=b77a5c561934e089” from Version “2.0.0.0” ] to Version “4.0.0.0” [/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/4.5-api/mscorlib.dll] to solve conflict and get rid of warning.

/Library/Frameworks/Mono.framework/Versions/5.0.1/lib/mono/msbuild/15.0/bin/Microsoft.Common.CurrentVersion.targets(1980,5): warning MSB3276: Found conflicts between different versions of the same dependent assembly. Please set the “AutoGenerateBindingRedirects” property to true in the project file. For more information, see Enable or disable autogenerated binding redirects | Microsoft Docs. [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Source/Programs/MonoGenerateProjects/MonoGenerateProjects.csproj]

MonoGenerateProjects -> /Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Binaries/DotNET/UE4_Build.exe

UnrealEngine.Runtime -> /Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Binaries/Mac/MonoEditor/UE4_Build.dll

UnrealEngine.BuiltinModules -> /Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Binaries/Mac/MonoEditor/UE4_Build.dll

IntMargin.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

Paper2DModule.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperCharacter.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperFlipbook.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperFlipbookActor.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperFlipbookComponent.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperGroupedSpriteActor.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperGroupedSpriteComponent.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperSprite.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperSpriteActor.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperSpriteAtlas.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperSpriteBlueprintLibrary.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperSpriteComponent.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTerrainActor.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTerrainComponent.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTerrainMaterial.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTerrainSplineComponent.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTileInfo.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTileLayer.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTileMap.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTileMapActor.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTileMapComponent.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

PaperTileSet.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

TileMapBlueprintLibrary.cs(3,20): error CS0234: The type or namespace name ‘Runtime’ does not exist in the namespace ‘UnrealEngine’ (are you missing an assembly reference?) [/Users/mackey/Projects/UnrealEngine/Engine/Plugins/MonoUE/Intermediate/Build/Mac/Mono/Paper2D/UnrealEngine.Paper2D.csproj]

@HavocX then they’d have to find someone to take over my day job :slight_smile:

@mhutch … This should be your day job… Your soooo good at it :slight_smile:

@MackeyK24 it looks like something is somehow overriding all the assembly names to “UE4_Build” :confused: Any idea where that string might come from?

Is that building inside Xcode? Try a commandline build, the Xcode environment seemed to do weird things to Mono when I tried.

[FONT=Courier New]./Engine/Build/BatchFiles/Mac/Build.sh UE4Editor Mac Development

Problem is I’m also good at my day job :wink:

Yo @mhutch … Holy ****… I think that worked…

You still wanna use XCODE to build the Shaders and build the main UE4 native code… But if /when it errors out with the DotNet stuff… manually run build.sh to pick up the rest OUTSIDE the Xcode environment … Loading my UE4Editor… First time launch still taking a while at 35%…

But ill be dammed if don’t look like it running…

THANK YOU @mhutch

BYW… I don’t know exactly what your day job is over at Microsoft… But they should REALLY consider making this day job… And give you a raise for taking ALL THIS on practically BY YOURSELF :slight_smile:

KUDOS :slight_smile:

Beautiful… Can make C# without Native or EVEN BETTER C++/C# projects so you can still THUNK things down to the backing C++ if you need to… B E A U T I F U L :slight_smile:

Hey @mhutch … Very Kool work… was able to get the Third person template up and running… Still can’t open csproj though… Says ‘Project does not support framework ‘MonoUE,Version=v1.0’’

using Visual Studio For Mac… I know you have not had a chance to write the Xamarin Studio /VS Mac extensions yet… But do you have a workaround for me as well… I relied to remove
<projectTypeGuids> and set configuration to “Development Editor (Mac)”. also tried the regular “Debug” configuration …

BUT… OVERALL… THIS IS GREAT WORK.

I took me like 4 days just to get the edit up and running… I am a very happy camper what we got (what you have done) so far… The future is looking bright for UE using C#

BTW… This is my csproj for Mac:

<?xml version=“1.0” encoding=“utf-8”?>
<Project ToolsVersion=“4.0” DefaultTargets=“Build” xmlns=“http://schemas.microsoft.com/developer/msbuild/2003”>
<Import Project="…\MonoUE.generated.props" />
<PropertyGroup>
<Configuration Condition=" ‘$(Configuration)’ == ‘’ “>Development Editor (Mac)</Configuration>
<Platform Condition=” ‘$(Platform)’ == ‘’ “>AnyCPU</Platform>
<ProjectGuid>{A6C3DDDD-9649-B6FB-C6F7-37B3ED640920}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>MyProjectMono</RootNamespace>
<AssemblyName>MyProjectMono</AssemblyName>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=” ‘$(Configuration)|$(Platform)’ == ‘Debug|AnyCPU’ “>
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=” ‘$(Configuration)|$(Platform)’ == ‘Release|AnyCPU’ “>
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include=“System” />
<Reference Include=“System.Core” />
</ItemGroup>
<ItemGroup>
<Compile Include=“Properties\AssemblyInfo.cs” />
<Compile Include=“TestActor.cs” />
<Compile Include=“MyProjectGameMode.cs” />
<Compile Include=“MyProjectCharacter.cs” />
</ItemGroup>
<Import Project=”$(MonoUEMSBuildDir)MonoUE.CSharp.targets" />
</Project>

@MackeyK24 thanks! I’m glad you got it working.

My day job is a program manager for VS for Mac, Xamarin and Mono, which gives me bunch of relevant context and contacts for MonoUE :slight_smile:

I filed an issue to track the Xcode compilation problem at https://github.com/mono-ue/UnrealEngine/issues/36

My next priority is migrating the project format to use the new “Sdk-style” projects, which should make the default csproj files as simple as this:

[FONT=Lucida Console]<Project Sdk=“Mono.UE4.Sdk”>
</Project>

The new format will make it much easier to create a Visual Studio extension for Windows.

@mhutch … Is there anything I can do in the mean time to handle VS for Mac error when opening project

'Project does not support framework ‘MonoUE,Version=v1.0’