Original Post — Direct link

Originally posted by 7h0m4s

This was made due to repeated demands to put Doom in Rimworld after I put Bad Apple in Rimworld

The recent post that started the pixel-art idea comes from u/MaxwellScourge's son with this beautiful masterpiece.

I was able to make this video by writing my own first custom mod. It directly integrates with a modified version of ozkl/doomgeneric, which is a version of Doom specifically designed to be easy to port to other platforms. So a big thanks to them. You can try DoomGeneric in your browser by going to https://ozkl.github.io/doomgeneric/.

The mod works by listening to the image frames generated by DoomGeneric. Converting them to an array of the closest equivilent Rimworld paint colours and rendering the image into the world by painting floor tiles. In the example video it was onto concrete (Sterile tile does look brighter but make it look more pixely). For performance reasons it does this every 2nd game tick. If Rimworld is paused, Doom will pause with it.

The rendered image can be kind of hard to see when in dark areas of Doom. As vanilla Rimworld only has about ~60 colours available to use with paint. I did try adding exra colours but it made the performance drop dramatically.

While that's happening, the mod is also listening to which keys are currently being pressed. Then feeding that back into the Doom engine. I had to remap the Doom controls from WASD to IJKL so the map view didn't pan every time I moved in Doom.

I'm not going to release this as a proper mod (at least not anytime remotely soon). It's my first mod and would require a LOT of extra work to improve it's stability and ease of use for others to use. I'm more than happy for other more experienced modders to create a proper version of my proof of concept.

Shout out to those who insisted threatened "suggested" I do this project: u/Alone_Collection724, u/PeacefuIfrog, u/Khaisz, u/Smg5pol, u/Caedis-6, u/Redditoast2, u/solarcat3311 and ChaosisWithUs

Backup Youtube Video Link

This is amazing. I feel like I unlocked a game developer achievement here.