Project RockfishMuch of the history of this blog has been about my getting re-acquainted with old-school role-playing games like Dungeons & Dragons. I still haven't gotten back into the groove with an in-person group, but I haven't ruled it out. If I do decide to take the reigns and perform as the world-building "Dungeon Master," there's one aspect of it in which I've decided to go decidedly new-school...
I'll need a computer at the table.
This may be sacrilegious to some, for whom anything beyond "paper, pencils, dice, and the imagination" is no-go territory. I'm happy to stick with low-tech for a lot of it, but in order to weave a world worthy of capturing the attention of players, I'll need to have a spare brain on call.
So with apologies to the non-D&D-types out there, I'd like to use this post to archive my current ideas for what I'd consider the ideal set of software tools to have at the gaming table.
The name for this project, up in the title to this post, came to me upon hearing of the sad passing of actor James Garner, who played a character that inhabited the kind of world -- i.e., never boring, always on the cusp of adventure, yet grounded in flavorful verisimilitude -- that I'm trying to help build with these tools. (If you don't know the appellation "Rockfish," go find some episodes guest-starring Isaac Hayes as Jim's old pal Gandy...)
Jim was using a new-school answering machine in 1974!RPG insiders will quickly see that the following outline contains tools for building a "sandbox" type world. This probably all could be done with dice and lookup tables, but the sheer number of random numbers needed makes it ideal for a computer.
- - - - - - -
For each new day in the campaign world, I'll click a button and it will tell me the following day's
high & low temperaturetimes of sunrise & sunset (for me only); approximate durations of light & dark times (for the characters, who don't have wristwatches) moon phase, & times of moonrise & moonset There will be a pulldown menu for me to choose the current terrain type (forest, mountain, desert, etc.), which will influence the
precipitation amount & typeclouds (probably only 4 discrete types: clear / partly / overcast / fog)wind (4 types, too? calm / light breeze / brisk wind / gale-force)The program should be smart enough to rule out crazy combinations (snow in the desert) but still contain small chances for weird & interesting phenomena (thundersnow, will o' the wisps). From all of the above, the program will also display customized charts for
character movement rates,visibility distances, andchances of getting lost while exploring outdoors.- - - - - - -
(2) Random generation of micro-locale details
This is only for when the players are entering a "new" (previously unexplored) region that I hadn't yet mapped out in detail. If they've been here before, it will still be the same.
For a new wilderness hex, I'll have a handful of input options that specify its overall terrain type, and whether there are any major features (like coastlines or big rivers) in it. Then it will generate a set of random landmarks, small waterways, paths, hills, animal dens, and so on. (Definitely will be inspired by Alexis' work, here.) These are keyed to the terrain type (e.g., a desert hex may have an oasis; a mountain hex may have a bubbling geothermal vent). Some weird things -- graveyards? kooky hermits in huts? -- may crop up nearly anywhere.
For a new village, town, or city, it will generate some rough guidelines about the
populationoverall spatial layoutmain products produced by themquirks about their traditions (governmental? religious? other?)notable NPC resident(s) yes/no answers to common player questions about specific types of shops or industry that are there or not (e.g., blacksmiths)- - - - - - -
(3) NPC generation mini-module
If a new NPC (non-player character) is called for, there will be a screen that I can refresh to get a description of a random person's
basics: gender, age, nameplace of originprofession, station in society, and/or experience level1 or 2 distinguishing physical features (height, hair color, weight, clothing)notable personality traitsmajor items they're carrying (money, food)rumors they may convey to PCs- - - - - - -
(4) Random Events
This is the heart & soul of the program... but I've blogged before about what I'd want this to look like. In short, it kind of unifies several other existing ideas in role-playing games, including
wandering monstersrandom NPC encounterslocation-based "shenanigans" (thinkin' of you, Jeff)town/city rumorsadventure hooks/queststhings that seem like adventure hooks/quests, but aren't :-)- - - - - - -
I know I'm reinventing the wheel, but I've got to do it my own weird way. I've already been scouring the internet for random tables that can be used to feed this behemoth. As I build it, I'll keep a good honest log about where the ideas came from, in case I ever decide to make the code public.In practice, I plan to override these random results from time to time, because there are some specific events and NPCs that I want to make sure the players encounter, at specific times. I'll try my best not to turn these into opportunities for excessive railroading, or quantum-ogre-ism, or Mary-Sue-ism. :-)