Tuesday, July 23, 2013

Magic Added to the Treasure Table

I have been busy.

There are just over five hundred different magical items listed in the Dungeon Master's Guide.  This isn't all the magic possible in the game, of course not, but that seemed like the best list to begin with, and generally represents all the magic that I use (I've never been big on the need to invent new magic items).  It's a long list, and I've been patiently loading it into my recent treasure generator.  I wrote about that last week.

So now the generator provides magic, too.

To make it work, I took advantage of some work I did years ago, breaking down the frequency of each magic item on the main table.  For example (for those who have a DM's Guide), on page 121 there is a table that indicates what kind of magic item: d100, 01-20 = potion, 21-35 = scroll, 36-40 = ring, etc.

Then, under the potion table, also a d100, 01-03 = animal control, 04-06 = clairaudience, 07-09 = clairvoyance and so on.  So the base chance of getting an animal control potion by random roll is 0.2 x 0.03, or 0.006 ... expressed as a percentage, 0.6%.

Moreover, something like a dragon control potion is further broken down on page 125, so that on a d20, 1-2 = white dragon, 3-4 = black dragon, 5-7 = green dragon ...

So that a potion of green dragon control would have a ratio of 0.2 (first table) x 0.01 (potion table) x 0.15 (dragon control table) = 0.06%.

I went through the whole list and broke it down this way, not in the last week, but over a couple of weeks about ten years ago.  And there it has sat, the original purpose for my doing so tossed out in expectation that someday I'd think of something better.  And here it is.

The complete list can be found on the wiki link above, on the 'Magic Groups' tab.

Some people who know excel very well may shudder at the manner I used to randomly roll up the magic, as I did it in 23 separate calculations of 22 items each.  There were two reasons for this: one, because you can only pile so many IF statements in a cell before the program starts to have conniption fits; and two, because this made it easy to ADD magic items to various tables at a later date.  The table is based on the idea that really big treasures will roll for much larger magic items, while smaller treasures will be limited to smaller magic items.  As each magic item appears, that reduces the potential size of future magic items, so that a really big result will cut the list short ... and if the items are all small, a big treasure will have a long list of them.

I think it's one of the most brilliant things I've done in a couple of years - its a completely different way to rank a table, based not just on the relative likelihood of the item, but also its actual power and finally within the total value of the whole treasure.

I think in the future it will put a little more magic in my world; I think much of the magic it puts in will be more likely mundane and minor magic, as opposed to the heavy stuff being in the only decent random magic table in AD&D ... and I think it will put more magic into the hands of my NPCs.  I like it only about a thousand times better than that shit Creating a Party table in the back of the DMG.

I hope the gentle reader checks it out.


James C. said...

Of all the finished products you've or shared, this one I have been anticipating the most. I've been putting off doing this for myself for months now due to the breaking down of all of the magic treasure tables into percentages etc... even if I don't use your front worksheet as-is, and I will initially at the very least, the supporting worksheets are invaluable.

That said, I'll try to come up with some value and send it along. ; )

Maximillian said...

Yes, as predicted, I'm having difficulty following the calculations to get a handle on the distribution (the curve) of values returned.

I started to describe what I thought it was doing, got part way through, and realized I was off base.

Alexis Smolensk said...


As I said, there are NO curves.

Everything is an IF statement. If you're not familiar with if statements, you're not going to get it.

In a string of if statements, such as I've created, where the first "IF" isn't true, the "IF" in brackets is queried, and then if that isn't true, the "IF" inside the next set of brackets is queried, until either something is true, or the last option is a default where everything is false.

The selection process says basically, IF the total amount of gold allocated to magic is less than 1000 g.p., then the random number generated is only so high; if the total amount of gold is higher, the random number generated is higher ... and then it is possible for the higher magic items to be rolled and accepted.

I have been thinking about doing a post explaining how to create a table for D&D using excel.

Andrej said...

Alexis, can you refresh my memory on how to use the comparative Civ IV development value on sheet one? Thanks in advance.

Alexis Smolensk said...

The Comprehensive Strategy Guide" for Civ IV, the one in the sidebar, describes how terrains such as sea or rivers and such have 1 or more coins naturally for the game layout. Hamlets, villages, towns and cities add coins, as do other developments ... so you would insert the number of "coins" the general area has.

For ordinary D&D, not thinking in terms of Civ IV, its basically just that any built up area naturally has more treasure than an obscure one, since there's been time to build up that treasure, create magic, import or cut gems, etc. A wilderness area would have more accessible wealth, but less wealth per encounter.

All in all, you can go with your gut instinct, and really its just a modifier that allows playing with the base numbers more easily. Such as the DM thinking, "that was really tough, I'll add 10% to the treasure," typing in 1.1.

Maximillian said...

What I mean by the curve is, over many repetitions, and over varying inputs, what are the average and range of the results, in that senese, even if you just multiplied the hd by 155 and returned that as gold, iot would still be a distribution of sorts.

Individually an if statement is easy to parse out, but compounded, it's really hard to get a feel for what's going on. I'm at work now, writing if statements for a living, but I'll play around with this more when I have some extra time. This is a neat way of thinking about treasure in general, and incredibly useful, so I really think you're on to something.

One additional question: it looks like the intelligence is used only for the weaponry, did I miss another effect?

Alexis Smolensk said...

Ah. I presumed you meant what curve had I used to program the excel, not what curve resulted from the result. I have no idea what curve results - wasn't important enough. If it seems 'off' in the long run, I'll modify those results which seem to appear far too often.

The other application for the weapons that you might be missing is that when I created a table for a new level of intelligence, I halved all the weapons (in not quite every case) that were common for the lower level. Sorry, I don't have my work for that. I was quite satisfied, and am satisfied, with the results there. If I sought to change them, I would do so from scratch.

Andrej said...

I just want to say again what a useful tool this is. Man this really saves some time and effort.

Quincy Jones said...

You are single-handedly forcing my game into the digital age.