Zio's ChimeraTool for campaign management

Zio's ChimeraTool for campaign management 22.12.05

No permission to download
What is this?

Last modification:
05 December 2022 (changelog at end of file, please read!)

See the included manual in pdf for how to use this!

These sheets are designed for D&D4 and D&D5, use at your own risk :p

Link to the tool: DM tools

Link to optional pictures (tokens): Optional-Pictures

Links to my other tools for RPG (templates for magic set editor) for making cards:



Video demo:
This tool is provided as is, I’ve put quite some time in it (I'm only a beginner in VBA but anyway I'm quite proud of it). The code is not password protected so you can check that there is no malicious things in there…

I made this sheet for my own pleasure so don't comment on "hey you use naughty word tabletop rules" or "this mechanic is broken", after all code is open so change what you don't like! If someone build something better and/or for another system I’d like to see it, you’re free to do whatever you please, just give credit for the original work!!

This sheet was made to help me DM things easily with a custom rules system for my kids (if some of you know the Phantasy Star IV game on genesis) but with some tweaks in the code, can accommodate to D&D or other tabletop RPG rules (you will need a bit of vba knowledge though). The sheet then evolved and a second one was created for D&D 4th edition. The sheet is perfectly useable for other systems as well if you use it only to store campaign infos and data or use the random generator and dice roller. Now a 5th edition version is currently available.

New version scheme: Starting from the end of 2019, the version now use the English date as version number (YY.MM.DD). Readme is not updated as often as before and some added features and bugfixes may not be listed here. See full changelog at the end of this file!

Important note: If the PDF version crash when using a macro the adobe libraries are not installed on your system (use the sheet without export option)

A note on adding custom random tables: I won’t do a full explanation about it, but I suggest you check the sheets named “Table data”, “Solo generator”, “Hexgen data” to see how it’s done. For the DD5 map generator, additional random data may be edited in the “MapGen data” sheet. The best place to add custom tables is the “Table data” sheet (you just need to add a column after the last one and put in your content, just make sure the header of the column is a unique name in the current sheet).

Detailed syntax: The random generator will return a random result from the list (not counting the header of the column). You must set a number after each element like this “Element//Value”, this number represents the weight (the chance) that this element will be drawn at random (if everything is at 1, all elements will have the same chance of being selected).

Element can be any string of text and values and some special syntax is available to draw from other tables. When you want to draw an element from another table you must use an expression encased like this [Expression]. Of course this special expression needs a defined syntax! It may contains up to 5 parameters that must be separated by a colon “:”

The first one is mandatory (I’ll just explain the R option sorry) just put an uppercase R

The second one is mandatory too and is a number or a dice expression (the number of result we must draw from the table)

The third one is mandatory and is the name of the table (You need to match case!!!)

The fourth one is optional and is used to format the result from the table. Available options are “h” for hiding table name in result, “l” for lowercase result, “u” for uppercase result, “p” for proper case result, “s” for single result (if roll multiple times if the result was already selected, it will be discarded).

The fifth one is optional and specifies the name of a sheet in the workbook (if you want to roll from a table that is defined in another sheet, if not used the generator will search in the same sheet you’re creating the table in).

Final result may be something like [R:1:MyCustomTableName:hl]. You may put this inside a string like “I rolled [R:1:MyCustomTableName:hl] result from my custom table.”

Of course your custom table may also contains reference to other tables without problem!

If you just want to return a random number inside your string you just need to put [Expression:h], expression being a dice roll expression (xdy+z or whatever) or a range expression (x@y+z) or any combination of these two.

File history:
v1.0: initial release.

v1.1: corrected minor bug in monster editor, minor changes in some Userform layout.

v1.2: improvement for the various editors, added character and stats editor, improved readme, dice roller and combat manager now show in non-modal form, allowing you to switch between the two with both open.

v1.3: removed inability to exit Userforms by using the regular close option (you can now quit by clicking on the “X”), experiments with resizing Userforms with various screen resolutions (those that are on laptops will have problems otherwise), added some tooltips.

v1.4: corrected a bug with combat manager not initialized as it should the first time it was run, cleanup of vba code making the file smaller, disabled again exit from Userforms by using the “X” button as it could cause unexpected (though small) bugs it should not be a problem anymore with the resizing with smaller resolutions.

v1.5: added option to select multiple targets at once for an action in the combat manager, minor bug correction in various menus.

v1.6: caught a bug that could crash a macro while refreshing dead monster stats, ability to edit character class with editor (even though you can level up by choosing another one you’re free to do so).

v1.7: added ability to sort data tables through editor menu (“misc” tab), added a basic campaign editor/viewer with map/picture display, added more tooltips to the various menus, allowed the dice roller history to scroll if text is getting too long.

v1.8: added ability to add a full directory as hyperlink (choice when set up between file or directory), added external module to import pictures as png without crashing the macro, added ability to link pictures to characters and monsters in the editor, added picture display in the combat manager next to info display, minor bugs correction (the bug that was crashing the sheet while checking dead monster was still there :/), greatly improved the speed of the macro that check for dead monsters after an action (it was slow if there was dead monsters about 2-3s, now is almost instant).

v1.9: added “halve action value on failure” option to the combat manager, checking the option “action has critical range” allows for critical failure too (set at 10% of critical success target value), reversed the action formula (it’s still the same, just rolling higher=better now), a natural roll of 1 is always a critical failure/failure, a roll of 100 is always a critical success/success, more detailed message box for the result of an action, added option to check for skills, power/skills editor and equipment editor now also works for database entries, made sheet easier to share on another computer by checking for alternate path for hyperlinks, pictures and maps (The sheet will first search the file or directory in the set path, then search in \data\pictures for pictures, \data\maps for maps and \data\docs for hyperlinks, starting from the workbook location. If all fails it will last search at the root of the workbook location. This allows the sheet to be used on an usb stick with the links still working by putting the files with the workbook), removed some unused values, additional tweaks here and there.

v1.10: corrected a critical bug with power/skills editor, new design for power/skills editor.

v1.11: small correction to attack formula, correction with damage formula for negative/null factor, minor bugfixes.

v1.12: code optimization, minor bugfixes.

v1.13: added “filter only available powers” in combat manager and power editor, minor bugfixes.

v1.14: PRNG now use Mersenne twister (vba translation by Jerry Wang) instead of vba built-in PRNG, implemented a Heroquest dice roller (because I play Heroquest too sometimes).

D&D sheet was introduced here!!

v2.0: corrected a very minor bug in code, removed unused variables from code, added party perception check in combat manager, and finally added a second sheet tweaked for D&D 4th edition (WIP for now, expect some bugs!!). D&D sheet only: ammunition can now be tracked automatically when using a ranged weapon, added corresponding equipment slot, better descriptions in combat manager.

v2.1: as always fast update after the first release, corrected some critical bugs in hit and damage formulas, implement and proficiency bonus are now added automatically when making an action that include them, damage formula now accounts for critical hits, much better descriptions for attack and damage rolls, the D&D sheet “should” now be at least useable!

v2.2: improved macro speed when deleting individual characters from the sheet with encounter editor, corrected a bug in power editor, corrected implement not adding damage, some status effects now add their bonus automatically, level up menu more adapted to D&D style, added secondary attack on failure to handle reliable powers, skill check penalty from armor/shield is now applied automatically.

v2.3: added “Delay” as an action type, creature added/removed with main menu when combat manager is open are now automatically added/removed from initiative list, added ability to add skills and feats through database editor (feats are just for display and/or reference), minor bugs corrected.

v2.4: added ability to edit random tables directly from the database editor, added error checker if invalid values are entered in database editor, corrected a bug in character editor (fortitude and reflex stats were inverted).

v2.5: replaced initiative and information labels in combat manager with scrollable textboxes (in case the text becomes too long for the box), added some of the DD4 sheet improvements to the PS4 sheet, corrected some new bugs.

v2.6: added a language selector with French/English choice (more translations may be added by looking at the sheet “Translation data”, just add a column after the two already there with your language name and translated strings below, if a string is not translated it will default to the original string in the worksheet [mixed English/French], note that translation is not completely done for now and tooltips/comboboxes will probably remain in their original form), corrected damage so that hp can go negative up to bloodied value, added a “Quick Notes” button.

v2.7: corrected a bug with encounter editor (a character and a monster could have the same name and could mess with the way name are handled by the code), more strings translated.

v2.8: added “About” tab, added backpack listing to the equipment menu, more error checking for quick encounter editor, corrected an error in the skill check and ability check formulas, added a very beta feature in MapTool import (it “should” allow to import tokens from a MapTool campaign file with a little setup: add a property called “DM-Tools” to your NPC tokens property sets in MapTool campaign preference, associate this property with a string referencing a monster in the database of the spreadsheet and save your campaign file).

v2.9: import from MapTool will now display the name of the map where the token is located to help choose which token you want to import, corrected a bug in the campaign file parser (token/object that have been edited at least once even with an empty “DM-tool” string would appear in the list).

v2.10: import from MapTool are now sorted by name and by map, tokens marked as “Dead” won’t show in the list, character editor now displays a full character summary to get an overview, possibility to add gold individually using pp/gp/sp/cp, skill list in information display now includes ability/level bonuses and armor penalty and always display at least the perception skill (even if character has no ranks), two handed weapons now add +1 damage automatically, recharge powers for monsters are now handled automatically, tracking of healing surges and action points, reminder for ongoing damage, status immunities, and possibility to add a tooltip for almost anything in the database (characters, creatures, items, powers and feats). Tooltips allow for copy/paste a full stat block and will be displayed when your mouse hover over the picture of a character in the combat manager. It allows to go through each power, item and feat the character knows and display information about them too! And as always bugfixes (many of them)!!

v2.11: added a basic stat block parser in monster editor (very basic for now, will only parse Name, Level, Hit points, Ability scores, Defenses, Initiative, Speed and XP value) that will work with English pdf, corrected some minor bugs with database editor and tooltip display, added an autosave option (can be disabled) that will save the workbook every time you save a change in the database editor.

v2.12: started hidden modifications to allow for 3rd edition/Pathfinder conversion, added a reminder to combat manager that allows to set notes to popup at a later round (by typing in the form “round:note”), improved performance of some frequently used functions (and removed some limits in the same time, now loading menus and editing data even with more than 25000 items in each database won’t take more than a few seconds), added an option to setup backup equipment for characters allowing to quickly switch a weapon during combat, updated manual with more recent screenshots.

v2.12b: OK not really an update, but having some time to lose (and inspired by the Arena game made on excel) I started to build a game with the PS4 sheet… It’s only in a very beta state but for those who love the universe and turn by turn battles it contains a basic AI, random battles, useable items, etc… No story yet but getting the basic framework done and at least “playable” for the first few levels! Everything is fully compatible with DM-tools and don’t alter the basic functionality of the sheet (it’s just a sort of add-on). Item and monster data must still be added and edited to build something coherent, but it should give a good overview of what’s possible.

v3.0: added DD3 version (very beta for now, still need to convert/implement more features for the sheet to be useable), new form for dice roller that saves custom dice expressions entered (up to 6 custom expressions and 4 custom ranges to roll from), replaced manual damage/healing button in combat manager with manual edit (allow to quickly edit temporary stats bonus and status of selected character, for manual combat handling), handling of sneak attack damage. WIP files included in specific folder (unstable).

V3.2: DD4 version only improvements, bug fixes and tweaks (Note that import power does not work for now!), improved random generator.

V++: Version number now use last modified English date, Translations for worksheet controls and a couple more strings, Ability to edit number of failed death saving throw from combat manager (edit character/target), Reworked some utility functions, Minor bugfixes, Random generator may now read pictures from table in addition to standard text and may now simulate a card draw from a table (by removing picked element) via an option box. HQ and DD3 sheets are “almost” functional now. Ability to set wound, fear and exhaustion levels as a house rule (no effect on stats but act as a reminder that a player is wounded for example if you use that kind of house rule), Ability to add powers that are not in the database to a character (can be useful to track number of uses manually if you don’t use automated attacks and don’t want to enter each power in the database), other minor enhancements…

20.02.08: Quick correction for a bug in the campaign viewer, removed ability to erase essential values from the database (Empty item, Manual attack power, NoSkill skill, etc…), included updated PS4 script file in the package.

20.03.07: Some functions modifications and bugfixes in file linking (version number not changed in sheet!)

20.03.09: Very quick bug catch, Ability to view more than 5 characters and to view enemy group in “Party View” userform

20.03.12: Quick update for encounter management

20.03.17: Added “Game master apprentice” cards support in random generator

20.04.02: New parameters for random table generation allowing to do complete sentences including random elements from tables! Other small improvements here and there and more bugfixes…

20.05.12: WIP sheet for D&D 5th edition included. Contains monsters, spells and items from compendium already imported (monsters with armor are unequipped in the database so AC is only dex modifier, monsters with natural armor have their full AC). Combat manager is NOT up-to date for 5th edition but combat may be handled manually (by editing stats directly from userform!). Many options from previous editions still remain (such as damage reduction, healing surge, action points, etc…) but are not problematic (they may even be useful if you use house rules ;) ). If you get a crash while using compendium viewer check that the file “c:\windows\system32\msxml6.dll” exists in your system directory!). File was built with office 2013 x64, and thus I do not ensure it will be compatible with previous versions of Excel (even if I take care to declare some API functions for 32bits as well as 64bits systems). All others functions such as dice roller, saves, campaign viewer, etc…. should work as previous versions!

20.05.17: Spellbook now imported for compendium creatures, correction for the ‘randomize hp” formulas of compendium creatures (removed con bonus from hd), range set for ranged weapons imported from compendium. Still a WIP as battle formula won’t work, but anyway useable to track hp and initiative during battle as well as much more! Added compendium option for 4th edition too (dirty reading from sql files but anyway allow access to useful info from a simple menu).

20.06.08: D&D 5th edition improvements only: all skill modifiers and resistances are now imported for compendium creatures, new and simplified combat manager reading actions and saving throw directly from monsters stat block (if monster has no stat block can still enter numbers manually though) include damage type and resistance (still wip)

All sheets: minor bugfix preventing unwanted crash in equipment manager, added ability to sort and rename chapters from a campaign in campaign editor, new version of campaign editor and viewer with tabs, added ability to zoom map in campaign view (with slider or directly by double click on the map, you may move zoomed map by clicking on a point), new simpler design for encounter manager, added ability to draw “Encounter building cards” in random generator for those who own the product.

20.06.15: Random generator from table now may now use expressions like the solo generator tables: [XdY] or [X@Y] to roll dice or range, optional parameter “h” to hide expression in result ([1d6] will return “1d6: random number”, [1d6h] will return “random number” only), [T] to roll on another table (must use a name with no space!!) ([T]Name will roll once from the table “Name” resulting in “Name: rolled item” , [T:1d6]Name will roll 1d6 items from table “Name” resulting in “Name: result1, result2,…”, [T:h] or [T:1d3h] will hide the table name displaying only results), some creatures spellbook were not correctly imported in DD5-sheet (fixed), reverted xml library to v3.0 (more compatibility for compendium view), quick update of the manual pdf.

20.06.18: Added buttons to roll individual skill and saving throws in DD5 sheet, small corrections to a few imported creatures in DD5 sheet, new update to the manual, playerview file now reads DD5 campaigns too.

20.06.26: DD5 sheet: now includes a very basic random Character/NPC generator [idea and some data taken from Emirikol’s random character generator sheet, permission was asked via MP, only basic data is included for now] and allows to save generated data to the database, the generator is NOT finished for now!!!

DD4 sheet: ability to import directly from a Masterplan creature exported to html, importing monster from a Masterplan statblock in the data editor will now import skills and resistances, implemented a basic attack parser that will parse from an imported statblock (parse attack vs defense and damage, only Masterplan statblocks will work!)

Some minor bugs and incoherencies were also corrected

20.07.15: Corrected some very minor bugs, ability to sort tables alphabetically in data editor (DD4 only for now), very little improvement in DD5 combat manager, most userform that don’t edit data are now useable in a non-modal form allowing to have multiple screens open (random generator, campaign view, dice roller, etc…), started working on a random hex generator (data still to add!), added more data to random solo generator (you can add your own data just look how tables are done!)

20.08.12: Improvement in random generator speed and formulas (new options to roll from other tables, new format is [R:number:eek:ptions]Tablename to roll on a table or just [number:eek:ptions] to roll dices and return a value. Number represents a number or a dice roll (in the form XdY+Z or X@Y). Available options are h (hide formula and table name), p, u or l (proper, upper or lower case formatted result). Implemented a name generator using Markov algorithm (possibility to add you own lists as always, sample lists taken with permission from Wolph42’s generator in MapTools!). Spell slot tracking in DD5 sheet, spell filtering in spellbook editor, option to quickly add multiple creatures at once from encounter editor, option to randomize spellbook of creatures from encounter editor in DD5 (beta), other minor improvements and corrections I’ve lost track of!

20.12.14: New format for table random generation use [R:number:tablename:eek:ptions], now allowing spaces in tablenames, house rule allowing for half save proficiency in DD5 sheet (use a triple state checkbox now), slight improvement in DD4 power parser in combat manager (always from a masterplan statblock!), correction to randomize spellbook function in DD5, ability to edit resistances/reduction in DD5, minor improvements.

21.01.06: Corrected initiative tab not updating when on Party view, started working on a basic dungeon/hexmap generator with customizable tables/descriptions [still very beta, dungeon generator is inspired by jamis buck’s algorithm, tables still need to be filled with data], small correction to master plan html import (DD4) to account for vulnerabilities too, correction to PS4 arena game (sometime allowing creation of mazes open on the outside of the map).

21.01.14: Added DMG treasure tables to DD5 sheet (available from the first drop-down list in the random generator), added Spellbook management to DD3 sheet (but spell data is from DD5 sheet, can be edited manually of course)

21.02.09: Update only for DD5 sheet, Minor bugs corrected, Added ability to “simulate” mass battles with combat manager (only if box checked) and added corresponding options in editor (Unit size), smaller size thanks to removing empty cells in map generator

21.02.11: Corrected bugs and optimized “mass battle” formula (DD5), added a button to quickly add/remove hp from a target in combat manager (DD4/DD5) allowing faster handling of manual combat

21.02.12: Corrected a small typo in DD5 sheet, added option to make an exact copy of an existing creature in character manager menu (only when editing from database)

21.02.15: New campaign editor option: ability to add numbered sub-sections to each chapter of your campaign. This way you can enter room descriptions for each number and attach a numbered map to the chapter for fast reference during play. There’s no limit to the number of sub-sections you can add (in fact there is but no-one should ever hit that limit: a campaign has about 1000000 slots available for excel 2013 and higher, campaign data takes 13 slots and each chapter takes 9 slots plus 1 slot for each added sub-section. The only reachable limit is the size of the text for each description/slot being about 32000 characters and 250 line feed but it should be more than enough for single room/section!)

21.02.26: Minor bugfixes, Various minor improvements, New random generator in DD5 sheet (WIP, accessible from dice roller menu, database was NOT fully edited, parameters still need to be edited to get a fully working generator) allowing to roll for random shops inventory, treasures and encounters from data picked directly in the database, Removed most of unused parameters from DD5 data editor and added new options for random generation (encounter by terrain, treasure & shops by rarity and type), Improved output for dice roller (now show individual dices results as well as total), DD4 power editor and character viewer now also parse from compendium files (still very WIP).

21.06.26: DD5 sheet improvements only! Option to add/edit spells from the database (DD5), Quick DM notes from “Campaign View” menu are now saved with the party rather than the selected campaign, Improved random tables entries for map generator (as always tables en entries can be added annually by following the pattern in the sheet “MapGen data”, for hexmap just add/edit the existing colums, for dungeon maps to add a theme just copy insert the column from “Theme-default” to “Doors-default” and change “Default” to the name of your choice, existing column will be automatically added when loading the map generator).

21.07.22: More minor bugfixes (quite a lot of them!), Can now quickly build a stat block with attacks that can be parsed in combat manager (in “Character Manager”->”Add/Edit tooltip”), new option when reading a random table “e” will try to add an encounter directly on the battle sheet if the data can be read from database (DD5 only, example tables are in “table data” and “subtable data” sheets), Removed PlayerView.xlsm file as it no longer serve a purpose (can be done directly inside the tool with “F1/F2” shortcuts).

21.07.26: Updated manual, Removed DD3 and PS4 sheets as they won’t be updated anymore!

22.05.25: Mainly minor bugfixes, added two additional equipment slots for characters.

22.07.28: Mainly minor bugfixes, misc addons I can’t all remember ^^

22.11.18: Mainly minor bugfixes, improved random dice roller custom expressions (keep best/lowest, explode)

22.12.05: Minor bugfixes, can now export token for map tools fully compatible with Rod takehara’s framework (available at GitHub - rtakehara/5e-Framework: A comprehensive 5th Edition Dungeons & Dragons Framework for MapTool.) if statblock is correctly built. DD4 version can also export a token that will work with a slightly modified version of the framework.

Additional note: Can now export stats, picture and name to a PDF character sheet (in French only, template for my character sheets for translation can be found in my other tools here!) but needs acrobat installed on your system to work. That’s why there’s two versions of the DD4/DD5 sheets, if the PDF version crash when using a macro the adobe libraries are not installed on your system (use the sheet without export option).

Still To-do: rework data editor for 5th edition and remove old unused parameters, change status effect to those in use in 5th edition, allow for data translation too, and so much more ;)

You may sent comments, criticism, suggestions, bug report or anything to krevett62@hotmail.com ("about DM-sheet" in the mail subject), or discord krevett62#8809.

A few screenshots from both sheets:




Latest updates

  1. 22.12.05

    22.12.05: Minor bugfixes, can now export token for map tools fully compatible with Rod...
  2. 22.11.18

    Improved random dice roller custom expressions (keep best/lowest X dices, explode)
  3. 22.07.28

    Corrected some small bugs and made various change I can't remember but the sheet is stable (at...