Fallout 2D20 Loot Generator

Hi all,
I have started making it a habit to share any tooling that I make for my local games. For this I made a quick loot generator using the tables from the Core Rulebook, though I have modified it slightly to include things like glowing blood packs, abraxo cleaner, and asbestos.
If you have any feedback, find any bugs, or have any feature requests, please feel free to post here.
I decided to make this generator in html, because the product is the source code and it is easy for folks to make their own updates and fixes. If you do make additions, please feel free to share here as well.

Generator V1
Generator V2
Generator V3
Generator V4
Generator V5

V2 Update: I have cleaned this up a bit, separating the javascript into its own files and adding possible modded weapons in the “Weapon Case” container

V3 Update: Added in modded armor in the “Armor Case” container. I think I will add an NPC/Encounter generator if my free time keeps up.

V4 Update: Added NPC generation, between level 1 and 20 for now. Also changed the layout a bit to be a bit more compact and fallout-y.

V5 Update: Fixed a lot of bugs with the NPC generation, set the max level to 21, also cleaned up the generation style of the NPCs. Until I get requests, I think I will be done updating. :slight_smile:

May your rolls always make you GM cry,
Kakuga Goka


Very cool. The variety of container types is thoughtful and very useful. Thank you for sharing.

Am I missing something? I cannot seem to figure out how to use this.

What part are you having trouble with?
Edit: If you are running on mobile, I have not really tested this on that platform. This should work on Chrome, Edge, and Safari though. Firefox should work, but has spacing issues.
Edit 2: Testing on windows with Safari, it does not work. :confused:

You’re a king/queen.

1 Like

Dear lord thank, as loot generation is so far the most tedious part, and yet so essential, to a post-apocolypse game.
However I to must admit to not understanding how to use your spreadsheet.
For example: players are searching a Large area - a garage in a military base. The site has been mostly searched. Using the charts from the GM Handbook (which should have been in the core rulebook IMHO) I would have the following:

Large location, 24 total items, x4 multi
Ammo 4, armor 4, clothing 4, weapon 4, other 8
DN 3 (mostly searched), -5 items
Ammo 0, armor 0, clothing 0, weapon 0, other 3
Other: Ammo, Food, Weapon

However I don’t see a way to enter in the DN for the site.
Also, you might want to have the first sheet in your workbook be the instructions.

They were written to go into the corebook, but including them would’ve meant a larger (and more expensive) rulebook, because there’s only a finite amount of stuff that can fit onto a page, and adding more pages isn’t a simple matter, nor is it free.

This tool is so well made!

I see there is only three tabs but there are room for more, do you plan on adding the scavenging for location based that are in the GM Handbook?

Also for the NPC Generator, maybe a tab for auto leveling enemies located in the handbook as well?

Honestly, keep up the great work!


Looking at the core book I’m going to guess pages are added in increments of 16 or 32 for that type of binding. With 11 pages of loot tables in the GM Handbook they would have to create a lot of filler material.

Would it be possible to add the credit value of items?

That’d help tremendously when reselling the stuff, especially for modded weapons and armors where you need to manually check each mod separately to sum up the value.

I’m also unsure how the Luck button works. RAW says you add or subtract the level of the location on your result. Nowhere can you input the location level and the result should include a choice of two items: one of you’d add the level, another if you subtract.

In the food loot for v5 pork and beans is Pork ‘n’ Beans
In the Clothing loot for v5 Engineer’s armor says Engineer’s Armor
In the magazine section Fixin’ Things says Fixin’ Things
Tumblers Today - Locksmith Certification Special, Pass with Flying Colors (Issue 5/5) is Tumblers Today - Locksmith Certification Special—Pass with Flying Colors (Issue 5/5)
Tesla Science Magazine - Tomorrow’s Technology for Today’s Super Soldiers (Issue 4/9) is Tesla Science Magazine - Tomorrow’s Technology for Today’s Super Soldiers (Issue 4/9)
Programmer’s Digest is Programmer’s Digest
I think all of theese are a problem with the print sytax of ’ , is is instead replaced by ’, you might need to use ’ to do it properly if you were just using ’
I also personally think dirty water shouldn’t be on the chems list

1 Like

The way luck works in this generator is to increase the chance for better loot to be found. In the PDF I used for creating this, I did not see anything about adding level, If I missed something, please send me the page number so I can add in the mechanic!
As for adding credit value, I left that out because I did not think of it til the end and it would require a large redesign of the print out system being used, as it is very very basic string from list print outs, with mods being appended. I do not think I will be adding this myself, but the joy of HTML is that it is very basic and uncompiled code, so anyone here can take up the mantle and add as they see fit. (Which is why I left room for more tabs)
This is the blurb I saw on luck:
You may spend a Luck point to introduce a helpful
fact or detail about the situation you’re in, something
that you’d have to be lucky to encounter. You could
find just the right items or the right kind of ammo
while you’re scavenging, find a key to a locked door, or
a clue to a computer password. The gamemaster may
prompt you with an opportunity to do this, or you
may suggest when it could happen, but they can veto
your suggestions, or ask you to spend multiple Luck
points to make it happen.”

Since I cannot edit the original post, here is v5.1 with the quote fix. That is an annoying bug. Sorry about that. Don’t copy paste everything folks!
Generator v5.1

It’s quite hidden, actually. p.200 on the top right in the yellow box: Modded Items :

For each item category found, roll on the relevant
table. After rolling, you may spend 1 Luck point to
add or subtract an amount up to the location’s level to
or from the roll: that is, if you’re searching a Level 6
location, you may increase or reduce your roll by up to
6 after rolling, by spending 1 Luck point.

1 Like

Noticed under the Armor.js all the Combat Armor pieces have “Reinfoced” instead of Reinforced as a mod material.

Using v5.1.

@KakugaGoka I am working on an expanded system that you’ve done a lot of work on already. I see you’ve already granted use of your work to make changes as we see fit, I just want to ask more formally since I want to make it into something bigger. So, will you confirm that I may use (with attribution and not for profit) your code or scrape your code for what I need to make my own tools? You’ve done a lot of work on this already and I see ways it could be more but I don’t want to burden you with asking if you can bring my concept to life over yours. Thank you for your consideration, I didn’t know how to send a private message here and a conversation has to start somewhere, just trying to get into it asap since i’m a tldr sort of writer. Although if you’re interested in combining my code/concept with yours to produce a larger project I’m even more interested in that. :slight_smile:

1 Like

Hey! Just a curious bystander who really loves this tool but would also like to expand it for a homebrew sort of sense.

I felt I’m pretty nifty at reading code typically, but I spent a long amount of time looking at it and I can’t understand. Just trying to get new items to show up and how I would arrange them. I realize that it rolls a dice for instance Oddities is 3d20, and has 57 items. But I’m having trouble with the code I guess because some areas say.

getStuff(listOdd, 1, rollDie(2)-1)

and some areas say.

getStuff(listOdd, 1, rollDie(3)-1)

Guess I’m trying to understand how the die rolling is working in this and for whatever reason can’t wrap my head around it.

Any help would be very grateful!

I can’t for the life of me figure out how this works, am I doign something wrong?

@SoOnNSoIV Yes, feel free to use as you see fit. It is completely open source, and where credit would be nice, it is not required :slight_smile:
I make for things so that others may build to greater heights, as I am not the best, but someone is.

@Darkenneko I believe that it is getStuff(-ListOfChoice-, NumberOfItems, rollDie(d20)-offset)
I hope that is helpful. I have not touched this code in a long time though so, I could be mistaken. Was a quick slap together project so I could run a game easier. :laughing:

@trashgoblin You should be able to just open the file in your web browser and go. What is the issue you are having?