Status
SteamPeaks
ChartsSalesUpcomingPatchesNewsCalculator
New on SteamEvery app, DLC and depot the minute Steam creates itAppsEvery app on Steam, newest change firstPackagesSubs and bundles, and what each containsDepotsDepots, manifests and install sizesTagsSteam's user tags and the games under themDevelopers & publishersCompanies and their cataloguesTechnologiesEngines, SDKs and anti-cheat found in the filesChange historyEvery PICS changelist as it lands
SignalsNineteen readings of the whole catalogueCompareAny games side by sideRecordsAll-time peaks and the days they were setReportsWeekly and monthly write-upsAlerts & newsroomWatch a game, get told when it movesSteam statusIs Steam up, right nowWeb API explorerTry the endpoints in the browser
NewsSteam's own announcements and the sales calendarCalculatorWhat a Steam account is worth, and its pile of shame
/
Sign in
/
SteamPeaks
The ultimate resource for Steam data.
ExploreChartsSalesSales and festsUpcomingPatchesNewsRecordsTrendingSignals
DatabaseAppsPackagesDepotsTagsDevelopersTechnologiesChange history
ToolsCalculatorCompareSearchAlertsSteam statusAPI
SiteMethodologyFAQDiscordSupportSign in via Steam
Not affiliated with Valve or Steam. Game names and artwork belong to their owners. All times UTC.
PrivacyCookiesFair useStatus
Blood Sword DemoNewsMini Devlog #4: Translating the tabletop grid to a screen
Community

Mini Devlog #4: Translating the tabletop grid to a screen

Blood Sword Demo · published 9 Jun 2026, 13:15 UTC

All newsPlayers around this dateRead on Steam

Hey everyone,

If you've been following the game here on Steam, you've mostly seen static screenshots of hex grids and character models. But lately, I’ve been spending almost all of my time deep in the combat engine, trying to answer one big question: how do I make a classic paper-and-pencil gamebook feel good as a digital PC game?

In the original Blood Sword books, your imagination does all the heavy lifting. You roll the dice, do the math, and picture the sword strike in your head. In the early drafts of the combat, having characters just stand there while numbers changed in a log felt incredibly flat. I needed the game to visually communicate the weight of those dice rolls.

I recently spent a good chunk of time just working on the physical feel of the hits. Now, when a character takes damage, they flash red - and that flash actually scales in intensity depending on how devastating the hit was. I've also been hooking up specific visual effects and audio queues; you'll hear the difference between a sword clanking off armor, a blunt strike, or a creature's claws swiping through the air. To make sure you don't miss the details while watching the action, I built a floating text system so dodges, blocks, and exact damage numbers pop up right over the fray.

Another big challenge for me as a solo dev is the interface. Tactical RPGs can easily turn into a mess of spreadsheets and menus, and I really want to keep the screen focused on the environment. During my own playtesting, I got annoyed having to constantly open my full inventory to drink a potion mid-fight. To fix this, I expanded the main Action Bar and built a little slide-out "drawer" that holds 12 quick-consumables. I also made the whole UI automatically slide off the screen when the AI is taking its turn, which makes the battles feel much more cinematic.

But a tactical game isn't just about looking nice; it has to respect the rules. Adapting the tabletop combat mechanics into strict code has been a puzzle. For instance, I wired up the logic that prevents you from firing a bow at point-blank range (you'll need to step back or switch to a melee weapon). Another old-school rule I implemented is the Defend action. Instead of using modern "opportunity attacks," you cannot just run away from an adjacent enemy to kite them - you must have used Defend the previous round to safely disengage or flee the battle. When you try to make a ranged attack the game will indicate if you're out of arrows or lack the Archery skill, rather than just stopping your turn. Small choices matter now, too - swapping weapons mid-fight, using Defend, using an item, etc will cost you a precious Action, so you have to plan ahead.

Because information is so vital for planning those turns, I overhauled the way you view the battlefield. Instead of clicking around to find stats, your mouse is now an active scanner. You can hover over enemies, map props, or the hex cells themselves, and a detailed tooltip will float right beside your cursor, breaking down movement points, unit details, and dynamically coloring any negative modifiers you're suffering from. To back this up, I've also added a comprehensive, color-coded combat log that expands vertically, allowing you to scroll back to the start of the fight and track the entire history of every strike, spell, block, and status effect.

Speaking of those hex grids, in the game's early design days, I actually explored using square grids. This was meant to match the maps printed on the pages of the original books and was heavily inspired by the tight battlefields of Into the Breach. But once I tried hexagons, everything just clicked. The truth is, on small battlefields (64-100 cells max), hexes allow for much more interesting positioning. They fit the game's slightly isometric visual style perfectly and help create that nostalgic Heroes 3 experience we all crave. You can check out an old concept from the early square-grid versions below:

As of writing this, I'm just wrapping up the next big adapted system: the magic system - specifically drafting out how the Enchanter's spells from the books will work on the grid. It was a daunting task, but a really exciting one which I cannot wait to share with you!

Thanks for being on this journey with me and for all the wishlists and support!

https://store.steampowered.com/app/3645170/Blood_Sword/

More from Blood Sword Demo

Other announcements

All news
Community8 Aug 2026Mini Devlog #6: Four heroes, one planHey everyone, I shoved a werewolf into a field of caltrops last month and nothing happened. It padded across the spikes without a scratch and went straight for my Sage on the other side. I sat there for a good while wondering which half of the plan was broken, the push or the caltrops, or whether I had invented the whole combination in my head. It turned out that knockback places a unit on a ti…Community14 Jul 2026Mini Devlog #5: Rewriting the rules of magicHey everyone! Last time, I signed off saying I was drafting out how the Enchanter's spells from the books would work on the grid. Well, the past month has been almost entirely devoted to that - and to building out the full skill system for all four classes. Today I want to talk about one of the biggest deviations from the source material I've made so far: changing the books' spell system. I kno…Community11 Apr 2026Mini Devlog #3: Chickenpox, Curses, and Adapting Paper to CodeI know it’s been a while since my last update, and honestly, the silence wasn't part of any master marketing plan. Over the last month, half my family came down with Chickenpox . Balancing the roles of a dad, a makeshift nurse, and an indie developer meant something had to give. Naturally, I couldn't stop the development train, so I just put my head down, drank too much coffee, and kept grindin…