from the machine

a soupy experience: soup jam 2026

it started while jotting down a few minigame ideas for a game my friends and i are working on over at machine wizards interactive. don't remember exactly how it came up but i started reminiscing about a genre of game i'd learned about awhile back; soup-likes. thinking it'd be a fun, small, project, i suggested to the group that we participate in the next soup jam, then, looked it up. turns out, it had already started two weeks before this conversation! my friends, being the badasses they are, said "fuck it" and we joined immediately

SOUPJAM2026 cover image SOUPJAM2026

if you're unfamiliar with soup/soup-likes, the jam page summarises it as:

SOUP is an obscure Japanese minimalist art-game from 2007 where you walk around a series of small abstract rooms and generally soak in the atmosphere. Think of it as a sort of digital art gallery.

and

SOUP-likes are a microgenre of art-games which try to emulate the formula of the original SOUP. They are essentially "walking simulators" taken to their most minimalist limitations.

They are composed of a series of minimally-interactive diorama-like rooms generally consisting of the following elements:

SOUP 0.9 full playthrough
a full playthrough of SOUP

with that, i threw together a spreadsheet for everyone to toss their ideas on. we only wanted to do a few rooms each and hit ~10 rooms total. myself, evan and tarkus were the only ones able to find time between work/other projects to create rooms. mason shot suggestions on how to amplify rooms we were working on, helped with troubleshooting code and provided a morale boost. following up on the morale boost and chill vibes was conor. he also created a neat cover for the project and helped us come up with a name

and bam: wizard soup
wizardsoup

in this post, i'll be mainly speaking about the four rooms i created for the project but need to first give credit to the creator of our stock; tarkus. tarkus is our programmer at machine wizards and, as such, he was extremely helpful by making a room template for us all to start with

Screenshot of the SoupBase scene in Godot

most of my working knowledge comes from wwise, fmod and unreal engine so godot was 100% brand spankin' new to me. this was also the first time i'd ever used an engine to create things that had nothing to do with audio. i've slapped together assets downloaded from unreal's fab store for audio demos but never made anything in that capacity. so, i found myself completely out of my depth. at first, it was extremely frustrating to get a handle on but towards the end, i was flying through to add/change things (minus the actual scripting part, which, tarkus and mason were the masterminds of). holy shit, i learned soooo much more from this than i was planning on!

the first room: starfox 64 starfox

star fox 64 is my favourite game ever, period, end of story. continuing with my bias, i thought the idea of the main object being the crew on the title screen and the mini being the "64" would be hilarious. if you're unfamiliar, if you stay on the title screen and waggle around the controller, the 64 will move around in the direction you pick. the heads of the star fox crew will then follow the 64 around the screen as well. they say, "first is the worst" and i think that holds true with this room

the first thing i did, obviously, was do a quick play through of starfox 64 on my pc, hehe. a quick aside; if you haven't played the decomp of starfox 64, starship, i highly reco you do! after that, i recorded the title screen using obs, cut out the title screen/64, cropped the scrolling stars in the background and drew out a path for the mini to bounce around and follow

starfoxsquad

playing starfox 64, easy. dusting off my old photoshop/digital art skills, easy. implementing everything into this blank square? mostly a pain in the ass

while tarkus had done us a solid in creating a template, it took me a hot minute (and a bunch of frustration) to find the more inner workings of trying to animate textures. imagine the horror in finding out that the way i wanted to animate the walls required me to add every. single. frame. instead of godot parsing a gif. i'm sure there are other ways to add animation frames that'd be faster/easier (i now know of animation sheets, at the v least). this in particular is def something i'm interested in learning more about for future games. but, man...woof

and because, of course, i love making myself do more advanced things without knowing basics, i wanted to add the lylat system and have it rotate/bob slowly. i am an idiot

lylat

this one i have to thank tarkus for entirely. i had originally modified the mini and its pathing to bob up/down but had no idea how to rotate it. tarkus got that aspect of it working and i was able to adjust the parameters afterwards. my stubbornness ended up paying off as he copied/modified the system to use in one of this own rooms :p

for audio, the footsteps used the "start" sound on the title screen with pitch randomisation. background music is, shocker, the title screen track, haha

another thing to add to the "going to learn this later" pile would be having a sound trigger when you enter a threshold. we submitted a few hours before the deadline, so, i didn't have much time to scope out the native audio capabilities of godot. these rooms were made so that when you walk up to the object, text displays and you press "e" to interact. i figured out how to have an image display instead and wanted an audio file to play when close enough. we never found time to get it working right

father

the audio file is still there when interacted with but, c'mon, this would have made it at least x10 funnier, lmao. next time!

the second room: floral shoppe but armored core floral shoppe but armoured core

this one is dumb but i still love it! what feels like eons ago, mason made a mock "floral shoppe but armored core" image based on a dumb conversation we had

enhancedhuman

while he still had the ac bust, sadly, he didn't have the rest of the assets he used. so, i pivoted to making the text/city photo match the original floral shoppe album art

mbid-22f93e9f-7174-4529-b4d6-277674862e2d-8890620701
Floral Shoppe | Macintosh Plus

it took a lot of nudging to have everything line up right when then room is loaded which was really the most "difficult" thing. soundwise, the footsteps are some tile steps from my sfx library in a random stream being sent to an fx send to add reverb and the background track is a loop i cut of リサフランク420 / 現代のコンピュー

if you can believe it, this song was stuck in my head for the rest of the project duration

aaaaand, speaking of music tracks being stuck in my head...

the third room: ballblazer ballblazer

here is where i date myself somewhat, hah! my dad has been playing games since waaaaay before i was born (~a year ago, i found a bunch of old instruction manuals kept in vic-20 boxes he gave me. ultima ii really sent me lmao). thanks to that, i grew up playing nes, atari 2600, 7800 and colecovision. the first game i ever played was joust on the 7800 and i played the crap out of basketbrawl, burger time and ballblazer. once every year or so, i wake up with the main theme in my head because, daaaaamn

Ballblazer Atari 7800 Full Soundtrack
full ballblazer soundtrack

in my opinion, this remains one of the most impressive music tracks for the console its on. not only that but it's 5:38 long! 5:38!! of course, much love to the sound design as well

and look at the visuals, i'm still captivated by them to this day

Ballblazer (Atari 7800)
Ballblazer (Atari 7800)

the first thing i did was find a web emulation and recorded my playthrough in obs. sprites were cut out in photoshop, re-created the floor/wall textures, made a mock "dvd menu" path for the ball and back/forth path for the goals. for audio, i cut a modest ~3:30 loop of the main theme and the footsteps use pitch randomisation on the "camera change" sound effect

this room isn't especially fancy but i love zooming around it the way i did ballblazer as a kid

the fourth room: wooper woopers

wooper

you may not like it, but this is what peak pokémon looks like

this was the most intensive room i made and i fucking love how it turned out! look at this madness, look at it

Screenshot 2026-07-06 at 17 Screenshot 2026-07-06 at 17

before anything else, i found a bunch of wooper sprites/art, then, i scuttled over to one of the coolest sites on the modern internet, noclip.website, to take some screenshots of their mario 64 ds secret aquarium level. after a bunch of clean up, i ended up with some solid textures

woopfloor woopnowindows woopwinpink woopcolumn

one of the biggest challenges of the room was figuring out how to get the window transparency to work while simultaneously not having it block out the corner columns. ultimately, i found that having the window colour in the material override set to "alpha" and the wall in the material overlay set to "alpha scissor" worked the way i needed it to. by this point, tarkus had figured out the lylat system rotation and was able to tell me how to set the skybox cylinder to rotate slowly. evan's firefly forest room was a boon in that he had knowledge on both how to set the columns to billboard properly and how to set up emission particles (his rooms are all stellar and worth playing the soup for alone!)

even though i was able to copy/modify the emission particles, i was running into another issue; if i looked up/moved too far, my particles (the bubbles from super mario 64) would disappear. this was fixed thanks to mason's eldritch knowledge, my object was too small and unloading the bubbles when the camera was no longer "looking" at the emitter. the next issue happened when i imported the sm64 power star and tried to have it spin on the y axis (same as the cylinder), somehow, the same code wouldn't work. another +1 for mason as he sent me more info on how to adjust the script

finally, i made a different path for each and every wooper to float around the room. thinking about it makes my hand hurt again, there were so many x_x

but, actually, finally, finally, as is tradition, is audio (i wound myself). since i couldn't find a loop of dire, dire docks i liked, i recorded my copy of sm64 via vcr output and cut a loop. the footsteps use a random stream of both, what i call, the "boo-a-qwop" swim sound and the more bubbly sound typically used for slight movements. these were weighted so that the former plays more often. for the woopers, i used the voice from pokemon channel and threw them in a shuffled playlist stream (along with a few blank audio files of varying length). every wooper has sound attached to it so the player can experience a cacophony of woops

this all leads into fx busses and the "leveling" i did the last few hours for the entire project

audio busses

man, i would have loved to have more time messing with/researching the native audio capabilities of godot. since that wasn't possible, i cannonball'd in armed with only how standard audio mixes should work. made some fx sends, sent those to the sfx bus. amb and mus both work as "music" tracks with different compression/sidechain settings. sfx, amb and mus alllll go to the master, bada bing. i think the overall sound fits the vibe of the soup but i wish i could've spent more time polishing it

doing a bit of reading/chatting with some colleagues since the jam, it sounds like either coding an audio manager or implementing audio with fmod is the go-to for godot

and i absolutely will be coming back to all of this! the wizards and i are already cooking up more soup rooms and side-project ideas. for myself, i'll be further researching audio implementation in godot as well as brushing up more on fmod |

woopwoop

#audio #game audio #game dev #game jam #godot #jam #project #sound design #soup rooms #video games