Print String not working

For some reason, the print string nodes are no longer printing to the screen. If I press ` twice I can see the prints by opening the console in the PIE, but the UI for that covers the entire game and its annoying to do it every time.

This happened after I was playing in the editor, and I did some weird order of keystrokes that had a bunch of stats and other logs open in the PIE that covered nearly all of the top left screen. I wasn’t sure what it was so, I pressed the same keys, more or less, and it went away, but after that, I can’t view the normal logs.

Is there some sort of a short cut I used to toggle the viewing of these logs, or something?

1 Like

The same thing happened to me after using AI gameplay debugger. disabling it in project settings got print strings working again for me, although now I can’t debug AI visually. seems like a bug to me.

1 Like

I’d like to add that (for the moment at least) after re-enabling the plugin, print strings are still working. even after toggling the AI debugger off and on again in PIE (with the apostrophe key).

Williard did you get it to work? I’m still having trouble

I’m having the same problem. Turned AI gameplay debugger and print strings stopped printing, but when I turned Ai gameplay debugging off, my print srtings still won’t print.

I’m sorry, I did eventually get it to work, but it was so long ago, I forgot. I’m not even sure which project it was on. I check around but they all had it working. I suppose the most brute force/last resort work around is to create a new project and reimport all the assets. Sorry guys :confused:

it’s ok you probably hit the ’ button which opens the basic info data and turns off your print strings, but when its on there is a list of commands above it and you can have them on while basic data is open.

I’m pretty sure that wasn’t working, which is why I posted this question.

I can confirm that this is a bug in 4.14, however I can not seem to find any steps to reproduce it. But I can not have a single session longer than 30 minutes without Print String “breaking” in the entire project.

The only fix I know of is to restart the editor entirely. This is probably the most frustrating bug I’ve encountered in UE4 thus far :frowning:

Go to “Editor Preferences…” and click “Reset to Defaults” button,
then close the editor and restart it, and it’s ok.

127016-qq截图20170220192345.png

127017-qq截图20170220192419.png

1 Like

Yup, this did the trick.

It’s still broken for me. I’ve combed the internet for 4 hours now looking for fixes but no matter what I try, I can’t get messages to appear on screen or in the output log.

Hi did you figure out how to get the messages back?
I’m having the same problem.

Last few times I was encountering this issue it was related to my level blueprint. I had to make a new one and it would work again for that level.

I’ve used PrintString quite a lot to debug my code, but as of late I barely use it at all it’s just far too buggy and seemingly no effort is being put into fixing them as of yet.

Ok thanks. For me it’s not related to the level as I can start a new map/level and the problem is still there.
Its agonizing as it is my main tool of debugging, im doing a networked game and it means that many things I have to test running on two computers and that rules out the in-editor debug tools.
I don’t understand why they don’t spend some time fixing it. I mean come on, ‘Print’ should just work.

Other than the levels the only thing that comes to mind was PrintString being bugged when you used the Gameplay Debugger. Whenever that happened I don’t think I was ever able to find a way to fix it other than to start a new project.

I agree it’s incredibly annoying. It’s easy to think a lot of stuff ‘should just work’ but sadly this isn’t the case a lot of the time.

Really all we can do is try and find a way to reproduce it, note it and submit a bug report. I too find it rather peculiar how this has been around since like 4.9 or so - personally I think it’s rather despicable how little attention it’s been getting but they might have other bigger priorities.

Just ran into this, and it also didn’t fix itself when I reset my editor preferences. I was able to cheat my way around it in visual studio.

In UnrealEngine.cpp, there’s a function:

void UEngine::Init(IEngineLoop* InEngineLoop)
{
	...

	if (GConfig)
	{
		bool bTemp = true;
		GConfig->GetBool(TEXT("/Script/Engine.Engine"), TEXT("bEnableOnScreenDebugMessages"), bTemp, GEngineIni);
		bEnableOnScreenDebugMessages = bTemp ? true : false;
		bEnableOnScreenDebugMessagesDisplay = bEnableOnScreenDebugMessages; // Force these to TRUE

		GConfig->GetBool(TEXT("DevOptions.Debug"), TEXT("ShowSelectedLightmap"), GShowDebugSelectedLightmap, GEngineIni);
	}
	...
}

If you force the values of bEnableOnScreenDebugMessagesDisplay and bEnableOnScreenDebugMessages to TRUE while starting up the editor, it clears out the issue so you can launch normally.

Still not sure what breaks it, but wanted to share the workaround.

1 Like

Very cool thanks a million for sharing John!
This is such a stupid and annoying problem and Iv’e had it for a loong time now.
In my case I figure out that the print still worked with one particular Pawn but not with the others. So now I have a custom print function on that Pawn that I call instead. So I have to message pass to it for every Print. Silly but it seems to work mostly.
But your fix is easier to work with so I will save this link and if things go too bad I know how I can move forward!
Cheers, Fred

For all those who are experiencing this issue, what fixed it for me was typing “EnableAllScreenMessages” in console while in-game or you can use an execute console command node somwhere on beginplay in an actor you use in your level.

5 Likes

Tried that. Does not work unfortunately in my case.
Also in my case it was working for one actor but not for others.