Arterial (LD48)

img1

Ludum Dare 48 entry found here.
Download directly from itch.io.
Game source code found here.

Arterial throws you into the role of a junior art exhibit curator, who has been put in charge of curating tonight’s upcoming art show. You work in a rather novel art shop where the back room turns out to be an infinite Borges-esque art labryinth. The game is to find paintings in the infinite depths of the museum which will be the correct size and have suitable ‘synergy’ for a high-grade curation.

Arterial was an entry to the Ludum Dare 48 game jam which took place over 72 hours from April 23-26, 2021. Before we started we knew we were interested in exploring two pieces of tech: infinite map generation and neural network generated images. We succeeded in incorporating both of these requirements within the time constraints and learned some new techniques and libraries along the way. Specifically, I learned about Minecraft’s chunking system for managing the loading of large worlds and used a similar implementation for our endless museum. The most technically challenging part was learning to use Baracuda, Unity’s neural network inference library for the image generation. For the model, we only succeeded in getting a 32x32 DCGAN model running at a reasonable speed if the player had a good GPU, but I enjoyed writing a periodic batching inference system that would allow for faster inference of the generated images as the player moved through the museum. Although the image resolution was small and further distorted by the frame variations (which were randomly generated), I think most of them passed as being more interesting than random algorithmic blobs.

img2

Overall, I was really happy with this game. I teamed up with my brother who did all the 3D modeling, sound design, and produced the final trailer. In the end, it felt more like an experience that had been forced to be a crude game rather than a game with a novel experience. The most surprising part was that there ended up being a large amount of reusable code for most of the algorithms and game mechanics we had used. Time crunching usually turns my code into a rubbish heap by the second day of a game jam. I also plan to try and incorporate more machine learning into all my games from now on, as it feels that the indie community is on the cusp of these powerful machine learning tools becoming standard.

img3

img4