Posted January 27, 2024 by Francois van Niekerk
It’s been quite a while since the last update, but this update has a lot of big fundamental changes to the game. The focus of this update was to fix some fundamental problems in the game, general improvements, and try to emphasize the deckbuilding aspect of the game. I think a lot of this has been improved or achieved, but there’s still a lot more work remaining.
The game now has a very temporary final boss on depth 10 and win state. It should be fairly difficult to get there and beat the boss, but it’s definitely possible, and my hope is that this can start to anchor the game a bit. The game is probably more difficult in general, so there’s also a new “refresher” room on depth 5 with some helpful shrines.
The game had a very simple collision system. Actors like the player and enemies would collide with the walls (except ethereal enemies like ghosts), but not with each other. This made it a lot simpler to do enemy AI, because an enemy doesn’t need to worry about any other enemies (they can just move onto the same cell). However, there are some problems with this: 1) multiple enemies can be on the same cell, which can be visually confusing and difficult to read; 2) the player and enemies cannot overlap, or we have a whole host of other problems; and 3) the player can sometimes target multiple enemies with a card, which isn’t great for balance (and incentivizes trying to recreate this degenerate situation). The player-enemy overlap problem was previously solved by making enemies instantly kill the player on collision, but that also makes the game quite difficult and unforgiving. This collision system has been completely overhauled with this update.
Enemies will now collide with other enemies and never occupy the same cell (but they can move past each other). There’s technically a whole collision matrix in the background, but that should be the visible result. The question arises: what happens when two actors try to overlap? Introducing bumping: when an enemy tries to move somewhere and collides with something like another enemy or the player, it will generally bump into that actor and do damage, but then return to where it was. The player can also use their basic movement to bump into enemies and do damage to them, but some enemies are “spiky” and will return some damage - so be careful!
Enemy AI also had to receive a number of significant changes to support all of this. Enemies will now generally try to avoid other enemies and not damage them, but the player can potentially upset their plans and make them damage themselves.
After the collision system revamp, it now makes a lot more sense that the player and enemies can have more health. The player starts with 3 health, but can lose health from enemies, or gain health from various cards/shrines. Shields are also a bit different: a shield layer will block an entire instance of damage, no matter how much damage it does. You keep your health when descending through a portal, but will lose any shield layers.
The collision system revamp added bumping, and now the player’s basic up/down/left/right movement can also trigger bumping if you try to move into an enemy. This makes basic movement a lot more powerful, so you won’t automatically draw a card, but you can now always wait and draw a card, and/or discard most cards to make room in your hand.
The game should generally be a lot more usable now. Tapping on most things will give you more info, and all keywords are now hyperlinks to additional info. Not sure what that term means? Just tap on it to get more info. Card info now also includes a small diagram of which cells can be targeted, with useful icons, so you can make a more informed decision about which cards to select. This info is all generated based on the configs, so it’ll automatically stay up to date.
The game also includes some basic in-game help, accessible from the menu, so you can look up some details without leaving the game. This is a temporary fix for the current lack of any tutorialization and will be overhauled at a later time.
Helping with usability, you can now undo your actions by pressing Z or tapping the button in the top right. My hope is that this will make it a lot more forgiving to play and try stuff, and not worry about any misclicks or mistakes. You currently cannot undo beyond the start of the current depth. If you re-do the same move, it’ll happen in slow motion so you can see exactly what happened.
It should also be a bit easier to play cards on devices with a mouse using selection mode: click on a card once to select it, and then click on the grid to play it there, or click on the card again to get more info. You can toggle this mode from the new settings sub-menu.
This update a lot of work went into improving the deckbuilding - research, planning and testing theories. A number of new cards have been added, and you can view all the cards in the game via the in-game Compendium (from the menu).
Once-off card terms have been clarified: cards you can use one-per-depth are “potions”, and cards that are one-per-game are “scrolls”. This is just a consistency change - the card view still explains what will actually happen when you play a card.
A new type of card is the pushing/pulling/swap cards, like Repulse and Sidestep. These cards will allow you to move enemies around, possibly getting them to attack each other, or at least not you! If you push an enemy into a wall or another enemy, they’ll probably get damaged a bit.
I think this update has much better deckbuilding, however I think something is still lacking and it doesn’t really feel like a deckbuilder yet. I think one of the big reasons for this is that we have two games fighting for dominance: there’s the deckbuilder, and there’s the movement-centric bumping game. Previously I added the basic movement because I was worried that it felt slow to move around, but I think it might be time to revisit that and re-focus on the deckbuilding aspect. I have some ideas on how to improve this (more on this below), but I wanted to get a new build out and get some feedback first.
I’m eager to get feedback on this build. All feedback is helpful, but I’m specifically interested in:
My plan is to get some feedback on this build before deciding on the exact plans, but tentatively I’m planning on: