Roguelikes have always made ingenious use of text. They’ve used it to represent a menagerie of monsters, terrain types, spell effects, and user interface elements. In recent years there’s been a revolution in text in the form of Unicode, which has dramatically widened the expressive palette available to that old warhorse, plain text. The most vivid part of this expansion came with the rise of those colorful high-byte characters known as emoji. Emoji Roguelike is an attempt to explore the potential of emoji in a classic roguelike. What unique monsters and mechanics can it support? What worlds can be built in it?
Besides the player character and other monsters (like 🐒, 🦍, 🐈, 🦛, 🐍, 🐋, 🐉, and 👮, for example) one of the key elements of roguelikes is, of course, the world. For a lot of roguelike designers world generation is their primary motivation.
Emoji has great support for landscape types. So I started exploring map generation using thresholded perlin noise to generate a grid of mountains (both snowcapped 🏔 and unsnowcapped ⛰), forests (🌳🌲), desert plains (🏜), seas (🌊), and beaches (🏖). You can see the results in the GIF above.
The next step will be to add buildings (🏛️, 🏘️, 🏨, and ⛪ for example), roads, cars, trains, etc.
One question this experiment raside for me is: are color backgrounds cheating? In that GIF above I used background colors to make it easier to see the type of each tile. Particularly when viewed small I think these colors go a long way to making this look like a landscape. But conceptually I’d like to lean on the Emoji as much as possible. And my concern is that the background colors distract from the specific personality of the emoji. It’s something I’m still mulling. But here’s what the map generator looks like with just the emoji:
I remember learning about Zero Width Joiner sequences a number of years back on twitter. Maybe through this Emojipedia thread? The idea is you can build “compound words” out of individual sub emojis by combining them with a special zero-width joiner character. For example, woman plus zwj plus medical symbol becomes female doctor: 👩 + ⚕️ = 👩⚕️.
This idea has a kind of alchemical power. The combinatorial, transformational logic of the world re-created in these symbols. It caught my imagination. The idea for an emoji roguelike started percolating.
Then, last weekend, I was watching Roguelike Celebration which brought me back to this idea. And a concrete mechanic ocurred to me: an emoji character creator. Roguelikes rarely have have character customization options. Part of this is the roguelike ethos of “playing the seed you’re dealt”. But also a big part of this is the constraint of ascii-based output (I guess you could offer players their choice of color for their @, but that’s fairly limited as far as personal expression in avatars goes).
The list of recommended Emoji ZWJ sequences includes a ton of different options for people’s faces: man, woman, a range of skin colors, hair colors, hair styles, and even facial hair colors (narrowmindedly available only for men). There’s even a gender-neutral option (called “person”) but it doesn’t seem to compose with any of the other customization options.
After discovering all of these combinations and permutations I built a super simple character creator interface that lets the player choose amongst these individual pieces and then constructs the final avatar by combining the individual pieces using zero width joiners. You can see the results in the GIF above.
Beyond a character creator I think zero width joiners have incredible potential. Imagine your character (👨🏾🦱) graduates from university (👨🏾🎓) then learns a profession like judge (👨🏾⚖️), farmer (👨🏾🌾), chef (👨🏾🍳), scientist (👨🏾🔬), astronaut (👨🏾🚀), or rock star (👨🏾🎤). More classic roguelike identities are also available like mage (🧙🏾♂️), vampire (🧛🏽♂️), merman (🧜🏾♂️), and elf (🧝🏾♂️). Or imagine you pickup a bicycle (🚴🏽♂️) or decide to run (🏃🏾♂️) or climb a mountain (🧗🏽♂️).
The options supported by emoji are enormous but not endless. I like the idea of trying to design within the eccentric constraints they offer. What kind of world has elves and vampires and chefs and scientists and rock stars and teachers? I don’t know the answer but I’m excited to find out.