Quick answer: Use Development build for Print String. For Shipping, use UE_LOG with a custom category written to log file.

Tester reports a bug; you can’t see Print String in the shipping build. Stripped at compile time.

The Fix

// C++ DECLARE_LOG_CATEGORY_EXTERN in header
DECLARE_LOG_CATEGORY_EXTERN(LogMyGame, Log, All);

// In .cpp
DEFINE_LOG_CATEGORY(LogMyGame);

// At call site
UE_LOG(LogMyGame, Display, TEXT("PlayerHP = %d"), Health);

// Console at runtime
log LogMyGame Verbose

UE_LOG writes to log file in all build types. Custom category lets you filter your messages. Development builds also surface Print String for editor-visible diagnostics.

Verifying

Saved/Logs/<project>.log shows your messages. Console toggles verbosity.

“UE_LOG ships. Print String for dev.”

Related Issues

For DataTable null, see DataTable. For Soft Object cast, see soft object.

UE_LOG ships. Print dev.