Clicking the GameMode Override dropdown in the World Settings tab crashes the editor. Also occurs with any of the sub-options for the GameMode. Does not appear to occur if there is not already an existing GameMode placed (for example, in a new Blank Project). Does not occur if a change is made in the GameMode Blueprint itself, and thereafter the crash does not occur when making changes in the World Settings either.
No Crash Report is generated on Windows, and the log simply cuts off. Log attached.
Crashing on Mac generated this Crash Report: [Link Removed]
Reproduced in 4.8.1 and Main (//depot/UE4/Promotable-CL-2598974). This is a regression: did not occur in 4.7.6 or 4.8.0.
UPDATE: This no longer occurs in Main (//depot/UE4/Promotable-CL-2601051). Please identify the fix CL for hotfix inclusion.
Workaround: Select the gameMode in the Content Browser, and next to the "GameMode Override", use the arrow button to use that asset.
1. Open a new Third Person template project
2. Open the World Settings tab
3. Click the GameMode Override dropdown
Result:
Crash, no Crash Reporter
UE4Editor-Core.dylib!FTextFormatHelper::Format(FText const&, int, TBaseDelegate<FFormatArgumentValue const*, FString const&, int>, TSharedPtr<FTextHistory,()
UE4Editor-Core.dylib!FText::FormatInternal()
UE4Editor-Core.dylib!FText::Format()
UE4Editor-CoreUObject.dylib!LoadPackageInternal()
UE4Editor-CoreUObject.dylib!ResolveName()
UE4Editor-CoreUObject.dylib!StaticLoadObjectInternal()
UE4Editor-CoreUObject.dylib!StaticLoadObject()
UE4Editor-UnrealEd.dylib!FEditorClassUtils::GetClassFromString()
UE4Editor-UnrealEd.dylib!FGameModeInfoCustomizer::GetCurrentGameModeClass()
UE4Editor-DetailCustomizations.dylib!TBaseSPMethodDelegateInstance<true, FGameModeInfoCustomizer, (ESPMode)0, UClass const* ()>::Execute()
UE4Editor-PropertyEditor.dylib!SPropertyEditorClass::GetDisplayValueAsString()
UE4Editor-PropertyEditor.dylib!TBaseSPMethodDelegateInstance<true, SPropertyEditorClass, (ESPMode)0, FText ()>::Execute()
UE4Editor-Slate.dylib!TAttribute<FText>::Get()
UE4Editor-Slate.dylib!FTextBlockLayout::ComputeDesiredSize()
UE4Editor-Slate.dylib!STextBlock::ComputeDesiredSize()
UE4Editor-SlateCore.dylib!SWidget::CacheDesiredSize()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-Slate.dylib!PrepassWindowAndChildren(TSharedRef<SWindow,()
UE4Editor-Slate.dylib!FSlateApplication::DrawPrepass(TSharedPtr<SWindow,()
UE4Editor-Slate.dylib!FSlateApplication::PrivateDrawWindows(TSharedPtr<SWindow,()
UE4Editor-Slate.dylib!FSlateApplication::DrawWindows()
UE4Editor-Slate.dylib!FSlateApplication::Tick()
UE4Editor-UnrealEd.dylib!TickSlate(TSharedPtr<SWindow,()
UE4Editor-UnrealEd.dylib!FFeedbackContextEditor::ProgressReported()
UE4Editor-Core.dylib!FFeedbackContext::UpdateUI()
UE4Editor-CoreUObject.dylib!LoadPackageInternal()
UE4Editor-CoreUObject.dylib!ResolveName()
UE4Editor-CoreUObject.dylib!StaticLoadObjectInternal()
UE4Editor-CoreUObject.dylib!StaticLoadObject()
UE4Editor-UnrealEd.dylib!FEditorClassUtils::GetClassFromString()
UE4Editor-UnrealEd.dylib!FGameModeInfoCustomizer::GetCurrentGameModeClass()
UE4Editor-DetailCustomizations.dylib!TBaseSPMethodDelegateInstance<true, FGameModeInfoCustomizer, (ESPMode)0, UClass const* ()>::Execute()
UE4Editor-PropertyEditor.dylib!SPropertyEditorClass::GetDisplayValueAsString()
UE4Editor-PropertyEditor.dylib!TBaseSPMethodDelegateInstance<true, SPropertyEditorClass, (ESPMode)0, FText ()>::Execute()
UE4Editor-Slate.dylib!TAttribute<FText>::Get()
UE4Editor-Slate.dylib!FTextBlockLayout::ComputeDesiredSize()
UE4Editor-Slate.dylib!STextBlock::ComputeDesiredSize()
UE4Editor-SlateCore.dylib!SWidget::CacheDesiredSize()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-SlateCore.dylib!SWidget::SlatePrepass()
UE4Editor-Slate.dylib!PrepassWindowAndChildren(TSharedRef<SWindow,()
UE4Editor-Slate.dylib!FSlateApplication::DrawPrepass(TSharedPtr<SWindow,()
UE4Editor-Slate.dylib!FSlateApplication::PrivateDrawWindows(TSharedPtr<SWindow,()
UE4Editor-Slate.dylib!FSlateApplication::DrawWindows()
UE4Editor-Slate.dylib!FSlateApplication::Tick()
UE4Editor-UnrealEd.dylib!TickSlate(TSharedPtr<SWindow,()
UE4Editor-UnrealEd.dylib!FFeedbackContextEditor::ProgressReported()
UE4Editor-Core.dylib!FFeedbackContext::UpdateUI()
UE4Editor-CoreUObject.dylib!LoadPackageInternal()
UE4Editor-CoreUObject.dylib!StaticLoadObjectInternal()
UE4Editor-CoreUObject.dylib!StaticLoadObject()
UE4Editor-UnrealEd.dylib!FEditorClassUtils::GetClassFromString()
UE4Editor-UnrealEd.dylib!FGameModeInfoCustomizer::GetCurrentGameModeClass()
UE4Editor-DetailCustomizations.dylib!TBaseSPMethodDelegateInstance<true, FGameModeInfoCustomizer, (ESPMode)0, UClass const* ()>::Execute()
UE4Editor-PropertyEditor.dylib!SPropertyEditorClass::GetDisplayValueAsString()
UE4Editor-PropertyEditor.dylib!TBaseSPMethodDelegateInstance<true, SPropertyEditorClass, (ESPMode)0, FText ()>::Execute()
UE4Editor-Slate.dylib!TAttribute<FText>::Get()
Head over to the existing Questions & Answers thread and let us know what's up.