The Leaky Cauldron
Hidden tavern random encounter. While exploring the forest or traveling between cities, discover the entrance to a mysterious tavern (configurable name, default: "Leaky Cauldron"). Event weight: 100 (forest), 100 (travel), BUT blocked if your mount has the "findtavern" mount preference enabled (mount knows better routes, avoids the tavern). One shared narration for every player, regardless of any character attribute. Functions as a standard inn location with drinks, rooms, rest — plus a genuine, built-in brick-tapping courtyard exit into Diagon Alley. Where you're minding your own business in the Forbidden Forest or on a dirt road between villages and suddenly notice a battered old pub sign you somehow missed every previous time you walked this exact route, enter to discover it's the gateway to Diagon Alley complete with grumpy bartender Tom and overpriced rooms.
Encountering the Tavern
Event Triggers:
- Forest: Random forest encounter (event weight 100)
- Travel: Random travel encounter between cities (event weight 100)
- Both have equal probability when conditions are met
Mount Blocking:
- If your mount has "findtavern" preference = 1: Event DOES NOT trigger
- Event hook returns 0 (no chance) if findtavern is enabled
- Flavor explanation: Mount knows efficient routes, avoids detours to shabby taverns
- If findtavern = 0 or you have no mount: Event triggers normally (100% weight)
Mount Preference System:
- Each mount can have a "findtavern" objpref (module: darkhorse)
- Admin-configurable per mount
- Default: 0 (mount does NOT avoid the tavern)
- If set to 1: Mount is smart enough to bypass the Leaky Cauldron
- Thematic: Noble steeds don't visit seedy establishments
Discovery Text
There is exactly one narration, shared by every character regardless of sex, race, or anything else — the module imports the SEX_MALE/SEX_FEMALE constants but never actually branches on them.
Forest / Travel Encounter
- You wander through what appears to be an ordinary London street and notice a small, shabby-looking pub wedged between a bookshop and a record store — passing Muggles don't seem to see it at all
- A weathered wooden sign depicts a cracked black cauldron with a single leaking drop, with the tavern's configured name painted beneath it in faded lettering
- If your mount is present and doesn't have findtavern set, the text notes it seems eager to approach, "as if recognizing a magical landmark"
- Options: enter the tavern, or return to the street and walk away
Tavern Name Customization:
- Admin setting: tavernname (default: "Leaky Cauldron")
- Used throughout all discovery and interior flavor text
- Can be renamed to any tavern (e.g., "Hog's Head", "Three Broomsticks")
The Tavern Interior
Inn Functionality:
- Functions as an inn-style location with its own room, rather than reusing the core inn.php page directly
- Available interactions:
- Talk to Tom the innkeeper — general chat, a color-code tutorial, and a "pay 100 gold to learn about another wizard" lookup service
- Talk to a wizard playing Exploding Snap (hooks into any installed tavern minigame module)
- Examine the magical graffiti on the tables (a commentary/guestbook area, unless it's been blocked)
- Exit to Diagon Alley (see below)
Dark Horse Theme:
- Module name: "Dark Horse"
- References both the tavern's hidden, unexpected nature and the mount-blocking mechanic
- Actual tavern content (Tom, the graffiti tables, the Exploding Snap game) is unique flavor for this module, not a copy-paste of the standard inn
Canon Connection: Leaky Cauldron:
- Harry Potter universe: Entrance to Diagon Alley
- Located on a Muggle London street, invisible to Muggles
- Shabby exterior, magical interior, bartender named Tom
- The module replicates this directly — see "Exit to Diagon Alley" below
Exit to Diagon Alley
This is a real, built-in feature, not just flavor: from inside the tavern, choosing "Exit to Diagon Alley" walks you through the back door into a small walled courtyard. Tom's trick — tapping a specific brick with your wand (three up, two across from the trash bin) — makes the wall fold back into an archway revealing Diagon Alley's cobbled street beyond. You step through, and the wall seals itself behind you.
- The courtyard/brick-tapping sequence is part of this module's own code, triggered by the "leave" option inside the tavern
- It plays out as narrative flavor text rather than a mechanical teleport to a separate Diagon Alley location — but the canonical gateway is genuinely present, unlike the standard inn
Mount "findtavern" Preference
What It Does:
- Mount-level setting (not user setting)
- Admin configures per mount type
- If findtavern = 1: Mount bypasses tavern encounters
- Effect: Forest/travel event returns 0 weight (never triggers)
Why Some Mounts Avoid the Tavern:
- Thematic Reasoning:
- Noble mounts (unicorns, hippogriffs, phoenixes) too dignified for seedy taverns
- Fast mounts know direct routes, don't detour to pubs
- Intelligent mounts recognize the tavern as a distraction from the journey
- Gameplay Reasoning:
- High-tier mounts offer an additional perk (skip unwanted random events)
- Player choice: convenience (avoid the tavern) vs variety (encounter the tavern)
- Balances mount value (premium mounts do more)
Example Mount Configurations:
| Mount | findtavern | Reasoning |
|---|---|---|
| Horse | 0 | Regular mount, follows normal path |
| Unicorn | 1 | Pure creature, avoids disreputable locations |
| Broom | 0 | Basic transport, no sentience to avoid the tavern |
| Phoenix | 1 | Intelligent magical creature, knows better routes |
| Thestral | 0 | Death-themed mount, doesn't judge tavern quality |
Admin Configuration:
- Access the mount editor
- Find "The Leaky Cauldron Mount Preferences" section
- Setting: "Can this mount find the tavern" (bool, default 0)
- Counterintuitive naming: "find" = avoid (if 1, the mount FINDS a way around it)
- Set to 1 to make the mount bypass the tavern
- Set to 0 to allow tavern encounters
Admin Configuration
Module Settings:
- tavernname: Name of the tavern (text, default: "Leaky Cauldron")
- Appears in discovery flavor text, the interior scene, and the Diagon Alley exit
- Can be customized to any pub name
Mount Preferences (per mount):
- findtavern: Can this mount find the tavern (bool, default: 0)
- Misnomer: "find" actually means "avoid"
- If 1: Mount bypasses the tavern, event doesn't trigger
- If 0: Normal tavern encounters
Hooks Used:
- forest: Event hook, weight = 100 if findtavern = 0, else 0
- travel: Event hook, weight = 100 if findtavern = 0, else 0
Strategy & Usage
For Players
When the Tavern Appears:
- Chat with Tom, browse the color-code tutorial, or pay to scout another wizard's stats
- Check out whatever tavern minigame is hooked in (Exploding Snap)
- Use the brick-tapping exit if you want the Diagon Alley flavor moment
Mount Choice:
- If you WANT tavern encounters: choose mounts with findtavern = 0
- If you want to AVOID the tavern: choose mounts with findtavern = 1 (premium mounts likely)
- Check with your admin which mounts bypass the tavern on your server
For Admins
Customization Options:
- Rename the Tavern: Change tavernname to fit server theme
- Canon alternatives: "Hog's Head", "Three Broomsticks"
- Custom: "The Broken Wand", "Dragon's Flagon", whatever fits your lore
- Mount Configuration: Decide which mounts avoid the tavern
- Premium mounts: findtavern = 1 (perk)
- Basic mounts: findtavern = 0 (normal)
- Creates mount tier differentiation
Common Questions
Q: Why doesn't the Leaky Cauldron appear when I'm on my unicorn?
A: Your unicorn has findtavern = 1. It knows better routes and avoids seedy taverns. Switch to a mount without this preference.
Q: Is there special content inside the Leaky Cauldron?
A: Yes — Tom the innkeeper, a color-code tutorial, a pay-to-scout service, a commentary/graffiti board, an Exploding Snap encounter, and a genuine Diagon Alley exit sequence. It is not a bare copy of the standard inn.
Q: Does entry text differ between characters?
A: No. There is a single shared narration for the discovery, the tavern interior, and every interaction — nothing in the module branches on player sex or any other character trait.
Q: Can I find the Leaky Cauldron multiple times?
A: Yes. It's a random encounter with 100% weight (if your mount allows). It can trigger repeatedly.
Q: Can I change the tavern name from Leaky Cauldron?
A: Yes, admins can. Module setting: tavernname. It can be renamed to any pub.
Q: Does the tavern connect to Diagon Alley like in Harry Potter?
A: Yes. Choosing "Exit to Diagon Alley" from inside the tavern plays out the brick-tapping courtyard sequence and delivers you into Diagon Alley, exactly as in the books — this is built into the module itself, no extra setup required.
Q: Why is it called the "Dark Horse" module?
A: "Dark horse" nods to the tavern's hidden, unexpected nature and doubles as a pun on the mount-based blocking mechanic that governs whether the encounter appears at all.
Limitations
- Random Only: Can't bookmark/return to the tavern deliberately — it's a random forest/travel encounter
- Mount Preference Naming: "findtavern" is counterintuitive (find = avoid, not find)
- Unused Gender Import: The module pulls in SEX_MALE/SEX_FEMALE constants but never actually uses them — every player gets identical text
The Leaky Cauldron (Dark Horse): where you're wandering through the Forbidden Forest or traveling the dusty road between magical villages and suddenly stumble upon a tattered pub sign advertising the Leaky Cauldron in a location you've definitely passed seventeen times before without noticing it, because apparently the pub has Somebody Else's Problem field technology or extremely poor signage. Everyone gets the exact same narration walking in — the module quietly imports gender constants it never once checks, which is either an oversight or the most understated statement of equal-opportunity curiosity in the codebase. Inside, Tom the innkeeper polishes a glass that's somehow getting dirtier, offers you a color-code tutorial, and will sell you gossip about other wizards for 100 gold. And unlike its name-only cousins elsewhere in the game, this Leaky Cauldron actually delivers on its promise: tap the right brick in the right pattern out back, and the wall folds open into Diagon Alley, precisely as advertised. Certain noble mounts like unicorns have the "findtavern" preference set to 1, which BLOCKS the event entirely because apparently your unicorn is too dignified to let you visit seedy establishments. Admins can rename the tavern via the tavernname setting if "Leaky Cauldron" doesn't fit their server lore, allowing creative alternatives like "The Broken Wand" or "Dragon's Flagon" or "Steve's Place" depending on your commitment to fantasy nomenclature standards.