Have you ever wanted to play a game of DnD set in the Dwarf Fortress setting? Have you ever wondered how you'd replicate those wonderful procedurally-generated monsters that make Dwarf Fortress so fun without tearing your hair out with a million die rolls and long tables? Well wonder no longer, my friends, for I have done (most of) the hard work for you already!
Behold! The creatively-titled:
Forgotten Beast/Titan Generator for DnD 5e v 0.8.2!This open-source Python script takes Beasts from the Monster Manual and a few other sources, adds some modifiers, and produces a complete, randomly-generated stat block for your new Forgotten Beast or Titan, ready to be thrown at your unsuspecting players at any time!
To run the program, simply click the link above, and then click the Run button. One Forgotten Beast / Titan will be generated in the dark blue pane on the right. If you want another, just click Run again. Warning: clicking Run will clear the output screen, so if you want to save your Forgotten Beast / Titan, be sure to copy it to a text file before running the program again!
Current Features:- 36 Base Creatures
- 211 unique modifiers
- A nearly-complete name generator that more or less replicates dwarven names. (Special thanks to Dunamisdeos for copying out huge swaths of the dictionary into a useable format!
- A nearly-complete description generator that mirrors the one in Dwarf Fortress
Plans for future releases:- Add more creatures.
- Add more modifiers.
- Complete the name generator.
- Add appearance modifiers so that the description generator will be complete.
- Fix any bugs or grammatical errors that are discovered.
- Add an option to generate multiple stat blocks at once
- Balance material options - currently the list is dominated by stones and gems just because of how many of those there are and I don't have weighted odds
Missing Features I may never get to:- Automatically-calculated Challenge Ratings. Those equations are complex, and being able to calculate them from a statblock is probably a large program in and of itself. If you really need to know a generated monster's CR, there are calculators available online that you can plug the stats into.
v 0.8.0v 0.8.1- Added spaces to dwarven names to improve readability and properly reflect how they appear in Dwarf Fortress
v 0.8.2- Adjusted the number of hit dice for generated beasts to make them more powerful.
- Fixed a minor typo.
- Adjusted the probability of certain types of materials showing up. Metals, liquids, gases, and elements should appear more often.
This is one of the largest coding projects I've ever undertaken (nothing compared to Toady, though), and there's still a lot of work to do, but now that the basic functionality is there and I've gotten enough data to at least make some interesting creatures, it's ready for release. I abandoned the project for two years, but always meant to come back to it. In the past few days I finally decided to sit down and finish the thing. It was a great learning experience, as I've never done much in Python before, but once I got the hang of it, it was a pleasure to work with.
I hope you all enjoy it!
P.S.: Please tell me if you find any bugs or have any requests for future features for this program. Again, huge kudos to Dunamisdeos for doing the most boring part of the job for me!