Before downloading all the source and compiling, I would like to know if it works.
Someone has tried?
Bump, same question here.
Hi.
No, it doesnât work.
A lot of things and engine internal APIs, it uses, have changed in UE5.
However, since I want to use it for our own UE5 based project, myself, I am currently trying to fix everything and make it work with UE5 - making decent progress so far
Hi, Iâd also like to use UGC in UE5 any update on getting this to work?
Hi!
Actually, yes - I pretty much got everything that worked on UE4 working on UE5, by now.
I just need to find some time to clean up some mess I created during porting and testing out stuff, lol, and then I push it all to GitHub.
I also have plans to keep working on this, like changing the UAT commands for packaging the mods, so a source build of the engine isnât needed anymore and a few more ideas I wanna try to implement.
Though, one thing I spent a lot of time researching and havenât found any solution yet, is how to get C++ code built and packaged into mods, so far it only works for BP only mods (itâs like this on the original UE4 SimpleUGC, as well, but thatâs really something Iâd love to be able to addâŚ).
Canât wait to see how you did it and use your github repo for ugc in ue5
You rock! Let me know if you have a Patreon or something similar where I can show gratitude.
Aw, youâre too nice to me
But actually⌠I donât have any of that
BUT, what I do have now, is a GitHub link:
https://github.com/TheHellcat/UE5-SimpleUGC/tree/main
(the usual applies: âyou need engine source access to be able to access this repoâ)
^ thatâs my current version of the SimpleUGC plugin and sample project for UE5 - please consider this still to be highly âwork in progressâ, but I just tried it out and it seems I havenât broken anything in the prep for the push.
Very much appreciated. I have been holding back from migrating my project from 4.26 to 5.0. Seems like I can finally give it a shot.
Cool
If something doesnât work, let me know and Iâll try to fix it.
Hi hellcat, When I followed your github instructions and started compiling Automation Tool, I got an error on my Visual stuido:
1>------ Build started: Project: SimpleUGC.Automation, Configuration: Development Any CPU ------
2>------ Build started: Project: Turnkey.Automation, Configuration: Development Any CPU ------
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(1718,5): error : Project 'F:\Work\JOB\UnrealEngine503\Engine\Source\Programs\AutomationTool\AutomationUtils\AutomationUtils.Automation.csproj' targets 'netcoreapp3.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.6.2'.
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(1718,5): error : Project 'F:\Work\JOB\UnrealEngine503\Engine\Source\Programs\AutomationTool\Scripts\AutomationScripts.Automation.csproj' targets 'netcoreapp3.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.6.2'.
1>C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\Microsoft.Common.CurrentVersion.targets(1718,5): error : Project 'F:\Work\JOB\UnrealEngine503\Engine\Source\Programs\UnrealBuildTool\UnrealBuildTool.csproj' targets 'netcoreapp3.1'. It cannot be referenced by a project that targets '.NETFramework,Version=v4.6.2'.
2>Turnkey.Automation -> F:\Work\JOB\UnrealEngine503\Engine\Binaries\DotNET\AutomationTool\AutomationScripts\Turnkey\Turnkey.Automation.dll
3>------ Build started: Project: AutomationTool, Configuration: Development Any CPU ------
3>CSC : error CS0006: Metadata file 'F:\Work\JOB\UnrealEngine503\Engine\Engine\Binaries\DotNET\AutomationScripts\SimpleUGC.Automation.dll' could not be found
3>Done building project "AutomationTool.csproj" -- FAILED.
Can you help me point out where Iâm going wrong? I have tried VS2022 and VS2019 on different computers and both encountered this error reported.
Getting the same error Seems like Target Framework changed for Automation Tool in UE5 from .NET Framework 4.6.2 to .NET Core 3.1 and you can not easily change that it seems
OMG I am not alone!
Hey guys
Yeah, I thought that was fixed, obv. it wasnât :-/
Anyways, a quick workaround to this is, to just use a ânormalâ build from the engine, and not building an own one with the UAT extension (or delete the UAT extension if you need to build your own engine for other reasons).
The only thing this will affect is the âPackage Modâ option in the editor - itâll just not do anything, then, but everything else will work, incl. testing mods from the editor, so you should be able to continue your work, at least.
My plan is to replace the UAT call âPackege Modâ makes with ones that work with vanilla/unmodified UAT and therefore removing the need for a sourcebuild of the engine alltogether, which will get rid of this problem.
Just need to find some time to sneak away from work to implement it, Iâm fairly confident I found a set of nicely working UAT calls.
Sorry for the troubles.
UPDATE:
I just pushed an update into the âmainâ branch, this now gets completely rid of the UAT scripts, i.e. no engine source build required, anymore - I replaced the âPackageUGCâ call to the custom UAT script with a âBuildCookRunâ one that UAT offers out-of-the-box.
This also gets rid of the above mentioned compiler error - as you donât have anything to compile, anymore
Only downside is, now you donât get a ZIP, but a folder containing the mod that you can copy/move into a standalone build of the original project and/or just ZIP for uploading or w/e.
Huge thaks! gona try now!
Sweet, thatâs awesome
Wowie this is incredible and you are a wizard, thank-you so much for sharing this with the community! Mind blown what a fantastic job
Anyone got this working? @Hellcat Trying to compile the project for 5.1 and get this error:
1>B:\GITHUB\UE5-SimpleUGC\Plugins\SimpleUGC\Source\SimpleUGCEditor\Private\SimpleUGCPackager.cpp(173): error C2664: 'void IUATHelperModule::CreateUatTask(const FString &,const FText &,const FText &,const FText &,const FSlateBrush *,const TArray<FAnalyticsEventAttribute,FDefaultAllocator> *,IUATHelperModule::UatTaskResultCallack,const FString &)': cannot convert argument 6 from 'FSimpleUGCPackager::PackagePlugin::<lambda_04bd8b0a342317cf58f95f8d8fe257d6>' to 'const TArray<FAnalyticsEventAttribute,FDefaultAllocator> *'
1>B:\GITHUB\UE5-SimpleUGC\Plugins\SimpleUGC\Source\SimpleUGCEditor\Private\SimpleUGCPackager.cpp(182): note: No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
Caused by this code:
IUATHelperModule::Get().CreateUatTask(CommandLine, PlatformName, PackagingText,
PackagingText, FSimpleUGCEditorStyle::Get().GetBrush(TEXT("SimpleUGCEditor.PackageUGCAction")),
[ReleaseVersion, PlatformName, FriendlyName, OutputDirectory, StagePath, StagePathPackedMod]
(FString TaskResult, double TimeSec)
{
// move the actual mod files into the requested output dir and cleanup the staging area
IPlatformFile& PlatformFile = FPlatformFileManager::Get().GetPlatformFile();
PlatformFile.CopyDirectoryTree(*OutputDirectory, *StagePathPackedMod, true);
PlatformFile.DeleteDirectoryRecursively(*StagePath);
});
Okay, I just downloaded UE5.03 and tried to compile your plugin and it worked. So it seems that something changed in UE5.1 which breaks your code