What’s next in my quixotic quest for data? I’ve put together a list of the data I want to record and analyse. I’ve also put together a checklist of the things I’ll need to run the D&D campaign that will actually be generating all that beautiful data. Now I need to start operationalising this bad boy.
First up, how am I actually going to export the data from all the sources I’ve identified? I’d rather not be messing around with data scraping, so would prefer (where possible) any tools I use to natively export to convenient file formats.
Here we go:
Game Logs – I had planned to use Roll20 as a VTT, which includes a game log (e.g. chat and dice rolls). I’d assumed it should be simple to export the log as a well-structured plain text file or something but, alas, it doesn’t look like this is supported natively. I’ve had a look around at other VTTs, such as Fantasy Grounds, Foundry, Astral, etc., and most of them do support exporting game logs.
Ultimately, though, my players already have profiles on Roll20 and they’re familiar with it. Also, it has an Old-School Essentials character sheet available, which is super convenient. For now, then, I will stick with Roll20 and just CTRL+A+C+V the log into a .odt or something that supports images and preserves formatting (setting the document margins extremely narrow should mirror how the chat log is displayed on Roll20). It’s not pretty, but it’ll work (documents ideally need to be both machine and human readable for later qualitative analysis).
I’ll try to remember to use the chat function during play to add descriptive context to dice rolls. I’ll probably forget, but if I can remember then it should make the logs more valuable. In fact, I had wondered about adding a house rule that if you don’t type your action in the chat it doesn’t happen in-game, turning the chat log into something akin to the D&D caller. It would be great if the logs were timestamped, but they’re not and I really can’t be bothered adding that manually (though, if I could be arsed, I suppose I could set up a Roll20 macro to automate this).
I had originally thought the game logs would be quantitative data but, particularly if I house rule it so that actions have to be typed in before they can be executed, game logs could end up being pretty qual (depending on how descriptive my players are).
Setting Data – Again, this is tricky. Most of my setting data will be in my wiki, which is probably going to be Kanka.io (though could be something like World Anvil). It looks like it’s possible to export campaign data from Kanka.io as a collection of zipped .json files. I would then need to convert the .json files to plain text (I could probably whack together a simple script to batch convert these seeing as the structure of the .json files is uniform and I just need to extract the “entry” string… but I’ll first try an online tool and see how slow the process is). World Anvil also seems to offer an export option, but only as .html (which I could anyway do with my browser).
I could capture the data after it’s written but before uploading to the wiki, but that would undermine the purpose of having a wiki, which is supposed to be editable by players (and it could also make data synchronization more challenging).
To be honest, some setting data will be updated more regularly than other setting data (e.g. quests and NPCs will be updated much more often than world information, which is mostly for reference), so perhaps the Kanka.io export tools will be sufficient as not everything will need to be updated regularly.
I’m considering using Azgaar’s Fantasy Map Generator to automate world creation, and that exports to a bunch of formats (of which .json is probably the most useful for my purposes), though all of that would still go into the wiki.
AI Data – Once again, there is no native export function from AI Dungeon. Annoying. At least it’s pretty well-structured, so I can CTRL+A and CTRL+C to capture the AI log in my browser, then paste it into a .txt or .odt file.
I really need to think how I will be integrating AI Dungeon into my campaign. For one thing, data will need to be flowing both ways; I will export the AI logs for analysis in Atlas.ti, but I will also need feed data to the AI from Atlas.ti for it to function semi-coherently. I’ll be using the Dragon model (GPT-3), and it has (AFAIK) a memory limit of ~1000 characters, so that’s not much. Still, this is where I would feed data from my campaign (principally setting data). I would probably need to update this “remembered” world data depending on what my players are focusing on (and the AI needs to be trained to recognise what you want from it, which can be quite an intensive process).
I had been planning to use Forbidden Caverns of Archaia as the module, but I’m now thinking AI Dungeon should design the “modules” for the campaign. The idea would be to run a character through AI Dungeon, capture the results, and use it to create scenarios and adventures (with a lot of human steering to rein in the AI’s more gonzo tendencies).
Player Profile & Feedback Data – Google Forms exports to .csv, so this is pretty straightforward.
Transcript Data – Zoom exports automatic transcripts to a timestamped .vtt, though the transcripts require some cleaning (I would estimate they’re about 70% accurate). This is the kind of data that Atlas.ti was built for (and Atlas.ti 9 allows you to associate .vtt files with video files).
Video Files – Zoom offers a bunch of different options for video capture (e.g. single speaker view and grid), and exports to .mp4, as well as .mp3 audio, plus .txt for the Zoom chat log (though we would use Roll20 for chat). If you share screen in Zoom, then you can also capture what’s happening in Roll20. This would be the DM’s view, though most of my notes will be in my paper DM binder, so it shouldn’t matter if the players see it.
WhatsApp – It’s pretty easy to export the chat history from a WhatsApp group. It’s exported as a timestamped .txt file.
Paper Records & Art – I’ve already written about how I want to explore the liminal space where paper, digital and physical interact, so I hope this campaign will have paper DM notes and records, as well as plenty of DM and player-generated sketches (hand drawn on paper). These will be probably mostly be digitised via flatbed scanner and uploaded to the wiki (though some could be captured by camerphone). From experience, some (particularly player-generated images) will likely be shared via the WhatsApp group.
Unlike wiki text, the images won’t be editable, so I could in theory just upload them to Atlas.ti at the point they’re scanned without worrying about data desynchronisation. However, I would ideally like some of the images to be drawn and uploaded to the wiki by players without my intervention, so it seems easier to just grab the images from the wiki export data (see above) when uploading into Atlas.ti.
Next, I need to think about what I will do with all this data. Basically, I’ll be feeding it all into Atlas.ti 9, then coding it and interrogating it (and hopefully feeding the results back into the campaign itself). However, that’s for another post, methinks.
Image from Judge Dredd, Beam Software, 1987.