Before we start, here's the game.
Monday, March 28, 2022
Week 4 - Match-3 Game - Weird Shape Matching
Sunday, March 20, 2022
Week 3 - Walking Simulator - A pure walking sim
Sunday, March 13, 2022
Week 2 - Puzzle Game - Crate Cat
Before we go any further, here it is: Crate Cat.
As I mentioned in the previous post, this week I decided to try my hand at making a puzzle game. I knew it would be extra hard, since I'd never done it before, so I wanted to focus strictly on game design, and not on technicalities of implementation. So I picked up puzzlescript. It's another web-based engine, but this one is designed specifically for tile-based sokoban-like puzzle games. Essentially it allows you to create very rudimentary and extremely blocky tiles, combine them into levels and objects, and provides a very interesting declarative syntax to describe their interactions. So to implement Sokoban (not counting assets) you essentially need two lines of code, one of which - translated from puzzlescript's syntax - says "when player moves towards crate, push crate", and the second one, added under win conditions, says almost literally "all targets have crate". This is great, because it strips away all the busywork, and allows you to focus on the design. Also, the language itself feels like a good puzzle, and it's pretty elegant. The downside is that the games look too blocky, even for my standards, and they feel very crude and rudimentary. As a prototyping tool, however, it's fantastic, and some of the games you can play at puzzlescript.net are incredibly clever.
My game is a sokoban clone with a small twist: some crates can be only move two spaces when they are pushed. No more, no less. There are also special tiles that will 'capture' such a crate and allow you to move it only one space instead. And I also made the player a cat, because you can never have too many cat games. I was very happy with my simple idea, so I programmed the rules, which was a lot of fun, and then went hunting for some level design ideas. I have this unfortunate habit that my brain, once it starts learning something new, wants to go all in, so I had to muster all my limited willpower resources in order not to buy all puzzle games on steam and not to order puzzle books on ebay. Instead, I played some Baba is You, then some more puzzlescript games, then I designed a few game levels, and then I had a realization, which made me glad that I undertook this project. The realization was: I don't really like to play or design puzzle games too much.
Don't get me wrong, Baba is You is fantastically clever and I love the idea, but I can play at most two or three levels at a time before I get tired and have to rest. When you figure out the answer it feels very nice indeed, but when you can't, staring at the screen for several long minutes is not fun at all. And when I started making levels, I stole the first one, then made additional two, then felt exhausted like never before after working on level design. And the worst part was that I couldn't really play it, or know whether it was good, because I knew how to solve it. I forced myself to try and design three and a half more levels, but it was not fun at all. Thus, I decided that the experiment was over. I don't think I'll be returning to puzzlescript any time soon, which pains me a little bit, because the software is so nice to work with.
For the next time I thought I'd do something crazy and take David Wehle's seven day launch challenge. I bought the course a while ago when, but never got to getting through it. So, on to making a tiny 3D walking simulator in Unity with stock assets!
Oh, and one more thing - since it's hard to predict whether I'd be able to get through this stuff in seven days, being as my days can vary wildly in access to the tiny shards of free time I have left, I decided that if I don't have anything presentable on Sunday, I'll give myself another week.
Tuesday, March 8, 2022
Week 1 - Arcade game - Space Boulders
The first game I made as part of the challenge was Space Boulders, which you can find on my itch.io page. It's just a straight Asteroids clone, with some features missing, as I ran out of time, but with pretty cool vector graphics and lots of screenshake.
I've never remade Asteroids before and I always wanted to try. It's a nice arcade game, so you don't need to create any levels, or "content", and since I've made arcade games before, I was pretty sure that I could pull it off, so it was also a good warmup project. I also decided to try microStudio, a browser-based game engine/dev environment I stumbled upon a while ago. So, how did it go?
The game turned out okay. I managed to implement most features that make it feel "whole", such as extra lives, multiple waves, title screen, game over screen. I really enjoyed writing the vector routines (weird fetish, I know), even though the engine did a lot of the work for me, such as rotating objects (not much extra trig was needed). It also felt very refreshing to work on something from start to finish. I like that about game jams, they force you to observe a deadline, and somehow I was able to recreate that sense with a self-imposed deadline as well. As many, many developers, I struggle with finishing projects, and making such a small game in a short period of time gave me a much needed boost of confidence that I can actually pull it off.
I also really liked working in microStudio. The environment is very snappy, even on crappy machines, and it's really well designed in terms of the UI and the overall feel. I was skeptical about using another custom micro-language (which they call microScript), but in the end I quite liked it, it felt like a mix of the better parts of Lua and Javascript. Recently they also added the ability to code in other languages, including my beloved Lua, so I might give that a shot as well. The best thing, however, was that I was able to seamlessly switch computers and work on the project from anywhere I wanted, on anything I wanted. Specifically, I was able to code most of the game on my garbage chromebook, which is tiny, light and completely silent (no fans) - all very important for me, especially the last one, as noisy computers drive me nuts. So this engine will definitely become a major part of my toolbelt. Oh, and it's also free and open source, and has a standalone offline app if you need it. Neat.
One part of the challenge will be to try themes and genres I wouldn't have normally picked. Therefore, next week I'll attempt something I've never done before - a puzzle game. Should be fun - or at least a good learning experience.
Hello World
This is the President of Space, and I intend to use this blog to irregularly ramble about anything that comes to my mind, mostly related to games and game design and development. I started it because I decided to take a shot at making "a game a week", and I needed to have some space to unload my thoughts-and-postmortem-things regarding the games that result from this undertaking. I might have just scribbled them in my notebook and hide it, but since I enjoyed reading about other people's experiences with the challenge, I decided to share mine as well. Maybe someone will find them useful, who knows.
Epiphanies and possible recovery on the horizon
So recently I've been diagnosed with ADHD. Which explains a lot. Those highs and lows, and the impossibility of maintaining one hobby, t...
-
After a couple of years of intense work on game dev while simultaneously handling the wrath of the little gremlin, I think I burned out a li...
-
It's here: https://matzieq.itch.io/choo-choo-toy Yeah, so it's a train going forwards. Stop it with Z, and start it again with X. N...
-
Before we start, here's the game. Last week was pretty rough. At first I decided I wanted to make a moment from a 2D "soulslike...