CORDIAL MINUET ENSEMBLE

??????

You are not logged in.

#1 2014-11-26 00:18:47

zed
Member
Registered: 2014-11-25
Posts: 25

UI suggestions

Mouse control is great for introducing people to the game, but I'm starting to
find it unpleasantly fiddly. It would be very nice to have keyboard control
for the convenience of people familiar with the mechanics.

For the main game, I'd go for something like:
* columns are enumerated as 1-6;
    these keys place a marker, alternating between green and red;
    RETURN commits.
* bets are placed by typing the number of coins;
    maybe SPACE wipes it back to 0 so you can retype;
    RETURN commits.

I would suggest a text-only interface, but I suppose the sidebar information
would be tricky to usefully communicate. I can see it working in a curses
interface, but portability is (ridiculously enough) tricky with curses.

I have another problem with the UI, but it may only affect me. I mostly live
on the linux console, so I would like to be able to switch to X, start a new
game, and switch back to the console while I wait for the bong. But switching
to the console causes the client to freeze, such that if a game starts I'm
considered inactive and just lose a coin. I tried fiddling with the code about
minimisation in minorGems, but it didn't make a difference. Maybe this is just
standard unalterable SDL+GL behaviour? It doesn't happen with pure SDL-1.2.

Offline

#2 2014-11-27 01:21:15

jasonrohrer
Administrator
Registered: 2014-11-20
Posts: 801

Re: UI suggestions

Just added this in v9.

Number keys to pick columns (first green, then red, then back to green).  0 key to swap columns (because sliders don't push each other out of the way when you're using the number keys---that would be confusing because of the modality of picking green then red then green).

Enter to commit columns or commit bet.  x to fold bet.

Typing in your bet numerically doesn't work well when you're in a call-or-raise situation.  The picker currently shows 17, for example, and can't go below that, but you type 1 8... what happens?  Does it become 11 at first?  That's out of range.  The entire point of the picker is to avoid range bounds checking or notification on numerical user input.

SO... what I did instead was arrow keys to go up/down by 1 and Page Up/Down to go up/down by 10.  This maps well to the way the picker looks and avoids and range bounds issues (picker does nothing if you hit up when you're at the top or down when you're at the bottom).  You're at most 5 arrow key strokes away from any number, because to hit 9, you can page up one and then arrow down one.

These don't exactly match the picker's per-digit wrap around behavior.  Instead, they are a true increment and decrement for the whole value as a number, which is what you want, I think.

Offline

#3 2014-11-27 01:28:22

jasonrohrer
Administrator
Registered: 2014-11-20
Posts: 801

Re: UI suggestions

Oh, and not sure about the game stopping updating when you switch out of X.

I tried switching to a virtual terminal (ctrl-alt-F4 or whatever) and the game did not pause.  So it's not detecting minimzation the way it does when you switch desktops.

I get exactly the same behavior with the game stopping while X is out, though.  The Chime for a new game starting does come through until I bring X back.

I could imagine that OpenGL frames are simply not happening when the OpenGL context is gone, which causes the game loop to stop stepping.

Interestingly, if you swap away from X right as the chime sounds, it finishes sounding (it doesn't get cut off), so the audio thread is still running fine.  However, the ante chips hang in the air and wait to fly until you bring X back.  Thus, the process isn't freezing, just the game update loop.

This seems to be a known issue:

http://ubuntuforums.org/archive/index.p … 48152.html

Offline

#4 2014-11-27 22:42:47

zed
Member
Registered: 2014-11-25
Posts: 25

Re: UI suggestions

I just tried this out. I like the column picking; being able to immediately
tap out my choices once I've made them is quite satisfying.

I see what you mean about typing bets being problematic, and adding 1 or 10 at
a time seems to work nicely.

I'm not sure about 'x' for folding, just because it isn't easily discoverable.
I tested before reading your post carefully, so was trying 'f' and 'F' and Esc
and BkSp and such for folding; 'x' didn't occur to me at all.

Bonus points, of course, for making the keys configurable! Personally I'd
prefer dvorak vi keys for bet increments, but that's unlikely to be a popular
choice.

One last thing: it felt natural to me to use left and right to choose a column
to reveal, in the final stages. Maybe left and right could always move the
currently active slider between viable columns?

Offline

#5 2014-11-27 22:44:01

zed
Member
Registered: 2014-11-25
Posts: 25

Re: UI suggestions

Re the X and GL thing: yes, I get it for glxgears as well. So I guess you can
consider it Not Your Problem.

Offline

#6 2014-11-27 22:55:55

jasonrohrer
Administrator
Registered: 2014-11-20
Posts: 801

Re: UI suggestions

Arrow keys for picking the reveal column are on the to-do list.  I probably won't use them when there are two sliders to pick because the modality will be confusing.

Offline

Board footer

Powered by FluxBB