Saturday, 26 November 2022

Inns Generator Wizard Level unlocked

The Inn Generator is now fully containerized and published to the GitLab registry.

What does that mean for the uninitiated? Well, if you run docker, then you can "pull" the container and run the tool locally on your laptop. I know, you're saying, "What's the difference wizard? I can go to the website! That doesn't need anything, save my browser."

True. This effort is more than that though. Soon the website will be getting some much needed upgrades (can you say mobile friendly?) and it will provide an API backend so you can mashup in new and exciting ways. Containerization is a big step toward portability. 

Open Sourcing the tool may interest others in taking the tool in new directions or help others contribute to the project.

A README is being developed at the project homepage, gitlab.com/another15y/inn-generator. But until then, here are some incantations for the initiated docker wizard with the containerization feat:

docker pull registry.gitlab.com/another15y/inn-generator:master

docker run -dit --name inns -p 8080:80 registry.gitlab.com/another15y/inn-generator:master

Posted by caffeinated at 9:01 AM in d10

Thursday, 24 November 2022

Inns Generator

I created the start of the GitLab project for the Inns Generator. Currently, the tool exists as I posted it 14 years ago.

In the GitLab project I'll be working on cleaning up the tool a bit. It's functional and works in a brute force manner. The first step will be to containerize it for immediate use in the state that it is in: a simple YUI 2.9 DOM tool.

One thing I immediately did was strike the link to Mike Hensley's hackslash website. Mike must have retired that site years ago and the domain has been taken over by a virus scam farmer. So many redirects. So many popups.

Looks like blogging's back on the menu, boys.

Posted by caffeinated at 8:58 AM in d10

Wednesday, 23 November 2022

Must. Post. More.

I've got to get back to posting. Let's see where I left off with my blog category notes. And let me explain—no, there is too much, let me sum up—why I have been absent.

Mostly because I have been waffling on what I want to post. In the last six months I have been mentoring a teams at work about continuous integration and delivery—CICD for those in the know—and a little bit more; actually a whole lot more, but that's another conversation for beers, not blogs. Couple that with a desire for ACD posts to remain curated about gaming than about code.

Then I realized there's an intersection of both! Almost 14—fourteen! vierzehn!—years ago I introduced Inns of the Empire to the world. Today, I would say it brute forces the YUI into generating a fictitious location for any RPG, grim dark ones especially. It's SPA before there was SPA, using simple DOM Hijacking. 

14 years ago, HTTPS was not a default state of expectation. I had to worry about IE 6! Really. 14 years ago I didn't think about creating a JSON model for an inn. 

The tool still works, but I'm going to open source it properly with a license and a gitlab repository. Maybe wrap an API around it. RPG Tech 101. More to come.

Posted by caffeinated at 3:00 PM in Bohemian Breakfast

Thursday, 16 June 2022

Why all the hate for Untappd?

I'm an Untappd user. If you're not familiar with Untappd, I often tell people, "It's like pick your favorite social network, but for beer." It's a social platform in that there are friends, comments, and even direct messaging options. It's also a beer log and "gamifies" one's enjoyment of beer through badges and levels in styles and in overall progress of unique beers tried. Untappd makes money through badge sponsorships and providing tap houses with tools for menus and building networks of visitors and users of Untappd though APIs and menu displays that scroll beer "checkins," thus creating engagement and much more. 

The tools for brewers, even homebrewers such as myself, are powerful and can help brewers and breweries with market reach and managing their visibility to a growing, worldwide community.

Now, if this sounds like a marketing post for a social platform, you are probably right, but your context is wrong. I may be as close to power user of Untappd as one can get being a free user of the platform. I have a calendar reminder that prods me to work on my progress in the New Brew Thursday badge, one of the hardest badges to level—and I still fail a lot to move progress even as a 10 year user! I registered our home brewery so that we can post our beers and have friends checkin when sharing. 

This is the context I'm working in when I ask "Why all the hate for Untappd?" I've had the occasion to have some interesting conversations with brewers that have expressed a dismissal with prejudice—hate—of Untappd.

When I asked one local brewer why I couldn't find the brewery's beers on Untappd, I was subjected to arguments like:

  • Users are trolls
  • Users can't taste the love put into the beer
  • Users get the hops, yeast, and adjuncts wrong
  • Users don't rate
  • Users don't comment
  • Users can't get the style right

I smiled. Yet my mental rebuttals went something like, 

"But the brewery is not on Untappd. So, it stands that beers won't get ratings or comments. If the beers are not on Untappd, then the latter stands, and further, there are users like me that will add the beer. If a user adds the beer maybe that user gets the style wrong. Who's fault is that again? But if the brewer and brewery were on Untappd, there are tools to manage incorrect checkins, merge user contributed beers with the official beer, and much more."
"In short, you're doing Untappd wrong."

More recently, a coworker and proprietor of a beer canning concern, answering my request to "checkin on Untappd"—after praising my recent beer—"I don't use Untappd, I think it's stupid." Ok. That's a position. See above why I disagree.

As said, I'm a power user of Untappd. It extends into our home brewing as well. My wife and I have labels—art produced by your's truly—made at bottleyourbrand.com, even bottle caps made at grogtag.com. We've made beers for charity and gaming cons.

If you're on Untappd, I invite you to follow our home brewery, Thirsty Stone Brewing, however unlikely it is you may have occasion to try our beer. You can live vicariously though the platform!

Posted by caffeinated at 9:34 AM in Bohemian Breakfast

Tuesday, 31 May 2022

What is the Mac Bloc?

The Mac Bloc is like most of my categories tied up in a pun or some inside joke. 

This is a pun on the "Soviet Bloc"—also synonymous with the Eastern Bloc, Communist Bloc, or Socialist Bloc. The Mac Bloc then is dedicated to the somewhat blind ideal I hold Apple hardware and the Mac OS. 

As a staunch anti-communist, then you should read: The Mac Bloc is a mocking pun, wherein I see myself as a thrall to what Steve Jobs created, as those who are slavishly chained to the blind ideals of Marxist theory.

It's been 12 years since I posted in this category. I should queue up some pro-Mac OS stuff for June. I might start with something about moving the "Year of the Linux Desktop" perpetually to the next year. As one that stands with many in the Bazaar, on the steps of the Cathedral, we should just acknowledge that the "Year of the (Linux|BSD|Unix) Desktop" was 2004 and has been with us since. 

Everyone should just lower their guidons and yield to the Mac Bloc.

Posted by caffeinated at 9:33 AM in the mac bloc

Thursday, 5 May 2022

Blogging A to Z Reflections 2022

11 years ago I started doing this challenge.

I took a three (?) year break when organizers moved registration to Facebook. I have a Facebook account, but I haven't—proudly—logged in for years. I quit.

This is my third year back.

My themes have been role-playing game focused and my first year earned recognition in some gaming circles. It seems RPGs get more attention and my niche is not so unique.

This year I organically arrived at the "theme":  edge and cross-game mechanics found in many RPGs. As always, Every year, X, Y, and Z are challenging. "Z is for Zombie" is easy one, sure. But I did that one in 2012. X has been, traditionally it almost seems, a randomly rolled name for a demon and a narrative around said demon. This year, XP. Easy peasy.

I tend to type fast and edit poorly, if at all. When I do, I'm embarrassed by dropped words, misspelled ones, or incorrect contractions. Sometimes I fix them. Most often I don't.

My comments are moderated, otherwise, the spam would be unmanageable. My platform supports Spam tooling, but I just have to reintegrate it as Akismet changed many years ago and the integration broke. Open Source is that way.

I remain happy that A-to-Z returned to a sane registration model. LinkyList (?) worked, Google Forms is near perfect. 

I should return next year. 

Posted by caffeinated at 7:16 PM in d10

Saturday, 30 April 2022

Z is for The Zhentarim (and other cults)

X, Y, Z. The bane of all of A-to-Z bloggers.

The Zhentarim is a "shadow network... that seeks to expand its influence and power." In D&D this organization is both "a mob" and a cult. It's public face is a "family" seeking to dominate the "trade markets" of the default setting, The Forgotten Realms.

Cults like The Zhentarim are often great factions for fantasy TTRPG campaigns. 

Darker cults of the "Ruinous Powers" are heavily used in WFRP. There are several well known cults in the canon including the Cults of the Purple Hand, Yellow Fang, and Red Crown. 

It is often something of a trope in many games that the cults are so insular, they may amount to little more that cells, possibly operating in the same areas, possible for the goals of their patrons, but completely uncoordinated, and often clashing. For both story and table hijinks. Some cults may employ false flag operations to divert attention, and many have such opaque structures, the role of the mortal in the unfathomable timelines of god-like patrons makes for seemingly random narrative hooks for the Game Master.

Posted by caffeinated at 4:47 PM in d10

Friday, 29 April 2022

Y is for Yeti

The penultimate entry for 2022 A-to-Z!

Yeti?! How is Snow Big Foot an edge mechanic? While it's not a mechanic in the purest sense, but it represents a broader crossover topic in many fantasy TTRPGs.

The Yeti stands in for hundreds of fantasy creatures and races that populate D&D, WFRP and many other games and how each forms a critical story telling friction in the World and in game play. Many such creatures are "playable" races for characters in recent editions of D&D; even AD&D 1e discusses the Monster as Player.

Monsters often hoard treasure. In the idea of Gygaxian Naturalism, creatures populate dungeons and wilderness with an ecologically sound purpose. Characters encountering them need not be hostile, but we often see encounters escalate to violence. Not that I have anything against it. But just pausing for a moment, a party might find that negotiations are apropos.

Posted by caffeinated at 10:47 PM in d10

Thursday, 28 April 2022

X is for XP

Every year. X. Never gets easier. Totally copping out.

XP. X.P. Experience Points.

Every game has them. It is the mechanic of advancement. "Gaining Levels" as they say.

In the narratives of a character, one must suspend the disbelief that a 300 year old elf is "just beginning" a life full of adventure.1 300 years old and Level 1. This is not so much a narrative problem for Humans mind you. But the long lived, immortal by most measurments, a problem. Mechanically, not so much. Characters all start the race crossing the same line.

XP can be somewhat arbitrary in games and "schedules" or "rubrics" can be found in the rules or online. WFRP for example tended to have printed schedules in published adventures and it was far more arbitrary on the part of GM in sandbox play. I tended to award 150-200 XP per session including a bonus of the player updated the character wiki or summarized the last session at the start of the next.

D&D was far more prescriptive. One earned XP for defeating monsters—kill the monster, take its stuff!—or for coin. Bonus were even possible for character traits. Magic Items had XP values. It was all quite inflationary. So it was house ruled.

My favorite D&D house rule is that XP for gold or magic items is not earned unless spent or the item is sold. And for magic items with a "listed XP value," if sold you could lose or gain value based on the market for such things. The trait bonus was awarded on the front end, i.e., 1000 gold pieces found was 100 XP earned, the 10% trait bonus. 1000 GP was "in the float," unearned until spent. How? It didn't matter. Whores? Drink? Good clothes? Charity? Didn't care. Well one couldn't just give it to the fellow standing next to them. They were likely taking a share of the same treasure. 

Hmmm... Though I might rule that if a debt with the fellow standing next to them was being paid was spending the gold. Good on you!




  1. [1] A pingback to my friend Roger Brasslett at the titular blog, A Life Full of Adventure

Posted by caffeinated at 8:37 PM in d10

Wednesday, 27 April 2022

W is for World

The "worlds" of TTRPGs are many and varied.

My worlds lean into an apocryphal, anachronistic, and culturally fluid fantasy types. Sometimes generically thought of as a science-fantasy setting. 

World settings tend to have wildly detailed histories and geographies. These tend to "set the stage" and most of my players will tell you that their characters actions change the world from the moment the begin acting on the story they are telling and the arch of the campaign I've outlined for friction.

My Greyhawk campaign—Greyhawk being the E Gary Gygax's original D&D setting—has been dramatically altered by the player's actions. While they stopped an extinction event, their actions altered the world geographically as a new moon created geological upheavals. Kingdoms fell and new ones rose, cultures died, new ones replaced them, and some long lived races hold grudges against those "heroes."

The new campaign is set in this world almost 1000 years later. Blackpowder weapons are now present, elves still walk the land and closely guard the histories of the past in great libraries, while ghosts of the past watch for signs that the bloodlines of the past heroes no long wane, but wax.

These worlds are so fun to play in and, through play, change and create something new.

Posted by caffeinated at 11:14 PM in d10

Tuesday, 26 April 2022

V is for Verbal (Spell Components)

As a GM I love spell reagents, read components. Many fantasy TTRPGs provide mechanics for these. How each are portrayed at the table is a matter of taste, but please...don't.

D&D 5e has three components and for the most part they are nearly fully abstracted. The Material components can be simply part of a "component pouch" or "focus." Never mind that each spell that has a material component is specific. If you need a the fingernail, the component pouch is fully stocked. However, if the spell states that a material component is consumed or has a specific monetary value, i.e., 500 GP diamond, then the character must have that specific item and can not "handwave" the reagent.  Verbal and Somatic (magical gestures) components require the character to be able to speak or move, respectively. A Silence spell can be particularly effective sometimes.

I love this mechanic in the abstract and have constructed vignettes in play for the characters to collect reagents.

GM: A flash of lightning, followed instantly by peals of thunder and the crack of a tree crashing in the forest to the right of the cart path distract you from your wet and mud soaked misery.
Player (Magic User): Oh, I need a piece of wood from a tree struck by lightning! I immediately turn to run into the woods to find the tree.
Player (Ranger): No! There's a wolf pack following us just inside the tree line! I told you that already. I yell for him to stop, but don't chase after him.

I had a player once just announce at a dinner party that his character was stealing the butter plate with the butter for his Drop spell.

This mechanic certainly has some history, especially in the Satanic Panic of the 80s. "The Players Handbook has the descriptions for casting real spells! And the ingredients too!" Alas, I never did find that Ice Giant's toe nail to make that Strength Potion.

Also, butter. See butter is slippery. Just the component for real spells.

Posted by caffeinated at 10:00 PM in d10

Monday, 25 April 2022

U is for Ultravision

For a fantasy gaming enthusiast Ultravision sounds a bit comic superhero-y. Marvel. Not DC. Of course.

Nein! Ultravision, and Infravision, are racial attributes of creatures, some playable by Players and others not. The former being most often in AD&D an attribute of "monsters" and the latter an attribute of Elves, Gnomes, Half-elves, and Dwarves.

Ultravision is the ability to see in complete darkness as if in twilight. Infravision is less capable and can be ruined by friend and foe alike wielding torches or fire spells.

The mechanics are a science-fantasy gold mine in AD&D. We are treated to topics of light spectrums and heat radiation. If you were a teenager in the 80s, just saying, one might read these rules, introduced to some serious scientific concepts, if distilled for simplicity, and be somewhat conversant in the topics. Like reading Wikipedia and citing it—Wikipedia is really only "close enough," and provides pointers; don't cite Wikipedia.

Jason Cove wrote a fantastic supplement for D&D play, Philotomy's Dungeons and Dragons Musings in 2007. One can find this out there on the internet. I have a copy I keep handy. Jason expands a bit on the abilities in a simple way without new rules or tables to think about. He sets out early that the dungeon is a "mythic underworld." Monsters always have Infravision or Ultravision, but lose the ability if in the service of Player Characters.

In my current game of D&D 5e, my players are aware of my love for Jason's work. Most recently my single human character in the party made it a point walk behind the elf so as not to ruin the elf's Infravision! The player knew that if his character took point, I would have ruled the elf could not see with proper acuity as the lantern was a particularly bright heat source.

Posted by caffeinated at 9:06 PM in d10

Saturday, 23 April 2022

T is for Time

In the High Gygaxian Catechism, one stricture from AD&D that is oft quoted, debated, and puzzled over is "the one about Time in the Campaign

YOU CAN NOT HAVE A MEANINGFUL CAMPAIGN IF STRICT TIME RECORDS ARE NOT KEPT.

Emphasis E. Gary Gygax. Before the idea that writing in ALL CAPs is how one yells at someone online.

Of course there is context. Context loss in the 40+ years since it was written. Let's look at the whole paragraph:

One of the things stressed in the original game of D&D was the importance of recording game time with respect to each and every player character in a campaign. In AD&D it is emphasized even more: YOU CAN NOT HAVE A MEANINGFUL CAMPAIGN IF STRICT TIME RECORDS ARE NOT KEPT.
So we see that Gary is saying that Time is a game mechanic that drives an underlying story function. This is further framed by the prior paragraph:
Game time is of utmost importance. Failure to keep careful track of time expenditure by player characters will result in many anomalies in the game. The stricture of time is what makes recovery of hit points meaningful. Likewise, the time spent adventuring in wilderness areas removes concerned characters from their bases of operation—be they rented chambers or battlemented strongholds. Certainly the most important time stricture pertains to the manufacture of magic items, for during the period of such activity no adventuring can be done. Time is also considered in gaining levels and learning new languages and more. All of these demands upon game time force choices upon player characters, and likewise number their days of game life.
I love High Gygaxian.

However, I think that we often don't give credit to Gary's contemporaries, those that he was writing for. They certainly believed the reader would "get it." Gary and Dave debated these things in war games, in journals, letters, and rule sets for years before. They tried to elaborate for the n00b. Add they wrote in a voice for a college educated reader. Many players first encountering these rules were not even out of high school. I know I learned more Latin from D&D then I encountered in high school outside of biology class.

Posted by caffeinated at 9:11 PM in d10

Friday, 22 April 2022

S is for Secret Language

Secret Languages differ among gaming systems and tend to be mechanical, but highly narrative in execution. Let's look at a few.

Thieve's Cant

In D&D, the Thieve's Cant in a slang language that Thieves (Rogues in D&D 5e) learn. Mechanically, it's a manner of communicating with other roguish types. In 1e AD&D, there even was a Thieve's Cant to "English" dictionary produced in the contemporary D&D periodicals. It could be printed (or photocopied!), folded and used at the table. The Thieve's Cant as I recall was more of a slang, much like Cockney is a slang in Great Britain. The dictionary even included some instructions on grammar. Only Thieves could learn the "language."

Alignment Languages

Volumes have been written on this gem in the early editions of D&D. The creators intent of a language that only those of specific moral dispositions, i.e., Alignment, could speak and understand appears to have originated in the ideas of the early Christian church's Liturgical canon that was once only in Latin. Priests performed the Liturgy in Latin and most commoners did not read or speak Latin. 

Complicating this mechanical concept was how it worked as written in the rules. If a Lawful Good character should perform an action that the Dungeon Master deemed antithetical to the character's moral disposition, narratively it was possible to force the character to another alignment. Thus a Lawful Good character could become Neutral Good or Chaotic Good (or worse) and this alignment change meant that the character would forget the original language and learn the new one! 

This change would create endless debate at the table. Nevermind, that magic was a thing in the worlds most were playing. Call it divine fiat. The necessity to understand why this happened was often distracting.

Battle Tongues, etc.

Like Thieve's Cant, WFRP has a number of secret languages. Mechanically and narratively these often make sense in the world. Take Battle Tongue. it is a slang that soldiers use. Your character could have the skill, but if no one else had reason to possess this slang, then it was effectively useless.

Using theses secret languages must often be discussed early in a campaign and are often house ruled. For example, I would not make Alignment Languages suddenly a forgotten skill, but instead work with the player on narratively explaining the loss of one and the finding of another. Like practicing one language, and lacking practice, begin forgetting on and learning another.

Posted by caffeinated at 10:28 PM in d10

Thursday, 21 April 2022

R is for Raise Dead and Resurrection

In fantasy TTRPGs, especially D&D, the idea that a holy person, particularly of a "good" alignment (read: moral disposition), can raise the dead, even resurrect a dead individual, is common.

In D&D, the difference is a mechanical one. 

In Raise Dead, the spell is limited to a number of days since death. Thus a Cleric—the aforementioned "holy person"—of ninth level can raise an individual1 dead nine days. 

Resurrection however is ten times as powerful. The same ninth level Cleric cannot perform a resurrection. The cleric must be 16th level to even have the opportunity, and then it is limited, initially, to Clerics of exceptional Wisdom.

Both spells must be "survived." Use of Raise Dead does not heal the subject, thus you cannot raise a subject whose head is missing. Resurrection on the other hand can restore to life the "bones of a [subject] dead up to [ten times the level of the Cleric]." The subject is limited, as in Raise Dead, to specific subjects2. Casting the Resurrection spell even ages the caster!

Both spells can be reversed as well. Raise Dead can be caste as Slay Living and Resurrection as Destruction. And for a Cleric of a particular moral dispostion, especially a good one and worshipper of a Lawful god, could—narratively—face serious consequences.

The above cites the 1st Edition Advanced D&D (AD&D) rules and they changed a bit in the intervening editions. As a DM, I tend to flavor my D&D 5e (fifth edition) campaigns with these details, adding some unique flavor to the "Rules as Written."




  1. [1] Raise Dead may only be performed on a Dwarf, Gnome, half-elf, halfling, or human. That's right, no Elves!

  2. [2] Ibid.

Posted by caffeinated at 10:18 PM in d10