Description

there is a crash that occurs with gameplay tag map variable compiles with default value changed. This issue occurs no matter what the secondary value of the map is. I was unable to test this issue in 4.15 because the map with Gameplay Tag variable did not allow me to add a tag when I added an element, only the value.

Tested on
4.16.1 - CL 3466753
4.17 - CL 3505911

Steps to Reproduce
  1. Create a new project (no template or starter content needed)
  2. Click the project settings option and click the Gameplay tags option
  3. Check the box that says "Import Tags from Config"
  4. Click the option "Add New Gameplay Tag"
  5. In the name option type "Gameplay.Tag.Test" then click the "Add New Tag" button
  6. Close the project settings tab
  7. Create a new actor class blueprint > Name it "Actor_BP" > Open Actor_BP
  8. Add a new variable of type Gameplay Tag > Name it "TestMap"
  9. Change the variable type to Map
  10. Compile the blueprint
  11. Add a map element to TestMap
  12. Set the Key to Gameplay > Tag > Test
  13. Set the value to 50
  14. Compile the blueprint
    Result: The editor crashes
    Expected Result: The editor should compile the blueprint
Callstack
Assertion failed: CanWriteValueWithoutIdentifier() [File:D:\Build\++UE4+Release-4.16+Compile\Sync\Engine\Source\Runtime\Json\Public\Serialization/JsonWriter.h] [Line: 151] 



UE4Editor_Core!FDebug::AssertFailed() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\private\misc\assertionmacros.cpp:349]
UE4Editor_Kismet!TJsonWriter<wchar_t,TCondensedJsonPrintPolicy<wchar_t> >::WriteValue() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\json\public\serialization\jsonwriter.h:152]
UE4Editor_Kismet!FJsonSerializer::Serialize<wchar_t,TCondensedJsonPrintPolicy<wchar_t> >() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\json\public\serialization\jsonserializer.h:303]
UE4Editor_Kismet!FJsonSerializer::Serialize<wchar_t,TCondensedJsonPrintPolicy<wchar_t> >() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\json\public\serialization\jsonserializer.h:103]
UE4Editor_Kismet!BlueprintSearchMetaDataHelpers::SaveVariableDescriptionToJson() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\kismet\private\findinblueprintmanager.cpp:680]
UE4Editor_Kismet!FFindInBlueprintSearchManager::GatherBlueprintSearchMetadata() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\kismet\private\findinblueprintmanager.cpp:1626]
UE4Editor_Kismet!FFindInBlueprintSearchManager::AddOrUpdateBlueprintSearchMetadata() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\kismet\private\findinblueprintmanager.cpp:1750]
UE4Editor_UnrealEd!FKismetEditorUtilities::CompileBlueprint() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\unrealed\private\kismet2\kismet2.cpp:783]
UE4Editor_Kismet!FBlueprintEditor::Compile() [d:\build\++ue4+release-4.16+compile\sync\engine\source\editor\kismet\private\blueprinteditor.cpp:3292]
UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,TTypeWrapper<void> __cdecl(void)>::Execute() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:327]
UE4Editor_Kismet!TBaseSPMethodDelegateInstance<0,FBlueprintEditor,0,void __cdecl(void)>::ExecuteIfSafe() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:434]
UE4Editor_Slate!FUICommandList::ExecuteAction() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\slate\private\framework\commands\uicommandlist.cpp:97]
UE4Editor_Slate!SToolBarButtonBlock::OnClicked() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\slate\private\framework\multibox\stoolbarbuttonblock.cpp:305]
UE4Editor_Slate!TMemberFunctionCaller<SToolBarButtonBlock,FReply (__cdecl SToolBarButtonBlock::*)(void) __ptr64>::operator()<>() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\public\delegates\delegateinstanceinterface.h:165]
UE4Editor_Slate!UE4Tuple_Private::TTupleImpl<TIntegerSequence<unsigned int> >::ApplyAfter<TMemberFunctionCaller<SToolBarButtonBlock,FReply (__cdecl SToolBarButtonBlock::*)(void) __ptr64> >() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\public\templates\tuple.h:497]
UE4Editor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,0,FReply __cdecl(void)>::Execute() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\public\delegates\delegateinstancesimpl.h:327]
UE4Editor_Slate!TBaseDelegate<FReply>::Execute() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\public\delegates\delegatesignatureimpl.inl:537]
UE4Editor_Slate!SButton::OnMouseButtonUp() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\slate\private\widgets\input\sbutton.cpp:278]
UE4Editor_Slate!<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1>::operator()() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5049]
UE4Editor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,<lambda_8d0e9a1da76abd0a756a3a9d775f5ed1> >() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:239]
UE4Editor_Slate!FSlateApplication::RoutePointerUpEvent() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5038]
UE4Editor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5515]
UE4Editor_Slate!FSlateApplication::OnMouseUp() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\slate\private\framework\application\slateapplication.cpp:5495]
UE4Editor_Core!FWindowsApplication::ProcessDeferredMessage() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\private\windows\windowsapplication.cpp:1704]
UE4Editor_Core!FWindowsApplication::DeferMessage() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\private\windows\windowsapplication.cpp:2127]
UE4Editor_Core!FWindowsApplication::ProcessMessage() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\private\windows\windowsapplication.cpp:867]
UE4Editor_Core!FWindowsApplication::AppWndProc() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\private\windows\windowsapplication.cpp:714]
user32
user32
UE4Editor_Core!FWindowsPlatformMisc::PumpMessages() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\core\private\windows\windowsplatformmisc.cpp:1009]
UE4Editor!FEngineLoop::Tick() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\launchengineloop.cpp:3058]
UE4Editor!GuardedMain() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\launch.cpp:166]
UE4Editor!GuardedMainWrapper() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:134]
UE4Editor!WinMain() [d:\build\++ue4+release-4.16+compile\sync\engine\source\runtime\launch\private\windows\launchwindows.cpp:210]
UE4Editor!__scrt_common_main_seh() [f:\dd\vctools\crt\vcstartup\src\startup\exe_common.inl:253]
kernel32
ntdll

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-46616 in the post.

3
Login to Vote

Fixed
ComponentUE - Gameplay - Blueprint
Affects Versions4.16.14.17
Target Fix4.17
Fix Commit3521195
Main Commit3555226
Release Commit3521195
CreatedJun 28, 2017
ResolvedJul 5, 2017
UpdatedApr 27, 2018