I’ve been having a blast solo-roleplaying a grim (but not grimdark) fantasy mercenary company campaign, and I figured I’d do a little write-up to talk about the systems and tools I’m using.
The main inspiration is The Black Company by Glen Cook – a book series I greatly enjoyed. I play as the commander of a mercenary company, with the company’s senior staff being the main characters of the cast.
Speaking of solo roleplaying, I am also still working on DANGER CLOSE, my tactical military skirmish TTRPG which has its free core rules in version 0.9 and amazing final cover art!
I’m trying out a new campaign-keeping tool for this; in the past, I used Kanka.io, but for this I’m giving LegendKeeper a spin. I love its modern interface and map features, which include navigation pathfinding and other neat tricks!
I initially started with a barebones story; the company (named the Blackjays) fled a battlefield turned apocalyptic after magic-users on both sides led their spells fly, and now the mercenaries are stranded in the wilderness, having to survive the winter.
For this, I used an empty hexmap which got explored over time, and I kept track of time, rations, morale and troops.

With the discovery of refugees and a nearby village, the Blackjays turned into impromptu nobles, with a deal of safety and protection in exchange for food.
Gameplay
For most gameplay, I used Silver Nightingale’s Ultimate One Page Solo RPG Toolkit. For combat (which was rare), I used a somewhat-homebrewed version of Luke Gearing’s Violence. I did not use my own, beloved Block, Dodge, Parry because I believe in picking the right tool for the job; this game isn’t about fatigue and inventory management, but about occasional quick brutal swordfights.
I made a small addition to Violence., in the form of stances:
Stances
A stance affects one’s chance to hit and the severity of injury for both themselves and their opponent.
- Balanced Stance. No modifiers.
- Aggressive Stance. +1 to the user’s melee d12 roll.
- If either combatant has to make an Injury Check this exchange, all Injury Checks rolled as part of this exchange are made at +2.
- Defensive Stance. -1 to the user’s melee d12 roll.
- If either combatant has to make an Injury Check this exchange, all Injury Checks rolled as part of this exchange are made at -2.
To randomly determine an opponent’s stance, roll 1d6:
- 1-2: Defensive
- 3-4: Balanced
- 5-6: Aggressive
The player chooses their stance first. Then roll the opponent stance and reveal it. If the opponent has a reason to lean one way:
- Defensive reason (driven back, already injured, trying to buy time): roll 2d6, keep lowest
- Aggressive reason (momentum, enraged, confident, pressing an advantage): roll 2d6, keep highest
Mapping
As this story developed, I fleshed out a simple world map (initially in Excalidraw) and placed the company somewhere in this world.

I later used Inkarnate to turn this into a full map; its high resolution export function paired really well with LegendKeeper’s map options, meaning I imported a relatively barren landscape-only map and could fill in the details about the world on the fly.
I also used Inkarnate to make some combat maps for particularly important battles. LegendKeeper’s canvas option doubled as impromptu tabletop, allowing me to place tokens as images, make notes and move things around.


Bigger Battles
I used a reworked version of my previous Mass Combat system, but I kinda missed a step of granularity between “abstract narrative mechanics for big battles” and “personal duels”, so I tinkered together a system based on Delta’s Book of War, that also ties nicely into the ‘level of training’ property I use on the individual scale in my Violence. rules.
My Wargaming-Lite Skirmish Combat Rules
Units
A ‘unit’ is a single mass of troops of the same type, such as a squad. For instance: 10 troops with spear, shield and medium armor.
Moving
Units can move on their turn, tracked by the fiction. We’re not going to measure. Cavalry can move more than infantry.
Initiative
Ranged attacks go first. Next, longer weapons go first (a spear before a sword). Cavalry breaks ties (in mounted swordsman v. infantry with swords, the horsemen go first). Spears go before cavalry.
Attacking
To determine order of attacking, look at the fiction; element of surprise, training or weapon length can help determine which unit attacks who first. If it’s a pitched battle, simply roll a die to see who goes first.
- Roll 1d6 per combatant in the attacking unit.
- The base target to hit is 4+, modified as follows:
- Training advantage: +1 if attacker’s training exceeds defender’s (e.g., Trained vs. Drilled)
- Reach advantage: +1 if attacker has longer weapon reach (spears vs. swords, polearms vs. spears, etc.)
- Stance/Situation: +/- 1 as appropriate (charging, defending fortification, etc.)
Ranged Attacks
- Roll 1d6 per combatant in the attacking unit.
- The base target to hit is 5+, modified as follows:
- Training advantage: +1 if the shooter is Trained or better
- Cover: -1 if target has cover
- Range: -1 if at extreme range
Armor Saves
For each successful hit from Attacking, the defender rolls 1d6.
- Unarmored targets save on a 6+
- Light armor: 5+
- Medium armor: 4+
- Heavy armor: 3+
Or, rolling from the attacker’s perspective:
- Unarmored: Hit on a 2+
- Light armor: 3+
- Medium armor: 4+
- Heavy armor: 5+
Results
- Failed armor save = Injury
- Track injuries per unit. For a unit of 10 normal people, an injury means “out of the fight” (wounded/incapacitated/dead)
Morale
If a unit is at half of its starting strength, it must make a Morale Test. Roll a d6. If the result is greater than the level of training of combatants of this unit, the unit is shaken. It will either fall back, surrender, or must keep making Morale tests at the start of its turn to do anything else.
Unit-Specific Rules
Basic units come in a few types. They are generally referred to as their armor and type; i.e. “light archers”, “heavy infantry”.
- Infantry, wielding spears/swords/axes
- Pikemen, foot soldiers wielding polearms and the like
- Archers, wielding either bow or crossbow
Infantry
Standard infantry can wear light, medium or heavy armor. They can wield spears, swords or axes.
Pikemen
Pikemen are a specialized type of infantry, wielding polearms. They can wear light, medium or heavy armor. They can form a line of pikes: if they have not moved on their turn and are not currently engaged in close-quarters combat, they
- Always attack foes that charge them first
- Deal twice the attacks against attacking foes, with a bonus of +1 against infantry and +2 against cavalry
- The foe immediately checks morale after the attack; on a failure, they get no attack, and cannot close the distance to the pikes (thus, the pikes are not engaged)
Archers
Archers with bows may attack twice if they didn’t move on their turn. Crossbows do not grant this advantage, but can generally be wielded by troops with less training. Can wear light or medium armor, and a melee weapon such as a sword or axe to act as infantry.
Cavalry
Mounted warriors wielding sword or spear. If cavalry has the space to maneuver and charge, they deal twice the number of attacks on their turn. Cavalry troops can take 2 hits before being incapacitated; essentially, in gameplay, double the amount of ‘troops’ in a unit, or remove one troop from the unit for each 2 hits.
Horse Archers
Mounted warriors with bows. They can move, fire their bows, and then move again. They can also act as light cavalry.
This works quite nicely; I might add ‘Armor Piercing’ if I feel like it fits – and there we go, we’ve reinvented the wargame.
The Story So Far
In case you’re curious, here’s a summary of what happened so far:
The Annals of the Blackjays
Book 1 – Echoes of the Reaping
The Blackjays, mercenaries in a supposedly minor baronial war, survived the Reaping, a magical catastrophe that annihilated both armies and killed their commander. With no contract and no home, Captain Dust led the survivors north into the Greymark Reach, where they claimed an abandoned ruin, Grayhold, later Blackjay Keep, as a winter refuge.
What began as survival quickly became governance. Refugees led by Maren and Thorval were taken in, and Dust imposed strict rules: soldiers guard, civilians work, no one is treated as spoil, and all answer to the same command. Supply, not enemies, became the main threat. Rather than raid, Dust built alliances. Millbrook accepted a Blackjay garrison in exchange for tithe, while Vyla’s guidance brought Alder and Tarrow into the fold, doubling food yields and making the keep sustainable.
Conflicts tested the company’s character. Bandits attacking Millbrook were revealed to be desperate soldiers under Breck, spared and absorbed instead of executed. A potential feud with Cotter’s armed crew was defused through negotiation. Ancient ruins and scholars probing forbidden lore lurked at the edges, but Dust kept the focus on survival over secrets.
By midwinter, the Baron of Grenzfall formally recognized the Blackjays, agreeing to supply the Reach if they held it as a buffer until spring. When the Circle of Ash finally attacked, the Blackjays and Cotter fought together at Ashford Narrows, destroying the cult at heavy cost. With the Baron’s troops arriving to assume governance, the Blackjays departed, having proven they could be guardians, not just survivors.
Book 2 – The Ardelean Restoration
After securing the Greymark Reach, the Blackjays were hired by Duchess Adelina von Steinmark to escort Irina Ardelean, granddaughter of the murdered Duke Dmitri Ardelean, across the Drachenwall into Morvaşa. Their task was to gather support and present her claim against Duke Vasile Tomescu at the Voivode’s court in Cetavorn.
Marching north, the company recruited the Ochsenbande, thirty-four Geltmark pikemen under Captain Magda Stahlfaust, and two specialists: Sister Vela Kranzfeld, a battle-medic, and Kornel Skora, a hunted hedge magicker. In Tannbruck, they met Irina, a former lady-in-waiting carrying a legitimate claim. Evidence was sent south under Lady Inara Kessler, while the Blackjays took Irina through the mountains.
The Drachenwall crossing was brutal, with storms and Shadow Wolf pursuit, but the company reached Morvaşa intact. There, Dust began a campaign of rumor and demonstration. At Vălenii, the Blackjays ambushed Shadow Wolf cavalry, killing eleven and capturing four, publicly revealing Irina to the merchants. When forty Shadow Wolves arrived, the town already stood behind her, forcing their withdrawal.
At the Battle of the Black Vales, the Blackjays destroyed a sixty-eight strong Shadow Wolf column in under a minute using terrain and a hidden pike wall. No Blackjays were killed. Survivors were released with a message: support Irina Ardelean.
Expecting retaliation, Dust split the company. The main force drew pursuit south, while Sergeant Sem led Irina to Cetavorn by back routes. In the capital, Sem and Olga built alliances with nobles and clergy harmed by Tomescu’s purges. Duchess Lizuca Oprea of Lascar tested Irina relentlessly before committing, convinced not by power but by Irina’s refusal to rule through leverage.
On the 1st of Bloommonth, Irina entered the Voivode’s Great Hall with Blackjay soldiers and the Grave Wardens of Lascar. Despite Duke Vasile’s objections, testimony and evidence overwhelmed him. The Voivode ruled in Irina’s favor. Tomescu was stripped of title pending investigation.
The contract was fulfilled. Irina Ardelean became Duchess of Tomescu.
Continuing The Story
I’ve now played two “Books”; the story of the Blackjays surviving winter, and the first big contract after that (seeing a lost heir restored to the title of Duchess).
For the next chapter, I’m thinking of doing a big thing with a number of duchies (and the baronies within them) at odds with each other.

For this, I’ve been working on a simplified faction system, based on Worlds Without Number by Kevin Crawford, but simplified. I haven’t tested it yet, but here it is, as a freebie:
Anyway, that’s all I have for now – I hope it can help inspire your own solo TTRPG adventures!










Leave a Reply