The Pyramid-Stars bit is the most simple setup I could jam up together to render a 3D background in a 2D space.
Detailed explanation with Spoiler-Screenshots
In Godot you can use SubViewports as a Texture displaying a render of a secondary Viewport. I this case I used UI nodes to arrange the viewport textures… Actually kinda janky because I don’t particularly like Godots UI nodes but I am just rendering 2 scenes on top of each other so I didn’t bother with making it better. I might experiment with other ways of doing this so I can do more fancy things.

The 3D scene is just a pretty normal 3D scene with some big cubes, lighting and Godots basic Sky Material. The basic Sky Material in Godot can have a “Sky Cover” texture, which is just added on top of the sky dome. I gave it some Cellular Manhattan Noise with fitting color Ramp as Texture, which results in those stars. And then there’s an animation player which just rotates the sky once within a minute.
I did try to make it more fancy by rotating it inside of the shader and doing other shader things. But I ended up just doing the most basic thing.

When I get to SDW4 I’ll probably have a nicer setup for 2D with 3D background.
About kmm, yeah I did get past the dog via Chainsaw. Pretty sure I noticed the weapon swap and how OP the chainsaw is before the getting to the dog. But I did also try to let it live (didn’t manage to do it). And I did watch through some of the Developer commentary when I was struggling to figure out why I didn’t get to the next level. So I already heard that nobody read that fanficiton.
I did see Robotron got released, but I am not sure if I’ll get to it soon. I still have 3-4 playthroughs going on right now. Nightreign for some casual fun, KMM for janky cool single player, Environmental Station Alpha for some secrets and I’ll probably start Baldurs Gate 3 now AND on top I have a backlog of ~15 short Games on itch.
I haven’t even been able to get back to KMM yet. Atleast next time I start it I can actually do some progress because I now know it just didn’t save my progress as I had it installed in programm files (I also remember when I didn’t know why appdata existed).