Slurpisug

"All contenders of the Saints' Arena feared Gyvji's mythical tail slap, supposedly so strong it could knock your soul out of your body and into the crowd, leaving the body untouched. Thankfully, it wasn't long until reality caught up, causing the victim's flesh to charge into the hopefully empty seats of the stadium, where it would be rejoined with its distraught spirit."

  • Flavour text of Gyvji, Soul-Severer, a Legendary Artistic Soul

The Games Foxes Play

(github | view all previous posts | play 0.3 online in browser on itch.io!)

This week, I removed health, damage and killing from my game.

Yes.

Slurpi-Souls, Now Available in 6 Flavours!

The fact that living beings were able to slay each other didn't make sense in the game's lore. And besides, suffering, agony and death are overdone tropes. I trust this new system should deepen strategic options significantly, and make even basic bump combat much more interesting...

It is inspired from the Serene Spire mechanic I showed off exactly a month ago, but applied to the entire game because it was just so fun. As I don't expect anyone to remember, here is how it works in a nutshell:

  • All damage points are converted to knockback points.
  • When striking a foe, they are knocked back for a number of tiles equal to the number of accumulated knockback points.
  • If the foe is knocked back for more than 2 tiles, their Soul is severed from their body, stunning them.
  • The Soul rejoins their body one turn later.
  • If the foe is knocked into a wall, the hit crits, and the stun duration is much longer.
  • In this case, the Soul remains vulnerable for a couple of extra turns.
  • The player can take this opportunity to slurp up the Soul, and permanently disable the enemy it is attached to. The newly acquired Soul can immediately be used to cast spells.
  • The soulless husk left behind becomes a simple obstacle, and can be pushed and pulled around.

Of course, a demonstration is worth much more than a mere bullet point explanation.

As there is so much more to take into account, even slaying 3 basic enemies in one room is now much harder. This is exactly what I wanted - I don't have to spam enemy spawns absolutely everywhere to challenge the player anymore, and the power growth curve can afford to be stretched out for much longer.

Not the most productive week ever, but it is temporary. Those who know where my Reddit/Github profile picture is from will understand.

Monolithic

"A legendary parasite attracted to hosts thinking of it. As the cure to this strange disease was simply to find a way to entertain one's mind away from the worm's presence, patients reported greatly increased moods after being cleansed of its influence. Ezezza eventually became aware of its own existence, perishing instantly."

  • Flavour text of Ezezza, the Unthinkable, a Legendary Feral Soul

The Games Foxes Play

(github | view all previous posts | play 0.2 online in browser on itch.io!)

0.3 (including everything related to map generation from last week and this week) will release on itch.io soon after I've fixed some weird interactions with the reincarnation mechanic.

My neurons are fuming and my grey matter has been crushed into a viscous slimy paste. But at last, it is done.

BEHOLD. My brand new, 100% organic, GMO-free random dungeon generator. WITNESS. Fully featured with 2x2 rooms, corridors, dynamic paths that never create isolated areas and prefab vaults. ADMIRE.

If I took a time machine and showed this to myself from May 2022, he would ask, bewildered, "Wow, Onei, how did you become so good at programming?" My esteemed clone, it is all artifice and illusion. For starters, the function that decides where rooms are allowed to spawn in the first place is the exact same as the one that used to choose where to build walls in a given square room. In fact, when I generate a new dungeon, I am generating a room that does not exist with assorted walls and floors. Then, I replace all the floor tiles with rooms, each one containing walls and floors. A dungeon is basically a room built out of rooms. Meta.

Then, with the assistance of a couple of capital crimes against the very concept of programming, I look for sets of 4 1x1 small rooms and replace them with a single 2x2 big room, I turn rooms with exactly 2 neighbours into corridors, and I sprinkle in some pre-defined structures here and there that I talked about more in my last Sharing Saturday. Finally, I place exits on every single possible connection and call it a day.

It is unholy. It is abject. It is vile.

But it works.

Rooms Within Rooms Within Rooms

Naturally, after completing this atrocity, I had the thought any sane man should have in my place: "Why stop there?" Each and every single white pixel of this twisted maze contains one entire dungeon. Considering that the previously demonstrated dungeon map is composed of 9x9 rooms and that the maze is composed of 72x72 pixels, that makes for a grand total of 648x648 rooms' worth of space, or approximately 420 000 rooms. The universe is therefore a room, made out of rooms, which are also made out of rooms. The glorified calculator that serves as my computer would not be very happy at the thought of generating each and every single dust speck of this complex, so dungeons are only generated if the player visits them by exiting from the extremity of a previous white pixel. Notice the red exits leading out of the current dungeon at the eastern and southern extremes of the third screenshot. Northern and southern exits would lead into a black pixel of the maze, so they remain blocked.

Yes, the maze is procedurally generated. No, I didn't make the algorithm for it. I checked the license, don't worry.

The Rivers Will Run Cyan

As an experimental feature, I added a quick pandemic simulator to my maze-world map. Starting from a single room, the Harmonic song flows across the Faith's End complex like a plague, assimilating everything it touches. I've been tossing ideas around for an equivalent to the dreaded hunger clock, with the aim to incite the player to hurry up a little during their exploration. Instead of having the player character growing weaker as their belly empties (which is lame), why not instead have the dungeon itself gradually lose turf to an indiscriminate, all-conquering force and its very strong Collectivist enemies? This concept is still in the design phase, but it would fit extremely well with the game's themes.

Otherwise, I am having some doubts on how I will actually manage enemy encounters. This week, I overhauled the terribly outdated "spawn X enemies where X is the number of cleared rooms+1" function and replaced it with a neat squad system that picks themed assortments of enemies to team up against the player. However, I'm still hesitant on the specifics. Once the rooms hit the 12+ enemies mark, things start to get quite crowded, but I want to continue scaling the difficulty (and the player power level)! Due to TGFP's design, it's really hard to just make things hit harder or tank more hits and call it a day (which is lazy design, anyhow!)

I'm also honestly not so sure about the title of my game. I picked it very early because I was listening to this excellent dark ambient track on that day and thought the name was beautiful and mystical-sounding (especially given the context of the song). In my game's flavour, the Harmony's air elementals enjoy taking the vague shape of fox spirits as they go about their plots of conquest (which are non-violent and full of tricks and traps), so it felt fitting. I am however not a fan of the fact that an (admittedly unpopular) finance self-help book is the first result when looking this title up on a search engine. In truth, none of the candidates I've thrown around have proven as poetic...