• Please note: In an effort to ensure that all of our users feel welcome on our forums, we’ve updated our forum rules. You can review the updated rules here: http://forums.wolflair.com/showthread.php?t=5528.

    If a fellow Community member is not following the forum rules, please report the post by clicking the Report button (the red yield sign on the left) located on every post. This will notify the moderators directly. If you have any questions about these new rules, please contact support@wolflair.com.

    - The Lone Wolf Development Team

How you can help with MTOF

daplunk

Well-known member
Hi Team,

I've had a question about how a technically illiterate person can help with the community pack for MTOF. While there are very technical elements of the Editor there are huge chunks of it that require no scripting at all. Monsters for example. Which means MTOF if a perfect place to start for people who are new to the Editor.

NOTE: THIS IS A LOT OF TEXT. I HAVE WRITTEN THIS FROM THE PERSPECTIVE OF A COMPLETE NEWB. MAJORITY OF THIS IS NOT HOW TO CREATE THE MONSTER BUT ALSO HOW TO FIND, INSTALL AND CONTRIBUTE TO THE PROJECT.

So how can you help... well we have all of the core monsters already done. We just need to add the special abilities and actions. And you do that like this:

How to update to the latest Community Pack Build
1. Sign up for a GitHub Account. This is a necessary step because this is where we work.
2. Download the latest build of the Community Pack from the Github.
2. Open Hero Lab and go: Tools > Explore Folders > Game System Data Folder
3. This will open a folder and in here you need to put all the files that were in the download above (when you update the community pack from within Hero Lab all that is really happening is the latest version of the files are being put into this folder).
4. Restart Hero Lab. You now have the latest unreleased version of the Community Pack installed.

Familiarise yourself with Github
1. Head back to GitHub and have a look at our site.
2. Go into Issues > Official Mordenkainen's Tome of Foes Ticket
3. This is where we are tracking our progress on this book.
4. Leave a comment stating what monster(s) you are going to work on. GitHub allows many people to work on the same content at the same time so if there are multiple people working the file it's important to remain coordinated.

Now complete the monster in Hero Lab
1. Open Hero Lab
2. Enabled Data File Debugging (Develop > Enable Data File Debugging) (This just enables more advanced features. You can right click on things within Hero Lab to find out that things name for example)
3. Open the Hero Lab Editor (Tools > Show Editor)
4. Open the MTOF file (File > Open Data File > C:\ProgramData\Hero Lab\data\5e > COM_5ePack_MTOF - Monsters.User)
5. This opens all the Monsters in the Editor.
6. Click Race > Race to see a list of all the monsters.

DU6sfL3.png


7. Note that the majority of the work is complete. What needs to be completed is special abilities, actions, reactions, lair actions. They are not configured in the same 'thing' as a monster but made as new 'things' and linked back to the monster 'thing'. Yes 'thing' is a technical term for an object within Hero Lab.
8. Pick the monster you want to do.
9. Click on Race > Racial Special
10. This is where the special abilities are done.
11. Check your monster stat block to see what needs to be added. If I'm doing the Adult Oblex for example all of these need to be made:

oJRfwrh.png


12. You make these one at a time in the editor.

So How Do I Make This Stuff?
1. Click New (Blank) for the new ability you are making.
2. In the Name you type the name.
3. In the description you type the description.
3.a IMPORTANTWe do not include descriptive text. Only the mechanical elements of the description. We change the text by 10%.
4. You give it a unique ID.
4.a IMPORTANT Please use the naming convention of ra5C<AbilityName>. This tells us that this thing belongs to the Community Pack. You can set the 5C bit to automatically appear by going Tools > Set User Identifier > 5C > Ok
Note: hero lab currently allows names up to 20 characters long but we have got wind that this will be changed back to 17. Therefore please limit your unique ids to 17 characters.
5. Set the Feature Type per the stat block. This is a Special Ability in the stat block so I tick 'Special'.
6. Click Test Now.
7. Congratulations you just made a Special Ability.
8. You can make as many things as you like this way. They are not yet linked to the monsters.

Additional Things to Add
Occasionally there will be things that require additional configuration.

Legendary Actions
For these you need to set how many Legendary Actions are used when the ability is used. Set these using the Legendary Actions drop down within the Racial Special thing. The Feature Type for these is 'Legendary'. You don't need to worry about the instructional text at the start of the Legendary actions part of the stat block. Hero Lab adds this all in itself so just make the individual Legendary Actions.

Limited Use Abilities
There will be some Racial Specials that have limited uses. 2/day or Recharge 5-6 for example. Do not include the limited use text in the name. Hero Lab adds this itself. See below on how to set these up.

2/day: Set Base Charges to 2. Set Usage Period? to /day
Recharge 5-6: Set Recharge to 5-6.

JikfPve.png


So how do I link what I made to the monster?
1. Go back to the Monsters thing (Race > Race > Select Monster)
2. Locate the Racial Special Abilities button and press that.
3. Click to Add Bootstrap
4. A list will open. Search for the Special Ability you made and tick it.
5. Press ok and ok again.
6. Click Test Now.

LIfFapV.png


How do I add a Natural Attack?
The Natural Attacks also need to be added. These are things like 'Bite' that are added to the monsters abilities and not as a weapon. They are easy to add and can be added via the Race thing.
1. Click Race > Race and select your monster from the list.
2. Click the Natural Attack's Edit button.
3. Click the button to add a Bootstrap (Bootstrap is basically a fancy term for saying I want to connect this thing to another thing).
4. Search the list for the Natural Attack you need to add.
4.a If there is no match you can use something similar and change the name.
5. A screen opens allowing you to configure the attack. It has a default that works on the standard mathematical calculations but you can adjust it. For this example i'm going to enter this Natural Attack:
Bite. Melee Weapon Attack: +17 to hit, reach 20 ft., one target. Hit: 28 (4d8+10) piercing damage.
6. Set # Dice to the number of dice that needs to be rolled.
7. Set the Dice # Sides to the type of dice that needs to be rolled.
8. Set the Reach to 20 to reflect the 20ft. range.
9. Adjust anything else you need to change. Note that for the ability above this is all I needed. Hero Lab managed the rest of the calculation. You can click Test Now and lookup the monster in Hero Lab to see the impact of your changes. I usually have the monster up in an open portfolio so that I can review the changes as I make them to a monster.

https://i.imgur.com/Kc67C6m.png - Too many images.

You mentioned I could Change the Name?
Getting a bit more technical now but yes yes you can. Take note that this does not only apply to Natural Attacks. The scripting in Hero Lab is bloody powerful.
1. The screen you were configuring above has some buttons on the right. One of which is called Fields. Click that.
2. Click to add another field x2.
3. Set the first Field Id: to sbName and the Value to <your custom Natural Attacks name>. The drop down should remain as Assign.
4. Set the second Field Id: to wShortName and the Value to <your custom Natural Attacks name>. The drop down should remain as Assign.
5. Why did you do that twice? Hero Lab has different copies of names to allow it to use them in different views. The wShortName is the name that appears in the Armory Column and the Weapons tab within HLC while the sbName is the one that is used in the StatBlock (Ctrl K > Show statblock summary window).


CONGRATULATIONS. YOU HAVE JUST ADDED A SPECIAL ABILITY TO A MONSTER!

You can test this by creating a new Portfolio in Hero Lab and adding an NPC to it. Select the monster from the Race list and inspect the Stat Block for the changes you have made.

A note on weapons and armour: We do not add weapons and armour to monsters through the Editor. This is done through Hero Lab just like you do with a character. Ignore those for now. That's a different tutorial.

Now repeat the steps above to create as many special abilities and actions as you have time to provide. The more people we get doing this the quicker we all benefit.

Update the comments in the GitHub to let us know what you have done and I will be in contact to take you to the next step of uploading your changes to GitHub.
 
Last edited:
As the person who asked you the question originally, this is way more helpful than I even hoped. Thanks daplunk! I hope the community here realizes how much you do for us.

I have a few sessions to prep right now, but once I'm done with those I'll be using some of my free time to dive in and help get this stuff finished.
 
I followed the instructions. So far so good. However, I am still confused on how to see what monster I can work on. Only one of them has (complete) after its name. So, is that the only monsters thats completed? Can I start at the top of the list?
 
Yes you can start at the top of the list. There's only one that's 100% complete as I shifted my focus to automating the creation of the base that you see within the file.

The list is pulled from d&d beyond. I'll check to add this one back in.
 
I'm going to guess that the list got pulled from dndbeyond or somewhere before they finalized the listing or before some patch-fix listed it.

I'm wondering why SRD monsters like the Azer are on the list. There weren't any changes that I could see that require a cross-reference. There are several monsters in the list that can probably be deleted from the MToF file as a duplicate. You'll just want to go into the original file (if you can) and add the new source to the existing monster.

EDIT: Except for the Demon Lords, they nerfed those guys.
 
Okay, I tested this, added a "Keen Smell" ability for Adult Kruthic. It worked, perfectly. I can see how we could do this easily in just a few hours.. It's actually pretty fun!

Only problem I had is when I tried to test it, and add it to a portfolion, the adult kruthic (or any MTOF monster) is not in the list.. How do I solve this?
 
Only problem I had is when I tried to test it, and add it to a portfolion, the adult kruthic (or any MTOF monster) is not in the list.. How do I solve this?

There are two places that monsters tend to appear in a list within Hero Lab.

The first one most people are used to is the Race selection screen. When you have a monster in a *.user file (what we are currently working with) then you need to select them from the Race selection tab. Make sure you have the MTOF source enabled on the portfolio you are working with.

The second place is where you are probably looking for them. That is the Show Encounter Builder screen. That is not finished yet. For that to work we need to make something called a *.stock file. It's basically a portflio that you create that contains all of the monsters setup as races and you add all the armour and weapons in. You save the portfolio file as a *.stock file instead of a *.user file and put it in the 5e data folder. Monsters will then appear in the Show Encounter Builder screen. We will get a single person to manage that once all the Races are ready to avoid confusion with cross data.
 
Last edited:
As you get more comfortable with the process you will quickly learn that you may be able to reduce your efforts by searching the Racial Special Abilities list before you make a new one.

Many of the Racial Special Abilities get reused in monster stat blocks. Amphibious for example. We have god knows how many copies of that available. As long as the thing has the 5C in the name you know it is part of the community pack already. So linking to that won't cause any issues for the user so you can safely re-use it.

Note however that the description texts may not match what you need so it's a good idea to check them once you have added one by looking the monster up in Hero Lab.
 
In an attempt to get this as organised as possible I have just created a Project Kanban Board within the Github site. Please use this to communicate what you plan on working on and what you have completed.

I have done it by Alphabetical letters. Ie one person to work on all monsters that start with A while another works on everything that starts with B. This will reduce the noise made by all the communication.
 
Have updated the instructions for how to handle some more detail.

How to add Natural Attacks and how to program the limited use abilities.
 
As a bit of a more advanced lesson.

I just needed to add the following ability. It is considered a Natural Attack within Hero Lab.

Spit Rock. Ranged Weapon Attack: +17 to hit, range 120/240 ft., one target. Hit: 31 (6d8+10) bludgeoning damage.

So i added the Natural Attack using the same process I mention above. I used 'wOtherRng' at the Natural Attack thing that I bootstrap to my monster. When I loaded this up in Hero Lab though it had a range of 0ft. I needed it to show the 120/240ft.

nmIGN4N.png


The Reach option within the wOtherRng config did not work. So I needed to find out what field to modify on this bootstrapped item in order to modify it. This is how I did that.

1. From within HLC make sure Data File Debugging is enabled. You do this from HLC > Develop > Enable Data File Debugging.
2. This enables the ability to right click on elements within Hero Lab and obtain more information.
3. Right click on the Spit Rock ability that I made.
4. Click Show Debug Fields for Spit Rock (Zaratan)
4. This lists all the field options that can be set for the Spit Rock thing that is bootstrapped to my Zaratan.
5. Search for Range
6. Locate the Fields for what you want to modify. In my case I need to set the Normal and Long Range for this ability so I was looking for wRangeLong and wRangeNorm.

72YDoMf.png


7. Back within the Editor go monster (Race > Race > Locate monster in list
8. Select Natural Attacks and click the Fields button on the natural attack that you want to modify. For me that was the Spit Rock attack.
9. Add 2x fields.
10. For the first one - Field Id: wRangeLong | Value: 240 | Assign
11. For the second one - Field Id: wRangeNorm | Value: 120 | Assign

L3SItCr.png


12. Click ok and then ok and then click Test Now to confirm your changes and review them in HLC to confirm they worked.

8CIbu3h.png


You can do all sorts of cool stuff with this knowledge.
 
Last edited:
How to add Innate Spellcasting

Some of the monsters / npcs will require this.

1. Locate your monster in the Hero Lab Editor (Race > Race > Locate monster in list)
2. Click the Spellcasting Helper button.
3. Tick Innate Spellcasting and click OK and then OK.
4. Click the Innate Spells Edit button.
5. Tick the spells the monster knows and click OK.
6. Set the Total Charges and Usage Period? and click OK.
Example:
For At Will spells just change Usage Period? at At Will.
For 2/day set Total Charges to 2 and Usage Period? to /day.

For the specific monster I was working on I had an additional challenge.

At will: alter self (can become Medium when changing her appearance), detect evil and good, fireball, invisibility (self only), wall of fire
3/day each: blade barrier, dispel evil and good, finger of death

By adding the Innate Spells to the monster all that was displayed by default is the Alter Self spell name. In order to add the additional text I needed to make a further change.

1. From within HLC make sure Data File Debugging is enabled. You do this from HLC > Develop > Enable Data File Debugging.
2. This enables the ability to right click on elements within Hero Lab and obtain more information.
3. Right click the spell I want to modify (Alter Self) form the In-Play column and select Show Debug Fields for Alter Self (Zariel)
4. Search the list for fields that contain the word 'Name'.
5. Locate one that sounds like the one you need to change. This can take some testing sometimes. In this case it was the sNameMod that I needed to modify so I noted that down.

MvXJxCa.png


6. Go back into the Editor and open up the monster.
7. Click the Innate Spellcasting button and locate the spell you want to modify.
8. Click the Fields button.
9. Click to Add another Field.
10. Set Field Id: sNameMod | Value: can become Medium when changing her appearance | Assign
11. Click OK and OK
12. Click Test Now and check the changes in HLC. As you can see the name is now modified in the various locations that you can see the spell name within HLC. Note that HLC added the ( and ) itself. All I needed to add was the additional text I wanted to display.

dqCRl7Y.png
 
Last edited:
Ok this monster keeps presenting learning opportunities. I needed to add this:

Legendary Resistance (3/Day). If Zariel fails a saving throw, she can choose to succeed instead.

Instead of re-creating Legendary Resistance as I know it has already been made multiple times I simply bootstrapped it to my monster.

1. Monster > Racial Special Abilities > Click to add another bootstrap > Search for Legendary Resistance > There are 18 to pick from! > I went from the one that sounded like it was the first one made. raLegResis > The lack of the 5C or any other identifier in the name tells me this was likely made by LWD so I picked this one.
2. I then click OK and OK and Test Now to save my changes and load the monster in HLC.
3. When loaded I noticed that Legendary Resistance was added and the description matched my needs but it could only be used 1/day. I needed it to be used 3/day.
4. Right click on the Legendary Resistance in the Specials column in HLC and click Show Debug Fields for Legendary Resistance (1/day).
5. Search through the list for something that has a value of 1.
6. I found abUserVal = 1 and noted down that name.
7. Back in the Editor I clicked on Racial Special Abilities and located Legendary Resistance in the list. I clicked on Fields.
8. I clicked to add another field and set the following:
Field Id: abUserVale | Value: 3 | Assign
9. I clicked OK > OK > Test Now and confirmed the change was successful in HLC.
 
If you see a monster that is going to need to carry a weapon or wear armour we need to add proficiency to use that item. With monsters you can add specific proficiency to use specific weapons and armour. I'm not a fan of this as Hero Lab lets you change weapons and armour so easily so best to make the monsters capable of using other stuff.

The monster I'm making can use a Longsword and a Jevelin. Longsword is a Martial Melee Weapon while Javelin is a Simple Melee Weapon. Thus I will add Martial Weapon Proficiency as it is higher.

To do this locate the monster in Race > Race > Monster Name

Tick the option you want them to have (Martial Weapons) and click OK > OK > Test Now! to apply the changes.

Now the monster can pick the weapons within Hero Lab and will be proficient in them.
 
As you get more comfortable with the process you will quickly learn that you may be able to reduce your efforts by searching the Racial Special Abilities list before you make a new one.

Many of the Racial Special Abilities get reused in monster stat blocks. Amphibious for example. We have god knows how many copies of that available. As long as the thing has the 5C in the name you know it is part of the community pack already. So linking to that won't cause any issues for the user so you can safely re-use it.

Note however that the description texts may not match what you need so it's a good idea to check them once you have added one by looking the monster up in Hero Lab.

Tried this. When added to HL it says: "The {abText} has advantage on attack roll..." (skipped the rest because its the first part that wasnt showing the creature name).

When I mouseover it skips the name of the creature entirely: "The has advantage"..
 
BTW, do we also add stuff like attacks? Do they work the same as racial abilities?

For instance. Adult Kruthic has:

Multiattack. The kruthik makes two stab attacks or two spike attacks.
Stab. Melee Weapon Attack: +5 to hit, reach 5 ft., one target. Hit: 6 (1d6+3) piercing damage.
Spike. Ranged Weapon Attack: +5 to hit, range 20/60 ft., one target. Hit: 5 (1d4+3) piercing damage.

Stab & Spike are natural attacks and will most likely follow the steps youve described above. Right? What about multiattack?
 
Back
Top