Introducing: Karmic Memory


Upcoming Patch 1.4.1.3. will introduce elements of Soft Progression:

This mechanic was born from pieces of feedback, pointing out the fact, that since there's no procedurally generated Layouts, repeatedly tackling same Regions might get tedious in the long run. This is a valid point, but with the kind of core loop that 'Ruins' revolves around (discovering Traps and learning to play around them, planning your route, getting Keys from X to Y without losing them on the way), I currently don't see a way of auto-generating these kinds of puzzles in satisfying, challenging ways without sacrificing parts of the appeal stemming from classic 'Die Gemäuer von Kalawaum', the legacy on which 'Ruins' is built.

If I was to introduce some sort of progression, it wouldn't come in the way of fancy Stat Increase or new Abilities … 'Ruins' is not that kind of game, nor will it ever be. In that regard 'Ruins' plays more like a European Boardgame than an American one, albeit with more Dice Rolls and instances, where random events may get in the way of deterministic planning. That's Roguelike for ya, plus some emergent replay value coming in the form of procedural World Parameters and Monster Abilities, but overall it remains a tightly tuned, straightforward Clockwork of Mechanics.

Still I saw potential to offer a satisfying middleground by introducing a new mechanic called 'Karmic Memory': The game will now memorize discovered coordinates of Wall Tiles, and in subsequent runs reveal them 2 steps ahead of you. So Players still get to explore in the usual way for the first time around, but afterwards they're allowed to traverse Areas already known from "past lives" a lot faster.


Now, uncovering Walls 2 steps ahead does not sound like much, but it's actually a huge deal, because priorly visible boundaries enable Players to adapt their movement patterns in advance, thus exploring more efficiently, without toning down elements of mystery, because walkable tiles (and whatever Horrors may lurk within) remain in the dark. Getting around a Region one has visited before can now be done in roughly half the time it took to completely revealing it for the first time around! Also lighting Candelabras  becomes more  rewarding,  since the system works recursively: a freshly lit Candelabra will check whether Walls are adjacent to recently lit tiles and reveal them as well.

Implementing 'Karmic Memory' did not come without design problems and technical hurdles, though: there are three Enemy-Types (Star Spawn, Mi-Go and Crawling Chaos - one of them may encountered in the Demo) which can flip and rotate orientation of Layouts, some passively, some after combat interaction:


So after dying and respawning at a Shrine (after having performed Ritual of Binding there), one would expect information about discovered boundaries to persist, but suddenly multiple Regions (and respective coords) could exist in various states of alignment, and recovering their original state wasn't as easy as it sounds.

The solution was to keep 'Karma Array', where intel about discovered coords got updated, in a permanent native state - then, when retrieving a state and comparing it to tiles about to be uncovered in the updateFogOfWar()-Procedure, respective coords were "translated" on the fly to current World Alignment, then processed accordingly. Dying would store the 'Karma Array' in a temporary 'Helper Array', then copied back into primary 'Karma Array' upon respawning. No information got lost. Current state of 'Karma Array' is stored in respective SaveFile of active Module, and when closing the game, gets synced once with respective 'World Seed', where information about the 'Karma Array' may only be processed in two ways: either cumulatively adding information, or resetting it altogether. Starting a New Game without Rerolling Seed would load ALL intel from 'World Seed' and sync it once with the freshly initialized 'Karma Array'.

Another issue I had to resolve was, that suddenly Secret Passages got hinted at in unintended, obtrusive manner; I am okay with this happening ...


but not this:


So I refined rules for Karmic Reveal: to allow Blocking Tiles to be uncovered 2 steps ahead, at least one revealed Non-Blocking Tile must be adjacent (may be a locked Door, but not a Secret Passage)! To compensate for the stricter rule I also allowed Static Obstacles like Inscriptions, Tombstones, and Pillars to be tagged in the 'Karma Array', but since Shrines and Fireplaces are procedurally generated, those still have to be discovered the old-fashioned way ... in rare occurences, should Shrines or Fireplace replace an already tagged Static Obstacle (which is totally possible), they will not be revealed ahead of the Player, even though their coords may be tagged in the 'Karma Array'.

I considered making this mechanic an optional Difficulty Setting, but 'Karmic Memory' turned out such an indespensibly rewarding experience, that suddenly I could not imagine the game without it anymore, so it became baseline. I even tried going further by having it always active, even for first-time exploring, but then it tended to mess with 'Ruins' inherent vibe of Exploration: there is just something about entering a new Region, be surrounded by oppressive Dark and Mystery and that eerie feeling of something lurking in the Unknown ahead, which I wanted to retain:


That, plus Unlocking Stuff is Fun - and now, in this game, you are step by step unlocking the World!

So I compromised by letting 'Karmic Memory' build up only as long as one sticks to a particular seed ... Rerolling 'World Seed' also resets 'Karmic Memory'! Full release will have an optional Hardcore Mode available, which, among other tweaks, aims to emulate an experience closer to classic 'Kalawaum' due to more punishing consequences, and I'm planning to disable 'Karmic Memory' in that Game Mode as well.

Files

TRoC v1.4.1.3.zip 45 MB
Feb 15, 2022

Get The Ruins of Calaworm

Leave a comment

Log in with itch.io to leave a comment.