UI Streamlining

  1. Remove the ijkn movement keys. The playerbase that would notice is small, and the playerbase that actually uses them regularly is negligible. As for diagonal movement w/o a numpad, a player can use the number keys or shift+arrows.
  2. Unify the Eat, Wear, Wield and Activate keys into one common “Use” key. Using clothes would put them on, using food eats the item, and using tools activates them. Using any item that cannot be worn and is not too heavy/large to be picked up wields the item and then Uses it in the same keystroke. Using a wearable item that has another function puts the item on, but does not Use it in the same keystroke, for conveniance.

For example:
A survivor wants to put on a game watch, play it, and then butcher it with a knife.
So, the survivor presses Use and selects the game watch. This puts the watch on. Then, the survivor presses use again and selects the game watch, now on their wrist. This causes the survivor to play a game of robotfindskitten. After this, the survivor presses use, selects the knife, selects Butcher an Item from the menu, and then selects the watch. This makes the survivor wield the knife and then butcher the watch.

I like the idea of 2, but many items have multiple uses including wield and wear. It would have to be most ‘common’ use, and then would still need a secondary use key, but this would mess with memorized key bindings a lot since it could end up being a different key combination to do the same action with 2 different items.

Probably only mod level integration practical

1 Like

With the system I outlined, an item can be either wielded, worn, or edible, and activate-able or not. Edible items would not be activate-able. For things like the internal furnace CBM, the player can simply turn off the CBM when he doesn’t want to burn the cuckoo clock he’s trying to wind, and who makes edible pants, or wields socks as weapons?

As for wearable weapons, which ones are these? if you mean bows you can put on your back, wouldn’t it make more sense for the player to make a strap out of rags and fasten the bow to their body that way, anyways?

Such a bold statement needs some evidence. I’m all for making the cursor keys configurable, but simply switching the default is a non-starter.

This could be looked into, but I strongly suspect that there will be conflicts that prevent full unification. For example the wearable bow (or rifle with a sling) example, where the item is wearable, but the primary use is wielding.

Nope, in a large number of examples, the weapon is worn rather than being attached to an already-worn article. The UI does not drive how items work, which seems to be the gist of your idea.

I’ll admit, I had no evidence for the claim. However, is it not abundantly clear that those keys are not only redundant in every practical case, but also mostly unused given that none of the common methods for controlling movement in computer games uses that set of keys?

Why not? You can’t just synthesize rules to use as excuses. I think that changing a few edge cases to conform to the better system would be a net benefit. How many edge cases can there be? And how many of them are unecessary abstractions?

If you really can’t change a few items around, there are a variety of ways to keep their functionality without compromising the system. How about a “Wear bow Y/N” menu? Or maybe Using a wielded bow makes the character wear it. Of course, the more elegant solution would be to modify the edge-case items.

@NEANDERTHAL you were shotdown with very valid reasons in the needful things thread. Did you really have to create an entire new thread to repeate the same ideas that the playerbase responded negatively to?

Also i use the ijkn keys on my laptop that doesn’t have a numberpad.

1 Like

No, I didn’t have to. But I thought I would make a topic, since it’s not a very simple suggestion. I don’t feel like having a meta-argument about my motivations for making this topic, as they are irrelevant. In this topic, we can focus and create a better design for a piece of the UI.
Also, one guy != the playerbase

There are not “few edge cases”, there is a lot of cases, and often highly useful ones. All sort of tool-weapons, wearable weapons, guns with addon slots, specialist item carriers like grenade pouches, blades, wearable electronic devices, ponchos, tools with multiple different uses, and that’s just from top of my head.

Mandatory Y/N menus popping up are more tedious than just knowing whether to activate, wield or wear and press appropriate key/select the right option.

As for ijkn, it does indeed seem like a feature for those without numpads.

I appreciate your choice to move the thought to a separate thread, and, it seems, flesh it out a little more.

I feel like Marduk’s comment about the large number of cases where objects need the multiple commands is pretty accurate. Several of my favorite objects are worn, activated and thrown.

What about a (u)se/(U)se command? Lower-case performs the default action, capital-U opens a menu of all the ways in which an object can be used/activated/worn/wielded?

This would still be a fairly major change in the programming, as you would have to change the item objects to include a list of things that can be done with the item and indicate a default action.

There’s also the edge case of when someone prefers to use an item for an aspect that is not defined in the code as its default usage.

As for ijkn, I would actually like to see a full movement range that doesn’t require an extended keyboard, so I can play on my laptop.

I’m all for a discussion about talking about how to streamline the UI, but I ultimately think that most coders don’t find UI coding very sexy, and therefore it’s unlikely to happen. Personally, I love talking about UI design.

Alright, you’ve convinced me. At the point where the UI would cooperate with the items, it’ll be just as complicated to use and less intuitive. A unified use key with a real purpose would require too much of a redesign to be practical.

Yeah, I think it boils down to, it’s really late in the development to consider that kind of fundamental change to the UI. Though I suppose you could add an additional Use command which merges the existing ones…

What else about the UI seems fugly to you? Personally, I’d like to see the “repeat craft” key expanded to repeat whatever your last action was.

I feel like there’s too many ways to do the same thing. For each of the item interactions (Eat, wield, unload, take off, activate, etc) you can both press the button and selecte the item, or select the item and press the button. For some interactions you can even press the button and do it to the wielded item.

Also, the game does not represent its speed/time system very intuitively. “SPD 98 136” tells you nothing about the system even if you know SPD=speed. I propose a display where the game shows you the remaining speedpoints and maybe even has a key to display a breakdown, like morale. So for example, the game would display “SPD 20/98” and pressing S or something would display a list like
Speed: 98
Remainder from last turn: -38
Whacked zombie: -40
Remaining speedpoints: 20

As for the repeat craft button, likely the reason it isnt implemented is because a lot of the time youre not just repeating the same comman, youre repeating a set of commands, maybe witg different ovjects each time. Say, washing a pile of filthy clothes. How does the game know which clothes to wash each time you repeat? Wash the same shirt over and over? Wash each item on a tile? Wash all shirts? Who knows. But, i guess it would see limited use as a very simple “repeat last 1 action EXACTLY” function.

Same here. I can swap out to a numpad, but I lose my y, i, o, and m keys that I use all the time.
Plus the HJKL or “vi” keys are a staple of roguelikes already, used in rogue, nethack, and countless other games in the genre. It’s the roguelike WASD.

Personally I’d rather see UI work go into making the menus unified a bit more, the Crafting/Construction/AdvInv/Debug menus still feel quite different from each other in how they work.

I feel like there’s too many ways to do the same thing. For each of the item interactions (Eat, wield, unload, take off, activate, etc) you can both press the button and selecte the item, or select the item and press the button. For some interactions you can even press the button and do it to the wielded item.

That strikes me as a feature, not a bug. I prefer systems where there are many different ways to do the exact same thing, so that it’s easier to flow to the thing that I want to do, rather than having to recall the one specific way that one guy thought of doing things. The classic example being 1990s-era Apple OS vs today. Back then, there were dozens of ways to do nearly everything, and the platform was considered THE choice if you were doing creative work. Today, they’ve given up that market in favor of becoming the modern day AOL, and the narrowness of their UI is a part of that.

Your comments about SPD, though, I think are spot on. The mechanics need to be hidden from the player and converted into something more intelligble. Like seconds and minutes, maybe? And the suggestion to output time increments into the output window should be a really easy fix compared to a lot of the pie-in-the-sky ideas we’re talking abotu.

Also, it really bugs me that I can accidentally tell my character to do things for several hours and the next chance for a keystroke I get, my character is now starving, dehydrated, and dead tired.

I’m 90% sure each turn in CDDA is 3 seconds long, and your speedpoints determine how much you can do in your 3 seconds. Like a turn-based strategy game.

To clarify: When I press . 6 in-game seconds pass. Therefore I assume that’s three seconds for you and three seconds for the monsters.

There are two good solutions to this: A) add indications of how long each action will take to all things, or B) standardize the amount of time many actions will take. I feel the game should hybridize between the two. Actually, I think it already does in most places.

1 Like

Out of curiosity, are you a newish player (<1 year) or a veteran player (>1 year, can survive 3 years in game with base stats)? A lot of your reasoning for streamlining seems to stem from inexperience with the UI rather than a logically easier way of doing things, and I say that as somebody who’s been playing CDDA since 0.B and can recite every default keybind in dwarf fortress (both modes) with out a cheat sheet (but I have almost 9 years of DF experience). Both games are touted by the novice as having clunky UIs bordering on an arcane language while the veteran doesn’t even notice the UI after a while because of rote memorization and experience. I’m just wondering if yours is a case of a new player frustrated with some of the seemingly obtuse steps, or a veteran who sees that the system is genuinely flawed and needs improvement and this is your take on the idea.

I dunno about the OP, but I discovered the game less than three months ago.

It’s a little bit of both. I’ve been playing on and off since 2015. However, my motivation for my first idea was not that i was frustrated with the UI, but necause I thought the many ways to dl things was a nit excessive. As for the time suggestion, i distinctly remember how difficult it was to wral my head around the time system and learn how to use it effectively with the information the ui gave me.

You bring up another good point, though. The UI is not exactly intuitive. A great UI should be navigatable with no knowledge about it beforehand. And please, we should be doing everything in our power to keep our UI from necoming like DF’s.

Made an account to correct a misconception. If you accidentally start a 15 hour batch craft, hit “5”, it will bring up a prompt to stop. The “-” repeat key should resume the work later, provided you don’t make anything else in between. Not going to guarantee that though.