Dungeons & Dragons is full of mixed up creatures like owlbears, which are half bear and half owl, and perytons, the deer-headed eagles of your dreams and nightmares. D&D creatures generated by a neural network are even weirder.

Janelle Shane, a research scientist who works with neural networks, has generated a whole host of new creatures for your fantasy world based on the creature names of 2nd Edition Dungeons & Dragons. Originally released in 1989, that edition of the game is a grab bag of ideas from the game’s release in the middle of the 1970s until then. It isn’t surprising that the 2nd Edition corpus creates a Sun of Fish, the Wendless Woll, and a Black Willow Unicorn.

As Shane explains in her blog post about the new creatures, the method she used is a recurrent neural network. These algorithms are complicated, but the basic gist is that you can feed text content into them and the program will “learn” the pattern of the words in the text that you fed it. Then it produces new words based on the basic rules of that original text. It’s like if you watched someone play a board game but no one explicitly told you the rules. Then you had to recreate that board game from scratch and play it. You could probably get very close, but the differences in your version of the game and the original would be noticeable and probably even funny.

A sampling from her list:

  • Owlborn
  • Cat, Stone
  • Vampire Bear
  • Kick Spirit
  • Hatfright
  • Purple Bird
  • Slug, Spectral
  • Wolf, Chromatic

The best part of Shane’s creations is that I can imagine how they would operate within my own game. Space Ogre? It’s an ogre from beyond the sky. Rain Golem? In the middle of a drought, the alchemists and mages must make an alliance to craft this creature, and only our heroes can travel to the Elemental Plane of Water to retrieve its heart. Owlborn? It’s like a dragonborn, but with owls.

Advertisement

If you think these are cool, it’s also worth checking out Janelle Shane’s other computer-assisted D&D creation: a list of spells.