soM Dev News – Special Edition
I always publish the actual month's version update on the last Friday of the given month. Due to calendar effects, we had a situation this week where, despite July's update already being released last week, most of the week still belonged to July and actually August only started today. So I decided that instead of starting to work on v0.0.4 content, I would spend this "orphaned" week entirely on developing the fight engine. While there’s still a huge amount of work to do, I can finally deliver you a first look at the system. First things first: I’ve added (hopefully) all the missing items needed for the first fight, including several new weapons.
After you click on the enemy encounter icon on the map in Winemaker's Haven, the fight engine opens with an information panel that is still under development. The left side is done — it shows the story and a choice button (currently just “Fight!”, but depending on the situation you’ll have more options later — for example, choosing who to side with). The right side will eventually contain either an illustration or additional fight-related info (or maybe both?).
The fight interface might look a bit overwhelming at first glance, but you’ve probably already realized this game — with all its skills, items, and map interactions — was never meant to be simple. On the left, you’ll find a message panel where participants in the battle can speak. These messages might include choice buttons later (react? switch sides? bribe the enemy leader?). In the middle is the map where the fight takes place. Basically, it's an overly complicated board game where you move your units and fight enemy ones. On the right is the information and action panel.
The info panel always displays the currently selected unit — friend or enemy. You’ll see what weapons they’re using, their damage range, strike count, and resistances. Your skills really matter: while my Rustic Bow normally only deals 2–7 damage with 2 strikes, my cheat profession — the “demigod-debugger” — gives me countless skill points, allowing me to deal a magnificent 22–78 damage. The tooltip also tells you the weapon type, which matters because each unit has different resistances depending on the incoming damage type.
Terrain defense will be added later to the middle empty section (just above the buttons). While moving and fighting should hopefully feel relatively simple — click on a unit on the map, move it next to an enemy, and click on the enemy to attack — there are also special actions you can use through command buttons. You can collect loot if there’s any on the hex you’re standing on (either preset treasures or dropped items from defeated enemies). You can recruit units from your army if your character is standing in the center of a castle (any castle — yes, feel free to conquer the wolf spawn). “Shoot Gun” becomes available for units equipped with gun-type weapons. Melee and ranged weapons can only be used if you’re standing in a hex next to your target, but guns can shoot from a distance. If the enemy doesn’t have a gun, or has one with a shorter range, they won’t be able to retaliate — unlike in close combat.
Coding is tiring. There are days when I can’t bring myself to even open Twine. On those days, I either work on the story or create DAZ art. If the bandit girl in the last screenshot looked familiar, you’re not wrong — her high-definition unit art already appeared in v0.0.2 dew news. Now her story continues with after-battle scenes where you might catch her as she tries to flee.
I hope you found this preview interesting. I must stress, however, that as visually promising as it looks, there’s still a huge amount of work ahead — from coding all the command button scripts to developing a combat AI that isn’t completely stupid. I’ll try to keep the September deadline, but the fight engine will only be released once it’s ready and functional enough to test and play with.
See you next week with the v0.0.4 content update!