[Kde-games-devel] Proposal for UI changes in KFourInALine

Albert Astals Cid aacid at kde.org
Sat Jun 1 13:31:12 UTC 2013


El Divendres, 31 de maig de 2013, a les 20:02:09, Eneko Nieto va escriure:
> 2013/5/29 Albert Astals Cid <aacid at kde.org>:
> > El Dissabte, 25 de maig de 2013, a les 00:12:51, Eneko Nieto va escriure:
> >> Hi Albert, thank you for your feedback.
> >> 
> >> 2013/5/16 Albert Astals Cid <aacid at kde.org>:
> >> > El Dimecres, 15 de maig de 2013, a les 22:20:50, Eneko Nieto va 
escriure:
> >> >> I would want to discuss some changes in KFourInALine's user interface
> >> >> before coding them, to receive feedback and to ease the approval of
> >> >> the patch.
> >> >> 
> >> >> PRESENT BEHAVIOUR
> >> >> 
> >> >>  * When you start the game there is a pretty nice "Quick Launch"
> >> >> 
> >> >> window that let you select some options (who starts, your color, game
> >> >> dificulty or two player game). Once you start the first game this
> >> >> window cannot be launched again.
> >> >> 
> >> >>  * After starting first game you must go Settings -> Configure
> >> >> 
> >> >> KFourInLine to change game options. Here there are more options but
> >> >> presented in a totally different way (Starting Player Color, Player
> >> >> Names, Black Plays With and Red Plays With, Computer Difficulty, Use
> >> >> AI learning).
> >> >> 
> >> >>  * To play a network game both players need to go Settings -> Network
> >> >> 
> >> >> Configuration. There both clie   nt and server see the same dialog but
> >> >> fields change according to the option selected in first radio button
> >> >> (Create a network game or Join a network game).
> >> >> 
> >> >>  * Players can select Keyboard or Mouse as control method. If Keyboard
> >> >> 
> >> >> selected you must type from 1 to 7 to drop chip.
> >> >> 
> >> >> PROPOSED BEHAVIOUR
> >> >> 
> >> >>  * Create an unique dialog with all options (new game, options and
> >> >> 
> >> >> network game). Behaviour should be something like this:
> >> >>     - A tab selector or similar in the top: Human vs Computer, Human
> >> >> 
> >> >> vs Human, Network Game (and Computer vs Computer? It's funny to see
> >> >> your computer playing against itself, it remembers to WarGames :) ).
> >> >> 
> >> >>     - If Human vs Computer selected: Player name, Player color, Who
> >> >> 
> >> >> startts (add random option), Computer Difficulty, Use AI learning.
> >> >> 
> >> >>     - If Human vs Human selected: Player1 name, Player1 color, Who
> >> >> 
> >> >> starts (add random option), Player2 name, Player2 color.
> >> >> 
> >> >>     - If Network game selected: two panels, the first for server
> >> >> 
> >> >> (Player name, Player color,  Who starts, Game name and port) and the
> >> >> other for the client (Player name, Host, Port and Game name). Another
> >> >> option is to split this in two tabs, Create game and Join Game.
> >> >> 
> >> >>     - If Computer vs Computer selected: Computer1 Difficulty,
> >> >> 
> >> >> Computer2 Difficulty, Who starts (add random option), Use AI learning
> >> >> (I don't know how if this option works in C vs C).
> >> > 
> >> > This means removing the quick start thing?
> >> 
> >> No, my idea is doing the quick start the default for new game, with
> >> more options, so we can simplify options dialog. This affect bug
> >> 101063:
> >> https://bugs.kde.org/show_bug.cgi?id=101063
> >> 
> >> Removing the Network Configuration would also close bug 79865:
> >> https://bugs.kde.org/show_bug.cgi?id=79865
> >> 
> >> >>  * Create a Play again button to play again maintaining options. The
> >> >> 
> >> >> New button should launch the new dialog now.
> >> > 
> >> > This doesn't seem to how most of our games do, as far as i remember,
> >> > most
> >> > have the options on the options menu and "New Game" just starts a new
> >> > game. Not sure it makes sense to change it just for one game.
> >> 
> >> I have been studying other games and I found Naval Battle similar to
> >> KFourInLine. Both are 2 player games and have networking option, but
> >> Naval Battle has no Player vs Player in same computer for obvious
> >> reasons. How Naval Battle handles new games seems more intuitive and
> >> 
> >> elegant than how KFourInLine does:
> >>  * Quick Launch is the only way for new games and is present when
> >> 
> >> opening the application and when you push New game.
> >> 
> >>  * Options specific to each game are in Quick Launch (for example game
> >> 
> >> type) and more general options are in Options menu (for example player
> >> nickname).
> >> 
> >>  * There is a Restart game button so you play a new game without
> >> 
> >> choosing again game type. Really useful in networked games to avoid
> >> the need to reconnect. I think in KFourInLine it should have another
> >> name because the game is prepared for consecutive rounds (there is a
> >> score with won games by each player), perhaps New round button or
> >> something like that? I have seen most of the games only have New game
> >> button but they are only 1 player game and/or each game only have one
> >> round.
> >> 
> >> Do you see interesting I to modify the proposed idea to resemble how
> >> Naval Battle works or do you know other idea?
> > 
> > Seems like a very good idea to me, as far as i've heard people like the
> > NavalBattle UI for starting new games so adapting it for KFourInLine makes
> > sense I think :-)
> > 
> > Cheers,
> > 
> >   Albert
> 
> Hi Albert, I greatly appreciate you helping newcomers as me :)
> 
> PROPOSED UI BASED ON NAVAL BATTLE
>  * Quick Launch is the only way to start a game. It shows at app start
> and when New game action is invoked.
>  * Quick Launch has four big buttons: Player vs Computer, Player vs
> Player, Host Network Game and Connect to Network Game. Each of them
> launches a dialog with the described fields:
>    - Player vs Computer: Your name (Textbox), Your color (Radiobutton:
> Red, Black), Difficulty (Slider), Starting player (Radiobutton: Red,
> Black, Random).
>    - Player vs Player: Red player name (Textbox), Black player name
> (Textbox), Starting player (Radiobutton: Red, Black, Random).
>    - Host Network Game: Game name (Textbox), Port (Numberbox), Your
> name (Textbox), Your colour (Radiobutton: Red, Black), Starting player
> (Radiobutton: Red, Black, Random).
>    - Connect to Network Game: Host (Textbox), Port (Numberbox), Game
> (Combobox), Your name (Textbox).
> FIXES BUG 169600 .
>  * Remove Settings -> Network Configuration dialog. FIXES BUG 79865.
>  * Remove Settings -> Configure KFourInLine dialog. FIXES BUG 101063.
>  * Add Settings -> Use AI learning checkbox.
>  * Add Settings -> Starting player submenu with Take turns, Loser,
> Winner, Random. THIS IS A NEW FEATURE.
>  * Paint a chip below current player to clearly mark whose is current
> turn. THIS IS A NEW FEATURE.

Looks good, though i'd separate the new features from the reorganization if 
possible, smaller code chunks make for easier reviewing :-)

> 
> PROBLEMS/SOLUTIONS:
>  * Depending on selected theme player colours are black and red or
> yellow and red. In current options black/red colours are used but
> status bar uses yellow/red. I see two options to correct this:
>    - Detect selected theme and show the correct colour name.
>    - Call Yellow/Black to the non red colour.
> FIXES BUG 154687.

Detecting the theme (or making the theme provide the string) is better, the 
other is a poor man's solution and we should aim better if possible :-)

>  * Currently statistics only shows two items and uses settings' player
> names, but now that option would disappear. It has no sense either to
> mix second player stats when human with computer stats. I suggest
> creating a new item in statistics for each different name. Computer
> would play as Computer or Computer <level> (i.e: Computer Easy). "Your
> name" textboxes could be editable comboboxes. THIS IS A NEW FEATURE.
> We can enjoy the occasion to FIX BUG 312383.

Looks sane

>  * Currently New button starts a new round and it is required to push
> to start a new round. In the proposed behaviour New button shows the
> Quick Launch dialog, so we need a way to start a new round (a button
> in toolbar or perhaps better some way in finished game screen (i.e:
> "Click screen to start a new round")).

Yep, i think a "Click screen for new round" makes sense.

> 
> What do you think about the proposed changes and what do you think are
> the best solutions?
> 
> Albert, are you catalan? I am basque, from Nafarroa.

I am. Are you coming to Akademy in Bilbao this July?

Cheers,
  Albert

> 
> Déu i moltes gràcies!
> 
> Eneko
> 
> >> >>  * Delete input method for players to clean up UI. Both should be able
> >> >> 
> >> >> to use keyboard and mouse in their turn. Undo function is implemented
> >> >> to solve if you drop other player's chip by mistake.
> >> > 
> >> > Makes sense, don't see the need to limit just to one input method.
> >> > 
> >> > Cheers,
> >> > 
> >> >   Albert
> >> >> 
> >> >> What do you think about this changes? Feedback would be greatly
> >> >> appreciated
> >> >> 
> >> >> :)
> >> >> 
> >> >> Eneko
> 
> _______________________________________________
> kde-games-devel mailing list
> kde-games-devel at kde.org
> https://mail.kde.org/mailman/listinfo/kde-games-devel


More information about the kde-games-devel mailing list