The following is a Python script developed by yours truly to generate a sector according to the core rulebook of the Mongoose Traveller 2nd Edition tabletop RPG, exactly as described in the Universe and World Creation chapter. It is designed to describe worlds in human-readable format as much as possible, without any confusing abbreviations.
The script assumes that you are already familiar with the Universe and World Creation rules, and requires reference to them to configure the script to your liking and complete the creation process.
Special thanks to Matthew Sprange of Mongoose Publishing for giving me written permission to publish portions of his work in my script for non-commercial purposes! Note that due to this limited permission, I am releasing my code under a custom non-commercial license, which you can read in the header of the Python script.
First, install Python 3 if it is not already installed on your system.
MGT2WorldAndUniverseCreation.py in a text editor, and change the constants at the top of the file to the desired values. Each element in each array correspond to a specific subsector. Note that by default, each subsector has a normal density of systems, a 5% probability for systems to be located at a hot edge, a 5% probability for systems to be located at a cold edge, and a 10% probability for systems with an unusual atmosphere to be panthalassic.
python MGT2WorldAndUniverseCreation.py > Sector.txt
Finally, follow the instructions at the bottom of the generated text file to manually complete the process.
- Subsectors coordinates within a sector are represented with 2 letters, the first being the column and the second the row. (If there is a standard way in this edition of Traveller to describe such coordinates, I am unaware of it as it is not described in the core rulebook.)
- Routes cross through subsector boundaries.
- The list of generated trade routes can be really messy, but they are accurate to the rules. (I haven't found a good way to manage that data unfortunately.)
- One-liner world profiles are not generated by design.
- Maps are not automatically generated, only the data to draw them.
Here are a few commands I crafted to validate and easily read API definitions in the OpenAPI format, using Docker and open source tools provided by Swagger. I have yet to convert them into proper shell scripts, but I hope these will be helpful nonetheless. The commands are designed to be run in a…
The following is a collection of free international standards, registries and references that I collected throughout the years while developing websites and web services. These references, while very precise and technical by their nature, are extremely useful in order to ensure that a specific…
As I am continuing my personal journey into deep learning research and development, I wanted to try out PyTorch, a machine learning framework with GPU acceleration primarily designed for the Python programming language. However, I couldn't find any good introductory resource online for it. So I read…
I'm a big fan of the Paranoia 25th Anniversary Edition comedy tabletop RPG, and I regularly act as a game master for that game on Roll20 with my regular play group in-between other tabletop RPG campaigns. However, there wasn't any good character sheet for that game system on Roll20, so I decided to…
"Everything must be done now. Let's re-use existing proven solutions and build over them so we don't waste time." And thus, people will look at the top 2 or 3 most popular solutions they already know about or can easily find on the Internet, compare them, pick the best one, and maybe add or change…
See all of my articles