Dec 8, 2023

40,000 Sectors: A Generator

I got Imperium Maledictum, the new Warhammer 40K RPG the other day. It looks good overall, I'll be writing a longer and more detailed review shortly. As part of my campaign prep for an upcoming test of the system, I decided to relaunch the Tellian Sector. To make it bigger, and represent the changes as 40K moves into the 42nd millennium and the "Indomitus Era", I decided I would make an automatic sector generator. 

Here it is, free to the public, as an Excel spreadsheet you can use yourself.

This is based off a heavily modded and "40K-ified" version of the Stars Without Number 1e planet generator. If you know fairly basic Excel (how the INDEX and RANDBETWEEN formulas work, specifically), you can mod it fairly extensively if you don't like the probability ranges I've assigned to various categories. 

To get started:

1) Create a new worksheet and copy / paste the values only from columns L through X from the generator template worksheet to that new worksheet. 

2) You'll want to insert two columns at the left-hand side and copy over the counters from columns J and K on the generator template worksheet so you can keep track of the rate of incidence of each item in each category. Be sure to make this a regular paste (not values-only) so it preserves the counter formulas in K

If you delete it, the counter formula is: =COUNTIF($[column letter]$[number of first row of column]:$[column letter]$[last row of column], [column letter and row number of the entry you want it to track). 

e.g. =COUNTIF($F$1:$F$121, A2) tells Excel to count everything in column F between rows 1 and 121 that matches the value in A2 (which in this table is the word "Agri-World")

Expanding it:

All you need to do is select the bottom row of columns L through X on the generator template and drag them down until you have as many planets as you want. Nice and easy! It's Excel, so I recommend not doing more than about 10,000 at a time unless you've got a top of the line machine. Also, it's easier to handle certain later processes if you do smaller batches at once, so consider making each worksheet a subsector and then generating however many subsectors you want.

If you screw up the formula for any reason and need to rewrite it, all of the columns are basically filled with:

=INDEX($B$2:$B$101, RANDBETWEEN(1,100),0)

Where B2 and B101 are the 100 entries to the left in column B (Planet Type), and RANDBETWEEN generates a number between 1 and 100 and then grabs a corresponding row coordinate out of column B and INDEX dumps the value in that cell, e.g. "Hive World" into the formula's own cell.

De-duping the tags:

This is one of those things where working in smaller batches will keep you sane. Writing a formula to de-dupe rows across three columns is kind of a pain, so you'll need to manually dedupe if any of the Notable Features tags are duplicates on a given planet. There are 100 possible tags, so you'll rarely run into dupes in small batches.

Organising planets into systems:

1) Starting from the first cell under "System", look at the number (n) in it, and count down (n-1) squares, deleting the entries in columns C and D ("System" and "Star Type" respectively).

Here's a picture of what that looks like once you're done:

So you can see that there's a single system with 6 in the System column and an A in the start type with five blank spaces under it. All of the planets that are blank like that are in the same system.

The numbers in the system column are generated by running a simple formula that divides 120 by a random integer between 12 and 120. The formula is here: =120/RANDBETWEEN(12,120)

120 was selected as the numerator because it's the number of planets in my sample sector and the default for this generator. Just change that to however many planets you're actually working with. My recommendation is that whatever size you're working with, the minimum value for the random integer should be set up so that no more than 10 planets per system are generated, and the maximum value so that at least 1 planet is in each system. So if you had 10,000 planets, you'd go with a minimum value of 1000, and a maximum value of 10,000.

Making sense of things:

This is also the stage where I recommend you look at the actual entries and make any manual changes you want. I typically use the counters at the side (it's why I included them) and use a Find/Replace to alter the cell colours: orange for ones I want to reduce, green for ones I want to increase. For example, if there aren't enough Agri-Worlds, I'll identify what I do have a surplus of that I don't want (say, Penal Worlds) and turn some Penal Worlds into Agri-Worlds. So long as you don't misspell things, the counters should automatically update.

Naming things:

You'll want to delete the remaining numbers in the System column (column C), and start punching in names. I have not created an automatic name generator here because it would be convoluted and I've never really needed one myself. Once you have the systems named, go through and name each individual planet, station, etc. in column E

That's basically it.


1) Open the sheet, and copy it

2) Copy and paste the values from columns L through X. Once you've done that, delete columns A through I.

3) De-dupe the tags manually.

4) Break the planets up into systems

5) Name the systems and planets

6) Fiddle with entries until you're happy

7) Remember to save your work!

A few notes on the Tellian Sector and this generator:

I intentionally left a lot of the tags more generic rather than less so you can mod them to your own taste. Some of the tags and such also represent my own interests in the 40K setting, and I encourage you to change them if you want something different.. 

There's a lot of Xenos and Hereteks, comparatively low levels of Chaos, and no Necrons, Orks, Eldar, or Space Marines explicitly mentioned. I have small amounts of Eldar and Space Marines in the Tellian sector, but they're custom-placed by me rather than something I leave to a random generator.

There's also a fairly high chance of people having archaeotech levels of technology, and a lot of xeno collaborators because these are what make the Tellian sector an area of interest to the Imperium (for good or for ill).

Anyhow, enjoy! I don't care about copyright, credit, any of that stuff, so use it as you please.