Categories
Uncategorized

Things I Hate About Roguelikes – Part 2: Identification

This is a 4 part series on annoyances I have with roguelikes. Last time we covered Burden of Knowledge.

Today I want to talk about Identification systems. In many roguelikes, particularly the older ones, the items you encounter in the dungeon are not easily identified. While inexperienced adventurers can tell when they’ve picked up a scroll, the meaning of the cryptic symbols on it are not immediately obvious. Items can be identified in a variety of ways and once identified, any items of that type are known for the rest of the game. Using items that are unidentified can often save your bacon, but they can also be very dangerous.

Before I start complaining, a hypothetical example is in order.

Imagine you’re a new player who wants to try one of those rogue-likes everyone’s been talking so much about. You fire up Dungeon Crawl Stone Soup. After a few minutes, you’re near death.

Things look hopeless, so what do you do?

Fortunately, you’ve already scooped up 3 kinds of potions, 5 kinds of scrolls, and 2 pieces of jewelry. They’re all unidentified, so you don’t have the faintest clue what magical effects they could have.

Whatever. You click on the first item in your inventory. It turns out to be an invisibility potion. Good call.

Huh? Despite being invisible, it looks like the monsters are still attacking you. The potion also caused “magical contamination”, which negates the effect of invisibility. You die.

Why do we fall, Bruce? So we can learn to pick ourselves up…

So you roll a new character and quickly get into another bad situation. This time you encounter Grinder, a deadly early game “unique” monster. You decide to quaff a random potion again.

This time you get lucky! Your stack of three unidentified potions turns out to be Potions of Curing. These potions heal you, but for a tiny amount. Chugging all three isn’t enough to stop Grinder’s damage. You die.

You make one more character: an Octopode Assassin. Maybe sneaking past the the monsters might work better. Despite your best efforts to stay hidden, a pack of gnolls sees you on Floor 3.

You think you’ll try using scrolls this time instead of potions. Your first scroll makes a large bang. It’s a Scroll of Noise! More monsters will be coming soon, so you need to do something fast. One more scroll remains in your inventory. You read it. It’s a Scroll of Immolation. You die a fiery death.

Hopefully the numerous problems with identification are obvious from this example.

It’s yet another instance of Burden of Knowledge.

There are 28 kinds of potions in Nethack and 20 kinds in DCSS. Likewise, there are a large number of wands, scrolls, rings, weapons, etc. When you pick up your first potion and consider taking a single sip, you now have a HUGE learning problem ahead of you. In order to fully understand the consequences of this one action, you need to already understand several dozen items. Of course new players don’t go through the trouble of learning all that. They just treat the outcome as a total crapshoot. Maybe they roll the dice, but maybe they don’t…

It encourages hoarding

One of the hardest lessons to learn about roguelikes is that you must use your damn items. It’s very common for new players to die with full inventories. Part of this can be explained by item identification. When each unidentified item could be one of 20 things and half of those things are bad, the risk of using items appears too high.

It’s a common strategy to accumulate unidentified consumables until you have several of each kind. That way, you can identify a stack of items by wasting one and still have the rest identified and ready for future use. Players using this strategy may eventually stop hoarding items, but they ignore items and the item identification system completely until mid-game.

It causes learned helplessness

After watching many roguelike Let’s Plays, I’ve noticed that new players are very susceptible to learned helplessness. A couple bad (or even neutral) outcomes can convince a player to avoid certain systems altogether. When someone is new to a game, they’re constantly constructing mental models of all the systems in a game (most of which will be incorrect). They’re trying to deduce whether a particular strategy is good or bad on the fly. A few bad numbers from the RNG might give them the wrong impression.

And in the previous examples, it’s not even that the items were all bad. Curing was a great potion, but not very helpful in that situation. Invisibility didn’t help and the reasons are not going to be clear to a new player. Noise isn’t particularly bad, but it sure didn’t help. Immolation just sucked.

For a new player, there is no way to predict any of that is even a possibility. What’s worse is that, even after the outcome, most players (tending not to read the message log in detail) will barely understand what happened. They might swear off of using unidentified items completely, figuring that it’s more likely a newb trap than a useful strategy. Later, when they desperately need consumables to survive, they may not use them.

For experienced players, it’s a solved problem and a boring one at that

In Episode 30 of Roguelike Radio, guests discuss identification systems. I find myself nodding along with Keith Burgun:

For most people, these systems tend to come down to either it’s totally clear and it’s obvious what the item is or it’s completely random what the item is. Even if there is all this information that you could be using, it’s not clear enough… It’s very hard to make this system either not like completely solved or completely random.

Keith gives the example that in DCSS your biggest stack of potions is almost certainly a Potion of Curing or Potion of Heal Wounds (together these make up 38% of potions generated). Once you learn that, you’re rarely surprised. The vast majority of the scrolls and potions in DCSS are beneficial and the dangerous ones hardly pose a problem if dealt with correctly. Veteran players will know to find a quiet corner of the dungeon, rest to full HP, and ID items by wasting one of each type. As I’ll get into later, this zero-risk scenario is anathema to how a good ID system should work.

Admittedly, the system in Nethack is much more fascinating (for novices at least). Items can be far more powerful. You might come across a Scroll of Genocide that lets you wipe out an entire race of monsters or instead a Scroll of Punishment which weighs you down with a heavy ball and chain.

Are we having fun yet?

There’s also a bazillion ways to identify items. For example, dipping an Amethyst into a potion will turn it into a Potion of Fruit Juice if it was a Potion of Booze and thus identifies both kinds. Interesting idea, but the problem is it’s just another spoiler. Experienced players will know a bunch of these tricks, but those methods become both uninteresting and tedious. The worst offender is “price identification.” Since items have various prices and shopkeepers don’t have any problems with identification, you can often ID something by checking its sale price. I’ll let the Nethack wiki explain (emphasis mine):

The sell price will normally be half the “base price” of the item (one third the “base price” if you’re wearing a dunce cap, a level 14 or lower tourist, or wearing a shirt with no armor or cloak over it), but there is a 25% chance that you will only be offered 3/4 of the normal sell price (3/8 of the base price overall). You can get around this by repeatedly dropping an item and refusing to sell it, until you have been offered two different prices for it.

Finally, the topic of cursed equipment (forcing you to wield subpar gear  for extended periods) only needs a brief mention: it’s a hassle. After running out of ways to identify/uncurse items, you either avoid unknown gear altogether or you accept that some of your playthroughs will be dragged down by long periods of passive penalties. In Brogue, however, you can automatically identify items by wearing them for 1000 turns. Oh. Super.

Throwing the baby out with the Unholy Water

Many newer roguelikes remove identification completely including Cardinal Quest, Dungeons of Dredmor, IVAN, and DoomRL. Notably, TOME4 kept a bizarre vestige long after its identification system was made moot: players start with a Scrying Orb that can be activated an unlimited number of times to identify items.

Here’s the thing. Despite disliking the implementation of such systems, I actually like the idea of identification in theory.

More than anything else, having unidentified items makes the dungeon seem more mysterious, more magical. It emphasizes that the dungeon is dangerous, that you’re not running through a kiddie fun house. The dungeon isn’t meant for you. You’re no hero. You’re not storming in there at the beginning of the game with a +10 flaming sword. No, you’re a scared little thing, trying your darnedest to survive by scraping together whatever you find in the trash. That’s what roguelikes are all about to me.

A Broughlike, not a roguelike (so I have no complaints).

Of course, there’s also real gameplay benefits to identification. Getting down to your last hitpoint and then saving yourself with some unidentified item feels amazing. The bad outcomes are equally important though. Quaffing weird potions in the middle of bad situations can also result in a bunch of hilarious deaths. And that’s something truly special about the genre. Earlier we saw that standard ID systems discourage you from taking such risks and that’s really the thing I don’t like.

Rogue, That One

The most convincing defense of ID systems has come from John Harris. He pushed back strongest in that Roguelike Radio episode mentioned earlier. And he also wrote an excellent article on identification in Rogue. Harris explains the backstory behind having unidentified items in the first place. Like most things in early roguelikes, it comes straight from Dungeons & Dragons. That’s followed by a little story about “Rodney” that helps explain why the system in Rogue is so great. I encourage you to read the entire article if you have time.

That post had a huge influence on me when I was designing the ID system in Golden Krone Hotel. I was particularly inspired by Harris’s criteria for what makes an identification system good. I won’t list all 9 recommendations, though I did find most highly convincing. Here are the ones that resonated the most:

  • There must be bad items as well as good ones. Without bad items, the system loses a lot of its charm.
  • Bad items should be useful, at least in certain scenarios. Otherwise they’re just junk.
  • There should be a lot of items so that identification isn’t solved too early. The items generated in a single run should be a fraction of what the game offers.
  • The game must be hard enough that winning requires the player to use unidentified items in desperate situations.

That last point really stands out as the most crucial feature of a good ID system. Ideally, players would not want to waste their items. No quaff-IDing in a corner to safely reveal an entire inventory. It’s much better instead if a roguelike encourages players to use items in combat.

So how to achieve it? I’ll talk about what I did, but I’m not saying it’s the best solution or it solves all the problems with identification. All I’m saying is let’s try something different. There’s got to be some happy medium between throwing away identification completely and doing the same old thing we’ve been doing for 35 years.

After much ado, something surprisingly simple

As soon as I read Harris’s article, an idea popped into my head and I left a comment on the post saying as much:

While reading your article I had an idea: perhaps on the description of each unidentified potion you can see that is 1 out of 3 possibilities (and maybe that number changes depending on your character’s intelligence). This might give you more interesting decisions rather than feeling like you are rolling a 20 sided dice each time you quaff.

The way I implemented that idea is pretty straightforward. I decided to make all the consumables potions. Intelligence doesn’t factor into how many possibilities there are. Though I considered different possibility counts, 3 seems like the best option (offering enough complexity, but limiting how much information is presented). There’s 40 potions in the game, though you’ll only see 26 in any given run. People I told the idea to were initially worried that laying out 3 possibilities would make for a cumbersome interface, but putting the information in tooltips seems to works fine.

There are a few nuances to implementing the system. Though it’s not strictly required, I “bundle” potions in groups of 3. So in the above case, the bundle consists of Honey, Antidote, and Blink Potion. If I had all 3 of these potions and tried examining each, they would all yield identical descriptions.

To avoid price identification, I make all unidentified potions have the same super cheap price. That also has the benefit of encouraging players to buy and use more unidentified potions rather than pricier identified ones.

The most complex part is automatically deducing potion identities for the player. Some potions only have noticeable effects in certain cases. Let’s say I’m currently a vampire, I’m poisoned, and I quaff the above unidentified potion. It has no effect. Logically, we know it has to be Honey because Honey is the only potion of the 3 that would have no effect in the current situation (vampires aren’t sated by it). So the game would then identify the potion automatically.

If, however, I was not poisoned before quaffing, there would be no telling if it was Honey or Antidote. Neither would have an effect. That kind of potion would remain unidentified. Having potions that are not always guaranteed to be identified on the first use is one of Harris’s other recommendations. It adds a little depth to the system, so that players can think strategically about the best time to try identifying stuff.

Importantly, I’ve made sure all bad potions have utility if used properly. Conversely, many good potions can be bad if used at the wrong time. The above bundle is a good example. Aether is really powerful if fighting monsters that only do Physical damage, but could be game ending otherwise. Combustion is one of those classic “seems purely bad” potions, but can push enemies away from you in addition to damaging them. Nostrum is similar to Aether; you’ll have to decide if the healing is worth the subsequent vulnerability.

Live and quaff, friend

This system is only a tiny tweak to the status quo, but it changes everything. Knowing the worst thing that could happen upon using an item discourages hoarding and instead encourages you to use it in the middle of battle. I can’t say that I’ve fixed hoarding completely, as it’s truly one of the most hardwired behaviors you’ll see in new roguelike players.

The 3-possibilities system once and for all fixes the problem with Burden of Knowledge. There’s no need to consult a wiki if the game tells you what’s possible in a few short sentences. New players actually have a chance to make strategic decisions about what  they’ll use instead of it being a crapshoot every time. At the same time, experienced players don’t get to sidestep identification by using some obscure tricks. They still have to deal with it like everyone else.

If you know of any really interesting identification systems, let me know about them in the comments. Next time we’ll be talking about a staple of the roguelike genre, awful controls.

21 replies on “Things I Hate About Roguelikes – Part 2: Identification”

I have never enjoyed identifying things in any roguelike. (I’ve even legit beaten ADOM twice, but I just gritted my teeth and waited until I could dunk my identify scrolls [always the scroll I had the most of] in holy water, and my problems were over.)

Consequently, Tales of Maj’Eyal has been my main choice of roguelike for the last several years.

But! This blog post intrigued me enough that I just bought your game. I’ve never seen a system quite like this before.

[blockquote]Having potions that are not always guaranteed to be identified on the first use is one of Harris’s other recommendations. It adds a little depth to the system, so that players can think strategically about the best time to try identifying stuff.[/blockquote]

This is one to be careful with. It’s a decent idea in theory but can be bad in practice. DCSS has kind of danced around this idea a bit in its development. The danger is hitting the awkward spots where you want to use-ID stuff under specific circumstances in order to maximize the number of types of the item you can ID. A clever trick as you’re figuring it out; a tedious, rote part of the game for experienced players.

(The 1-of-3 setup probably means this isn’t a significant worry, mind, but felt worth mentioning anyway.)

The recommendation from the linked article that jumped out at me the most was that items are different in different contexts (“Does it matter much what order items are used in, or do item effects mean different things situationally?”), which you didn’t call out specifically. But it seems to have made its way into your effect design, based on these screenshots. I think it makes the decision of when to use an item much more complicated, which is good!

I largely agree with your frustrations with item identification, especially also coming from DCSS. For the 7DRL game I made this year (Dungeon Scoundrel) my idea was to remove formal identification completely, but not randomize the properties of items from game to game. That way item knowledge is moved from the character to the player. I wonder what you think about that idea?

Ack! Sorry for the late approval.

I do think having different usages in different contexts is hugely important. It was indeed a good example in Rogue. It adds a lot of depth, but you’ve got to be careful. if you add a hundred contexts for every time it’s going to be way too overwhelming.

I’ll check out Dungeon Scoundrel. In general, knowledge carrying over from run to run is one of the foundations of roguelikes IMHO.

Can potions in Golden Krone be thrown?

Cause when I looked at the second set of potion I instantly thought of throwing the potion at the enemy, because if the player has a way to cause elemental damage, the enemy either explodes or receives elemental vulnerability that can be exploited.

No, but I agree it’s a good idea! I just never implemented it because it would have made the control scheme a little more complicated. Maybe in the future…

I like the idea of offering several possibilities for an unidentified item. I don’t think I’ve played GKH since before you introduced that, so I should give it another go. Using an unidentified item should be a tactical decision, a calculated risk – and that requires the player to know what the possibilities are.

One possibility which I’ve seen semi-implemented in Halls of Mist is to have a set number of identifications you can perform, awarded as you gain levels or something along those lines. I think it would need to be combined with other tweaks to be worthwhile, but strictly rationing identification opportunities could present some slightly more interesting choices. I suppose you’d have to change how effective test-ID is in order to make the ID points worth bothering to use.

What I’m thinking here is that where a game has an actual method of ID (usually a scroll), you never know how many you’ll find. I’ve had DCSS runs where I’ve found virtually no ID scrolls, and others where I’ve been swimming in them. But if you know you always have, say, 3 IDs to use, it might feel like you have more control over the ID game.

“The game must be hard enough that winning requires the player to use unidentified items in desperate situations.”

I can’t express how strongly I disagree with this sentiment. Rogues tend to be about strategy and tactics. Using unknown items is risky and foolish… it’s the act of the desperate, not the tactician. Saying that you not only want to train players to engage in foolish behavior in a game, but actually REQUIRE that to win is a surefire way to get me to not play your game.

In your previous article you said “when you’re playing to win, not knowing the rules and not understanding the mechanics fucking sucks.” This is exactly what happens with unknown items. You said you’ve seen lots of LPs where players hoard items and die, because they didn’t know they had the means to survive. How do you think the player feels, knowing that they died solely because the game withheld vital information? And why? Purely artificial scarcity. You don’t get to know what this stuff is… because.

Imagine if James Bond was getting his equipment and Q said, “here’s a watch, a pen, a bottle of cologne, a money clip and a pair of shoes. I’m not going to tell you what any of that does. Oh, except two of them can kill you. Ta!” Bond wouldn’t know what they did, when to use them, and so would go without them, use them at the wrong time, or actually hurt or kill himself.

Imagine if simple armor and weapons didn’t tell you what AC they gave or damage dealt? “Hmmmm, my sword does flurgle damage, while the bow does grumpphar damage, and this leather armor gives shruppt protection while the magic robe offers qwerrrrtyz protection. What to use?” I have yet to see a game that hides armor/weapon values, so I don’t understand the fascination with hiding everything else.

If a game is balanced for characters to win battles through their abilities AND gear, then not using any gear makes battles all that much harder. Since we’re already newbs and barely know how to fight, forcing us to be even weaker in every battle will only mean we’ll be dying a lot more than we should. Dying over and over and over and over and over and over at low levels when we’re already weakest is a recipe for players to ragequit and move on to another game.

The ONLY reason players should die is because of THEIR decisions. Every death should be 100% players’ fault. Taking on a hydra with a wooden spoon is their fault. Forcing a player underwater and leaving them luck of the draw to find the water breathing potion in time is your fault. If I die because *I* did something stupid, I’ll be inclined to try again. If I die because the game “cheated”, by doing something I didn’t understand or otherwise withholding basic knowledge that could have saved me, then I’ll be inclined to not want to play again.

Players should die from choices, NEVER ignorance of how things work.

It sounds like you wouldn’t enjoy Golden Krone Hotel. That’s OK! As I said at the start of this series, it’s a big genre with lots of ideas and people are going to feel the exact opposite from me on some things.

Players should die from choices, NEVER ignorance of how things work.

Absolutely! But I appeared to have not explained myself at all here. I’m crusading against hiding how things work. In GKH, it tells you in game what 3 possibilities a potion can be and exactly how each of those 3 works. This is a huge leap in removing “ignorance of how things work” compared to other games, in which each unidentified item can be one of 20 possibilities and none are described in game.

Using unknown items is risky and foolish… it’s the act of the desperate, not the tactician.

Risk and randomness are the building blocks of roguelikes, at least for me personally. Roguelikes are filled with unknown outcomes. You engage with a monster: they could miss you, hit you, critical strike you, poison you (or not). Much like poker, almost every turn is filled with unknown outcomes and it works as a smart player can manage their risks over the long haul. A roguelike without any risk taking sounds very boring indeed.

And to be clear I’m not saying every run forces the player to have a 1/3 chance of instadeath. Heavens no. There are no guaranteed instakill items here and even the bad items have good usages in the right context.

A smart player might find a situation where all 3 possibilities are good (or none bad at least). They might weigh the possibility of wasting 1 potion that could help later for a 2/3 chance to help them now. Tactics isn’t about having 100% perfect information, again personally speaking.

I have yet to see a game that hides armor/weapon values, so I don’t understand the fascination with hiding everything else.

We are talking traditional roguelikes right? It’s in fact a very common feature to hide armor/weapon penalty/bonuses (plus cursed status). DCSS, Pixel Dungeon, and Brogue come to mind immediately, but there are others.

I disagree that’s its cruel to balance the game around using items. If the game is easily beatable without them, then what is the point even? As far as newbs go, that’s why I have an Easy mode.

It’s sounds like you want a spoiler heavy game with low randomness, low risks, and perfect information. It’s definitely not GKH, but I’m sure that game is out there.

Thanks for the comment.

Months late, but I’ll weigh in on this.

I think what eric is talking about with using unidentified items is that it makes for a Not Fun experience if the game forces you to use an item which has an unknown percentage chance of killing you (or similar). That takes control away from the player and makes it a crap shoot, which I consider Very Bad.

As I mentioned in my previous comment, I think the GKH system goes some way to addressing this by giving the player information about the possible outcomes. But in most games, being forced to use an unidentified item with no idea of the outcome would be horrendous.

As to the weapon point eric raised, I think that’s just tricky to explain. As I read it, Eric’s point is that there are no (or very few) games where the effects of a weapon are completely unknown. Yes, there are many where you don’t know what bonuses and elemental damage and whatever a particular, say, mace might have until you ID it, but you know what the basic functionality of a bog-standard mace is. You know it does 11-14 points of physical damage. There are few, if any games, that give you no information about what a basic mace does. It would make the player’s life needlessly frustrating, because they’d have no basis to decide which weapon to use. “Should I use this mace which does ‘some damage’ or this axe which does…’some damage’?”

(As an aside, Nethack seems to hide basic weapon/armour stats as far as I can tell – at least if you don’t use the wiki, as with everything else in that accursed shambles.)

If I’m reading eric’s remarks correctly then I broadly agree with him – forcing a player to toss a coin to see whether they live or die is poor design. This can work, though, if they have some degree of information about the possible results.

Oddly enough, considering how archaic some of its design feels, Angband has a not terrible system for identifying, sort of. As you carry equipment around you eventually passively partially identify it – you get to see whether it’s magic etc. But you don’t know exactly what the details are, and ‘magic’ can mean bad. Angband also has a very limited inventory capacity, which means you have to make a decision about whether it’s worth using a slot to carry an ID source around.

My own game, Caverns of Xaskazien II, largely eschews identification – every item/thing/monster/stat has a detailed tooltip describing exactly how it functions.

There are 2 exceptions to this, though: Potions and Scrolls. The way I handled it was to create 2 different skills (Alchemy and Runic Lore) that you can, if you want to invest the Skill Points, train in. The higher your training in these categories, the more Potions and Scrolls you can identify on sight. But the thing is, without those Skills, there are very few ways to identify potions or scrolls. Even using them won’t identify future versions of the same item. Quaffing a Potion of Heat Resistance will have its effect, but you still won’t be able to identify a subsequent potion of that type, unless you raise your Alchemy Skill.

There are a few other ways to identify them – certain spells/miracles or interacting with certain things, like Ancient Runes, can identify them. But these methods all come with cost/risk or are circumstantial. Oh, and Health Potions are always identified – the game would be too deadly without that. (Though even Health Potions might be Befouled – want to know for sure? Raise your Alchemy skill to Expert).

I love the concept of 3 possibilities for potions that you’ve come up with. Seems elegant and spot on.

My own identification system in Caverns of Xaskazien II is unique, though I’m not touting it as a great system here. And before bringing it up I should point out that I was unaware of the existence of other roguelikes for the first 15 years of Caverns’ development, and deliberately avoided other roguelikes for the subsequent 5. (That said, I’ve been very engaged with other roguelikes for the last several years). So I had no examples of other systems when I designed my own.

In Caverns everything is pre-identified *except* potions and scrolls. Health potions are always pre-identified (because you’re probably going to need them) but for all other potions and scrolls, you need to level up either Alchemy skill or Runic Lore skill, respectively. Uniquely, though, drinking, say, a Curative Potion once will not then identify all other Curative Potions going forward. Unless you level up those skills, all potions and scrolls will forever remain unidentified.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.