Amidst the Sky and the importance of feedback

As of writing this I’ve delved back into Project Amidst and don’t intend to stop for at least a while (give or take one period of time). As you may know, the elusive Project Amidst (working title) will be the sequel to Amidst the Sky, which in turn is still one of my largest games. But Amidst the Sky wasn’t always Amidst the Sky. The game is actually a redo of a way worse, but very similar game I made years before it. This post reveals all about the predecessor that failed and some lessons one could in theory learn from the whole experience. But first, a word from our sponsor!

There’s no sponsor, why would there be.

Past the Sky
It’s the spring of 2016, the weather is gorgeous; the sun is shining and it’s getting warmer rapidly. My least favourite time of the year was about to begin: when the sun shines on my monitor and when the temperatures are unpleasantly high in a country where aiconditioners are very much not the standard. While I usually rather sat inside back then, I will admit the season inspired aspects of a game that I was about to make. The initial idea was to just make a game without thinking too much about it beforehand. Just make anything. In a way, put whatever’s in my mind directly into something playable; something that I’d like to make and play the most. This quickly turned into a project where the player swims through clouds and explores mysterious ruins on floating islands, all immersed in the vibe of the current season. The game was to be called Past the Sky: the player would, after exploring through it for a while, finally surpass the sky and go into the undefined beyond.

A Finished Product
Development begun and I started working really hard on, by far, my largest GameMaker project at the time. Ambitions were high as well, as I hoped the game would garner some attention. Creating the levels was a lot of fun and designing the world was very engrossing. Development was lots of work, but very satisfying, and after a while the game was actually finished. Surprising, as this was not the first project I ever started. There was no way around it anymore; the most stressfull and scariest part of game making had to happen: RELEASE.

At the time, while webgames were already in decline, there were still some big portals which were obvious candidates to contact first. I decided to send Armor Games a mail with a link to the game (hosted on Google Drive, which was a thing back then and also very handy) first and inquiring about possible sponsorships. Hopes were high. I was very confident in this game. However

Initial feedback
Within a day I got a response from Tasselfoot: a true industry legend and contact person over at Armor Games. There was one minor issue though: they weren’t interested in the game, let alone a sponsorship (I told you, there’s no sponsor). A setback indeed, but still convinced my brand-new game was a banger, I headed on over to Kongregate (back when they were still cool) where it was released to the general public.

After a short while the average score of the game became visible. If I remember correctly, it was around 2 stars (out of 5). I might be wrong, but I vaguely remember it even dropping to 1.9. This was the very disctict moment where the undeniable reality hit: the game sucks. There was also exactly 1 comment, and I regret not screencapping it or something, as it contained some very valuable feedback: the game looks fun, but why was the character moving so awfully? Whoops. I had so much fun designing the game, that I never bothered to even consider it might not be fun to be playing the game. Indeed, nobody else but me had ever played Past the Sky prior to its release.

Lessons
That illustrates the importance of feedback quite well, especially with something as subjective as fun in video games, although I’ll admit this was a bit of an extreme case. When creating games, and indeed other creative media as well, you’ll constantly need some outside perspective. Yes, you, the developer might know how to play a certain level, or have fun doing some weird movement to beat a level “as intended”, but will the player understand this, and more importantly, have fun while doing this? Motivation and being laser-focused on your project is great and all, but one tends to enter tunnel-vision mode. So basically, constantly look for as much feedback as possible, that includes early on in your process. Keep an open mind for any and all criticism, some of it might be difficult to accept if you’re really fond of your game, but it’s just part of the process. Speaking of which…

Going from Past to Amidst
I needed some time to process the reactions to my game, but was still convinced parts of it were pretty good, namely the visuals, immersion, sound design, etc. I requested Kongregate to take down my game and decided that I’d come back to it later. “Later” turned out to be 3 years, in 2019, after finally releasing another one of my games that has some history behind it as well: Temple of the Four Serpents. Now that one was received remarkably well, so it was clearly time to finish the Past the Sky business. Having learned the hard lessons, its gameplay was completely redone and, perhaps more importantly, people played the dang thing. Which brings me to the following lessons…

Lessons 2: Electric Boogaloo
Always listen to feedback, but keep in mind that people are very different. You’ll still have to filter some criticism out that doesn’t make sense or are in a very clear minority. BUT don’t be too hasty to dismiss criticism, of course. Seriously consider a piece of feedback, and evaluate what to do with it. Sometimes someone might point out a clear issue, but their solution is not optimal. You, the one constantly working on your piece of entertainment, has to figure out the best way to solve it. I even have a concrete example of that!

Some feedback I got when letting early Amidst the Sky be playtested was that swimming through clouds was too difficult and floaty to control and that it should be changed. However, while watching them play, it seemed apparent that the game was just too abrupt with dropping the player into the whole cloud swimming and expecting too much from them too quickly; they hadn’t learned how to deal with all that yet. Instead of more gameplay tweaks, the first tutorial level (the first grey building with the clouds) got made a lot longer. This provided the player with way more of the dedicated safe area to learn cloud swimming. When I let the same person play the changed game, they noted that cloud swimming felt way better to control, however those controls were not changed. They just had a better grasp of how it worked thanks to the more extensive tutorial (and some prior experience of course).

Another advise: don’t just send your game to people and wait for feedback, but physically watch people play your game and take notes. That way, you can see how they experience it unfiltered. It can’t hurt to ask about their experience and possible feedback afterwards though.

The final chapter of this blog post
Anyway, the new game was to be called Amidst the Sky, because Past the Sky only refers to the very ending, while Amidst the Sky encompasses the game as a whole better in my opinion. It was released on Kongregate first, where the reception was very positive. Later, I once again showed it to Armor Games. This time, they really liked it.

Past the Sky is playable for all Patrons. I really don’t recommend it though.

Oh hey, it’s another year

Boring intro
Skip to the 2024 section if you’re interested in what I’m working on.
Yes, you read the title right: it is my privilege to inform you that another year has begun, which would also imply that the last one has ended. Where did it go? In fact, where do all years go when they’re done? Scientists may never find the answer to this poignant* question. Luckily, we do have the technology to remember the past year and reflect upon it. Reflecting on 365 days on a global scale is a bit much and I’m hoping to finish this post before lunch, so I, personally, will limit the scope to my own work this past year. That’s not all, it’s also time to look at the newly-born year, freshly squirted out of the Womb of Time.

2023: The Year of New Beginnings and the Old on Hold
Backing up your work is important. One way to do so is using source control, like git. Additionally, creating a physical backup every now and then is a solid idea. Really solid. I used to do this diligently for many years, and when my hard drive gave up about 6 years ago, all was backed up and there was no problem. However, over the years I became lazier and more negligent, to the point that I just didn’t use source control for 1 (one) project (this one). When that project was almost done, my SSD (on which it was stored) gave up. This time it posed a larger problem: I had lost that entire project and some spritework / design documents I had done for Cursed Travels: Sunken City. My SSD was promptly sent to a data retrieval specialist, which would “only take 6 weeks at most”.
This was back in April… They’re supposedly still working on it.
I had decided to put Sunken City on hold, because even though the damage on that project was (luckily) minimal, I would rather continue where I left it if I ever got it back. Instead, I started many new projects, some actually very promising ones, to fill the time. One was Lost in Lampyrid Fog, my “big release” this year, which spawned 3 other, new projects. Also, I’d argue Lampyrid Fog was actually 2 games in 1.
I feel like I’ve done a lot but also very little past year, I don’t want to look at my resolutions from past year’s post though. Anyway, that brings us to (the more positive) next year.

2024: The Year of New Endings and the Old Resumed
After a drought there’s usually rain, right? I intend to actually finish a lot of those projects I started last year and even some from before that. In theory, next year will see a significant number of releases and I’m optimistic that this theory is realistic. Below’s a very vague, small glimpse of some projects that are most likely to see the light of day. Some might be the usual free web games, some I intend to bring to Steam / Itch for a small price and others I’d really like to release on mobile (for free). Note that while it’s realistic that next year will see a good number of releases, the list below is still overly optimistic.

For sure:

  • Bullet hell game. First on web, there’s always the very slim possibility for a bigger Steam release. The existence of this project shouldn’t come as a surprise if you followed along during Lampyrid’s release.
  • Warper Mobile: The original Warper’s content will be more than doubled, enhanced and released on mobile. I was surprised how fun and potential-rich(?) this title still is.
  • Some brand-new, casual, relaxing fun on Halloween. This might also be a mobile release, but we’ll see.
  • Ferry Wheel: LET’S DO IT, WHO’S HYPED FOR SOME BASIC PUZZLING YEAAHHH!!! On web and mobile, probably. I need to test the mobile waters with something simple, this one might be perfect for that. In case you’re wondering what I’m referring to: Ferry Wheel is that one small game you get to play when you join my mailing list.
  • Cursed Travels: Sunken City: If it’s not this year, I’m going to be very sad. On Steam, obviously. Don’t forget to wishlist it!
  • A web-based Cursed Travels: It’s been a while, I need to reignite some hype for Sunken City. Scenario and design are done.

Really want to (I’ll try!):

  • A game that is actually casual and relaxing.
  • Top down puzzler, web based.
  • Cool, epic puzzle game for mobile for awesome people who are clever and stuff. This one’s actually over halfway done, I’m just realising while typing this.
  • A fishing game. Maybe not as peaceful as Generic Fishing Game, but still quite relaxing.

Highly unlikely, but I will work on it sporadically:

Distant horizon:

Hm. That’s more than I thought. Well, let’s see what this year’ll bring. Let me know if I forgot anything. Don’t forget to join my Discord (do it), and maybe check out the ol’ Patreon page.
Happy New Year! See ya!
…OH! We need an image, otherwise this post is just text and it could do with some visual to use as header. Here’s the annual screenshot of Project Amidst:

* I have no idea what this word means.

Overhauling Lost in Lampyrid Fog’s Secrets

Lost in Lampyrid Fog has been out for a couple of days now and the reception has been positive. Well, mostly. The rest of this post will contain massive spoilers for the game. Sort of. But we’ll get into that right now.

When I was almost done developing the game I was still pondering, contemplating even, what should happen if you find the 3 diamond lamps and open the secret door. I thought putting in a different game as a secret would be really funny; it completely takes the player off-guard, it’s unique, and it’s quite substantial as a reward. I think it’s fun to do away with conventions of the medium and play around with expectations. Importantly: it is optional. You get the one ending the game has by simply… beating the game. Another reasoning was that people who like puzzle games already got what they wanted: an entirely finished puzzle game. There’s no reason to complain then, right?

To be fair, there was a bit of a miscalculation on my part. I didn’t expect this many people to be this enthousiastic about looking for the secret. Of course, exchaning info is a bit easier now with my brand new Discord (join here!!!), but still the turnout for the secret was beyond expectation. The good news is that I can make some secrets even harder to find in the future.

Here’s the thing. I don’t want to continue and finish the secret area like it is right now. To be completely frank, it’s demoralizing in its current form. So here’s the new plan:

  1. Remove the bullet dodging from the game, and put it in a different game altogether. I had written down a lot of ideas for this section and they feel wasted like this. This way I won’t have to hold back (well, I wasn’t anyway difficulty-wise, but that’s besides the point).
  2. Replace the current secret stage with multiple puzzle sections. Maybe have a (very easy) boss at the end and an actual “true” ending.
  3. The idea of a game that is mostly about secrets has haunted me for years now. I think doing secrets like this is still worth doing, but I’ll make something special for that at some point.
  4. Optional: keep the current bullet hell section somewhere in the game, but make it very clear it’s optional. Well, it already was an entirely optional extra in a free game, but let’s stop this sentence here before this turns into a rant.

I still think putting a very difficult bullet hell stage in a slow-paced puzzle-exploration game is hilarious. But taking some things into account it is simply not worth it. I’m a little bit disappointed, but on a funny/positive note, one Discord user already predicted my next steps (shoutout):

The original plan was to hide a fishing rod and a map to a location in the secret dungeon. Fishing at the location would start a lengthy fishing game. Ultimately, the player catches an entire sunken ship with a 2D platformer game within. This would then escalate into the player taking control of the ship leading into a shmup at sea with cool ocean monsters in the game’s visual style. I’ll share the concept art in Discord when I’m in a better mood.
I guess this change of plans at least saves a lot of time.

The game is yet to be released on some big platforms. It’ll be updated with these changes before that. For now I’ll put a sign at the start of the secret stage that it’ll all be changed dramatically, so people will stop complaining* leaving feedback about it.




*For real though, I’m kidding. Please leave as much honest feedback as possible. It is legitimately extremely important.

Obligatory New Year’s blog post 2023

New year, new blog post. This post is mostly me organizing my own thoughts on my projects: looking back at the past year and thinking about what I’d like to achieve next year. I’m not sure if this is interesting for anyone other than me, but I think the exact same about any project right before its release, so what do I know.

2022

2022 was a year that existed, we can all agree to that. It had four entire seasons and contained a whopping 365 days (in case you didn’t know). Furthermore, I did 3 full releases of web games, which is below average for me. In 2020, I “only” completely finished 3 web games as well, although that year I also spent some significant time on the Amidst the Sky sequel, AKA Project Amidst. Past year was similar, as I spent a lot of time developing Cursed Travels: Sunken City (WISHLIST IT NOW THANK YOU).

On the positive side, I’m satisfied with how my games of past year turned out, and their reception was favourable as well. Two of them were entries in the Cursed Travels series, including the fourth entry, which became my personal favourite. Factories and other places with vaguely designed machinery are fun to play around with.
My third game of 2022 was Generic Fishing Game, which at some point was meant to be a very short, dumb gag for Halloween, but changed into something bigger during development. I actually had to work surprisingly hard near Halloween to make the deadline, but fortunately that work wasn’t in vain. The reception was more positive than I expected, but then again, I had absolutely no idea what to expect from that weird project. As a side note, Generic Fishing Game very recently released on Armor Games.

That’s not all, in 2022 I also released a prototype for a fun (at least IMO) little mouse-based game called FlowerFlight and a prototype for a shmup called Stone Blast. These are both exclusive for Patrons though.

2023

At the very least, 2023 will bring the full release of Cursed Travels: Sunken City on Steam (have you wishlisted it yet?). Furthermore, count on the very minimum of 3 “smaller” games, much like in 2022. Those’ll very likely be web games, but I’ve been considering other platforms as well, such as mobile and more Steam. This is the baseline.

That’s all good and all, but I’d like to achieve more this year, so let’s set some goals that are blatantly unreasonable, but would be really great to get done in 2023. That way, if I fail to do them all, it was as expected, and if I succeed at even one of them, we can say it was some great achievement against all the odds. Okay let’s go, here are all the things that I’d like to do game projects-wise:

  • Have a fully fletched demo for Sunken City for upcoming Steam Next Fest, start and maintain a weekly dev log at some point and pretty much finish the entire game in March. The Next Fest is in a month or so IIRC, so I really need to get to that basically right now. The demo will likely be a small part of the forest area, and feature some wacky gameplay mechanics and characters. The weekly dev log should be doable, the biggest challenge will be figuring out what the heck to even write about. As for finishing the game in March, we all know that’s very wishful thinking (speaking of wishes, don’t forget to wishlist the game on Steam!).
    By the way, I’m thinking $13.00 for Sunken City would be a cool price tag, but it depends on how long the game turns out to be and how pricing even works on Steam.
  • Get some actual significant progress on all three: Project Amidst, Cataractae Remake, and this game. Finish and release at least one of them. All of them are meant to be released on Steam for a ridiculously reasonable price.
  • More “small” (web)games. Let’s say at least 6 total to roughly match my original plan of releasing a game at least every 2 months. I have so many unfinished projects and concepts lying around that it’s genuinely getting depressing. This includes games such as Ferry Wheel as well as some stuff outside of my comfort bubble. This may or may not also include an April Fool’s game (although that’d clash with me working on Sunken City) and a spiritual successor to Generic Fishing Game for Halloween.
    In case I manage to amp up the frequency of games, I’ll also finally expand my Patreon a bit more.
  • Port Warper to mobile and finally make something really cool I’ve been planning for mobile. Yes, this is pretty vague, and I’ll leave it as such.

That’s it for this ol’ blog post. Let’s make 2023 our best year so far. Oh, and here’s a screenshot from Project Amidst, because a blog post without an image is annoying:

.

..Oh right, happy new year and all that. Bye.

P.S. Has anyone found the Cursed Travels fellas in N Step Steve Part 2 yet? They should be in there somewhere, but I haven’t found them as of writing this haha.

The Stump Area in Lost in Firefly Forest – Implementation


–This post contains spoilers for Lost in Firefly Forest, consider playing the game first right here, it’s free!–

Many people have asked me how the stumps area near the end of the game was implemented. Well actually, only 2 or 3 people asked, and it was quite a while ago, but the implementation was surprisingly simple, so I thought I’d describe that in more detail.

Let’s first quickly recap the actual puzzle. To solve the room, the player has to walk a certain path along the three tree stumps on the ground. Note that the stumps are solid, impassable objects. After walking this seemingly specific path, the branches near the top of the screen disappear, opening the way to the finale.

This image has an empty alt attribute; its file name is stumpsingame.png


Now let’s take a look at what this area looks like under the hood, behind the scenes, however you want to call it, in the GameMaker Studio 2 project:

This image has an empty alt attribute; its file name is stumpsinproject.png


First of all, the pink tiles are walls. Since all the trees on the side are just sprites, these wall tiles handle the actual collision so that you cannot walk through them. Now for the puzzle in this room, there are 5 important objects present:

– The puzzle controller, i.e. the gray circle with the question mark near the top.
– Four triggers, i.e. the four blue areas.

Each trigger is tagged with a unique integer from 0 to 3. Whenever the player collides with a trigger it sends its integer tag to the controller which stores that trigger as the most recent. If we collide with the most recent trigger, nothing gets sent to the controller (so the controller doesn’t for example get non-stop 1s if we stand still on a trigger with tag 1). As long as you only touch one specific trigger while walking around, that integer will be sent once and then nothing.

The controller has an array of integers within the same range as the tags: this is the order in which the triggers must be touched. For example, if this array is [1,2,1], then this can be achieved by walking like this:


Such an array pattern is used for when the player is told to walk a circle around a stump via the clue. However, it would also be correct to walk like this:


So there is some leeway. In fact, you could walk like this, and [1,2,1] would still get done (remember, if we collide with the most recent integer, nothing happens):


Such a simple approach works firstly because the player cannot see where these triggers are, and would thus be inclined to carefully follow the path. Secondly, this leeway ensures small errors don’t get punished; there is ample room to walk between triggers, and you can even backtrack over the most recent one. While brute-forcing is still possible, it has been made very hard by making the actual in-game array to be solved long. This length should not be too unforgiving due to the aforementioned leeway.

So there’s that. When the player generates an array of numbers by walking around that is identical to the controller’s solution array, the controller removes the branches and we can be off to greet the sun.
Hopefully this post was even remotely interesting. Back to Cursed Travels: Sunken City (don’t forget to wishlist it on Steam, click here!).

Cursed Travels: an actual plan

It’s a new year; a whole year to bring the Cursed Travels series to some interesting climax. Over the holidays I’ve been putting some work into the series and I’ve come up with something resembling a plan. It consists of the following future releases, in chronological order:

1. The third Cursed Travels web game, which is nearing a finished state, will be released within a month from now. Actually, the game’s technically done, but nobody’s playtested it yet. That means the game could be awful at this very moment, I just don’t know it yet. It’s also very possible it’s too difficult right now; I usually have to nerf some parts of my games before release.
This entry has the player solving puzzles to break an ancient seal in a dense, dark forest.

2. The fourth free web game is at about the same stage of development as before, namely mostly done on paper. I’ve started making some of the visuals and implementing core mechanics today. This one will also involve magic seals and is set in an abandoned factory.

3. A bundle containing the first four Cursed Travels, to be released on the Steam platform for a low price. It’ll have the usual benefits that come with such a release: better performance (as it’s not web based), achievements, and the fact that you actually own the games now. Additionally, I’m considering making a small exclusive Cursed Travels game to be released only in this bundle. It’d be about half the size of any of the others. Furthermore, some sort of teaser for the big Cursed Travels game (see 4) might be a solid idea, and there’ll likely be some more extras.

4. A big Cursed Travels game where we finally delve into the lore of the Sunken City. Thinking maybe the size of all the previous games combined times two, but we’ll see. There will be actual traveling involved, many spooky settings and puzzles, and a decent number of skeletons. It’ll be well worth your time if you liked any of the previous ones.

During the holidays I’ve spent some time on the Sunken City related Cursed Travels’ story, puzzle mechanics, and visuals. The third and fourth games won’t be released immediately when they’re done so that I can put some work into the Sunken City and get some promotional material out there at the same time as the fourth installment releases. Note that only working on Cursed Travels all the time and staying focused is unrealistic, so expect other (web)games to release in between too, as usual.

Executing the above plan up to and including the Sunken City will be my arbitrary goal for 2022. Because let’s be real here, what’s a year without an arbitrary goal?
Hope you have a great 2022 and thanks for reading!

Cursed Travels: what more to expect

The second entry in my Cursed Travels series, The Shattered Labyrinth, was very recently released; play it HERE if you haven’t already! And if you’ve finished it already, have you found the secret room yet?
Anyway, I thought this might be a good time to write about what my current plans for the series are.

The first entry in the series, Flame of the Banshee, was quite fun to make. Usually when carefully approaching a new project I start with some base gameplay mechanics, and work from there. Flame of the Banshee, on the other hand, started with a vague idea for an (arguably) interesting visual I had one late evening in March. Some quick doodling yielded the following result:

First draft of what would become Flame of the Banshee


I figured a game in this style might be worth a shot. This time the challenge was designing from a very basic premise and visual style, instead of gameplay. This in turn forced me to think more about the why, thus pushing me to create more lore for a change. I early on decided that Cursed Travels would be a series if it was well-received.
Another thing: I assumed this visual style would be quite challenging to work with. Not only is it a bit pixely (all visuals are doubled in scale), but more importantly it only uses two colours. I assumed sprites would blur together into a noisy mess of the same colour. As it turned out, this was way less of a problem than anticipated thanks to some easy tricks. Firstly, important sprites such as characters or significant objects have an outline of the dark colour. This outline isn’t all that noticeable perhaps, as the background is often the dark colour itself, but when moving these sprites in front of other light visuals they’re still easily distinguishable from them. Secondly, simply using dithering appropriately goes a long way, as long as you fill the rest of the sprite with the dark colour. For example, the graves in some backgrounds are barely filled in with just a little usage of the light colour. Because the rest of the shape is still there in the same colour as the background, you still get a good sense of what shape they are when they overlap with other objects.

Some of you might be wondering what happened with the mysterious bottle you get in Flame of the Banshee, which was absent in Shattered Labyrinth. Don’t worry, this artifact has not been forgotten. I’m saving the bottle and the very related fabled Sunken City for something bigger in the series. Before we get to that point though, it seemed appropriate there should first be a couple of entries like the first two to flesh out the world and the characters a little bit. Additionally, these first games serve as a nice opportunity to play around a bit with the gameplay and puzzles, see what works best. Flame of the Banshee had the mechanic of placing candles, whereas Shattered Labyrinth was more about the titular labyrinth and throwing flasks. Future entries in the series might have more or less focus on exploration, puzzles and/or platforming. Some things will always remain the same: the visual style stays (although each game will have 2 different colours) for example. The games will always focus the most on puzzles and riddles and such, less so on platforming skills. And I’m quite fond of the high five at the end. Ultimately, things that work well can be reused in a larger game centered around the Sunken City, or other instalments.
In short: expect more stand-alone Cursed Travels games before the mysterious bottle makes a comeback.

As for right now, the third entry is already in the works. More specifically: most of the game has been designed on paper, and the main backgrounds are done. It’ll be on hold for a little bit though, as the latest one just released and I’m working on that there little Steam 2D platformer thing.
A fourth entry has also been mostly designed on paper. So I’m thinking maybe just those 2 (the third and fourth entries) plus perhaps a fifth “small” Cursed Travels instalment, and then it’ll be time to look for the mythical Sunken City.

Ok bye.

I don’t know what I’m doing: June 2021

Ever since I started making games my philosophy has always been to… well, just make games. This approach is inherently very short-term: focus on the next game, throw it on a site somewhere and start on whatever I feel like making next. This used to work okayish. In 2019 and part of 2020, I’d put my games on Kongregate and people would actually play it too, shockingly. However, the mythical “golden era” of Flash games had already ended years ago. As for more recently, the aforementioned site stopped accepting new games, Flash bit the dust completely, and some other sites (luckily not all) are displaying some red flags as well. Time to focus a bit more on a Steam release.

Heading toward Steam was always the plan, but one thing endlessly worries me: sure, I could make a game for Steam, but who is actually going to buy it? With that question in mind for a while I realized that I should finally take the long term into consideration. To that end I’ve made a mail list, as an effort to retain at least a part of my audience from the web games. Hopefully people who follow me via there or Twitter or Itch, might be interested in buying a Steam game (aside from being notified whenever I finish a new web game).

So this down here might be the plan for now. I’m not very consistent with plans, as some might have noticed, so take this with some amount natriumchloride:

1. Still make web games in between
Web games are just too much fun and easy to publish. However don’t expect anything as big as for example Tower of the Scorched Sea. That extra effort is better spent on Steam games. There will be more Cursed Travels, that is for sure. I need some outlet to make horror-like stuff and cryptic riddles and puzzles. Other smallish, possibly experimental stuff is very likely. Basically, don’t expect less web games per se, just more focused, smaller games.

2. Make a small Steam game
Steam is big and scary and I want to start with something small to see how it all works. I’ve already started on an atmospheric 2D platformer that I think might work very well, but we’ll see how that goes. More on that in the near future.

3. S_E_C_R_E_T P_R_O_J_E_C_T
There’s an interesting idea flying through my head for a while now. It’ll also release on Steam, but only after the waters have been thoroughly tested with the small game. Who knows a publisher might even be interested, but probably nooot~.

4. Project Amidst
Man, this game got big very fast. I still get back to working on this every now and then, but it’s very far from being finished. After the secret project I’m probably confident enough to go back to this full time.
As a little update on how this one’s going: it takes me 1 hour and 10 minutes to play through all the content the game has at the time of writing this. For reference, it takes me 36 minutes to play through all of Amidst the Sky. Project Amidst is already the size of 2 or 3 large web games, but runs smoother (because it’s not a web game…) and looks better (because, again, it’s not limited to wacky browser limitations). This game releasing at some point is the most certain thing in this entire post, it’s only a matter of time.

Other projects
There was this boss fight game, but that’s not going too well. I’m considering removing some of the bad parts and releasing whatever is completed on Patreon for Patrons only or something.
There was also this shmup that has about 1.5/~7 stages done, I think? I ran into the game developer equivalent of a writer’s block on this one, but that issue has recently been resolved. This one might come back at some point.

What was the point of this post?
I don’t know. Gonna work on the small Steam game now. Bye!

Aligns

A topic less boring than the title may suggest: pixel alignment in video games. I’m not quite sure what the proper terminology might be, if there even is any, but I’ll refer to this phenomenon as an align. In this post I’ll explain what they are, what issues they may cause when one is unaware of them, and how I used them in games.

What are these “aligns” you speak of?
Suppose we have some simple 2D platformer where the main character has no momentum when they start to walk. So every frame this character covers the same distance, let’s say 3 pixels. That also means that in a horizontal line, without other restrictions, the player can only move a multitude of 3 pixels from its starting position. For example, if a 1 pixel wide character moves a time period of 4 frames from starting position 36 along the x axis, then we will arrive at position 36 + 3*4 = 48 (see Figure 1). As you might have guessed, that means that moving a distance of for example 13 or 14 pixels is not possible without restrictions. In the current example, we cannot reach positions 47 or 46.

Figure 1: Basic movement in a 2D platformer without momentum, and where the horizontal movement speed is 3 pixels.


In almost every 2D platformer however, there is a way to break free from only reaching x positions that are a factor of your movespeed: horizontal collision. Suppose our game is tile based, and as such all blocks that form the physical terrain are of the same size; let’s say 5 pixels wide. For simplicity’s sake, let’s continue with the 1 pixel wide character. If our character is in the position of Figure 2, then moving 3 pixels to the right is impossible, since the wall is in the way. As a result our character will move only 2 pixels, after which it can go no further due to collision. This move means that horizontal pixel positions previously inaccessible are now reachable, at the cost of our formerly reachable positions.

Figure 2: Switching aligns through horizontal collision.


Whereas the red spaces in Figure 2 were previously accessible, now we can only enter all the blue ones. To add some terminology: we have successfully switched aligns. Let’s call our align in the first example of Figure 1 the 0-align, since the formerly accessible positions were dividable by our movespeed, 3. If we would do the same as in Figure 2, our new align would then be the 2-align since our position modulo movespeed leaves 2.
Then how do we reach the 1-align, you might ask? By finding another collision that changes our align of course. Try figuring out how you could get to the 1-align in Figure 3, solution in the caption (assume there is gravity in this example).

Figure 3: How to get to the 1-align?
SOLUTION: Move the player against the left side block B, or jump up block A and collide with the wall on the far left.



Now let’s take a look what happens when our character has an actual width, let’s say 4 pixels wide, and the movespeed is still 3. That would mean that in Figure 4, where the gap to the right of the player is exactly 4 pixels wide, we would not be able to get through it. At least not with our current align. If we would move to the right 4 frames (12 pixels) from our starting position, we would be 1 pixel too far to the right. Assuming you can jump around, try to figure out how to get the right align to fit through the gap.

Figure 4: Trying to fit a 4 pixel wide character through a gap with the same width.



Colliding against the right side of the part sticking out of the right block gives the player the correct align in Figure 4. In other words, aligns can actually make an impact on your game if you have such tight gaps. In most games, movement isn’t so precise that we have to worry about aligns, but there are examples where this is the case. In I Wanne Be the Guy fangames for example, where precise movement is pushed to the extreme, changing aligns might make certain jumps easier. For more information on THAT whole rabbit hole, I highly recommend reading this resource and/or watching these videos.

A practical problem in Amidst the Sky
To give a concrete related example of “aligns in the wild” from my own games, an issue I had while developing Amidst the Sky was thanks to our good pal the horizontal align. When playtesting Amidst the Sky I noticed that if I waited some time in the blue level, some of the horiontally moving platforms would gradually desync. At first I thought this was due to the quickly implemented collision I used for them, but not entirely. These platforms handled collision as follows: each frame they would check if there’s a wall a “movespeed distance” ahead of them. If so, they would flip their movespeed and move in the new direction. Take a look at Figure 5 where both platforms have the same movespeed of 3. After only 6 frames the blue platform is back at its original position. However, the red platform takes 8 frames to get back.

Figure 5: Moving platforms that are desynced.


The fix was simple: move the blue platform 1 pixel to the left. Both platforms now maintain the same align and keep in sync. The above is an extreme example, keep in mind that this is usually less noticeable.

A whole game mechanic
Warper uses aligns as a game mechanic! Inspired by this concept, many puzzles are solved by changing your aligns. The main character warps 3 squares per move, so that fits with the first example. The mechanic is introduced in the level shown in Figure 6. The player has to change their align by moving against the crates to the right before they can go up the gap slightly to the left of the starting position. Actually, if my explanation of aligns was impossible to follow, playing Warper might clear things up.

Figure 6: Aligns as a game mechanic in Warper.


Also, there’s a hidden sign somewhere in Lost in Firefly Forest. I haven’t heard of anyone finding it as of now, which is not surprising as it’s pretty well hidden. In fact, you even need proper aligns to get to the secret spot. I recommend not looking for it, just letting you know it’s there as another example of intentional aligns.

In conclusion
You might never encounter aligns again in your entire life. Or maybe you delve into the world of precision platformers and knowing specific aligns might become crucial. Or perhaps they might be helpful if you run into something similar to my Amidst the Sky example. OR, like me, they give you an idea that can be used in a new game. Anyway, I hope that if you weren’t familiar with aligns you learnt something in this post. If not then ¯\_(ツ)_/¯

Pumpkins from Halloween 2020

Last year, during the week leading up to Halloween, I made a pumpkin (or Punkin) pixel art thing every day. I’ve posted them on my Twitter, and now they’re all here in a single post. Each one is named after some variation on the word pumpkin, see if you can guess which name belongs to which pumpkin (answers can be found somewhere on my Twitter). In random order:
Pumpspin – Pumpfin – Pumpkingdom – Stumpkin – Pumpkiln – Pumpkindle – Grumpkin.