Halls of Chrome

"The Artistic create solutions to problems, and when there are none, create problems to make solutions for."

  • flavour text on the Artistic tab of the skill tree

The Games Foxes Play

(complete source code - mirror | view all previous posts | play 0.4.3 online in browser on itch.io!)

I am reaching the negative side of the perfect sine function that characterizes my level of discipline in relation to time since I started. I would like to take a moment to equally celebrate and blame the hard work of the DCSS developers for making their latest "Talisman" rework way too awesome and siphoning away the limited free time I can afford to spend in front of a screen.

That being said, I have done a few things.

I think I will be stepping away from the "traditional roguelike" ethos for a little bit - by reducing the random generation and trying to make a single level that is fun to play before trying to add variation to it. This project has went through about 12 identity crises in the last year, and needs to narrow itself down to a single root.

In this spirit, I will now be focusing on making one level, centered around the very cool Epsilon serpent boss I showcased a few months ago, with a predetermined structure and predetermined enemies. The "Soul Cage" now acts as a teleporter pad, granting access.

So, the plan is this. Place cool foes around this map from the pool I have already made (including Epsilon), let the player craft some interesting Axioms (spells) to explore the core game mechanic, and basically put them in a simple 5 minute challenge to go beat the giga-robot snake. If it's fun and it works, there will be plenty of opportunities to expand the formula and return to a more diversified experience.

This will allow me to actually push a new version to itch.io (the current one is starting to get very old), and to actually stop with the sprawling mental daydreams and endless void-staring that gets nothing done.

I am feeling frustrated and utterly confused as to how any indie game ever actually gets made, especially by hobbyists who have to depend on a main time-consuming income source. It feels like I am stuck in a "two steps forward, one step back" loop - yes, there is progress overall, but the slowness of it is painful.

Despite all this, I can say without doubt that this entire ordeal has taught me so, so much about intrinsic motivation, far beyond just technical know-how.

Architect of Strife

"In truth, my artificial axioms are an anomaly. Most natural ideologies are more reactive than active, responding with hatred and love at the sight of harmless symbols."

  • flavour text of the tutorial node explaining Contingencies

The Games Foxes Play

(complete source code - mirror | view all previous posts | play 0.4.3 online in browser on itch.io!)

The overscope is real. I keep having these utterly insane, giga-mass-redesign everything visions of epic proportions, and then come up to the computer only to hit a wall of design problems or programming difficulties. Last Thursday, I quite literally stared into the void for 4 continuous hours, phased out of reality, thinking about all kinds of things I could do.

I hope I have learned my lesson now. I need humility, and the comfort that I'll always be able to build onto what I already have.

Architect of Strife

I welcome yet another JavaScript library to my pile of "things that would have taken weeks to do myself" - Pixi Viewpoint. Following an excruciating implementation process, it has allowed me to transform my zoom animation code (which used to be roughly the coding equivalent to rotting roadkill on an unpaved road after a nuclear apocalypse) into something much, much more presentable, and with a seamlessness I find quite charming. In the future, it will also open up opportunities for drag-and-drop camera panning, mouse zooming, and much more...

Aside from that, it was not a great week. I have undone multiple commits that were going pretty much nowhere, such as letting the player place enemies as they want before initiating combat, a background visual effect for the zoom animation that turned out horribly glitchy, and overall struggled with inconsistent, overly ambitious design.

One of my most "cool on paper, now actually make it" concepts was letting the player design their own enemies using the spell "programming" system already in the game (for example, create an entity with "when taking a step, shoot lasers"). Then, I'd have the player be challenged to defeat their own creations. To prevent players from crafting "when this exists, die instantly"-type pushovers, a squad of NPCs would come afterwards and try to also defeat the artificial enemies. You'd have to make the entities strong enough to beat the NPCs, but weak enough so that you could triumph where they failed.

This has so many problems.

  • What stops the player from crafting "trap" enemies like "this enemy cannot attack, but when it moves, it leaves behind traps that oneshot you"? The player will be intelligent enough to avoid the traps when they play through the challenge, but my NPC squad will get nuked the moment their AI steps where it shouldn't.

  • This implies that a portion of gameplay will be spent watching the NPCs battle it out, how can this part be made interesting and not completely passive?

  • The NPC squad will also get programmable spells of their own, do I just come up with contraptions in a weird arms race against the player to make increasingly broken combos?

I don't think the idea to be irredeemable. This concept of a "sandbox" roguelike - not in the Qud/CDDA sense where "you can do anything" but in the sense of "you can have a part in the world's creation" is not only very thematic with my game's lore, but also lets me secretly distribute some of the design work to the player so they "make my game for me while playing it", so to speak. Tongue in cheek, but I think there is potential here. It's fun to outwit a design and coming up with the "trap" mentioned earlier might be interesting... assuming it isn't some "meta" that should be made every single time.

I am at a turning point. There are so many directions I could go in. I have so many ideas, but many are bad and in the end, only a few can remain. Development might slow a little while I work this out.