Advanced Dungeons and Dragons Monster Clustering

A few years ago I looked at this, have found it again, so here’s a start.

Not, many mess categories as you know, but here’s a plot from 2 that will fit on a screen.

Vermin and plants, some animals and common humanoids and your garden variety monstrous humanoids when you lump it at this very joined together level.

Kmodes method, just have to find where I put that part.

https://github.com/bluetyson/ADnD-Monster-Cluster-Analysis/blob/main/ADnD-Monster-Clustering-Basic.ipynb

Welsh Piper hex map algorithm – Python

In relation to HexDescribe and TextMapper – the random or Smale algorithm is the Welsh Piper’s. https://welshpiper.com/hex-based-campaign-design-part-1/

There’s a follow on part linked for stocking hexes.

I translated this to python – partly as a ChatGPT exercise.

https://github.com/bluetyson/Dungeon23-Mokuy/blob/main/smale.py

Where I did a few tweaks of the Primary and Secondary maps for the gnomeyland style based on the terrains I have put in Mokuy for HexDescribe.

Here’s the TextMapper map https://github.com/bluetyson/Dungeon23-Mokuy/blob/main/mokuy1.txt

and the HexDescribe tables so far – lengthy project the latter https://github.com/bluetyson/Dungeon23-Mokuy/blob/main/mokuytables.txt

I need a ship and ship crew generator, speaking of such things (and/or ChatGPT).

Spiders

Dungeon looks a bit spidery, too.

DUNGEON
BBBBOBBBB
BBBBCBBBB
BBBBCBBBB
BBBBCBBBB
BBBBCBBBB
BBBBCBBBB
BCCCCBBBB
BBCR1BBBBB
BBwmR1R1R1mR1BB
BBBR1R1R1R1BB
BBBR1R1R1R1BB
BBCBCCCBB
BCBCBCBCB
CBCBBCBBC

Data: 1

{‘shape’: ‘R’, ‘size’: [4, 4], ‘contents’: {‘treasure’: {‘type’: {‘copper’: 0, ‘silver’: 0, ‘electrum’: 0, ‘gold’: 0, ‘platinum’: 0, ‘gems’: 0, ‘jewellery’: 0, ‘magic’: 1}, ‘store’: ‘Chests’, ‘protection’: ‘hide’, ‘hide’: ‘Magic: Invisibility’}}, ‘exits’: 3, ‘exitlocations’: {1: ‘O’, 2: ‘L’, 3: ‘O’}, ‘exitdirections’: {1: ’45AB’, 2: ’45BA’, 3: ‘A’}}

Key: 1

treasure:{‘type’: {‘copper’: 0, ‘silver’: 0, ‘electrum’: 0, ‘gold’: 0, ‘platinum’: 0, ‘gems’: 0, ‘jewellery’: 0, ‘magic’: 1}, ‘store’: ‘Chests’, ‘protection’: ‘hide’, ‘hide’: ‘Magic: Invisibility’}

Wandering Monster: 0

{(-2, 8, -1): {‘level’: 3, ‘type’: ‘Spider-large’, ‘No’: 3, ‘XP’: 0}}

A fun random first level

If you go the wrong way at the entrance, hidden pit trap.

If you can find a way across a yawning chasm, there are monsters working down the end of a long dark passage – you might choose the right way and bonus easy platinum.

DUNGEON
BBBBBBBBBBCCHlCCBBBBBBBBBBBBBBBBB
BBBBBBBBBBCCHlCBCBBBBBBBBBBBBBBBB
BBBBBBBBBBCBBBBCOBBBBBBBBBBBBBB
BBBBBBBBBBCBBBBDptDBBBBBBBBBBBBB
BBBBBBBBBBCBBBBDDDBBBBBBBBBBBBB
BBBBBBBBBBCBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBCBBBBBBBBBBBBBBBBBBBB
BBBBBBBCCCCBBBBBBBBBBBBBBBBBBBB
BBBBBBBCBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBCBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBCBBBBBBBBBBBBBBBBBBBBBBB
CBBBBBBCBBBBBBBBBBBBBBBBBBBBBBB
CBCBBBBCBBBBBBBBBBBBBBBBBBBBBBB
CBCBCCCCBBBBBBBBBBBBBBBBBBBBBBB
CdCCBCCCBBBBBBBBBBBBBBBBBBBBBBBB
R4wmCCBCBCBBBBBBBBBBBBBBBBBBBBBBB
R4R4R4CCHbrCBCBBBBBBBBBBBBBBBBBBBBBBB
R4CCCDCDCBBBBBBBBBBBBBBBBBBBBBBB
R4R4ptR4R3wmR2R1R1BBBBBBBBBBBBBBBBBBBBBBB
R4R4R4R3R2R2R1R1BBBBBBBBBBBBBBBBBBBBBBB
R4R4R4R3R3R3R1R1BBBBBBBBBBBBBBBBBBBBBBB
BBBR3R3R3R1R1BBBBBBBBBBBBBBBBBBBBBBB
BBBR3R3R3R3BBBBBBBBBBBBBBBBBBBBBBBB
BBBR3R3R3R3BBBBBBBBBBBBBBBBBBBBBBBB
BBBBBCBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBCBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBCBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

Key: 1

{‘shape’: ‘R’, ‘size’: [2, 4], ‘fromdoor’: ‘Y’, ‘contents’: {’empty’: ‘Y’}, ‘exits’: 1, ‘exitstype’: ‘door’, ‘exitlocations’: {1: ‘S’}, ‘exitdirections’: {1: ‘A’}}

Key: 2

{‘shape’: ‘R’, ‘size’: [2, 2], ‘fromdoor’: ‘Y’, ‘contents’: {’empty’: ‘Y’}, ‘exits’: 1, ‘exitstype’: ‘door’, ‘exitlocations’: {1: ‘R’}, ‘exitdirections’: {1: ‘A’}}

Key: 3

{‘shape’: ‘R’, ‘size’: [4, 6], ‘water’: ‘N’, ‘fancy_shape’: ‘H’, ‘contents’: {’empty’: ‘Y’}, ‘exits’: 2, ‘exitlocations’: {1: ‘R’, 2: ‘O’}, ‘exitdirections’: {1: ‘A’, 2: ‘A’}}

Key: 4

{‘shape’: ‘R’, ‘size’: [4, 6], ‘contents’: {‘trap’: {‘new_coord’: (-15, 12, -1), ‘trap’: {‘type’: ‘secret door pit’, ‘chance’: 0.15, ‘fits’: ‘Y’, ‘abv’: ‘pt’, ‘chance_elf’: 0.25, ‘damage’: 1}, ‘secretdoor’: ‘N’}}, ‘exits’: 3, ‘exitlocations’: {1: ‘R’, 2: ‘S’, 3: ‘S’}, ‘exitdirections’: {1: ‘A’, 2: ’45AB’, 3: ‘A’}}

Key: 5

{‘shape’: ‘R’, ‘size’: [3, 3], ‘contents’: {‘treasure’: {‘type’: {‘copper’: 0, ‘silver’: 3000, ‘electrum’: 0, ‘gold’: 0, ‘platinum’: 0, ‘gems’: 0, ‘jewellery’: 0, ‘magic’: 0}, ‘store’: ‘Coffers’, ‘protection’: ‘hide’, ‘hide’: ‘Secret: In rubbish’}}, ‘exits’: 3, ‘exitlocations’: {1: ‘R’, 2: ‘O’, 3: ‘R’}, ‘exitdirections’: {1: ‘A’, 2: ‘A’, 3: ‘A’}}

Key: 6

{‘shape’: ‘R’, ‘size’: [4, 4], ‘fromdoor’: ‘Y’, ‘contents’: {‘treasure’: {‘type’: {‘copper’: 0, ‘silver’: 0, ‘electrum’: 2250, ‘gold’: 0, ‘platinum’: 0, ‘gems’: 0, ‘jewellery’: 0, ‘magic’: 0}, ‘store’: ‘Chests’, ‘protection’: ‘guard’, ‘guard’: ‘Darts: inside bottom up’}, ‘secret_door_dict’: {1: {(-4, 27, -3): ‘xmin’, (-5, 27, -3): {‘beyond’: ‘P’, ‘loc’: ‘xminloc’}}, 2: {(-4, 26, -3): ‘ymin’, (-4, 25, -3): {‘beyond’: ‘P’, ‘loc’: ‘yminloc’}}, 3: {(-3, 26, -3): ‘ymin’, (-3, 25, -3): {‘beyond’: ‘Room’, ‘loc’: ‘yminloc’}}, 4: {(-4, 28, -3): ‘ymax’, (-4, 29, -3): {‘beyond’: ‘A’, ‘loc’: ‘ymaxloc’}}, 5: {(-3, 28, -3): ‘ymax’, (-3, 29, -3): {‘beyond’: ‘P’, ‘loc’: ‘ymaxloc’}}, 6: {(-1, 28, -3): ‘ymax’, (-1, 29, -3): {‘beyond’: ‘P’, ‘loc’: ‘ymaxloc’}}}, ‘secret_door_count’: 6}, ‘exits’: 0, ‘secretdoors’: ‘check’, ‘exitlocations’: {}, ‘exitdirections’: {}}

Key: 7

{‘shape’: ‘R’, ‘size’: [6, 6], ‘water’: ‘N’, ‘fancy_shape’: ‘H’, ‘contents’: {’empty’: ‘Y’, ‘secret_door_dict’: {1: {(-4, 30, -3): ‘xmin’, (-5, 30, -3): {‘beyond’: ‘P’, ‘loc’: ‘xminloc’}}, 2: {(-4, 32, -3): ‘xmin’, (-5, 32, -3): {‘beyond’: ‘A’, ‘loc’: ‘xminloc’}}, 3: {(1, 31, -3): ‘xmax’}, 4: {(1, 32, -3): ‘xmax’, (2, 32, -3): {‘beyond’: ‘P’, ‘loc’: ‘xmaxloc’}}, 5: {(-3, 30, -3): ‘ymin’, (-3, 29, -3): {‘beyond’: ‘A’, ‘loc’: ‘yminloc’}}, 6: {(-2, 32, -3): ‘ymax’, (-2, 33, -3): {‘beyond’: ‘P’, ‘loc’: ‘ymaxloc’}}, 7: {(0, 32, -3): ‘ymax’, (0, 33, -3): {‘beyond’: ‘P’, ‘loc’: ‘ymaxloc’}}}, ‘secret_door_count’: 7}, ‘exits’: 0, ‘secretdoors’: ‘check’, ‘exitlocations’: {}, ‘exitdirections’: {}}

Key: 8

{‘shape’: ‘R’, ‘size’: [3, 5], ‘contents’: {’empty’: ‘Y’}, ‘exits’: 2, ‘exitlocations’: {1: ‘O’, 2: ‘R’}, ‘exitdirections’: {1: ‘A’, 2: ‘A’}}

Key: 9

{‘shape’: ‘R’, ‘size’: [3, 3], ‘contents’: {‘monster’: {‘level’: 2, ‘type’: ‘NA’, ‘No’: 0, ‘XP’: 0}, ‘treasure’: {‘type’: {‘copper’: 0, ‘silver’: 0, ‘electrum’: 0, ‘gold’: 1100, ‘platinum’: 0, ‘gems’: 0, ‘jewellery’: 0, ‘magic’: 0}, ‘store’: ‘Loose’, ‘protection’: ‘guard’, ‘guard’: ‘Contact poison: loot’}}, ‘exits’: 4, ‘exitlocations’: {1: ‘L’, 2: ‘O’, 3: ‘L’, 4: ‘L’}, ‘exitdirections’: {1: ‘A’, 2: ‘A’, 3: ’45BA’, 4: ‘A’}}

Key: 10

{‘shape’: ‘R’, ‘size’: [8, 9], ‘water’: ‘N’, ‘fancy_shape’: ‘H’, ‘contents’: {’empty’: ‘Y’}, ‘exits’: 1, ‘exitstype’: ‘door’, ‘exitlocations’: {1: ‘R’}, ‘exitdirections’: {1: ‘A’}}

Key: 11

{‘shape’: ‘R’, ‘size’: [4, 6], ‘contents’: {’empty’: ‘Y’, ‘secret_door_dict’: {1: {(3, 35, -4): ‘xmax’, (4, 35, -4): {‘beyond’: ‘Room’, ‘loc’: ‘xmaxloc’}}}, ‘secret_door_count’: 1}, ‘exits’: 0, ‘secretdoors’: ‘check’, ‘exitlocations’: {}, ‘exitdirections’: {}}

Key: 12

{‘shape’: ‘R’, ‘size’: [3, 3], ‘contents’: {‘treasure’: {‘type’: {‘copper’: 0, ‘silver’: 5000, ‘electrum’: 0, ‘gold’: 0, ‘platinum’: 0, ‘gems’: 0, ‘jewellery’: 0, ‘magic’: 0}, ‘store’: ‘Metal Urns’, ‘protection’: ‘hide’, ‘hide’: ‘Magic: Invisibility’}, ‘secret_door_dict’: {}, ‘secret_door_count’: 0}, ‘exits’: 0, ‘secretdoors’: ‘check’, ‘exitlocations’: {}, ‘exitdirections’: {}}

Wandering Monster: 0

{(-12, 16, -1): {‘level’: 1, ‘type’: ‘NA’, ‘No’: 0, ‘XP’: 0}}

Wandering Monster: 1

{(-12, 16, -1): {‘level’: 1, ‘type’: ‘NA’, ‘No’: 0, ‘XP’: 0}}

Wandering Monster: 2

{(-15, 13, -1): {‘level’: 1, ‘type’: ‘NA’, ‘No’: 0, ‘XP’: 0}}

Wandering Monster: 3

{(-15, 13, -1): {‘level’: 1, ‘type’: ‘NA’, ‘No’: 0, ‘XP’: 0}}

Wandering Monster: 4

{(-3, 25, -4): {‘level’: 4, ‘type’: ‘NA’, ‘No’: 0, ‘XP’: 0}}

Wandering Monster: 5

{(-3, 25, -4): {‘level’: 1, ‘type’: ‘NA’, ‘No’: 0, ‘XP’: 0}}

Wandering Monster: 6

{(12, 37, -5): {‘level’: 2, ‘type’: ‘NA’, ‘No’: 0, ‘XP’: 0}}

AD&D 1e Monster tables combination

“Random monster encounter charts featuring all the dungeon appropriate (i.e. no aquatic, sylvan, etc.) creatures listed in the 1st Edition Advanced Dungeons and Dragons Monster Manual, Fiend Folio, and Monster Manual II.”

PDF link is below – the post comes from :

https://boardgamegeek.com/filepage/116456/comprehensive-1e-dungeon-monster-encounter-charts

https://s3.amazonaws.com/geekdo-files.com/bgg142931?response-content-disposition=inline%3B%20filename%3D%221E_Encounter_Tables.pdf%22&response-content-type=application%2Fpdf&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAJYFNCT7FKCE4O6TA%2F20230105%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20230105T012240Z&X-Amz-SignedHeaders=host&X-Amz-Expires=120&X-Amz-Signature=99bebbf64191336eb66e1b62bb33ff1ef031c6e423300891de6d94d54a669f72

Dungeon23 – The Land Pirahnas of Lord Howe Island

In 2044, wallabies have mutated to have the personality and dentition of sharks and “land pirahna is a colloquial term.

Lord Howe Island was discovered in 1788. https://simple.wikipedia.org/wiki/Lord_Howe_Island

The Doctors Ruby have taken advantage of this wildlife mutation to import and breed them to roam the island. Not good for the local fauna, but they soon deal with any unsuspecting visitors in an environmentally friendly manner.

Land Pirahnas are particularly good at detecting methane.

Land Pirahna

First thoughts:

AC 12, HD 2, Bite: 2d4, Kick: 1d4, Tail:1d3

Can use claws for minor effect or tails like cudgels if wanting to leap away, which is not very likely in a kill frenzy. Add morale modifiers for that.

Vampire Kangaroos: Are they still around?


Vampire kangaroo, partial skull

Rumours of soldiers on expeditions dragged away at night…drained corpses found. One retrieved body brought to the colony surgeon and the verdict was “definite exsanguination”

%d bloggers like this: