News:

Simutrans Chat Room
Where cool people of Simutrans can meet up.

Hidden modifiers cannot be learned by players

Started by Spike, January 27, 2012, 05:27:56 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Spike

Some actions got hidden modifiers, like pressing ctrl while triggering the action, to modify their outcome. Maybe this was also done with alt and shift ... I don't know.

And the bad thing is - I have no easy way to learn or check this.

IMO such hidden modifiers are bad UI design, because players get no information in the game (but the help texts) that they exist, and they cannot easy explore them like pressing buttons "to see what happens". The modifiers are just too invisible.

I suggest to think about better solutions. I had avoided such modifiers on purpose, because I was told this is quite bad UI design. The users should be told/must see what choices they have, if there are choices. I know TTDPatch has lots of them, doesn't make them better, though.

Ters

Unfortunately, most mice have a very limited set of buttons, and in the map, one of them is always used for panning around (though it has some hidden uses elsewhere). Some aren't fully aware that there are two buttons at all, so they need to overcome that obstacle just to pan. Maybe Simutrans even needs a pan tool.

Since pretty much every GUI I have ever come across make use of modifier keys, it must be hard to come up with a better alternative. Context menus could solve some of it, but advanced players don't want to go through context menus, they want instant action. I also can't imagine context menus working with dragging, when how something should be shown during the drag depends on the action variant.

Then there is the question of how problematic this really is. I can't think of any modified actions that are really necessary to play the game, though ctrl+lay track and ctrl+inspect are very useful indeed.

AP

Quote from: Ters on January 27, 2012, 07:34:59 PMthough ctrl+lay track and ctrl+inspect are very useful indeed.
*runs off to find out what they do*

Spike

Quote from: Ters on January 27, 2012, 07:34:59 PM
Unfortunately, most mice have a very limited set of buttons, and in the map, one of them is always used for panning around (though it has some hidden uses elsewhere). Some aren't fully aware that there are two buttons at all, so they need to overcome that obstacle just to pan. Maybe Simutrans even needs a pan tool.

[...]

Then there is the question of how problematic this really is. I can't think of any modified actions that are really necessary to play the game, though ctrl+lay track and ctrl+inspect are very useful indeed.

The problem is that I can't figure out which of such function exist. So I assume more, particularly new players, will face the same problem. Till now I also didn't know that the right mouse button has hidden functions, too. Are you sure you know all the modifiers and modifiable functions? How would you try to find and learn them in the current game?

I suggest to have separate tools with their own icons. A tool for the normal function, and a tool for the modified function. This way a menu can show all functions to the player, and tool tips can explain them. It is _visible_ that these functions exist. I think this is important for people trying to learn a new game (or any program).

Fabio

Very useful and very hidden is the ctrl click on signal buttons for changing the drag auto spacing. I would add a whole new class of menu buttons: large one button and half, they feature on their right two vertically stacked buttons with a + and a -
Pressing them you increase or decrease the value (written in yellow). It would be also extremely useful for layered underground view button.

For ctrl + tool I would firstly hint the modified behaviour in the tool tooltip e.g. "Autobahn 1200.00¢ (12.00¢) | CTRL to lay it straight | SHIFT to override" (or a message customizable,as a non modal popup) then add to the cursor a kind of badge hinting the modified behaviour when holding the modifier.

prissi

So go ahead and edit the translator strings.

Same for the help files. The signal spacing with CONTRL is actually mentioned in them. (Rant: But aparently nobody bother with the english helpfiles, as they are never updated much.) It boils down, that somebody must update stuff on translator. Some native speaker. For some languages like japanese there are many active player that do that. English is not much updtaed at all, even though it has the longest list of translators.

Most of the contrl+Klick feature were not needed for game play. You can place signals, lay track or build stations without. There is no control+Klick feature, that is essential to the game (at least that was our guidance, when this was added first.)

isidoro

It is fun to me all this discussion about good and bad UI design.  Who decides that?
It was even fun to me when I first saw some posts by prissi when I joined the forum telling this is good UI, this is bad UI...  I didn't understand then, and I don't understand now either.

I love modifiers, shortcuts, etc.  I learn them, and I use them.  They save a lot of time.

I hate the maximizing button on windows.  People love it.  I hate them so much that I have configured my window manager to erase all of them...  I imagine a gang of engineers with big brains chatting:
A: "Oh! Let's put a button on windows to make them occupy the full screen..."
B: "Yes, yes, very good idea!"
C: "They will love it...  Such a good UI design..."

I hate Macs and their marvelous UI (I get lost at the very first moment I use them), not to mention the hard time I had once to find the on/off switch in one of them among so much "design"  :-[ ...  The worst thing is that I, a supposed Computer Science expert, was giving a speech in front of an audience at that time...  :-[   I had to please ask someone in the audience to help me switch on the computer!  :-[ :-[ :-[

I hate the new MS-Words, Explorers, etc. designs with hard to find menu bars (as if they were ashamed of having them)...

And I don't want to speak about all those i-stuffs with good-for-nothing-serious, full-of-bacteria touching screens either... Sigh...

Am I an alien?
___________
P.S.1: for those who are not, may be a change in the cursor icon when hitting a modifier could give a clue...

P.S.2: my favorite text editor is vi, btw.

Fabio

A ctrl function not doable in any other way, and important for the gameplay is ctrl + tunnel for tunnel entrances, without it subway networks are almost impossible.

Another "hidden" feature is lowering h raising tunnel. there is no way to guess you should use slope tools underground.

Dwachs

Any constructive suggestion on how to hint to invisible modifiers is highly appreciated for the following list:

- signal spacing configuration
- build full tunnel vs only tunnel entry
- build straight track
- station extension building placement (ctrl+click on a station extension building with more than one available rotation)
- underground slopes

Btw, there is no hidden shift+track laying functionality ...
Parsley, sage, rosemary, and maggikraut.

Ters

Quote from: Hajo on January 27, 2012, 10:13:49 PM
Are you sure you know all the modifiers and modifiable functions?

No, but I'm used to that. I have that problem with other programs I use, too. One of them is a commercial program, not a hobby project like I have the impression that Simutrans is.

Quote from: Hajo on January 27, 2012, 10:13:49 PM
How would you try to find and learn them in the current game?

Read this forum where players share their knowledge. As for the commercial program I mentioned, it presents its myriad of key combinations one at a time through a "Did you know?" screen at startup. Not sure if that's a good idea. I find myself turning such things off rather quickly.

Fabio

Quote from: Dwachs on January 28, 2012, 09:15:56 AM
- signal spacing configuration
...
- station extension building placement (ctrl+click on a station extension building with more than one available rotation)
Open popup automatically (but non focused) when selecting signal tool? Same for rotation (although this dialog is a bit larger)?
This could be by default, in display options you can chose to open them with CTRL+click only.
I would really like it this way, and advanced players could anyway switch back to the old behaviour.
Alternatively (or additionally) a standard icon could be painted on the button (like "pax" or "freight" for stations) either in the paksets, either automatically, meaning that CTRL+clicking on the button opens a tool settings dialog. But then you should explain the new players the meaning of the icon...


Quote from: Dwachs on January 28, 2012, 09:15:56 AM
- build full tunnel vs only tunnel entry
- build straight track
...
Btw, there is no hidden shift+track laying functionality ...
Selecting the tool, an unfocused message popup appears listing all the possibilities. When you select another tool, it closes. Configurable via Message Center (e.g. none, scroll, etc...). Pretty much like vehicle stuck, station crowded or new year. Advanced players will disable it and be done with it.
Btw, shift+track downgrades the track, normal track laying doesn't.


Quote from: Dwachs on January 28, 2012, 09:15:56 AM
- underground slopes
This isn't actually a modifier but it's a very well hidden feature. First, I would separate the two tools (slope from underground slope).
When selecting underground view, slopemenu disappears, underground menu appears in its place (like line mgmt/map editor when shitching to Public service). Underground menu only contains these new tools (plus in future, any other underground-only tool which might appear).
In split mode, both menus are visible.

Combuijs

QuoteBtw, there is no hidden shift+track laying functionality ...

That's a pity, what shall we use it for?  ;D
Bob Marley: No woman, no cry

Programmer: No user, no bugs



Combuijs

QuoteSome actions got hidden modifiers, like pressing ctrl while triggering the action, to modify their outcome. Maybe this was also done with alt and shift ... I don't know.

And the bad thing is - I have no easy way to learn or check this.

IMO such hidden modifiers are bad UI design, because players get no information in the game (but the help texts) that they exist, and they cannot easy explore them like pressing buttons "to see what happens". The modifiers are just too invisible.

I'm a professional software developer myself and I have two remarks about this:

1) Get five users to evaluate a user-interface and you will encounter five different and contradictive remarks. I've seen that too often. And when you give them five options to customize the user-interface they either don't understand the options or want a sixth option. In the end it becomes a testing nightmare, the program destabilizes and the users don't like what they get.

2) If users like the functionality of a program (for Simutrans: like the game) they are prepared to learn even a badly designed user-interface. I am always amazed what users can endure in such cases. They like to explore and discover hidden gems in the program.

Basically, I think the importance of user-interface design is overrated, what a program does is far more important. Having said that, it is never an excuse to not think about making your users life easier. Just don't break the program for it and don't have the illusion that all users will like it.

I agree that it is better not to hide the modifiers, but on the other hand don't frustrate actions that don't use a modifier with extra interactions to reveal the modifier. In face there is only the Ctrl-modifier and basically it extends standard button-fuctionality. Once you have discoved one of them, you will try and find the others.

Simutrans has never been an easy game to play, and hopefully it will never be. It's not a game you play for a short while and then shelf it to never user it again. Part of the experience is finding out how non-essential things work.
Bob Marley: No woman, no cry

Programmer: No user, no bugs



Spike

#13
Quote from: Combuijs on January 28, 2012, 11:42:00 AM
Simutrans has never been an easy game to play, and hopefully it will never be. It's not a game you play for a short while and then shelf it to never user it again. Part of the experience is finding out how non-essential things work.

I very much hope that it will easy to play as in easy to use.

Take the following with a grain of salt, but it really is my view on the UI and how games should be:

I do not think that exploring a mysterious UI is what a game should be about. And if there are other programs which have a bad UI with tons of hidden functions, I do not think that we should repeat those mistakes. Mistakes don't get better by repeating them.


Edit: Some more thoughts on the hidden modifiers - it's not that _I_ personally want this change, but it is a guideline from UI design books which I agree with.

http://forum.simutrans.com/index.php?topic=9069.msg84806#msg84806

omikron

If the hidden options are all revealed and the UI is made self-evident, then much of what is happening in this forum won't be happening anymore. I have not written anything myself before, but the forum has been hugely helpful for me when trying to understand the game and its hidden modifiers.

IMHO, the special features should not be too obvious, as that would obscure easy gameplay, which is what you need to get started with simutrans. Once you've played it for a couple of weeks/months/years, you want to explore the additional options and look into the forum for help, where you interact and there is always help to be had. I agree to most of your suggestions, Hajo, but this one is not necessarily a good idea.

omikron

railworker

Quote from: Ters on January 27, 2012, 07:34:59 PM
...though ctrl+lay track and ctrl+inspect are very useful indeed.
I use crtl+lay track a lot to build straight tracks for example but for me ctrl+inspect does exactly the same as just inspect: It tells me what object is on the tile what its properties are. (Tested on simutrans 111.0, pak64.german).

Ters

Quote from: railworker on January 28, 2012, 02:18:18 PM
I use crtl+lay track a lot to build straight tracks for example but for me ctrl+inspect does exactly the same as just inspect: It tells me what object is on the tile what its properties are. (Tested on simutrans 111.0, pak64.german).

No, Ctrl+Inspect does the exact opposite of regular Inspect, which may or may not be exactly the same. Try it out on tiles occupied by two or more objects, like a stop with a waiting convoy.

railworker

ahhhh thanks now I see. ctrl+inspect opens the convoy window first, then the station.

jamespetts

I agree with Fabio about the idea of using tooltips - this is perhaps the easiest way to solve this issue. Can somebody produce a definitive list of actions that need tooltips for CTRL+ presses?
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Spike

Quote from: omikron on January 28, 2012, 12:40:16 PM
IMHO, the special features should not be too obvious, as that would obscure easy gameplay, which is what you need to get started with simutrans. Once you've played it for a couple of weeks/months/years, you want to explore the additional options and look into the forum for help, where you interact and there is always help to be had. I agree to most of your suggestions, Hajo, but this one is not necessarily a good idea.

Ok, there are many voices against my suggested change, so I'll accept that people like the current state.

An_dz

Even if adding this in the tooltips, it might not be that good looking.

Simutrans have a not so amazing UI, but it's not a evil monster. If we could remake the UI this would work better, but I'm sure the coders will deserve my death. But firstly we should find a way to make those options easy. My option would make a UI like SimCity 4. Not a copy, but a similar look, maybe get some ideas from other games.

I like to play pak96.comic not only because I like the bright and comic graphics, but the UI looks better. The dialogs are colorful, rather the default one. We should change it to a rounded edge dialogs, and the tooltips could have a png image to show as balloons. This way we could add info on them with a cool look, like this:
  _____________________________
/  Street road                \
|   500,00$/tile                |
|                               |
|   Pressing CTRL will override |
|   the current road.           |
\  SHIFT will force diagonals./
  -----------------------------


Unfortunately, I'm without my computer, so I can't check much to give better options, I just remember few about the UI.
Also as isidoro said, Who chooses what's a good UI? Maxis games have not so beautiful UI, but they are functional and the games are really good. SimCity 4, The Sims 2 and Spore have cool and fast looking UI's, but none are that beautiful. Need for Speed games, have beautiful UIs, but some lack in user feedback. NFS Carbon is the worst I played so far, I found 1 function have 3 different buttons to press in different areas of the game. Something like this:
When looking the cars in the garage to open the camera option you click 1, but when customizing it you press 3, and when in the crew management you press 2.

@isidoro
And I also don't like Mac look and think iThings are useless. But I would love to play Simutrans on it. :D

Spike

#21
Quote from: An_dz on January 30, 2012, 01:33:53 PM
Also as isidoro said, Who chooses what's a good UI?

The players, I'd say. They must use, it must serve their needs.

I've tried to collect online resources on UI design, but didn't find much.

General rules of thumb - very coarse, but I think they still cover essential facts:
http://www.useit.com/papers/heuristic/heuristic_list.html

My concerns about the modifiers were along the lines of discoverability (from http://en.wikipedia.org/wiki/Usability#Discoverability)

Discoverability

Even if software is usable as per the above considerations, it may still be hard to learn to use. Other questions that must be asked are:

       
  • Is the user ever expected to do something that is not obvious? (e.g., Are important features only accessible by right-clicking on a menu header, on a text box, or on an unusual GUI element?)
  • Are there hints and tips and shortcuts that appear as the user is using the software?
  • Should there be instructions in the manual that actually belong as contextual tips shown in the program?
  • Is the user at a disadvantage if they don't know certain keyboard shortcuts? A user has the right to know all major and minor keyboard shortcuts and features of an application.
  • Is the learning curve (of hints and tips) skewed towards point-and-click users rather than keyboard users?
  • Are there any "hidden" or undocumented keyboard shortcuts, that would better be revealed in a "Keyboard shortcuts" Help-Menu item? A strategy to prevent this "undocumented feature disconnect" is to automatically generate a list of keyboard shortcuts from their definitions in the code.
Also from wikipedia ( http://en.wikipedia.org/wiki/Usability#Lund.2C_1997_usability_maxims )

Lund, 1997 usability maxims

When evaluating the design and usability of a website, consider the following[8]:


       
  • Know the user, and YOU are not the user.
  • Things that look the same should act the same.
  • The information for the decision must be there when the decision is needed.
  • Error messages should actually mean something to the user and tell the user how to fix the problem.
  • Every action should have a reaction.
  • Everyone makes mistakes, so every mistake should be fixable.
  • Don't overwhelm the user.
  • Consistency, consistency, consistency.
  • Minimize the need for a mighty memory.
  • Keep it simple.
  • The user should always know what is happening.
  • The more you do something, the easier it should be to do.
  • The user should control the system. The system should not control the user. The user is the boss and the system should show it.
  • Eliminate unnecessary decisions and illuminate the rest.
  • The best journey has the fewest steps. Shorten the distance between the user and the goal.
  • User should be able to do what they want.
  • Alert users to an error before things get worse.
  • Users should always know how to find out what to do next.
  • Strive to empower the user, not speed up the system.
  • Things that look different should act different.
These are presented in a descending order determined by their mean rating of importance.


Edit: Found some more: http://www.ambysoft.com/essays/userInterfaceDesign.html


2. UI Design 

Let's start with the fundamentals of user interface design. Constantine and Lockwood describe a collection of principles for improving the quality of your user interface design. These principles are

       
  • The structure principle. Your design should organize the user interface purposefully, in meaningful and useful ways based on clear, consistent models that are apparent and recognizable to users, putting related things together and separating unrelated things, differentiating dissimilar things and making similar things resemble one another. The structure principle is concerned with your overall user interface architecture.
  • The simplicity principle. Your design should make simple, common tasks simple to do, communicating clearly and simply in the user's own language, and providing good shortcuts that are meaningfully related to longer procedures.
  • The visibility principle. Your design should keep all needed options and materials for a given task visible without distracting the user with extraneous or redundant information. Good designs don't overwhelm users with too many alternatives or confuse them with unneeded information.
  • The feedback principle. Your design should keep users informed of actions or interpretations, changes of state or condition, and errors or exceptions that are relevant and of interest to the user through clear, concise, and unambiguous language familiar to users.
  • The tolerance principle. Your design should be flexible and tolerant, reducing the cost of mistakes and misuse by allowing undoing and redoing, while also preventing errors wherever possible by tolerating varied inputs and sequences and by interpreting all reasonable actions reasonable.
  • The reuse principle. Your design should reuse internal and external components and behaviors, maintaining consistency with purpose rather than merely arbitrary consistency, thus reducing the need for users to rethink and remember.
Edit 2: In the quoted rules, there are at least 3 that back my initial thesis that hidden modifiers are bad UI design. Just saying that I don't make change request just out of the blue sky, or because I want to keep the devs busy ...

prissi

Your 10 heuristics pointed exactly the other way: Hidden shortcuts for power user are exactly what enables tailoring for power user and novices at the same time. Thus I fully agree to the above ideas and come to a very different conclusion.

Apart from this, some of those do not apply for games. If you do a game, part of the fun is that it is not immediately clear what a decision involves. (Or, in shooting games, an immediate decision is needed.) So you don not have all the needed informations. Same for freedom: A game has a set of rules. Freedom is only possible within the rules.

A big problem is, that we do not use a platform UI. So people expect simutrans to behave like on platform xyz, i.e. want are you sure boxes and so on. In the end, it boils down to get enough fun to the user, so he/she it willing to explore (and pressing the help button too).

Before I could start my first train in OpenTTD I had actually to google, because you have to click on a little signal mark in the bottom of a convoi, which had no indications of being actually a button. However, most people do not complain on OpenTTD UI, while it is much much worse and violates much more of the above rules. Since almost nobody complained about Simutrans itnerface (compared to many other complains) I think it is not too bad.

Spike

Quote from: prissi on January 30, 2012, 04:02:43 PM
Your 10 heuristics pointed exactly the other way: Hidden shortcuts for power user are exactly what enables tailoring for power user and novices at the same time. Thus I fully agree to the above ideas and come to a very different conclusion.

Ok.

Quote from: prissi on January 30, 2012, 04:02:43 PM
Apart from this, some of those do not apply for games.

Yes, they were general rules, most likely geared at business application.

I feel it's time for a break for me. Forum interaction becomes too stressful. I should have backed out about at the time when I last wrote "Ok, there are many voices against my suggested change, so I'll accept that people like the current state". This discussion is fruitless. The current state is wished, but I must say I'd never have found out about ctrl-inspection (which I worked around very clumsily in a current game, trying to access a train in a station), and ctrl-tunnel. Both seem important for me, but I guess I'm a power user is I want to change the schedule of a train which is stuck in a station due to stupid "wait" settings.

I have said too much already.

isidoro

Maybe tunnel should make a tunnel entrance and CTRL-tunnel build an straight tunnel...

Some things are there for historical reasons, I guess.  With sliced view opening an entrance is the most natural behavior.

Another Simutrans unnatural feature is that you have to use the tunnel tool to actually make railways underground.  With sliced view it would make much more sense to use normal rail tracks with an incremented price due to being underground...


jamespetts

These are very sensible suggestions, although I foresee the latter being troublesome to implement.
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Fabio

Tunnel tool is somehow better for underground, as also in real life tunnels are bored entirely with "the same tools" :P

Tunnel entrances being the default behaviour for tunnel tool seems much better.

prissi

One could make the tunnel tool dragable. Oone click: Only entrance, dragging: build entry and exit.

Fabio

(I also thought of this... but I dared not asking... ;))

jamespetts

Prissi's suggestion of a draggable tunnel tool is an excellent one; perhaps, for ease of use, it ought automatically switch to sliced underground view at the right level to see the tunnel being drawn in that case?
Download Simutrans-Extended.

Want to help with development? See here for things to do for coding, and here for information on how to make graphics/objects.

Follow Simutrans-Extended on Facebook.

Ters

It might be easier for beginners that a single click builds a tunnel straigh through, but if you drag into underground mode, whether automatically or pre-activated, you only get what you drag. A tunnel entrance is always built with two tiles anyway.

Fabio

Instead of single click, we could go for a two-click system as it is for ways.
When I first click (or click and hold if I want to drag) sliced mode is activated at the level set by the first click tile. A second click or end of dragging builds the whole tunnel (straight or curved) if end on another slope, it ends inside the mountain if I end there.
If I end out (with a new entrance), view is reset to normal, if I end inside the rock sliced mode is kept on.

omikron

A double-click on the entrance should in that case make a straight tunnel, as it is sometimes quite difficult to determine exactly where the end of the tunnel is going to be.

I quite like the way it works at the moment, but the CTRL-tunnel is not that easy to find, I agree.

omikron

Ashley

A good first step might be to define a device and platform independent way of defining what keystrokes, mouse clicks, drags or otherwise trigger each tool. This could then be specified in a simple file per-platform in order to customise actions without needing to modify the game code. Users could then modify this file in order to change their interface as needed.
Use Firefox? Interested in IPv6? Try SixOrNot the IPv6 status indicator for Firefox.
Why not try playing Simutrans online? See the Game Servers board for details.

sdog

#34
the button size could be scaled up based on screen sized The larger buttons could have a marked edge, clicking it would open the menu of that button -- which is now opened by the ctr-click.

Likewise, this way the secondary mode of a build tool could be activated -- permanently.

usage example:
i should like to build tunnel elements piece by piece. i click on the upper left edge of the button, a small dialogue with the alternative modes, represented by large icons appears, i click on the piecewise one, the dialogue switches, i build singe tunnel tiles.
the setting is persistent through save and load.


the control click still toggles the mode while it is pressed. now i have piecewise build as default, ctrl-click changes it to build a long stretch of tunnel at once.




usage example two:
i want to build a station extension facing North. I click on the upper right corner, it opens the small dialogue with all directions choseable (as is now with control click). i select it, it is active while the dialogue is open, it gets closed after building. no persistence. changing tool or closing the dialogue both reset the build tool to default.






ps:
on devices too small or fuzzy clicks (touch) instead of a small part of the button being active, a long click/touch on it triggers this chose mode. (this should be fairly intuitive)