Warhost - Army Battles for RPG Maker MZ: Drawn Soldiers, Generated Banners, Formations
A downloadable tool
Army battles for RPG Maker MZ. Two hosts of regiments meet on a painted field. Every soldier is drawn: foot, pikes, archers, horse and mages, in each army's colours. Every regiment carries a banner whose arms are generated from its name. The player picks a formation, then the battle plays out soldier by soldier: volleys arc overhead, spells burst, cavalry charges, regiments break and run. A war record closes it, and the survivors go back into your variables.
Nothing to draw, nothing to import. No sprite sheets, no battlebacks, no image files at all. Turn it on, call one plugin command from any event, and a new project has a war.
⚠️ Compatibility — the question you actually have
Tested against RPG Maker MZ with the stock scripts unmodified, verified by running the plugin in the real engine rather than only in tests.
Plugin Manager order:
WarhostCore.js— Warhost core - the army battle simulation (no drawing). Required by Warhost.js. Put it anywhere in the list.WarhostDraw.js— Warhost drawing - soldiers, banners, battlefields and the war record, all drawn from code. Required by Warhost.js.Warhost.js— Warhost - army battles: regiments of drawn soldiers under generated banners clash on a painted field. Formations, routs, a war record.
It patches no core RPG Maker method at all, so there is nothing of anyone else's for it to collide with.
What it does
- Soldiers, not portraits. Up to 240 figures a side, each fighting on its own: the foot close in, pikes hold, archers loose from range, horse charge the flanks, mages burst spells over the enemy ranks. Bigger armies are carried at several soldiers per figure, and every number you get back is in soldiers.
- Four formations that matter. Line breaks a loose screen, a wedge breaks a line, a square stops a wedge, and a loose screen outlasts a square under arrows. The enemy forms first; the player answers. Outnumbered four to five, copying the enemy won none of 40 battles, while the counter won up to all of them (the measured table is in the Readme).
- Morale. A regiment that has lost most of its men while its army is losing may break and run for its own edge of the field. Those who flee survive.
- Banners from names. Arms follow the rule of tincture across 15 ordinaries and 13 charges; the same regiment name flies the same banner every battle, so "Iron Company" is recognisable from the first campaign to the last.
- Five painted fields. Meadow, steppe, snow, desert and moor, each painted from a seed: ranges of hills, a keep, tree lines, cart tracks, cloud shadow.
- A war record. Victory, defeat or a field held by neither; every regiment with its banner and a bar of who stood, fled and fell; and the course of the battle charted, with a mark where each regiment broke.
Set it up
- Three plain, readable JavaScript files:
WarhostCore.js(the rules),WarhostDraw.js(everything you see) andWarhost.js(the command and the scene). - One plugin command, Start Army Battle: your regiments, the enemy's, the field, the formations, and where to write the result. The event waits and continues when the war record closes.
- Each regiment can read its count from a variable and write its survivors back: recruit with ordinary Control Variables, lose men in battle, and keep an army across a whole campaign.
- Victory switch, outcome variable, your fallen, a common event afterwards, and a seed that replays the same battle exactly.
- Your army's and the enemy's colours, the time limit, and every sound and piece of music are parameters (the defaults are MZ's own RTP sounds).
How it was tested
Run in the real RPG Maker MZ runtime from the exact zip you download: a map event's plugin command opened the battle, real key presses chose Square against a wedge and sounded the charge, the event waited, and every result landed in its switch and variables, including the survivors of a regiment that took its strength from a variable. With 480 soldiers, 100 archers and 32 mages on the field the whole army draws in about four draw calls a frame, and the battle reads no pixels while it runs. The simulation is fair by construction: identical armies split 154 to 146 over 300 seeded battles, and pikes held against an equal number of riders in 19 of 20.
From the same studio
- Armorial: heraldry and fates for every character and faction ($12.99).
- Bivouac: every enemy band stands on battle ground drawn for that troop, with shadows and camp gear ($14.99).
- Escutcheon: a battle HUD that looks made, not built ($14.99).
AI disclosure: the code and the graphics of this product were made with AI assistance. It contains no audio and no narrative text.
| Published | 3 days ago |
| Status | Released |
| Category | Tool |
| Author | CSAF — Core Systems Asset Factory |
| Made with | RPG Maker |
| Tags | army, battle-system, Fantasy, Medieval, plugin, Procedural Generation, RPG Maker, RPG Maker MZ, Tactical, War |
| Languages | English |
| AI Disclosure | AI Assisted, Code, Graphics |
Purchase
In order to download this tool you must purchase it at or above the minimum price of $14.99 USD. You will get access to the following files:








Leave a comment
Log in with itch.io to leave a comment.