09 July 2024

Beginner's guide to Blood on the Clocktower custom scripts

This is a guide for crafting custom scripts for the social deduction game Blood on the Clocktower.

The game's core editions – Trouble BrewingBad Moon Rising and Sects & Violets – are well-tested and meticulously-balanced game-theoretic ecosystems, but the game's enormous cast of characters and complex emergent gameplay interactions create an irresistible temptation to experiment with new combinations of bluffers and puzzle-solvers. This post, which draws heavily on the wisdom already shared within the community, provides a checklist of principles to keep in mind.

Even if you aren't in the business of making custom scripts, unpacking exactly what goes into a great Blood on the Clocktower script is interesting from a game design perspective, and this post will highlight some of the less obvious features that make Clocktower's core editions work so well.

If you have no idea what I'm talking about, introductions to the game can be found here (official website) and here (video).

Outline

The rest of this post consists of ten guidelines, listed in roughly descending order of priority. Links to further resources are provided at the end.
  1. Figure out the basics
  2. Include misinformation
  3. Conceal the outsider count
  4. Conceal which Demon is in play
  5. Avoid good characters who are too easy to confirm
  6. Give the good team reasons to be secretive
  7. Give the evil team an escape hatch
  8. Aim for similar minion "loudness"
  9. Consider using Fabled
  10. Consider starting Teensy
Two things are essential to remember. First, these are guidelines, not commandments. There will certainly be occasions where you decide it's right to do something differently.

Second, the best way to evaluate your script is by playing it! Unexpected interactions between characters are a vital part of Blood on the Clocktower, and giving players creative opportunities to exploit these interactions will make the game all the more fun, but often the only way to discover these interactions and gauge their impact on the player experience will be to watch them show up organically when your script is played.

1. Figure out the basics

So, you have your cool idea for a script. Maybe there's a gameplay theme you want to focus on, or a couple of characters you really like and want to include.

The best place to start is the Script Tool from the official Clocktower site. As well as making it easy to add and remove characters, the Script Tool will automatically figure out night order, flag jinxed characters and generate a printable PDF to share with players.

Make sure your script has the minimum number of characters of each type. For a standard game this is at least 13 Townsfolk, 4 Outsiders, 4 Minions and at least 1 Demon. A lot of the time you'll be working from the bottom upwards, starting with your Demons and building the remaining characters around them.

Among your Townsfolk, make sure there's at least a few that receive information. It's recommended to list Townsfolk in what's called "standard Amy order", which groups together characters according to when their ability takes effect (again, this is something the official Script Tool can automate).

2. Include misinformation

A crucial goal for the good team is separating true information from misinformation. If the good team have no reason to doubt any of the information they are given, it will usually be too difficult for the evil team to win.

Misinformation can be created consciously by the evil team (e.g. through the Poisoner and Pukka's targeted poisoning) or exist passively as a result of characters' abilities (e.g. Drunk or Vortox). If in doubt, it's good to include both types of misinformation sources.


Madness abilities (like Mutant and Cerenovus) are a less effective source of misinformation. Although they may encourage the good team to doubt each other, keep in mind that madness does not cause players to doubt their own information, and players can always break madness if they want to (and they are happy to face the consequences).

3. Conceal the outsider count

By default, the number of Outsiders in the game is determined by the overall number of players. But if the good team know exactly how many Outsiders should be in play, it will be much harder for players on the evil team to bluff as an Outsider. It will also make it easier for Outsiders who believe they are other characters (e.g. Drunk and Lunatic) to figure out their true role.

There are two ways of avoiding this: either include characters that directly manipulate the Outsider count (especially evil characters, since they won't make themselves public), or Outsiders who are less likely to make themselves known to the good team (because of madness, because they don't know they're Outsiders, or because they may change teams). The former type of obfuscation is generally most effective, but if in doubt, it's good to include both (like in the three base scripts).


4. Conceal which Demon is in play

If there is more than one Demon on the script, part of the puzzle for the good team is working out which Demon is in play. Make sure that this is indeed a puzzle! Be careful with Demons which cause more than one death per night, since they will clearly signal their presence unless there are other sources of death at night.

On some scripts (including the classic Trouble Brewing) there is only one Demon on the script. For these games, the good team will not need to spend any effort figuring out which Demon is in play. Keep in mind that some Demons (like the Vortox and Legion) work best when it's not guaranteed they are in play, letting them instil paranoia in the good team.

5. Avoid good characters who are too easy to confirm

In general, games are most fun when no good player can be completely trusted. To support this, it's worth having ways for the evil team to plausibly look like any good character on the script (or as many as possible).

For "information" roles, this is usually not much of a concern: for example, any evil player can bluff as a Clockmaker and invent a number (although extremely info-heavy characters like Undertaker are hard to bluff without an info-heavy Minion like Spy or Widow).

For "power" abilities which kill, protect or resurrect, the consequences are much more visible and it's harder for the evil team to bluff as them without extra support. For example, the Professor's ability to resurrect another character is almost impossible for the evil team to fake unless they have a Shabaloth on their team (and even then, it will usually require coordination with the storyteller or very good luck). The Devil's Advocate, an evil character that can protect others from death by execution, is a versatile mechanism for the evil team to bluff as a protection role like Tea Lady, Pacifist or Sailor.


Another interesting option is to include ways of generating evil Townsfolk. With a Bounty Hunter or Pit-Hag on the script, even a Townsfolk who can easily confirm their character won't be guaranteed to be on the good team.

6. Give the good team reasons to be secretive

In a typical social deduction game, the good team will tend to be honest and the evil team will tend to lie. But you can make games much more exciting if the good team is incentivised to conceal some of their information.

On the one hand, good team secrecy makes the game less of an uphill battle for the evil team: if every good player thinks it's best to publicly state their role on day one, it will be significantly harder for the evil team to bluff. I would also argue that good team secrecy makes the game more fun: players who enjoy detective work will be able to do it even if they are assigned the evil team, and players who enjoy deception will have more opportunity to do it even if they are on the good team.

Some good characters (like the Damsel, Pixie and Magician) explicitly want to hide their role. Having these characters on the script will nudge the whole good team towards concealing their roles, so that they can protect the members of their team who really need to stay under the radar.

You can also gently encourage the good team to be secretive by including a mix of good characters who want to get killed at night and characters who want to stay alive. If your good characters are taken from across the spectrum pictured below, they will not want to be too open about their roles, in the hope that the Demon will target the wrong player at night.


One last factor to think about is how good team secrecy affects the relative strength of evil characters. If your good team are encouraged to keep quiet about their roles, evil information characters (like Spy and Widow) become much more powerful, whereas characters that need information to work effectively (like Poisoner and Pit-Hag) are weaker.

7. Give the evil team an escape hatch

A loss through bad luck tends to happen more often for the evil team than for the good team. By default, the good team only needs one lucky execution to win the game. To balance this out, consider including an "escape hatch" which helps the evil team get back on their feet if the game is going badly. Another gameplay function served by many escape hatches (including Imp, Zombuul and Fang Gu) is giving the good team more reason to suspect that a dead player is evil, sowing extra distrust.

Escape hatches can take a number of different forms. The most obvious are abilities letting a Demon jump to another character if they're attracting too much suspicion, or letting the game continue after the Demon is executed. Each of the three base scripts includes at least two escape hatches.


8. Aim for similar minion "loudness"

Some minions are "loud", meaning that the good team will learn quickly that they are in play. Others are "quiet", affecting the game in more subtle ways. A quiet minion tends not to work as well on a script where other minions are loud: the good team will be able to work out they are in play by process of elimination (having not seen the obvious "tells" for the loud minions on the script), making it hard for the quiet minion to influence the game discreetly.

A good approach is to have all the minions be a roughly similar level of loudness: all quiet (like in Trouble Brewing), all loud (like in Sects & Violets) or all in the middle (like in Bad Moon Rising).


9. Consider using Fabled

Fabled, while officially called "characters", don't have any agency and aren't controlled by any player. They are best thought of as flavourful ways of tweaking the rules of your game.

Duchess, Fibbin, Sentinel and Spirit of Ivory are specifically designed to help balance custom scripts when it's not possible to do so by adding or removing (non-Fabled) characters. Other Fabled don't have script balancing as their principal goal, but sometimes appear on custom scripts to make games more interesting, such as Revolutionary on Comrade Demon or Doomsayer on Race to the Bottom.


The Djinn is a special Fabled which adds new rules to amend the interaction between two characters on a script. Officially, the two characters are said to be "jinxed" when unpatched, but you'll usually see the community instead use "jinx" to refer to the patch itself (which is the approach used in the rest of this post).

There's a lot of variation in how jinxes work. In the most extreme case, so-called "hate jinxes" declare that two characters cannot be in play at the same time (this applies, for example, to Riot and Exorcist). At the other end of the spectrum, there are characters that work perfectly well together, but a jinx exists allowing them to interact in an interesting way (such as the Mathematician seeing the Lunatic malfunction, or the Cerenovus making a player mad they are the Goblin).

Some people are anxious about including jinxed characters on custom scripts, out of a fear that jinxes are just band-aids to stop poorly-built scripts from completely breaking. I would strongly encourage you not to be afraid of jinxes and to embrace the gameplay possibilities they were designed to open up.

That said, avoid overloading your players with too much rules complexity, and make sure that any jinxes on the script are clearly explained before the game starts (even if the jinxed characters aren't in play). Losing because you didn't understand all the fine print is never fun!

10. Consider starting Teensy

"Teensyville" games, which have 5 or 6 players, use their own type of script with a smaller pool of characters (6 Townsfolk, 2 Outsiders, 2 Minions and 1-2 Demons). Steven Medway, creator of Blood on the Clocktower, suggests that Teensyville scripts are a perfect starting point for new script designers, quicker to assemble, faster to playtest and easier to focus around a central theme.

All the scriptbuilding principles listed above still apply to Teensyville scripts. To see an example of this, we can look at No Greater Joy, the archetypal entry-level Teensyville script:
  • There is a source of misinformation (Drunk);
  • There is outsider count manipulation (Baron);
  • All Townsfolk are information characters who are easy for the evil team to bluff (this is especially important in Teensyville games where the evil team aren't given any out-of-play characters to bluff as);
  • There are good characters who want to stay alive (Empath, Chambermaid and especially Klutz) and a character who wants to get killed at night (Sage), encouraging some good-team secrecy;
  • There are two escape hatches (Imp and Scarlet Woman); and
  • The two Minions are similar in terms of loudness (both very quiet without any active abilities).

Further resources

Recommended custom scripts
The official Blood on the Clocktower site has a regularly-updated page listing some of the team's favourite custom scripts.

BotC Scripts is a large searchable database of custom scripts.

Zets has assembled a list of neat, balanced custom scripts, available on Imgur.

Scriptbuilding guides
This Reddit comment by official storyteller Ben Burns covers six "must-haves" for custom scripts.

"The Teensyville Fair" is a Tumblr post by BotC creator Steven Medway with advice on building Teensyville scripts. Much of the advice is also applicable to full-size scripts.

Angelus Morningstar's Ravenswood Bluff site includes an excellent scriptbuilding guide as well as a collection of custom scripts.

Discussion forums
The BotC subreddit has a "Scripts" flair. You can search for this flair to find other custom scripts, or tag a post with this flair to get feedback on your own script.

The unofficial BotC discord server has a channel for custom script discussion.

15 March 2021

Sentiment Analysis of MTG Flavor Text

The fantasy card game Magic: The Gathering (often called simply Magic), with its decades of history and thousands of cards, is a treasure trove of data, which curious players can explore even when a global pandemic makes face-to-face tabletop gaming much more difficult.

In summer last year I posted a tongue-in-cheek "periodic table" of the game's fantasy races and classes (known as "creature subtypes"), something I'm keen to update in a proper blog post. Today I'm interested in "flavor text": this is the italicised text at the bottom of a card which doesn't carry any rules meaning, but acts as a bridge between the card's mechanics and the story.

VADER (Valence Aware Dictionary for Sentiment Reasoning, described here) is one "off-the-shelf" model for analysing the valence (positive or negative) and intensity of the mood expressed in a piece of text. Here's a few examples of how VADER evaluates sentences:

Sentence VADER compound sentiment
This is a really great blog post! 0.6893
This is a great blog post! 0.6588
This is not a good blog post -0.3412
This is a terrible blog post! -0.5255

While VADER is designed primarily for social media comments, it can easily be applied to snippets of fantasy lore. What are the trends in the tone expressed by Magic cards? Which cards come out most positive and most negative?

To state the obvious, no analysis could ever encapsulate a text's whole emotional impact in one number. Because of this, and because a slightly different methodology could produce very different results, everything here should be taken with a pinch of salt. I should also emphasise that, while everything written here is correct at the time of writing (March 2021, between the releases of Kaldheim and Strixhaven), Magic releases new cards at a rate of hundreds per year, so this will likely be out of date pretty quickly.

With those caveats in mind, the rest of this post will cover a few results which I found interesting, looking first at cards individually, then at groups of cards and finally at long-term trends.


Highest and lowest

A natural starting point is to grade the VADER sentiment of flavor text on each of the game's cards and see which cards end up at the top and bottom of the table.

These are the five cards with the lowest overall scores. Restless Bones is the lowest with -0.9792. A common theme among the five is reference to death, which VADER's lexicon rates particularly strongly. Angel of Renewal appears to be an oddity: the analysis picks up the negative sentiment behind "fear", "failure" and "death", but isn't able to detect that in the Angel's flavor text these concepts are triumphantly rebuked.

The five cards with the highest sentiment scores have little in common, in contrast with the bottom five. Soaring Show-Off's score, 0.9545, is the highest. Borderland Minotaur's flavor text, poignantly describing a Pyrrhic victory, may be another example where this analysis is too simplistic to pick up on every nuance.


Grouping by color and subtype

Looking at the scores for cards individually appears not always to give results that exactly match our intuitions, but we can still get interesting results when aggregating groups of cards together and examining the average sentiment scores within each group.

Grouping the cards by "color" we find that white cards have the highest average sentiment (0.033) and black cards have the lowest (-0.103). Looking at creature subtypes, Orc (-0.253) and Zombie (-0.141) are among the lowest, while Druid (0.108), Dog (0.089) and Angel (0.031) are among the highest.

It's worth noting that a full ranking of creature subtypes would be distorted by some very small sample sizes. For example, "Starfish" has the lowest average sentiment of any creature subtype, but it isn't worth reading much into this given that only one Starfish has ever been printed with flavor text:


Sets over time

Is there anything we can learn by looking at long-term trends? Magic's cards are released in "sets", each with their own setting, story and tone. What do we see when we look at each set and calculate the average sentiment of its cards?

(full-size version here)

There are many details which could be picked out, but here's a few specific observations:

  • For a long portion of Magic's history, two or three sets would be grouped into a "block" sharing one setting. (This graph uses red and green coloring to group sets in the same block.) Often the average sentiment will decrease over the course of a block, as the story's crisis escalates, but we also see cases where the trend is less clear or goes in the other direction.
  • One of the sharpest contrasts between adjacent blocks is between Lorwyn and Shadowmoor. These two blocks depict a "Jekyll-and-Hyde" world which alternates between light and dark.
  • The set with by far the highest average sentiment is Kaladesh, which was consciously designed with an optimistic tone in mind.
  • Two other sets with high average scores are New Phyrexia and Amonkhet. These are both sets which deliberately create dissonance with their flavor text: New Phyrexia pairs idealism in its flavor text with metallic horror in its artwork, while Amonkhet was designed so that upbeat story components are "out of sync" with the sinister game mechanics.

While there is a lot of variation in average sentiment between nearby sets (and certainly a lot of variation in flavor text sentiment within each set), there is a slight upward trend over the course of the game's history. Some might interpret this as a sign that the game is "dumbing down" or trying to appeal to younger audience, but in fact I think you can make a good case that the opposite is true: as the game's fanbase has grown and matured, players get more comfortable acknowledging that fantasy battles between wizards don't always have to be doom and gloom.


30 December 2020

Stormwind Map in the Style of RuneScape

After trying my hand at adapting Skyrim's world map to the style of RuneScape, I was in search of another location that could work well with that distinctive pixellated look. Stormwind City, the largest human settlement in the online role-playing game World of Warcraft, is one of the most iconic cities in gaming, so seemed like an obvious choice.

Stormwind map in the style of RuneScape

There isn't too much to say on methodology. In fact, the biggest practical challenge when researching the map was persuading my brother to let me borrow his World of Warcraft account so that I could fly around and take screenshots of the city layout.

Stormwind as it appears in World of Warcraft

For those who are curious, this is what the map looks like without the icon and text label layers:

Map without icons or labels

How ambitious a task would it be to adapt the whole of World of Warcraft to RuneScape's style? Obviously the short answer is "very", but we can get a more precise answer with some back-of-the-envelope calculation.

When adapting Skyrim, my quick-and-dirty way of planning out the map was to allocate Skyrim's cities and adventuring sites to RuneScape's 192-by-192-pixel "chunks". Generally, RuneScape has one major feature per chunk, with a few big locations (like cities) occupying multiple chunks.

We can see this in the map below, which takes the official Old School RuneScape world map (as of December 2020) and labels the main feature each chunk. The game world has about 450 chunks of landmass, around half of which contain some kind of landmark. Chunks coloured blue are mostly ocean, while grey chunks are currently "unknown" and appear black on the official map.

Outline of RuneScape's map
(full-size version)

If we took the map of World of Warcraft's Eastern Kingdoms (where Stormwind is situated) and allocated the main locations to RuneScape-style chunks, we would get something like the below:

World of Warcraft's Eastern Kingdoms divided into chunks
(full-size version)

If the map above were used as a basis for a full map, the whole Eastern Kingdoms (excluding underground and underwater areas) would take up about 270 RuneScape chunks. The whole map would be 3264 by 8064 pixels in size.

Add in Kalimdor (the other continent dating back to "classic" World of Warcraft) and you have another 300 or so chunks to map. The two continents, with a combined landmass larger than the whole world of RuneScape, would almost definitely make for a mapping task too large for any one person to take on!

16 September 2020

Skyrim Map in the Style of RuneScape

When encountering a new world for the first time, few things fuel the imagination quite like a map. A map can also be one of the biggest sources of nostalgia when looking back at a world that was once very familiar. My most recent geeky project has been to take the map from the video game Skyrim and translate it into a more retro style, re-imagining it in the style of another video game, RuneScape:

Map of Skyrim in style of RuneScape
Skyrim map in the style of RuneScape (full-size version)

For those curious to know more, the rest of this post will describe the process of making the map in a little more detail. After a bit of background on the two games which motivated it, I'll say a little bit about three aspects which brought interesting challenges: the scale, the terrain, and the icons on top.


Two games, two worlds 

(You can almost certainly skip this section if you're familiar with RuneScape and Skyrim - and if you're here from Reddit or Twitter, you almost certainly will be)

RuneScape was originally released by British developer Jagex in 2001. The distinctive world map style I was seeking to emulate first appeared in 2004, and is still used in the game'Old School fork:

Excerpt from official RuneScape map, showing Taverley, Burthorpe and Falador
Excerpt from official RuneScape world map

Skyrim, the fifth title in The Elder Scrolls series, was released by American developer Bethesda Game Studios in 2011. Each game in the series is set in a different region of the fantasy continent of Tamriel; the fifth game is set in the cold northern province of Skyrim, heavily influenced by Norse mythology.

Skyrim's official world map

The two games have a lot in common. Both games are set in fantasy worlds with wizards, elves and dragons. The player takes the role of an adventurer who goes on quests, defeats monsters and hones their skills at combat and crafting. Both titles had an impact which lasted long after their original release: they are still played, they are still talked about and they continue to spawn memes.

Why choose Skyrim and RuneScape for a cartographical crossover? Skyrim is one of the best-selling role-playing games of all time, making the eponymous province one of the most famous video game worlds ever crafted. RuneScape's retro, pixellated map evokes a lot of nostalgia for those (like me) who spent a lot of their childhoods using it. The wealth of resources available for map-making fans means the style is not too tricky to replicate (despite my limited artistic skill).


Scale

Almost all video games distort scale. A city might have thousands of inhabitants according to the story, but creating all of them would be a significant waste of resources if only a dozen are relevant to the player.

The challenge with translating Skyrim to RuneScape's style is that the two games treat scale very differently. Skyrim, from a story perspective, is meant to be the size of a real-world country, but in-game the world is about 37 square kilometres in size. The world of RuneScape spans several kingdoms (also meant to be country-sized), but is compressed in-game to an area less than five square kilometres.

Skyrim, where "major city" means twenty buildings 

The two games also differ in what they emphasise. In RuneScape, cities and towns are inflated relative to their surroundings. In the oldest areas, they take up about a third of the map. Skyrim, by contrast, has much larger areas of open wilderness. I think this is in part because RuneScape is a multiplayer game with an emphasis on player interaction, while Skyrim is single-player; another reason could be RuneScape's slightly greater emphasis on non-combat skills (which exist in Skyrim but play a smaller role).

All of this means that drawing Skyrim in RuneScape's style would not simply be a case of tracing over one map with the colour palette of the other. Although the map might look like Skyrim, it would not feel at all like RuneScape.

Instead, my plan was to enlarge cities and shrink the surrounding wilderness, just like RuneScape does. The first thing I did was try to figure out how I could do this while still representing Skyrim as closely as possible.

Skyrim's features mapped onto a grid
My original plan for the map

The resulting scale is a compromise: roughly 15% of the map is covered by towns and cities, less than RuneScape but much more than Skyrim. It did mean that occasionally a location from Skyrim had to be cut for space, but I always tried to prioritise keeping the most iconic places. Sorry, Narzulbur.

Aligning Skyrim to a grid helped to make the map seem more RuneScape-like in another, more subtle way. RuneScape's map is made out of "chunks" about 200 by 200 pixels in size; each chunk is loaded separately in-game and often has a unique background music track. Towns and terrain features are typically designed to line up with these chunks, which can make continents look quite "square". Planning Skyrim's map in terms of these chunks gives the world a similar rectangular feel, even if it's something people might only notice subconsciously.

"Chunk" grid overlaid on Skyrim map


Terrain

Terrain in a RuneScape-style map has two ingredients. The base layer, representing grass, dirt, sand or snow, blends between different colours, while mountains and bodies of water are shown as solid colours with sharp boundaries.

Again, the process of making the map reveals a difference in emphasis between Skyrim and RuneScape. In particular, Skyrim loves mountains, using them not only as sites for adventure but also to create natural barriers between different regions. Unlike RuneScape's world surrounded by ocean, Skyrim is bordered on three sides by mountain ranges.

The southwest corner of the map posed a conundrum: in Skyrim, this area is blocked off to the player and a lot of it is left blank.

Excerpt from the UESP Skyrim map, showing the featureless southwest corner

I considered covering the area in shadow or sticking the map key there, but in the end I opted to fill in the terrain as minimally as possible, so that the area wouldn't be distractingly busy or distractingly empty.


Icons

If a map style is a language, the icons speak most clearly. Sure, the text labels might tell you what a place is called, but the icons tell you why they matter.

RuneScape uses map icons extensively, identifying resources (e.g. fish or ore), facilities (e.g. a furnace or an anvil), non-player characters offering services (e.g. a shop or transportation) or starting points for an adventure (e.g. a quest or a dungeon).

Examples of map icons in RuneScape: general store, flour mill, quest, dungeon

In many cases, such as those pictured above, the icons used in RuneScape fit very naturally in Skyrim. In other cases the games don't match as neatly. In particular, one of the most important services for players in RuneScape is the bank, where players can store their gold and items. These don't exist in Skyrim, so RuneScape's iconic dollar-sign bank icon is nowhere to be seen.

Conversely, many of Skyrim's features lack an exact analogue among RuneScape's icons but are still the kind of thing you would want to indicate on a map. Most importantly, dragons play a key role in Skyrim's story and their lairs are landmarks in their own right. A new icon marking the presence of a dragon, based on the icon used in Skyrim, seemed like an obvious inclusion.

Skyrim's icon for dragon lairs, and my RuneScape-style interpretation


"You're finally awake ..."

Whether it's words or worlds, no translation can ever be exact. I am conscious that some of the decisions which went into this map might be controversial, especially when figuring out how heavily to draw from RuneScape and how heavily to draw from Skyrim. Nevertheless, I hope that the map manages to capture the setting of one world, the character of another, and the nostalgia of both.

27 May 2020

London's Unbuilt Monorail

Monorail systems once looked like the most futuristic form of public transport. Today, their reputation isn't quite as bright, but in the 1960s there were plans to bring an elaborate monorail network to the centre of London.

London's Unbuilt Monorail (click to enlarge)

The scheme, proposed by architect Brian Waters and endorsed by the Conservative Opposition at the Greater London Council, would have involved four loops of track elevated above London, alleviating congestion on the streets below.

The map above imagines how the network might appear in the style of a modern-day Tube map. It's worth emphasising that although we know the routes that the four loops would have taken, the exact number and position of the stations is largely speculation. Given that the monorail network was intended as a substitute for the bus network, it's likely that the stops would have been spaced more closely together than stations on the London Underground. This means that the map probably underestimates the number of stations on each loop.

For more information about the proposals, check out this article by IanVisits, or grab a copy of the original proposals.

30 June 2019

Cutting the Cost of Crossrail 2

Six months after its planned opening date, we still aren't sure exactly when Crossrail 1 will begin carrying passengers under central London. The fate of its sequel, Crossrail 2, hangs in the balance, although it has recently won some enthusiasm from the UK's probable next Prime Minister.

Crossrail 2 would be a new underground rail connection between the southwest and the northeast of London, following much of the same design philosophy as the east-west Crossrail 1. In 2015 a consultation was launched describing a proposed route, and in 2018 an Independent Affordability Review was established with the stated aim of guaranteeing the project's value for money.

Crossrail 2 route map, as of 2015 consultation
Even though the Affordability Review was supposed to conclude in summer 2018, there's been no word yet regarding its findings. In the meantime, discussion of the project has continued on less official channels.

In May 2019, the TaxPayers' Alliance published a report suggesting ways in which the cost of the scheme could be brought down and proposing alternative schemes which (they argue) could provide better value for money. In this post, I'll map out some of their ideas.

I should emphasise that, having no background whatsoever in transport planning or civil engineering, I'm not in a position to speak with any authority on the merits of these proposals. My motivation, first and foremost, is that producing colourful maps is fun. This post does offer an opportunity to explore the official Crossrail 2 plans in more detail, which I hope is useful regardless of how seriously the alternative suggestions should be taken.

Current Crossrail 2 proposals

Crossrail 2's core section consists of a new pair of rail tunnels between Wimbledon and New Southgate. In this section Crossrail 2 would serve many stations providing interchanges with other lines, including Tottenham Court Road and Euston St Pancras.

In the southwest, Crossrail 2 services would run on National Rail track and serve destinations in London's suburbs. In the northeast, there would be a branch from Dalston to Tottenham Hale and Broxbourne using existing track on the West Anglia Main Line.
2040 Tube Map
2040 Tube Map putting Crossrail 2 in context
The scheme is intended to serve many different goals:
  • Taking suburban services in South West London off the tracks into Waterloo (replacing them with Crossrail 2 services) frees up capacity for more longer-distance services to run to Waterloo
  • Building extra tracks on the West Anglia Main Line north of Tottenham Hale allows more National Rail services to run to Liverpool Street and Stratford
  • A station at Balham or Tooting Broadway helps relieve pressure on the Northern line, in particular by scooping up passengers who would otherwise have changed onto the Victoria line at Stockwell
  • A station at Euston helps better disperse passengers arriving from HS2
  • Improving transport access for outer London opens up new housing opportunities (which, as London Reconnections writes, is very often overlooked)
Any description of Crossrail 2 needs some strong caveats about the likely extent to which the plan will change. The proposal has already evolved considerably: an ancestor of the scheme (still connecting Wimbledon and Dalston) is among a set of new lines proposed in 1946. For a long time the scheme was known as the Chelsea-Hackney line and could have taken over the Wimbledon branch of the District line and one of the eastern branches of the Central line.

1946 proposal which would gradually evolve into Crossrail 2
Probably the only certainty about Crossrail 2 is that it won't look exactly like the proposal in the 2015 consultation. Among the aspects that would only be finalised at a very late stage is the name. Like Crossrail 1, which will open with services branded as the Elizabeth line, Crossrail 2 will almost definitely adopt a new name when trains start to run.

TPA's alternative

The TPA report suggests a number of revisions to the scheme. The stations providing few interchange opportunities (Chelsea) or requiring circuitous diversions (Balham) would be cut. The central section would follow a different route, avoiding Euston St Pancras in favour of destinations closer to the City of London, with three alternatives put forward. The northwestern branch would be dropped entirely, potentially replaced with a surface-level branch to Gordon Hill.

TPA proposal for Crossrail 2
The report also suggests some projects which could replace Crossrail 2 altogether. Before looking at those, let's examine (with the help of some colourful maps) the alternative route suggestions in the central section, followed by the TPA's suggested way of cutting the cost of Wimbledon station.

Altering the route

As currently proposed Crossrail 2 would serve three central stations: Victoria, Tottenham Court Road and Euston St Pancras. The Crossrail 1 station at Tottenham Court Road has already been "future-proofed" in anticipation of a pair of north-south Crossrail platforms, which can be seen in this video from Geoff Marshall (at about 3:45).
Sketch of Crossrail 2 at Tottenham Court Road, from 2015 consultation
The TPA report puts forward three alternative routes in this central section. One alternative keeps the Tottenham Court Road station but replaces Euston St Pancras with a new station at Clerkenwell (including new platforms on the Circle line, between King's Cross St Pancras and Farringdon). Another alternative would put a Crossrail 2 station between Chancery Lane and Farringdon. The third alternative serves City Thameslink as well as Crossrail 1's Moorgate / Liverpool Street complex.

There could be some headaches for tube mappers. The current tube map overstates the distance between Farringdon and Chancery Lane (by putting Farringdon much closer to King's Cross St Pancras). On a tube map where Crossrail 2 serves Farringdon / Chancery Lane, this distortion would have to be addressed. 
Good luck squeezing in the station name labels!
That said, there is still a long way between the station platforms at Chancery lane and at Farringdon (as Franklin Jarrier's excellent CartoMetro map indicates), meaning that a Crossrail 2 station there could involve some very lengthy interchanges.

Platform use at Wimbledon

Wimbledon is one of the most complex stations in Outer London, with four District line platforms, five National Rail platforms and two Tramlink platforms. At platforms 6 and 7, trains usually run through the station without stopping, and those two platforms are generally closed to passengers.
Current platform layout at Wimbledon
Crossrail 2 would make the station even more complex. Under the 2015 consultation proposals, the existing Tramlink platforms would be relocated outside the station, and four new Crossrail 2 platforms would be built (at a lower level than the existing platforms). Platforms 10 and 13 would be used for "through" trains to and from South West London, while platforms 11 and 12 would be used for trains starting and finishing at Wimbledon (very similar to plans for Crossrail 1 at Old Oak Common).
Wimbledon after Crossrail 2 (2015 consultation proposal, with some further information from here)
The TPA report suggests instead putting the "fast" South Western tracks in tunnels under the station, so that platforms 6 and 7 can be used for Crossrail 2. This would save having to build additional platforms on the site of Wimbledon's Centre Court shopping centre.
Wimbledon after Crossrail 2 (TPA proposal)

Something completely different

The TPA report ends with suggestions for transport schemes which it argues could meet some of Crossrail 2's objectives at a lower cost. One of these is an extension of the DLR from its terminus at Bank to Euston and St Pancras.
DLR extension to Euston and St Pancras
Three more of the suggestions are mapped below:
Inner South London metro
Connection from Herne Hill to Fenchurch Street
North and East London express metro


Conclusions

A decision on next steps for Crossrail 2 is planned to form part of the 2019 Spending Review. Given that policymakers in the UK might have (*cough*) a lot on their plate in autumn 2019, it's possible that the decision could be delayed. The scheme's high price tag, the delays and cost overruns befalling Crossrail 1 and complaints of disproportionate infrastructure investment in London pile on pressure to delay Crossrail 2 or kill the project off entirely.

But as we've seen, the principles behind the Crossrail 2 proposals have been around for decades. The transport and housing issues which the project is intended to address will still need answers. For as long as that's the case, the idea of Crossrail 2 won't go away.

08 May 2019

Map of Tubewhacks and Mackerel Facts

St John's Wood is the only London Underground station whose name contains none of the letters in the word "mackerel".

The above statement is one of the most famous nuggets of Tube knowledge. It the favourite trivia question of Victoria Coren Mitchell, host of Only Connect (a quiz show which, for context, once asked its contestants to find the fourth item in the sequence "Central = 1", "Circle = 2", "District = 3"). On TfL's "Art on the Underground: Labyrinth" entry for St John's Wood, the Mackerel Fact gets top billing, winning priority over the station's other claim to fame: the site of the Beatles' iconic road-crossing album cover.

The notoriety of the Mackerel Fact is driven, in large part, by its pointlessness. It's not a fact that will help you navigate the Tube. The word "mackerel" in itself doesn't have anything obvious to do with the London Underground.

And as many others have pointed out (see, for instance, this blog post) there isn't even anything particularly special about the link between St John's Wood and "mackerel". St John's Wood is the only station whose name lacks all of the letters "a", "e", "l" and "r", so you could get away with replacing "mackerel" with "real" – but "real" is a far less amusing word.

The Mackerel Fact has given rise to the practice of "Tubewhacking", finding words whose letters overlap with every Tube station except one, and many such words exist. Twitter's Tube Mackerel Bot has been tweeting examples of these words since 2017, working its way through the dictionary.

With a little computer assistance, I found "mackerel"-equivalents for 94 of the London Underground's 270 stations. These are mapped below:
Mackerel Map
Mackerel Tube Map
Needless to say, there were many stations with a large number of qualifying Mackerel-matches. For example, Woodford is the only station with none of the letters of "language", or of "intellectual", or of "physician". For these cases, I just picked one of the possible options.

Some stations get a Mackerel-match with other Tube stations. For example, Ruislip is the only Tube station which has none of the letters of "Camden Town". But Camden Town isn't the only station with none of the letters of "Ruislip". There is only one pair of stations which both match with each other: Perivale is the only station with none of the letters of "St John's Wood", and St John's Wood is the only station with none of the letters of "Perivale". So perhaps there is something special about St John's Wood after all!

(In case you were wondering, the fourth item in Only Connect's sequence of Tube lines is "Bakerloo = 4". Each line is numbered according to the points value of the snooker ball with the same colour as that line.)

03 May 2019

Shared Words Addendum

In the last post we looked at a Tube map connecting 173 of the stations of the London Underground according to the words shared between their names. There were 97 stations left over (with 95 names between them, because there are two "Hammersmith"s and two "Paddington"s): what should we do with those?

The straightforward solution would be to arrange all these stations on a "leftovers" line, in alphabetical order. But we can try something more elaborate: what if we arranged the stations according to how similar their names are?

Two things we need. First we need a procedure for working out how similar two stations' names are. Second we need a procedure for generating a made-up network from these similarity ratings.

Evaluating similarity

We could just look at every pair of stations and score how similar they sound, but this would be fairly subjective, as well as very time-consuming (with 95 station names there are 4465 pairs of names to rate). So instead I used SeatGeek's FuzzyWuzzy library, which algorithmically works out how closely two strings (like two station names) match.

Each pair of names is assigned a score between 0% and 100%. For example: FuzzyWuzzy assigns "Northfields" and "Southfields" an 82% match; "Kennington" and "Kenton" are assigned a 75% match; and "Bank" and "Whitechapel" are assigned a 13% match.

A different procedure would likely give us different results, and ultimately change the arrangement of stations on our map. But since this is all for fun, we need not fuss about that too much.

Generating a network

Now we need to turn these 4456 percentages into a network. We can use the following method:
  1. Start with one station in our network
  2. Find the closest similarity between a station inside our network and a station outside
  3. Create a link between the two stations found in step (2)
  4. Repeat steps (2) and (3) until every station is part of the network
For example, let's start with Balham in the network. According to FuzzyWuzzy, the most similar station name to "Balham" is "Amersham" with a 57% match, so we join Balham to Amersham.

Now the closest match to "Balham" is "Archway" (42%) and the closest match to "Amersham" is "Chesham" (67%). Since the "Amersham"-"Chesham" percentage is higher than "Balham"-"Archway", we join Amersham to Chesham.

We keep going until our last link is added: "Victoria" matches poorly with every other station, but its best match is 42% with "Blackfriars" (I guess because of the shared "c...ria"), so that's where it goes.

This procedure for growing the network is called Prim's algorithm. An interesting property of the algorithm is that the network ends up the same no matter which station we choose to start with.

The final map

Then all we have to do is draw the network with a little Tube map flair, and we end up with this:

11 April 2019

Tube Map of Shared Words

How do you get from Chancery Lane to St Paul's using London Underground stations?

Easy: "Chancery Lane" shares a word with "Wood Lane", "Wood Lane" shares a word with "St John's Wood", and "St John's Wood" shares a word with "St Paul's". Probably not the route you expected!

This network of word-association connects a large proportion of the stations of the London Underground. To help navigate this network, I've put together the map below:
https://lh3.googleusercontent.com/eFVH9WOzCF51gTyyTqlZ9wcnN1hSevqz6eqZmuWBFJjTy8qSiWtW1jCbjkKpgNhdc-LE8_GMPNIDI-v1fwI85YOraEb2Y2BLmjhIz3x7AsEBIe7dC8aqRWk-nxfhzhT7jEXV5NevyNc=w4000
Tube Map of Shared Words
A few points of trivia about the map:
  • Certain colours are used for certain categories of words: for example, light and dark blue are used for directions. I tried to avoid two lines of the same colour being too close together.
  • Only full words get lines (so no parts of words like -gate, -ton or wood-) but I did group plurals ("Gardens", "Hills" and "Terminals") with their corresponding singulars.
  • As far as possible, stations are arranged alphabetically along each line (for example: North Acton, Clapham North, North Ealing, North Greenwich ...).
  • Only London Underground stations appear on the map: there's no Overground, Tram, DLR, TfL Rail or Air Line. There are 270 stations of the London Underground, but only 267 station names, since the names "Paddington", "Hammersmith" and "Edgware Road" correspond to two stations each.
  • 172 station names appear on the map. The remaining 95 station names don't share any words with any other station names. I have a plan for what to do with these stations – but that will be something for a future post.