SlideShare a Scribd company logo
1 of 45
Download to read offline
Mining Someone Else’s 
Magic World 
by Lynn Cherny (@arnicas)
Mining Someone Else’s 
Magic World 
or, “How I Spent Way 
Too Much Time But Still 
Failed to Finish This for 
#NaNoGenMo But You 
Get to Hear About it 
Anyway Because I Think 
It’s Funny” 
by Lynn Cherny (@arnicas)
“Learn to Play the 
Most Complex 
Video Game Ever 
Made” 
248 pages of “getting started.”
“Dwarf Fortress is a game featuring…distinct, randomly-generated 
worlds (complete with terrain, wildlife and 
legends), gruesome combat mechanics and ubiquitous 
alcohol dependency.”
“Dwarf Fortress is a game featuring…distinct, randomly-generated 
worlds (complete with terrain, wildlife and 
legends), gruesome combat mechanics and ubiquitous 
alcohol dependency.”
Bug Fixes (We’d Rather Weren’t Fixed) 
“Stopped fort dwarves from throwing their clothes off into 
a pile after being visited by adventurer.”
Bug Fixes (We’d Rather Weren’t Fixed) 
“Stopped fort dwarves from throwing their clothes off into 
a pile after being visited by adventurer.” 
“Stopped fort animals from getting 
clothing after being visited by 
adventurer.” 
“Stopped animals with kills from 
getting trinkets from corpses.” 
“Stopped animals from growing 
attached to and bestowing names 
on items in their possession.”
“I cleaned up some crashes today. One of them 
involved a night creature that had wandered 
into a shop and killed the owner... the creature 
then somehow got assigned as the owner. The 
crash happened when the night creature tried 
to come up with things to say to 
potential shoppers, since it didn't have 
a civilization as a frame of reference. 
I fixed that part, but I still have no idea 
why it thought it should change 
professions in the first place...”
This game is so complicated even the author doesn’t 
really know why things happen.
This game is so complicated even the author doesn’t 
really know why things happen. 
And ABSOLUTELY: None of the players knows what’s going on.
“I think Dwarf Fortress generates such complexity and 
depth of information, that the task of the storyteller is to 
simply sift through and find the narrative.” 
-Tim Denee
Region-1-blahblahblah-legends.xml
Extracting Stories from XML 
1. Create xml in game, export it (“legends” mode) 
2. Load into python and parse 
3. Make some charts - what’s in this? 
4. Tie together the id’s of people to events 
5. Turn some fields into human-readable text: e.g., skills, events 
6. Build a context free grammar to tie snippets of english together 
7. Add a list mechanism to add relatives and victims to the stack of 
historical figures to “describe”
The data…
The data…
Nako Bentcurse, who was a female GOBLIN, always 
hoped to rule the world. Nako Bentcurse got married. In 
the year 50, Nako Bentcurse was killed in the dark pits 
called Wraithblockade by Oce Gravecaverns The Sable 
Twilight. She lived for 227 years.
Nako Bentcurse, who was a female GOBLIN, always 
hoped to rule the world. Nako Bentcurse got married. In 
the year 50, Nako Bentcurse was killed in the dark pits 
called Wraithblockade by Oce Gravecaverns The Sable 
Twilight. She lived for 227 years. 
Iddim Candlemerges, who was a male HUMAN BABY, 
always hoped to become a legendary warrior. In the year 
102, he was killed in a town called Goosebalded by 
Vispol Amusepants. He lived for 0 years.
Here's the life of Nepe Coloredgarlics The 
Ponderous Escort Of Spiders, who was a female 
HUMAN. Nepe Coloredgarlics The Ponderous 
Escort Of Spiders was kind of crap at dissecting 
fish, kind of crap at doing useful things with fish, 
kind of crap at fishing. She lived for 59 years. 
In the year 61, she was abducted in a hamlet 
called Soundedstop by Ngebzo Taperedevil. 
Nepe Coloredgarlics The Ponderous Escort Of 
Spiders took up another role, possibly to do 
something with fishing in a dark fortress called 
Anguishsteal. In the year 65, she hooked up with 
Zega Chasmspike, a male HUMAN. In the year 
85, she foully murdered Ecod Scrapedcleared in 
a dark fortress called Anguishsteal. She foully 
murdered Snamoz Stolenwax in a dark fortress 
called Anguishsteal. In the year 99, Nepe 
Coloredgarlics The Ponderous Escort Of Spiders 
foully murdered Necalo Creatureacted in a dark 
fortress called Anguishsteal. … She started a 
new career, possibly to do something with 
fishing. She was foully murdered in a dark 
fortress called Anguishsteal by Ngebzo 
Baldcruelty, maybe because of her deficiencies 
at dissecting fish. 
Really Terrible Things Are 
Happening in 
A Dark Fortress 
Called Anguishsteal
You might also want to know about Cika 
Ringspikes, who was a male 
NIGHTCREATURE . Cika Ringspikes had no 
animal friends. He lived for 43 years. Cika 
Ringspikes hooked up with Kuppo 
Bushelsounds, a female HUMAN. In the year 
31, Cika Ringspikes took up another role, 
possibly to do something with butchering 
animals in a hamlet called Actevened. He 
was abducted in a hamlet called Actevened 
by Oce Gravecaverns The Sable Twilight. In 
the year 50, he took up another role, possibly 
to do something with butchering animals in a 
hamlet called Actevened. In the year 50, Cika 
Ringspikes hooked up with Oce 
Gravecaverns The Sable Twilight, a female 
NIGHTCREATURE. In the year 51, he was 
changed into a MALE NIGHTCREATURE by 
Oce Gravecaverns The Sable Twilight. In the 
year 62, Cika Ringspikes was struck down in 
battle by San Prairieblunt, maybe because of 
his deficiencies at butchering animals.
The Whisper Of Rain, who was a male BAT , was 
outstanding at mechanics, outstanding at operate_pump, 
outstanding at siegecraft, outstanding at telling jokes, 
outstanding at pacifying others who are upset, 
outstanding at lying, outstanding at figuring out what 
others intend, ok at throwing a spear, kind of crap at 
noticing what's going on, kind of crap at climbing, kind of 
crap at tracking. He was born in the year -1 and is still 
living. In the year 73, The Whisper Of Rain got married . 
In the year 74, he hf does interaction . In the year 84, he 
hf does interaction . The Whisper Of Rain hf does 
interaction . In the year 100, The Whisper Of Rain got 
married . In the year 101, he got married . The Whisper 
Of Rain got married . The Whisper Of Rain got married . 
In the year 106, he got married . In the year 107, he got 
married . In the year 108, he got married . The Whisper 
Of Rain got married . He got married .
Once upon a time, there lived The Whisper Of Rain, who was a male BAT 
deity whose spheres were stars and sky and rainbows and light. The 
Whisper Of Rain was only good at boring fighting skills. He was born at the 
beginning of time and is still living. In the year 73, The Whisper Of Rain was 
worshipped by Dacap Dipspecial, a female HUMAN. The Whisper Of Rain 
cast the Curse of the Vampire. He cast the Curse of the Werebeast. In the 
year 95, he cast the Curse of the Werebeast. The Whisper Of Rain was 
worshipped by Zurko Agedtrench,a female HUMAN ANIMALDISSECTOR . 
In the year 101, he was worshipped by Ica Doorbutter,a female HUMAN 
ANIMALCARETAKER. The Whisper Of Rain was worshipped by Histek 
Spikewires,a male HUMAN BONESETTER. The Whisper Of Rain was 
worshipped by Xugot Baldrub, a male HUMAN TANNER. …
Fanfiction? Or Translation? 
Iddim Frostspatter, who 
was a female HUMAN 
FARMER, lived in this 
world. She was born in 
the year 110 and is still 
living. Iddim 
Frostspatter always 
hoped to rule the world.
“The game simulates surprisingly realistic geology…, and 
somehow generates civilizations, complete with long 
histories of murdering the shit out of each other. The 
game is in a sort of open alpha at the moment, standing 
at an estimated 31% complete; we are forced to assume 
that, when finished, the game will fully and perfectly 
simulate the Universe, judging by its current progress. 
Eventually, it's supposed to generate complete fantasy 
worlds and storylines. Basically, it'd be like if your 
computer could write The Lord of the Rings or Dragon 
Age at the push of a button.”
“When you are playing Dwarf Fortress, you are 
God, and the world is talking back to you. And 
you are a very anal god.” 
– Paolo Antonelli, MOMA
How do we get their stories out?
References 
• http://www.cracked.com/funny-6021-dwarf-fortress/ 
• http://www.wired.com/2010/09/oilfurnace/ 
• http://www.polygon.com/2014/7/23/5926447/dwarf-fortress- 
will-crush-your-cpu-because-creating-history-is- 
hard 
• http://www.nytimes.com/2011/07/24/magazine/the-brilliance- 
of-dwarf-fortress.html?pagewanted=all&_r=0
• http://forums.xkcd.com/viewtopic.php?f=2&t=70099 
• http://dwarffortresswiki.org/images/e/e6/FlowchartDF.png 
• http://www.reddit.com/r/dwarffortress/comments/15t7hs/ 
this_has_been_my_general_progression_as_a_dwarf/ 
• http://i.imgur.com/YVMaJ.png 
• http://dwarffortresswiki.org/index.php/Main_Page 
• Bugs in release notes: http://www.bay12games.com/dwarves/ 
• http://dwarffortresswiki.org/index.php/DF2014:Glass_industry 
• http://www.keepcalm-o-matic.co.uk/p/start-over-and-remember-losing-is-fun-1/ 
• Missale et horae ad usum Fratrum Minorum. 1301-1400. God creating the 
heavens and the Earth. 
• http://www.reddit.com/r/dwarffortress/comments/1hl9ea/
• Codex Gigas http://www.ancient-origins.net/myths-legends- 
europe/codex-gigas-devil-s-bible-largest-manuscript- 
world-001276 
• http://publicdomainreview.org/collections/kitab-al-bulhan- 
or-book-of-wonders-late-14thc/ 
• Universitätsbibliothek Kiel. Nürnberger Schembart- 
Buch, f.247. 17th century 
• The Creation of the World and the Expulsion from 
Paradise Giovanni di Paolo (Giovanni di Paolo di Grazia) 
(Italian, Siena 1398–1482 Siena 
• Kongelige Bibliotek, Gl. kgl. S. 1633 4º, Folio 42v. Bat
Thanks to @badnetworker (David Masad), 
Caleb Howe, and Nicolai Krakowiak for 
introducing me to stories about Dwarf 
Fortress.

More Related Content

What's hot

Echelon MillionAir magazine
Echelon MillionAir magazineEchelon MillionAir magazine
Echelon MillionAir magazineEchelonExp
 
Jack The Giant Slayer - Free E-Book
Jack The Giant Slayer - Free E-BookJack The Giant Slayer - Free E-Book
Jack The Giant Slayer - Free E-BookChuck Thompson
 
10 greatest talkative gaming villains www.gamebasin.com
10 greatest talkative gaming villains   www.gamebasin.com10 greatest talkative gaming villains   www.gamebasin.com
10 greatest talkative gaming villains www.gamebasin.comGameBasin.com
 
Taken Hostage an Ugly Duck (Story Ladder)
Taken Hostage an Ugly Duck (Story Ladder)Taken Hostage an Ugly Duck (Story Ladder)
Taken Hostage an Ugly Duck (Story Ladder)John Miguel Morales
 
The pickthorn chronicles
The pickthorn chroniclesThe pickthorn chronicles
The pickthorn chroniclesGary Lemon
 
10 coolest canine companions in gaming www.gamebasin.com
10 coolest canine companions in gaming   www.gamebasin.com10 coolest canine companions in gaming   www.gamebasin.com
10 coolest canine companions in gaming www.gamebasin.comGameBasin.com
 
Unraveled 2: When the Fabric of "Reality" Rips to Shreds
Unraveled 2: When the Fabric of "Reality" Rips to ShredsUnraveled 2: When the Fabric of "Reality" Rips to Shreds
Unraveled 2: When the Fabric of "Reality" Rips to Shredshughmungus
 
10 video games with unexpected nudity www.gamebasin.com
10 video games with unexpected nudity   www.gamebasin.com10 video games with unexpected nudity   www.gamebasin.com
10 video games with unexpected nudity www.gamebasin.comGameBasin.com
 
Khybers harvest
Khybers harvest Khybers harvest
Khybers harvest Mew Chan
 
Jack london white fang
Jack london   white fangJack london   white fang
Jack london white fangpreetpalvirk88
 
Bible quadrupeds or animals of the bible vol. 2
Bible quadrupeds or animals of the bible vol. 2Bible quadrupeds or animals of the bible vol. 2
Bible quadrupeds or animals of the bible vol. 2GLENN PEASE
 
Top 100 Fantasy Novels of All Time 41-60
Top 100 Fantasy Novels of All Time 41-60Top 100 Fantasy Novels of All Time 41-60
Top 100 Fantasy Novels of All Time 41-60NicholiAKBaldron
 

What's hot (20)

Echelon MillionAir magazine
Echelon MillionAir magazineEchelon MillionAir magazine
Echelon MillionAir magazine
 
Jack The Giant Slayer - Free E-Book
Jack The Giant Slayer - Free E-BookJack The Giant Slayer - Free E-Book
Jack The Giant Slayer - Free E-Book
 
A bug life
A bug lifeA bug life
A bug life
 
10 greatest talkative gaming villains www.gamebasin.com
10 greatest talkative gaming villains   www.gamebasin.com10 greatest talkative gaming villains   www.gamebasin.com
10 greatest talkative gaming villains www.gamebasin.com
 
Taken Hostage an Ugly Duck (Story Ladder)
Taken Hostage an Ugly Duck (Story Ladder)Taken Hostage an Ugly Duck (Story Ladder)
Taken Hostage an Ugly Duck (Story Ladder)
 
Stories
StoriesStories
Stories
 
The pickthorn chronicles
The pickthorn chroniclesThe pickthorn chronicles
The pickthorn chronicles
 
Barbarians of lemuria rpg mythic edition
Barbarians of lemuria rpg   mythic editionBarbarians of lemuria rpg   mythic edition
Barbarians of lemuria rpg mythic edition
 
Common book
Common bookCommon book
Common book
 
10 coolest canine companions in gaming www.gamebasin.com
10 coolest canine companions in gaming   www.gamebasin.com10 coolest canine companions in gaming   www.gamebasin.com
10 coolest canine companions in gaming www.gamebasin.com
 
Unraveled 2: When the Fabric of "Reality" Rips to Shreds
Unraveled 2: When the Fabric of "Reality" Rips to ShredsUnraveled 2: When the Fabric of "Reality" Rips to Shreds
Unraveled 2: When the Fabric of "Reality" Rips to Shreds
 
10 video games with unexpected nudity www.gamebasin.com
10 video games with unexpected nudity   www.gamebasin.com10 video games with unexpected nudity   www.gamebasin.com
10 video games with unexpected nudity www.gamebasin.com
 
Othello Essay
Othello EssayOthello Essay
Othello Essay
 
The lord fof the ring
The lord fof the ringThe lord fof the ring
The lord fof the ring
 
Herod antipas whole thing 12 24
Herod antipas whole thing 12 24Herod antipas whole thing 12 24
Herod antipas whole thing 12 24
 
Urban legends
Urban legendsUrban legends
Urban legends
 
Khybers harvest
Khybers harvest Khybers harvest
Khybers harvest
 
Jack london white fang
Jack london   white fangJack london   white fang
Jack london white fang
 
Bible quadrupeds or animals of the bible vol. 2
Bible quadrupeds or animals of the bible vol. 2Bible quadrupeds or animals of the bible vol. 2
Bible quadrupeds or animals of the bible vol. 2
 
Top 100 Fantasy Novels of All Time 41-60
Top 100 Fantasy Novels of All Time 41-60Top 100 Fantasy Novels of All Time 41-60
Top 100 Fantasy Novels of All Time 41-60
 

Viewers also liked

The Bones of a Bestseller: Visualizing Fiction
The Bones of a Bestseller: Visualizing FictionThe Bones of a Bestseller: Visualizing Fiction
The Bones of a Bestseller: Visualizing FictionLynn Cherny
 
Nodebox for Data Visualization
Nodebox for Data VisualizationNodebox for Data Visualization
Nodebox for Data VisualizationLynn Cherny
 
Bestseller Analysis: Visualization Fiction (for PyData Boston 2013)
Bestseller Analysis: Visualization Fiction (for PyData Boston 2013)Bestseller Analysis: Visualization Fiction (for PyData Boston 2013)
Bestseller Analysis: Visualization Fiction (for PyData Boston 2013)Lynn Cherny
 
Visualizing Networks
Visualizing NetworksVisualizing Networks
Visualizing NetworksLynn Cherny
 
Things I Think Are Awesome (Eyeo 2016 Talk)
Things I Think Are Awesome (Eyeo 2016 Talk)Things I Think Are Awesome (Eyeo 2016 Talk)
Things I Think Are Awesome (Eyeo 2016 Talk)Lynn Cherny
 

Viewers also liked (6)

The Bones of a Bestseller: Visualizing Fiction
The Bones of a Bestseller: Visualizing FictionThe Bones of a Bestseller: Visualizing Fiction
The Bones of a Bestseller: Visualizing Fiction
 
Nodebox for Data Visualization
Nodebox for Data VisualizationNodebox for Data Visualization
Nodebox for Data Visualization
 
Am
AmAm
Am
 
Bestseller Analysis: Visualization Fiction (for PyData Boston 2013)
Bestseller Analysis: Visualization Fiction (for PyData Boston 2013)Bestseller Analysis: Visualization Fiction (for PyData Boston 2013)
Bestseller Analysis: Visualization Fiction (for PyData Boston 2013)
 
Visualizing Networks
Visualizing NetworksVisualizing Networks
Visualizing Networks
 
Things I Think Are Awesome (Eyeo 2016 Talk)
Things I Think Are Awesome (Eyeo 2016 Talk)Things I Think Are Awesome (Eyeo 2016 Talk)
Things I Think Are Awesome (Eyeo 2016 Talk)
 

Similar to Mining Someone Else's Magic World: Dwarf Fortress Story Generation

Errors vs. Rhetorical Devices
Errors vs. Rhetorical DevicesErrors vs. Rhetorical Devices
Errors vs. Rhetorical DevicesBernie DeKoven
 
Errors vs. Rhetorical Devices
Errors vs. Rhetorical DevicesErrors vs. Rhetorical Devices
Errors vs. Rhetorical DevicesBernie DeKoven
 
The Εuropean Schools newspaper - Issue2 - Heroes-Myths-Imaginary Creatures - ...
The Εuropean Schools newspaper - Issue2 - Heroes-Myths-Imaginary Creatures - ...The Εuropean Schools newspaper - Issue2 - Heroes-Myths-Imaginary Creatures - ...
The Εuropean Schools newspaper - Issue2 - Heroes-Myths-Imaginary Creatures - ...viv_h
 
Just books clc kids collection
Just books clc kids collectionJust books clc kids collection
Just books clc kids collectionJsutBooks CLC
 
Author study
Author studyAuthor study
Author studyjgkight
 
Word Play in Roald Dahl's The BFG: A Study in Schemes and Tropes
Word Play in Roald Dahl's The BFG: A Study in Schemes and TropesWord Play in Roald Dahl's The BFG: A Study in Schemes and Tropes
Word Play in Roald Dahl's The BFG: A Study in Schemes and TropesBernie DeKoven
 

Similar to Mining Someone Else's Magic World: Dwarf Fortress Story Generation (7)

Errors vs. Rhetorical Devices
Errors vs. Rhetorical DevicesErrors vs. Rhetorical Devices
Errors vs. Rhetorical Devices
 
Errors vs. Rhetorical Devices
Errors vs. Rhetorical DevicesErrors vs. Rhetorical Devices
Errors vs. Rhetorical Devices
 
The Εuropean Schools newspaper - Issue2 - Heroes-Myths-Imaginary Creatures - ...
The Εuropean Schools newspaper - Issue2 - Heroes-Myths-Imaginary Creatures - ...The Εuropean Schools newspaper - Issue2 - Heroes-Myths-Imaginary Creatures - ...
The Εuropean Schools newspaper - Issue2 - Heroes-Myths-Imaginary Creatures - ...
 
Just books clc kids collection
Just books clc kids collectionJust books clc kids collection
Just books clc kids collection
 
Humor rhetoric
Humor rhetoricHumor rhetoric
Humor rhetoric
 
Author study
Author studyAuthor study
Author study
 
Word Play in Roald Dahl's The BFG: A Study in Schemes and Tropes
Word Play in Roald Dahl's The BFG: A Study in Schemes and TropesWord Play in Roald Dahl's The BFG: A Study in Schemes and Tropes
Word Play in Roald Dahl's The BFG: A Study in Schemes and Tropes
 

Recently uploaded

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 

Recently uploaded (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 

Mining Someone Else's Magic World: Dwarf Fortress Story Generation

  • 1. Mining Someone Else’s Magic World by Lynn Cherny (@arnicas)
  • 2. Mining Someone Else’s Magic World or, “How I Spent Way Too Much Time But Still Failed to Finish This for #NaNoGenMo But You Get to Hear About it Anyway Because I Think It’s Funny” by Lynn Cherny (@arnicas)
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8. “Learn to Play the Most Complex Video Game Ever Made” 248 pages of “getting started.”
  • 9.
  • 10.
  • 11.
  • 12.
  • 13. “Dwarf Fortress is a game featuring…distinct, randomly-generated worlds (complete with terrain, wildlife and legends), gruesome combat mechanics and ubiquitous alcohol dependency.”
  • 14. “Dwarf Fortress is a game featuring…distinct, randomly-generated worlds (complete with terrain, wildlife and legends), gruesome combat mechanics and ubiquitous alcohol dependency.”
  • 15. Bug Fixes (We’d Rather Weren’t Fixed) “Stopped fort dwarves from throwing their clothes off into a pile after being visited by adventurer.”
  • 16. Bug Fixes (We’d Rather Weren’t Fixed) “Stopped fort dwarves from throwing their clothes off into a pile after being visited by adventurer.” “Stopped fort animals from getting clothing after being visited by adventurer.” “Stopped animals with kills from getting trinkets from corpses.” “Stopped animals from growing attached to and bestowing names on items in their possession.”
  • 17. “I cleaned up some crashes today. One of them involved a night creature that had wandered into a shop and killed the owner... the creature then somehow got assigned as the owner. The crash happened when the night creature tried to come up with things to say to potential shoppers, since it didn't have a civilization as a frame of reference. I fixed that part, but I still have no idea why it thought it should change professions in the first place...”
  • 18. This game is so complicated even the author doesn’t really know why things happen.
  • 19. This game is so complicated even the author doesn’t really know why things happen. And ABSOLUTELY: None of the players knows what’s going on.
  • 20.
  • 21. “I think Dwarf Fortress generates such complexity and depth of information, that the task of the storyteller is to simply sift through and find the narrative.” -Tim Denee
  • 23. Extracting Stories from XML 1. Create xml in game, export it (“legends” mode) 2. Load into python and parse 3. Make some charts - what’s in this? 4. Tie together the id’s of people to events 5. Turn some fields into human-readable text: e.g., skills, events 6. Build a context free grammar to tie snippets of english together 7. Add a list mechanism to add relatives and victims to the stack of historical figures to “describe”
  • 24.
  • 27.
  • 28.
  • 29.
  • 30. Nako Bentcurse, who was a female GOBLIN, always hoped to rule the world. Nako Bentcurse got married. In the year 50, Nako Bentcurse was killed in the dark pits called Wraithblockade by Oce Gravecaverns The Sable Twilight. She lived for 227 years.
  • 31. Nako Bentcurse, who was a female GOBLIN, always hoped to rule the world. Nako Bentcurse got married. In the year 50, Nako Bentcurse was killed in the dark pits called Wraithblockade by Oce Gravecaverns The Sable Twilight. She lived for 227 years. Iddim Candlemerges, who was a male HUMAN BABY, always hoped to become a legendary warrior. In the year 102, he was killed in a town called Goosebalded by Vispol Amusepants. He lived for 0 years.
  • 32. Here's the life of Nepe Coloredgarlics The Ponderous Escort Of Spiders, who was a female HUMAN. Nepe Coloredgarlics The Ponderous Escort Of Spiders was kind of crap at dissecting fish, kind of crap at doing useful things with fish, kind of crap at fishing. She lived for 59 years. In the year 61, she was abducted in a hamlet called Soundedstop by Ngebzo Taperedevil. Nepe Coloredgarlics The Ponderous Escort Of Spiders took up another role, possibly to do something with fishing in a dark fortress called Anguishsteal. In the year 65, she hooked up with Zega Chasmspike, a male HUMAN. In the year 85, she foully murdered Ecod Scrapedcleared in a dark fortress called Anguishsteal. She foully murdered Snamoz Stolenwax in a dark fortress called Anguishsteal. In the year 99, Nepe Coloredgarlics The Ponderous Escort Of Spiders foully murdered Necalo Creatureacted in a dark fortress called Anguishsteal. … She started a new career, possibly to do something with fishing. She was foully murdered in a dark fortress called Anguishsteal by Ngebzo Baldcruelty, maybe because of her deficiencies at dissecting fish. Really Terrible Things Are Happening in A Dark Fortress Called Anguishsteal
  • 33. You might also want to know about Cika Ringspikes, who was a male NIGHTCREATURE . Cika Ringspikes had no animal friends. He lived for 43 years. Cika Ringspikes hooked up with Kuppo Bushelsounds, a female HUMAN. In the year 31, Cika Ringspikes took up another role, possibly to do something with butchering animals in a hamlet called Actevened. He was abducted in a hamlet called Actevened by Oce Gravecaverns The Sable Twilight. In the year 50, he took up another role, possibly to do something with butchering animals in a hamlet called Actevened. In the year 50, Cika Ringspikes hooked up with Oce Gravecaverns The Sable Twilight, a female NIGHTCREATURE. In the year 51, he was changed into a MALE NIGHTCREATURE by Oce Gravecaverns The Sable Twilight. In the year 62, Cika Ringspikes was struck down in battle by San Prairieblunt, maybe because of his deficiencies at butchering animals.
  • 34. The Whisper Of Rain, who was a male BAT , was outstanding at mechanics, outstanding at operate_pump, outstanding at siegecraft, outstanding at telling jokes, outstanding at pacifying others who are upset, outstanding at lying, outstanding at figuring out what others intend, ok at throwing a spear, kind of crap at noticing what's going on, kind of crap at climbing, kind of crap at tracking. He was born in the year -1 and is still living. In the year 73, The Whisper Of Rain got married . In the year 74, he hf does interaction . In the year 84, he hf does interaction . The Whisper Of Rain hf does interaction . In the year 100, The Whisper Of Rain got married . In the year 101, he got married . The Whisper Of Rain got married . The Whisper Of Rain got married . In the year 106, he got married . In the year 107, he got married . In the year 108, he got married . The Whisper Of Rain got married . He got married .
  • 35. Once upon a time, there lived The Whisper Of Rain, who was a male BAT deity whose spheres were stars and sky and rainbows and light. The Whisper Of Rain was only good at boring fighting skills. He was born at the beginning of time and is still living. In the year 73, The Whisper Of Rain was worshipped by Dacap Dipspecial, a female HUMAN. The Whisper Of Rain cast the Curse of the Vampire. He cast the Curse of the Werebeast. In the year 95, he cast the Curse of the Werebeast. The Whisper Of Rain was worshipped by Zurko Agedtrench,a female HUMAN ANIMALDISSECTOR . In the year 101, he was worshipped by Ica Doorbutter,a female HUMAN ANIMALCARETAKER. The Whisper Of Rain was worshipped by Histek Spikewires,a male HUMAN BONESETTER. The Whisper Of Rain was worshipped by Xugot Baldrub, a male HUMAN TANNER. …
  • 36. Fanfiction? Or Translation? Iddim Frostspatter, who was a female HUMAN FARMER, lived in this world. She was born in the year 110 and is still living. Iddim Frostspatter always hoped to rule the world.
  • 37. “The game simulates surprisingly realistic geology…, and somehow generates civilizations, complete with long histories of murdering the shit out of each other. The game is in a sort of open alpha at the moment, standing at an estimated 31% complete; we are forced to assume that, when finished, the game will fully and perfectly simulate the Universe, judging by its current progress. Eventually, it's supposed to generate complete fantasy worlds and storylines. Basically, it'd be like if your computer could write The Lord of the Rings or Dragon Age at the push of a button.”
  • 38. “When you are playing Dwarf Fortress, you are God, and the world is talking back to you. And you are a very anal god.” – Paolo Antonelli, MOMA
  • 39. How do we get their stories out?
  • 40.
  • 41.
  • 42. References • http://www.cracked.com/funny-6021-dwarf-fortress/ • http://www.wired.com/2010/09/oilfurnace/ • http://www.polygon.com/2014/7/23/5926447/dwarf-fortress- will-crush-your-cpu-because-creating-history-is- hard • http://www.nytimes.com/2011/07/24/magazine/the-brilliance- of-dwarf-fortress.html?pagewanted=all&_r=0
  • 43. • http://forums.xkcd.com/viewtopic.php?f=2&t=70099 • http://dwarffortresswiki.org/images/e/e6/FlowchartDF.png • http://www.reddit.com/r/dwarffortress/comments/15t7hs/ this_has_been_my_general_progression_as_a_dwarf/ • http://i.imgur.com/YVMaJ.png • http://dwarffortresswiki.org/index.php/Main_Page • Bugs in release notes: http://www.bay12games.com/dwarves/ • http://dwarffortresswiki.org/index.php/DF2014:Glass_industry • http://www.keepcalm-o-matic.co.uk/p/start-over-and-remember-losing-is-fun-1/ • Missale et horae ad usum Fratrum Minorum. 1301-1400. God creating the heavens and the Earth. • http://www.reddit.com/r/dwarffortress/comments/1hl9ea/
  • 44. • Codex Gigas http://www.ancient-origins.net/myths-legends- europe/codex-gigas-devil-s-bible-largest-manuscript- world-001276 • http://publicdomainreview.org/collections/kitab-al-bulhan- or-book-of-wonders-late-14thc/ • Universitätsbibliothek Kiel. Nürnberger Schembart- Buch, f.247. 17th century • The Creation of the World and the Expulsion from Paradise Giovanni di Paolo (Giovanni di Paolo di Grazia) (Italian, Siena 1398–1482 Siena • Kongelige Bibliotek, Gl. kgl. S. 1633 4º, Folio 42v. Bat
  • 45. Thanks to @badnetworker (David Masad), Caleb Howe, and Nicolai Krakowiak for introducing me to stories about Dwarf Fortress.