My mod places its preview characters on hidden surfaces. I have confirmed that the camera GuiElements and the preview characters are still valid by teleporting myself onto the preview surface:
So it seems that the original behavior of the camera GuiElement (the owner of the GUI can see what's happening at camera.position on the surface with camera.surface_index) has been changed in such a way that the player must be on the surface that the camera is pointed at to see anything.
I didn't find anything about this in the changelog, so I presume this is a bug. To reproduce, load the attached saved game with Factorio 2.0.17 (syncing mods) to get the working version. Quit and start Factorio 2.0.18 or later, and load the same saved game again.
To move the character to the hidden surface, enter the following command on the chat console:
Code: Select all
/c game.player.teleport({0, 1}, 3)