This gives words to a frustration that I've had with many roguelikes. I don't want to /drink/ -> /ladder/, I want to do ladder things with the ladder, which should be a very short list. Freedom does not great game design make (by default).
The problem with applying this to some roguelikes, such as Nethack, is that part of the fun is finding out what you can do. Getting a handy contextual menu when you find a sink, or an alter, or whatever makes the game easier and less confusing, but also takes away a wonderful aspect of it when you learn or hear about some new crazy aspect of it.
That's not to say it doesn't have a place in roguelikes, just that each game needs to carefully consider what it brings to the table, and also what it cuts out.
> takes away a wonderful aspect of it when you learn or hear about some new crazy aspect of it.
It might be useful to think about this in term of how many players it affects.
My opinion is that for each seasoned roguelike player who enjoys this "wonderful" aspect, there will be multiple roguelike newbies who will be discouraged by the unfriendly UX and just leave.
That encapsulates what happened in the transition from text parser (keyboard-driven) games to mouse-driven games: discoverability went up, complexity went down; the first generation of gamers lost interest and a second larger generation of gamers came into being.
I actually find the opposite to be true. I enjoyed not having a clear idea of what everything did when I was just starting out. Once I knew what I could do with most things it became annoying that I didn't have an easier interface because there wasn't potential in the complexity anymore
There's nothing saying that one should prefer wider audience to a smaller one. Ultimately, the quest of appealing to the lowest common denominator lowers a ceiling for possible enjoyment.
> My opinion is that for each seasoned roguelike player who enjoys this "wonderful" aspect, there will be multiple roguelike newbies who will be discouraged by the unfriendly UX
This is a strange viewpoint. This "wonderful" aspect of NetHack applies solely to newbies; seasoned players already know what they can do.
At first blush it might seem that simplifying the interface loses this element. But really as you allude to having "fun finding out what you can do" is just a design goal that can be accomplished even with a simpler interface.
For example crafting systems or other forms of modifiers. I combine water with my sticks and get wet sticks then use those to make a camp fire which makes it extra smokey. Which leads to more introducing more systemic interactions and the beauty of those is that systems that interact have great potential for emergent behavior.
Simplifying Nethack's interface may well make it a worse game but it's not the case that a simpler interface in another game implies losing out on the fun of discovery.
> Simplifying Nethack's interface may well make it a worse game but it's not the case that a simpler interface in another game implies losing out on the fun of discovery.
Sure. That's what I was trying to say in the second paragraph. It's not a matter one being better than the other in general, or even for roguelikes. It's that there are things to consider about how you interact with the system in every case, so it deserves some attention.
For Nethack, I think the game is better for the interface not giving you clues what you can and cannot do. For other games, that likely isn't the case (very few support both the breadth of unique actions and make discovering those part of the draw of the game).
I think you can have both. You could start out not knowing what you can do to any noun and through attempting verbs->noun you can build a library of options. Once you know you can apply a verb to a noun that "unlocks" the noun->verb menu.
That would retain the "discovery" aspect of the game while also providing the convenience. You could even spin it into a game mechanic with "confusion" (randomizing your noun->verb options) and "amnesia" (erasing your noun->verb options).
If we weren’t talking about a game, I would agree with you. It’s frustrating not knowing what you can do with what. But I like NetHack‘s verb-first approach. If you had a noun-first approach then it would basically list every single action for every object anyway, because it makes sense. Yes, you can eat a cream pie or wield it as a weapon or throw it at an enemy. You can use a towel to wipe your face or wear it as a blindfold or wield it as a weapon.
The big drawback of noun-first is that it makes the player feel less creative because there’s no discovery: every object lists what it can do on the label. That’s no fun!
I like engraving with my wands and dipping weapons in holy water! I like polymorphing into a metallivore and eating metal rings to gain their properties! I like dipping one potion into another to create weird effects via alchemy!
I've been working on a roguelike on and off for (checks watch) about twenty years now.
When I started I was an avid Angband player. I had just gotten my first laptop computer and was frustrated by how difficult it was to play using the limited keyboard without a full numeric keypad. The main problem is that the default Angband keyset uses up almost all of the letters for all of the different verbs: quaff, read, cast, pray, wave, aim, throw, etc. (There is an alternate keyset based on Vi, but I could never internalize the "arrow keys".)
It was especially frustrating because, like Amit notes here, most verbs only apply to a few items. You can't read a potion or quaff a scroll, so allocating two separate keys to those actions is redundant. So in a fit of pique, I decided I would make my own roguelike with a single "use" command that could use all kinds of items.
I did learn something interesting about usability in the process. One nice feature of Angband's keyset is that it's harder to accidentally use the wrong item. If you intend to quaff a potion but accidentally pick an inventory slot containing a scroll, nothing happens. The specific verb commands act like a sort of redundancy check for the operation. But, overall, I think having a single use command is better.
This is orthogonal to whether the verb or noun comes first. I've just reduces the number of verbs by collapsing many of them into a single multi-purpose "use". I've gone through several iterations of the UI for the game and I'm still on the fence as to whether it makes more sense to select the item or the operation first. It's a little tricky in a roguelike because you usually need to select the item from something: either your inventory, equipment, or on the ground.
So if you want to drink a potion from your backpack, it could be any of:
- Use -> inventory -> potion
- Inventory -> use -> potion
- Inventory -> potion -> use
The first option is good most of the time because the player does know what action they want to perform. But the other two are good because they give the UI a chance to show the player the inventory before they make a selection. The first option feels like a stab in the dark where if you don't know what's in your inventory, you don't know if you have anything to use in the first place.
Of course, if the UI always passively shows the inventory, that problem goes away. So the visual design affects the order that operations might make the most sense. It's a hard problem.
> You can't read a potion or quaff a scroll, so allocating two separate keys to those actions is redundant.
I'm a longtime NetHack player who switched to Crawl, and I've been thinking a lot about the differences between the two games.
One neat NetHack feature is that objects often do have unexpected uses (as well as uses in combination with one another), and at least in a few cases you can make these uses by applying an unusual action to an object. The first example that comes to mind is that when polymorphed into a different monster, you may be able to eat things that your human form couldn't, sometimes with especially desirable (or undesirable) effects. NetHack players probably appreciate on the whole that the game doesn't actively suggest this possibility to them and that they have to think of it or try it to see what will happen.
Another example is that there are a couple of things that can be used as weapons to good effect that are not obviously weapons, so the ability to wield arbitrary objects is important there.
On the other hand, NetHack uses these possibilities as a source of humor and challenge to the player (partly to create a slightly more open-world feeling, typified by the saying that "the dev team thinks of everything", and partly to increase the amount of knowledge that a player can master and bring to bear on the game). Crawl has a very different philosophy and the actions available to the player are, compared to NetHack, more straightforward and obvious in their implications.
I think it is a matter of critical mass. Crawl had so few instances of "you need to be spoiled or try random stuff to get this" that pressure got them removed (although always controversial). Nethack lives and breathes it, and it has so many that you are likely to feel the benefits of this whimsy
> NetHack players probably appreciate on the whole that the game doesn't actively suggest this possibility to them and that they have to think of it or try it to see what will happen.
I did try in explore mode to see whether the game prompts you with unusually-edible items when you're polymorphed, and it actually does, so it's a slightly less hidden feature than I was thinking.
Yes, I love the idea of being able to apply multiple verbs to the same item. In my game, you can use, drop, and throw things.
The problem with Angband is that the verbs are mostly disjoint. The only thing you can quaff is a potion, the only thing you can read is a scroll.
Part of my motivation for collapsing all of those "use" verbs to a single use command is because it frees up opportunities to add new operations that can be applied to a range of item types. It frees up keyboard space.
> This is orthogonal to whether the verb or noun comes first. I've just reduces the number of verbs by collapsing many of them into a single multi-purpose "use".
Right! When reading the article I had a bit of a feeling of hesitancy: the ubiquity and general-purpose-ness of functions in FP is the whole point!
Creating a single "use" is like using polymorphism to write a generic function, in a sense. You might imagine `use :: a -> Action` or something. As opposed to the article's take, which calls for `readScroll :: Scroll -> Action` and `openDoor :: Door -> Action`, etc.
> The main problem is that the default Angband keyset uses up almost all of the letters for all of the different verbs: quaff, read, cast, pray, wave, aim, throw, etc. (There is an alternate keyset based on Vi, but I could never internalize the "arrow keys".)
I don't understand how most of the keys being occupied can be the "main problem", if you're not able to use those keys directionally anyway.
Without a separate numeric keypad, you need to find some keys to map to the eight cardinal directions. Diagonal movement is key to the game, so you can't just use the actual arrow keys. So, ideally, I wanted a 3x3 rough square of keys on the main keyboard area that I could allocate for movement.
In Angband, most of the letters and punctuation on the main keyboard area are already allocated. You can rebind them, but since the different items need different commands, I don't think that there was any way to collapse multiple verbs onto the same key.
No, but the existence of the roguelike keyset demonstrates that there is space on the keyboard for every command. Why do you need to collapse multiple verbs onto the same key?
IMO that's mostly historical due to the input devices available.
Terminal games were played with a keyboard, so feature creep resulted in every damn key on keyboard being used.
Most games slowly evolved away from that when joysticks and mouses became the dominant input devices (although I remember flight simulators still using most of the keyboard) but there were lots of games were people were still using the keyboard because it was faster (like FPS games).
Nowadays, with touch screens, using a keyboard is no sensible option and you naturally land a "first select the object then what you want to do with it".
But with roguelikes, you still often have a Verb-Object interface with keyboard shortcuts unless you play roguelikes that were designed from the start with a mobile interface in mind.
IIRC, this was one of the breakthroughs of the XEROX PARC virtual desktop research: the realization of how universal the pattern "select context, then use menus or keyboard accelerators to select verbs applicable to that context" could be.
On the other hand, you really start appreciating 'D'rink, 'W'ear, 'E'at once you make it a bit further (progress in a dungeon) and get some experience with the game. It just saves time.
With a system based on 'U'se, you're trading using fewer keyboard keys for more keypresses. You need to prefix most of actions with 'U'. Even Crawl lets you carry a-z items. When the list of items grows big, you either lose time scrolling through it to find a potion, or need to press and extra key to filter potions. In Crawl, when you press 'e', it only shows you edible items.
And for people so keen to compare with natural languages, we don't say use a sandwich, use flour or use paperclip. Natural languages could get away with just having few verbs, but you would have to make communication longer to clarify. Incidentally this is how English looks for a non-native english speaker. While words may be shorter on average, you need to string more of them together to get the same meaning. An extreme case of this is Toki Pona, which by design has 120 words for you to combine. An intentionally simple language based on belief simplicity leads to happiness.
The bottom line: over-reliance on few keys means the interface is optimized for low learning curve, not for long term use. Think Nano vs Vim.
The bottom line 2: the article sounds like it's written by a new convert. Noun first has merits and areas where it's better, but it's not something that cures cancer.
I think you're confusing game design with learning curve.
Computer games have evolved towards minimal learning curve, because it sells more games. Back when computers were mostly used by nerds, those people weren't bothered by having to read long manuals. The average computer user today IS bothered.
This is in stark contrast with board games. Board gamers must fully know rules to know how to play. When you play a board game, you have a higher initial learning curve, but once you do know, you immediately perform actions you want to make. In a typical modern computer game, you'd have to go through a sequence of menus.
BTW this is the definition of a game I subscribe to. A game is a set of rules. By this definition, most Call of Duty games are the same game.