The demo now features unlocks. Run progression, events and bosses unlock cards for future runs.
I also changed how drawing cards works - instead of randomly choosing from all available cards, the game is now creating a bag filled with a certain number of each rarity, then draws from that. In essence, this makes it much more likely to draw higher Tier cards.
Under the hood, this patch is the biggest change yet. I realized that most of the bugs the game had were actually all caused by the same underlying architectural issue. Unfortunately, this required me to rewrite significant parts of the game, touching over 7000 lines of code, and resulting in a net -1231 lines. The result should be a much more easy to maintain engine.
I then took another week to work exclusively on QA improvements.
While the core gameplay code has been sitting at 90% test coverage for most of development, the engine layer, aka the thing the user interacts with, was significantly less well tested.
I therefore added over 60 integration tests, testing every button, app, overworld move, visual representation and everything else I could think of. In total, the game now has 721 tests.
But what about unknown issues? New bugs for which I have no tests?
For quite a while, the game had a mode in which it played itself - bot mode. The idea was that this would run every night, and surface all kinds of issues that would normally only show up when a player touches the game. I beefed this up significantly in capability, and also added an automatic nightly script that looks through the logs and isolates specific, unique issues to cut through the noise - meaning I wake up every morning to a list of fresh bugs. :) Well, actually I don't, because I fixed them all.
- Add card unlocks
- CardDraw now uses a shufflebag: makes it way more likely to draw high-tier cards.
- Various "How to Play" tweaks
- Only pulse connections that change the value.
- Clicking arrows on overworld now also goes to next level
- Notebook now stows when starting new run from overworld map.
- Phone now only raises on button click if it touched the table before.
- Removed resolution option since it lead to issues and instead always render at full available resolution.
- Wrong tier for Blackmail Dossier
- Fringe podcast now cost 0
- Speed up node hit animation a little bit
- Various small level balancing tweaks