Two weeks ago over Easter I started working on a submission to the @Gamedevjs Jam. The theme was 'Raw,' and I wanted to create a processing pipeline simulator. This is how Super Simple Salad Simulator came to be. #gamedevjs
It's my hommage to The Incredible Machine from 1993, and also to the vegetable salad, sałatka jarzynowa in Polish. It's a springtime treat in Poland. The full list of ingredients includes potato, carrot, green pea, apple, pickled cucumber, onion, boiled egg, and mayonnaise.
When researching it for this project, I learned that the salad apparently started as a completely different recipe with many kinds of meats in it. Depending where you are, you may know it under the name of the French, the Italian, or the Russian salad. en.wikipedia.org/wiki/Olivier_s…
Due to the Real Life happening at the same time, I wasn't able to complete all the features I had planned. Super Simple Salad Simulator is an unfinished sandbox, but I still think it can be pretty fun for a few minutes.
There's no real gameplay nor end goal, other than discovering what the exact recipe is and trying to design a pipeline which puts the processed ingredients in the red bowl.
I've had the most fun tweaking the frequency of spawning new ingredients, which can be a good stress test for the pipeline you design.
The ingredients bounce off the edges of the screen which was meant as a temporary feature during the development, but I had so much fun playing with zooming the camera in and out that I decided to leave it in.
It's also possible to tweak some parameters of the physics simulation. It's my custom work-in-progress engine, so it's not very realistic, but you can tinker with the friction of movement, bounciness of collisions, and the gravity.
The collisions are rather naive: the ingredients collide with the utensils but don't collide with each other. They're implemented as two for loops on the main thread, which quickly becomes a performance bottleneck.
However, I'm quite happy with the performance of the WebGL-based 2D renderer which I had been working on last year. When I turn the collision detection off, the renderer can easily scale to tens of thousand sprites.
Thanks to Super Simple Salad Simulator, I had an opportunity to improve the renderer, and to build an automated pipeline for assembling images into a spritesheet. Managing assets turns out to be one of the most important features of a game engine.
My goal now is to make Goodluck a capable solution for building 2D games before #js13k starts in August. I'd love it if someone other than myself and @michalbe builds a game in it. Stay tuned for Goodluck2D!
You Are The Snooze Button is a submission to Ludum Dare 50; the theme was 'Delay the inevitable.' I entered the Compo category, which meant the game had to be made solo, in less than 48 hours, and with original assets only.
ESCAPE is a 2.5D puzzle platformer in 13KB of HTML and JS (zipped) by @michalbe and myself. It's a short story about wildlife and nature on Earth after mankind leaves for good. You can play it right now in the browser on desktop and mobile.
In ESCAPE, you solve environmental puzzles as you progress through a misty world abandoned by people. We were inspired by games like @Playdead's INSIDE and movies like @bladerunner, and we tried to convey a sense of loneliness, remorse, and confusion.
ESCAPE fits into a 13KB Zip, but we built it using fully-featured tools. All our assets, props and scenes are built in Blender and imported into the game as GLTFs. They take up a large part of our size budget, leaving even less space for the engine code and game logic.
It's August again which means @michalbe and I are taking part in @js13kGames! This year's theme is Space.
We're joining a week late with a new idea: a 2.5D puzzle platformer on Earth abandoned by humans and reclaimed by nature. #js13k
When the theme was announced over a week ago, we spent a few hours on Saturday and Sunday brainstorming game ideas. And to be frank, we didn't like any single one of them. They just didn't seem to click.
Most of them weren't even game ideas, just plays on words that could dub as game titles, but nothing more. There was RequiesCAT in Space (probably a game about an astronaut cat), Spaciba (probably a game about cosmonauts), Space Bar (probably a game about managing an inn?)...
The jam's only restriction is that the game must be playable in a web browser. It's a refreshing change from the size-constrained jams that I typically take part in. I'm not used to not having to worry about the code and assets size.
I managed to get simple 3D physics working in the prototype for my WebXR game for #js13k. Best part is, I'm not using any extra libs! It's all vanilla JS, clocking in at 9 KB right now. The hand mesh alone is 3 KB so I'm sure there's plenty room for optimization, too.
More #js13k progress! I added toon shading, a few textures, and replaced the hand mesh with a paw which has fewer vertices. This is now still around 9 KB zipped!
Have you ever wanted to be a Godzilla wreaking havoc in a city?
I added rooftops to each building type and a road texture, but really, this tweet is about the fire breath.
Part 2 of this experiment starts right now! Today, I plan to implement projectile, wall and pickup collisions. I'll generate the terrain procedurally, and I'll add a simple UI.
With this set of features, I want to build an MVP version of the game: loading a map, advancing through it, killing enemies and picking up items, and finally finding the exit.
The idea behind this milestone is twofold:
1. Test and evaluate the core gameplay loop. Show it to other users and gather early feedback.
2. (If this was a compo game) Have something that can be submitted at any time, in case I can't finish the game for any reason.