Iamoxal: A Hex-based Game of Fantasy Warfare

An attempt to homebrew a tabletop game system inspired by Kings of War/WHFB, Age of Wonders 3 and (to a lesser extent) Battletech.

Plans for a sci-fi spinoff/derivative system much closer to Battletech are coming soon.

Turns
The game is played by players/teams taking turns one-by-one. To determine which player/team's turn goes first, each player/team must roll a D6, whoever has the higher result goes first (re-roll if the result is a tie).

Each turn is divided into four phases: the Movement, Shooting/Spellcasting, Melee and Morale phases. Opposing players/teams may act when needed in the last two phases, but only the player/team that owns the current turn may act in the first two phases.

Movement
In the movement phase, players must issue one of four orders to each of their units, these are:
 * Hold - Unit does not move, but can change its facing, every third hex it has turned towards costs it a single action point.
 * March - Unit moves at a normal pace and turn normally, the amount of hexes it can move per action point depends on its movement stat.
 * Run - Unit moves up to a greater distance, but uses up an action point for every two hexes it has turned to instead of three, the distance it can move also depends on its movement stat.
 * Charge - Same as with Run, but is only used when a unit intends to enter melee combat with another unit, only a charge can be used to enter melee with an enemy unit.

Units may move forward or backward in the direction they're facing, but not "sideways" or "diagonally".

Units may march and run through other friendly units, but not through enemy units. Charging, however, can only be done when there are no units whatsoever between the charging unit and its target, regardless of whether they are friendly or not.

Units may end their movement adjacent to other friendly units, but may not end their move adjacent to enemies unless charging or if the enemy isn't currently able to attack a unit occupying that hex.

Units can only charge a target if the following criteria are met:
 * The unit's line-of-sight to the target is not obscured after turning.
 * The target is within the unit's frontal viewing arc after turning.
 * The unit can reach the target and still have one action point remaining.
 * The unit does not end up "touching" (AKA being adjacent to) any other enemy units along the way (ignore this if your unit is not within the interfering unit's frontal viewing arc when it touches the enemy along the way to the target).

Shooting/Spellcasting
In the shooting/spellcasting phase, players may choose to perform shooting attacks or cast spells with one or more of their units. Shooting and spellcasting can only be done if all of the following criteria are met:
 * The unit has a shooting attack or a spell.
 * The target is within range of the unit's attack/spell.
 * The unit's line-of-sight to the target is not obscured.
 * The target is within the unit's frontal viewing arc.
 * The target is not adjacent to the shooting unit.
 * The target is not adjacent to a friendly unit (ignore this if the friendly unit is on a terrain elevation that is two or more levels higher or lower than the target's).
 * The unit has not been charged or fled from a charge in the previous turn.

If all the criteria are met, the unit may shoot or cast a spell.

Melee
In the melee phase, players must resolve melee combat between opposing units that have ended up adjacent to one another as a result of charging.

Units that have been charged may choose to counterattack as long as it has action points remaining. Units that have been charged by multiple units may make up to three counterattacks (one per action point), but can only attack one charging unit per counterattack (AKA charged units cannot make three counterattacks on a single charging unit or two on one and one on the other).

A unit that chooses not to counterattack may choose to retreat in the morale phase as long as it has at least one action point remaining.

A unit that has charged an enemy from behind/ended up on an adjacent hex behind the enemy or outside of its frontal arc has flanked that enemy. Units that have flanked their enemies double their number of attacks/hit dice when attacking, allowing them to potentially double the damage they cause to that enemy. Additionally, units that have flanked their enemies always count as striking first.

Morale
In the morale phase, players must test the morale of damaged units. Units are forced to take a morale test in the morale phase when damage taken in the previous phases has reduced their total hitpoints to half or below.

To test the morale of a unit, roll 2D6 and check the result, if the result is 6 or higher, the test is passed, if it is 5 or below, the test is failed. A total result of 2, or double 1's, always results in failure, while a result of 12, or double 6's, always succeeds.

The standard morale test at half health or less determines whether a unit loses or maintains its fighting spirit. If a unit passes this test, they continue to fight normally, if they fail, they are wavered. Wavering units may not run, shoot or cast spells, and can only charge up to marching distance, they also always strike last in melee (unless making a flanking charge). Any subsequent damage they take in the next turns will force them to take this morale test again, if they pass, they maintain the normal or wavering stance that they had in the previous turn/s, if they fail, they either waver or (if they are already wavering) they are routed. Routed units are removed from play and treated as a casualty.

If a unit rolls double 1's, they are automatically routed, even if they weren't wavering to begin with, while if a unit rolls double 6's, and are wavering, they will return back to their normal, unwavering stance.

If a unit takes a morale test as a result of deciding to retreat from charging attackers, they must roll 2D6 for every adjacent enemy unit that has charged them, or in other words: take multiple morale tests per charging enemy. If they fail even a single morale test, they may not flee, if they succeed, they may move backwards, away from their attackers, up to the distance that their action points allow them to (they may turn before moving away, but not after starting their retreat.).

Action Points
Action points are what a unit uses to perform any sort of action in the game, be it moving, attacking or anything else. All units have a maximum of 3 action points, and recover their action points at the start of their owning player's next turn. Units may not have more than 3 action points at any given time, though some spells may allow them to recover action points before their player's next turn.

Most attacks and spells cost one action point. The cost of movement and turning depends on the orders issued to the unit and its movement stats.

A unit only uses up an action point in movement when it enters one more hex than the amount listed in its movement stat, it may not spend its last action point in movement (e.g. a unit with a movement stat of 2 when marching and max. action points may move up to 6 hexes, using up its first two action points on the third and fifth hexes, but it may not move up to 7 hexes and use up its last action point).

Terrain
Terrain refers to the gameplay and aesthetic features of the board and hexes. There are various types of terrain, these are:
 * Regular Terrain - Plain, basic, open terrain, such as grasslands, desert sands and tundra. This terrain confers no bonuses or penalties to units crossing them.
 * Enclosed Terrain - Dense forests and the like. Units in this terrain are harder to shoot at, but most units moving through this terrain suffer a movement penalty, moving at half the distance their movement stat allows them to. Enclosed terrain also has a height value, which is used to determine which units can "hide" in it.
 * Watery Terrain - Shallow water, dank swamps and muddy plains. This terrain does not confer any particular bonuses to units, only a halved movement penalty to units moving through the wetlands.
 * Obstacles - Fences, walls, particularly large trees/stones and other similar obstructions. These objects have height values (some even having destructible hitpoints), and are capable of blocking vision according to their height. Units can move over obstacles if their height level is at least twice that of the obstacles, in the case of height 0 obstacles, all units (except height 0 units) may move over them.
 * Elevations - Places of ground that are higher than others, such as hills, plateaus and the tops of cliffs. Units on an elevated hex add that hex's height to their own (e.g. a height 1 unit is treated as height 3 if on a height 2 elevation), units can also cross elevated hexes normally, but only if the hex's height is one level higher or lower than that of the hex they're on (regular, non-elevated hexes are treated as having a height level of 0). Units also cannot charge or engage each other in melee if the height level difference between elevations is greater than one.

Vision
A unit's line-of-sight (LOS) and viewing arc determine if they can see and attack a target.

A unit's viewing arc is a 90-degree arc in front of wherever the unit is currently facing, any hex that is at least partially within this arc is a hex that the unit can see, and is therefore, within its LOS. A unit can only attack enemies with most attacks when they are within this viewing arc.

A unit's LOS can be obscured by other units and the environment. Obstacles and other units (friend and foe alike) obscure a unit's LOS to their target if their height level is equal to or greater than the unit and/or its target, but if either the target or the attacker is taller than the obstacle or other unit, then the viewing/attacking unit can see their target.

Units may also "hide" by being issued a hold order if the hex they occupy and all hexes adjacent to them are enclosed terrain hexes of equal or greater height to the unit itself. This allows them a chance every turn to avoid being seen by attackers even if within the viewing arc and range of their attackers.

To "detect" a hidden unit and negate its effects of being hidden, at least one unit must have the hidden unit's hex within their viewing arc, that unit must then take a morale test in either the movement or shooting phases to determine if it can spot the hidden unit. The result needed to pass is 6 added to by the additional height levels that the lowest hex adjacent to the hiding unit has over that unit (e.g. the test result required to spot a unit with a height level of 1 surrounded by height 3 enclosed hexes is 6+2, making it 8). If the morale test is failed, any other units that can potentially see the hidden unit can take the test, one at a time, giving additional chances to spot the hidden unit in the woods.

Resolving Shooting and Spellcasting
When a unit decides to shoot a target with a ranged attack or cast a spell on it, it must resolve its action by first "rolling to hit", which is rolling a number of D6 equal to the total number of hits that the attack or spell has. Any dice that scores the shooting accuracy value of the unit or higher is a successful hit.

The dice that successfully hit must then be rolled again for the "damage rolls". There are two damage rolls, the defense roll and the toughness roll. In the defense roll, any dice that score a result equal to or higher than the target's defense value successfully breaks through its armor, and must then be re-rolled for the toughness roll. Any toughness dice rolls that score a result equal to or higher than the target's toughness value successfully damages the target and removes one hitpoint for each successful toughness roll.

When casting a spell that doesn't directly deal damage, re-roll the successful hits against the resistance value of the target instead of the defense value. If the spell's target is a friendly unit, treat the unit's resistance value as 4+, regardless of its actual resistance stat, and skip rolling for that unit's toughness value entirely.

Only one individual in an entire unit may cast spells at any given time in the game, all the hit/attack dice in a spell are given to that particular individual whenever casting.

Spells that aren't direct-damage spells always require a score of 4 or higher to hit, and are not affected by the same accuracy modifiers.

Any dice that score a result of 1 automatically fail, regardless of any modifiers.

Resolving Melee
When units engage in melee, check the strike values of their melee weapons, the unit with the highest strike value attacks/counterattacks first. If both units have an equal strike value, the attacker/charger always strikes first.

After determining who strikes first, roll to resolve the accuracy/defense/toughness rolls as normal, just like with shooting. Again, results of 1 always fail.

Accuracy/Strike Modifiers
Certain circumstances in combat may cause units to perform worse or better than normal, either hitting less accurately, striking last, dealing less damage or the opposite.

Terrain, movement and distance can affect a unit's accuracy or initiative, these are the modifiers made to a unit's shooting accuracy values:
 * If the target is in an enclosed terrain hex, the minimum score needed for the shooting unit to hit is raised by 1.
 * If the target is at a distance considered "long" by the range value of the shooting unit's attack, the min. score needed to hit is raised by 1.
 * If the attacker has spent at least one action point moving and/or turning during the movement phase, their required score to hit with their shooting attacks is raised by 1. If the unit decided to run instead of march, raise it by 2 instead.

All three modifiers can stack together to raise the minimum score required to hit by 3 (4 if running), but multiple instances of the same modifier will not, ever, stack.

The modifers made to a unit's melee accuracy and strike values are:
 * If the unit is charging "uphill" (crossing higher elevations), raise the min. hit score by 1 and reduce the strike value of its melee attacks by 1.
 * If the unit is charging "downhill" (crossing lower elevations from higher), reduce the min. hit score by 1 and raise the strike value by 1.
 * If the unit is charging across enclosed/watery terrain and/or obstacles, raise the min. hit score by 1. No strike bonuses/penalties apply in this modifier.
 * If the unit is wavering, raise the min. hit score by 1. Again, no strike bonuses/penalties apply in this modifier (except for the "strikes last unless flanking" penalty that comes with wavering by default).

Again, only one instance of each modifier is taken into account, multiple instances of the same modifier do not stack.

If the accuracy modifiers cause the accuracy value of a unit's attacks to go beyond 6, it will still need rolls of 6 to hit, but the total number of dice/hits to be rolled by its attacks are halved.

Defense Modifiers
Some units may have exceptional levels of protection, while others may have attacks strong enough to crush that form of protection and anything else weaker.

Some weapons/attacks have a "pierce/crush" (P/C) stat, the value listed in this stat is the number by which the weapon reduces the enemy's defense value by (e.g. a P/C value of 2 will reduce a defense value of 6+ to 4+).

When damaging a unit with a defense higher than 6+ (e.g. 7+), you will still need rolls of 6 to break through its armor, but you must re-roll any successful damage rolls once and try to score a 6 again. Only a P/C value high enough to bring the defense down to 6+ or less will allow attacks to roll for damage normally without having to re-roll.

Some units also have "immunities", "wards" and "weaknesses" that determine which attacks are better or worse against them. If a unit has an immunity to a particular damage type or element, then they may not be affected by weapons or spells that use that element, if a unit has a ward to a particular element, then weapons and spells of that element must re-roll all successful defense/toughness/resistance rolls made on the unit once, regardless of defense, if a unit has a weakness to a particular element, then weapons and spells of that element may re-roll all failed defense/toughness/resistance rolls made on the unit once.

Note that wards do not force damage rolls and re-rolls to score a 6, only re-roll any successful damage rolls. Additionally, ward re-rolls do not stack with 7+ defense or greater, meaning that damage rolls cannot be forced to re-roll twice by both wards and excess defense, only once. Also, spells completely ignore the wards and immunities of their target if their target is a friendly unit.

Units with a 7+ defense or higher with a weakness to a certain element will have the enemy's defense and weakness re-rolls cancelling each other out, making it so that there are no re-rolls from either.

Also, modifiers that change a unit's defense value do not change or affect a unit's toughness value.

Units
Units, alongside dice and the board, are the main objects used to play the game. Units are categorized into seven different types, these are:
 * Small Infantry (SI) - Standard infantry, usually of similar size to a man.
 * Small Cavalry (SC) - Standard cavalry, usually of similar size to a man on a horse.
 * Large Infantry (LI) - Massive creatures, such as ogres, who fight in small groups.
 * Large Cavalry (LC) - Chariots and large creatures on equally large mounts.
 * Artillery (A) - Siege machines, such as catapults and cannons.
 * Monsters/Vehicles (M/V) - Even bigger creatures, such as dragons, or self-propelled machinery, such as "landships" and aircraft.
 * Heroes/Commanders (H/C) - Individuals and other unique units, often of notable importance, they can have any of the above unit types (except for Artillery) as a "subtype".

Infantry and cavalry units tend to be composed of multiple "individuals". As these individuals go down, the overall strength and stats of the unit may also be decreased accordingly.

It should also be noted that heroes/commanders with an infantry/cavalry subtype may occupy the same hex as a regular infantry/cavalry unit of the same size as them. In which case, use something such as a unique token to mark their presence on that unit's hex. While they occupy that hex, both they and their accompanying unit may attack and move as though they were one whole unit, but the hero and its company are still treated by attacks and spells as separate entities, and the unit accompanying the hero must be destroyed or routed before the hero can be attacked and taken down. However, spells may freely choose to target either the hero or his/her company as long as they are not direct-damage spells.

Units, of course, have a set of stats for gameplay purposes, these are:
 * TY - Type (X) - The unit's type or classification.
 * HG - Height (X) - The height level of the unit for gameplay purposes (not necessarily the actual full height of the model/s that make/s up the unit).
 * IN - Individuals (X) - The number of individual combatants in the unit.
 * ME - Melee (X) - The accuracy value/score needed to hit for the unit's melee attacks.
 * RA - Ranged (X) - The accuracy value/score needed to hit for the unit's shooting attacks and direct damage spells.
 * MO - Movement (X/Y) - The number of hexes a unit can enter in movement before expending an action point, X is for marching, Y is for running.
 * DE - Defense (X) - The initial score needed to damage the unit.
 * TO - Toughness (X) - The final score needed to damage the unit.
 * RE - Resistance (X) - The main score needed to affect the unit with spells that aren't direct-damage spells.
 * HP - Hitpoints (X/Y) - The total hitpoints of the unit (X) and the number of hitpoints per individual (Y).
 * IM - Immunities (X/Y/Z/etc.) - Elements that may not affect the unit at all.
 * WD - Wards (X/Y/Z/etc.) - Elements that must re-roll successful damage/resistance rolls on the unit.
 * WK - Weaknesses (X/Y/Z/etc.) - Elements that may re-roll failed damage/resistance rolls on the unit.
 * TR - Traits (X/Y/Z/etc.) - Other traits/attributes/special rules that apply to the unit.
 * IT - Items (X/Y/Z/etc.) - The default/starting/inherent items that the unit has.
 * OP - Options (X/Y/Z/etc.) - What extra upgrades/modifications/items can the unit take.
 * Pts - Points (X (Y+Z)) - The points cost of the unit in army composition and scoring towards victory conditions. X is the total points cost of the unit while Y and Z are the base points cost and the total cost of all of the unit's default gear, respectively.

Items
Items are what units use to attack other units, defend themselves and perform a variety of other combat-related tasks. For the sake of gameplay, items can also be used to refer to things that are not necessarily material, handheld objects, such as spells or the training some units undergo, or alternatively, items can also be used to refer to body parts being used as weapons or armor, such as a monk's fists or a dragon's scales.

Items are categorized into four different types, these are:
 * Weapons (WP) - Self-explanatory, these items used to attack and damage enemies. These are further categorized into Melee Weapons (MWP) and Ranged Weapons (RWP)
 * Armor (AM) - Items used to better defend the user.
 * Spell (SP) - A magical ability used to cause different kinds of effects on a target. These are further categorized into Direct-Damage Spells (DSP) and Support Spells (SSP)
 * Special/Other (S/O) - Non-spell items that do not necessarily have a direct offensive or defensive purpose, and provide, perhaps, certain other effects and abilities to the user or other nearby units.

Items have their own set of stats, these are:
 * TY - Type (X) - The item's classification.
 * ST - Strike (X) - The striking priority of the item if it is a melee weapon.
 * HT - Hits (X) - The number of dice per individual in the unit that the item rolls when rolling to hit a target with it.
 * RA - Range (X/Y) - How many hexes away can the item attack in if it is a spell/ranged weapon, X is the maximum "effective range" without penalties for long-range shooting, Y is the overall maximum range of the weapon.
 * P/C - Pierce/Crush (X) - The amount of defense reduction the weapon/spell inflicts when rolling to damage.
 * EL - Element (X/Y/Z/etc.) - The element types of the weapon/spell's attacks/effects. The weapon/spell cannot use all elements at the same time, but always uses the most effective element against a target.
 * TR - Traits/Effects (X/Y/Z/etc.) Other traits/attributes/effects of the item.
 * Pts - Points (X) - The points that the item adds to the unit's own points cost if taken as an option.

Army Composition
Most matches and game modes often set a "point limit" to make sure that armies remain (relatively) balanced. Units and the gear they take add up to that point limit. The more units and items, the more points added to an army's point limit.

The standard point limit is 2000, but higher or lower point matches can also be played, such as 1000 and 4000 point matches and higher.

Unlocking Units
There is no hard limit or restriction to the number and types of units that one can field in their army. However, artillery, monsters/vehicles and heroes/commanders will have their total points cost (the total being their base points cost plus that of all the options they have taken) increased by 50% unless they are "unlocked". To unlock these units, a player must have a certain number of infantry or cavalry units in his/her army. Every two units unit of infantry or every three units of cavalry unlocks a single A, M/V or H/C-type unit.

Allies
A single player's armies may contain elements from more than one army list. In this case, one list must be designated as the main list, and all other lists must be designated as allied lists.

There is no restriction as to how many allied lists can an army contain (if there is, it's usually two or three), but units from different lists can only take items/options from their own list, and the total points of all units from allied lists must not consist more than 40% of the entire army in points cost.

Some armies may not ally with each other, refer to the "possible allies" section on an army list to determine which armies they may ally with and which they may not.

Infantry and cavalry units can only unlock units from the same list that they're from. This means that a unit from the main list may not unlock a unit from an allied list, and an allied unit may not unlock a unit from the main or a different allied list.