[Kde-games-devel] kbackgammon - TODO

Alexander Smirnov alexander.v.smirnov at gmail.com
Thu May 22 07:58:55 CEST 2008


Hello kdegame community!

I've composed a TODO list for kbackgammon. This is where i'm going to 
move with it.
Please review  if you  have a minute or two, i need your comments on all 
this stuff :)

Thank you!



PART 1 - Defence:
=================

1.1 ! QT4 port - hot !
----------------------
- Review a bunch of compilation warnings related to qt4 porting, move to 
qt4 completely, ensure qt3 classes are not used anymore
? clean the header file

1.2 Bugs
--------
- Get rid of crashes (I've faced with SIGSEGV several times).
- Review bugzilla issues, fix if possible.
- Chat window shows kind of HTML tags now in every message.
? toggle double is NOT automatically set at the beginning of 1 point games!
- Fix other found major defects.

1.3 User Interface
------------------
? add the accumulated online time in the lower right corner of the main 
window status bar
? add user profiles with different username, etc.
    asmirnov: is it really useful feature(especially for multy-user OS)?
? add buttons for accept and reject.
    asmirnov: I would prefer dialog with accept/reject buttons, which 
appears when action from user is required.
- FIBS: Show dialog when any player invites you to play. Join/Decline + 
decline reason text edit widget.


1.4 FIBS engine
---------------
- port the FIBS help system from KFibs
- add RepBot support. Actually, RepBot is not official part of FIBS. 
It's very useful "player", which is almost always logged to FIBS. It 
helps to avoid droppers.
? automatically translate messages --> replace \"a by ae, etc ?dd
    asmirnov: it would be nice to have i18n'ed messages from FIBS 
server. At least most commonly used.


? - from original TODO list. Need to review those carefully.




PART 2 - Attack:
================

2.1 User Interface
------------------
2.1.1.Main window/application
        - Make a review for all kind of menus. Make starting new games 
easy using any accessible engine, online or offline (currently it is 
chosen in Setting>configure>general settings)
        - Make it possible to open several chat windows and set 
different filter for each window. Filter could be: kibitz, shouts, 
server events (login/logouts...)
        - Chat, player list and server events should be integrated to 
main application window, but user should be able to separate them into 
independent windows.
        - Notifications. Add event notifications configuration menu 
entry - like in others KDE applications (Kopete).
            - on invitation
            - on win match
            - on loss match
            - on specified player login/logout/win match/finish match/
            - on player from "saved games" and buddy lists login/logout/...
            - on your turn
2.1.2 FIBS: Player's list
        - Add buddy list support
        - Add ignore list support. Do not show such players at all.
        - Add filters: show only ready to play/all/have saved game 
with/buddy/ignore
        - Current player list is very wide. By default it contains much 
info which is not very useful. Good option is to leave several most 
important values, such as name, rating, experience and move others to 
player "properties" context menu item, or to hint, like in instant 
messengers. Good example of such player list is Cocoa FIBS.
2.1.3. Board
        - When mouse cursor hovers checker, show possible turns for it.
        - Add control option for first move - left mouse button on 
checker makes short move, right makes long move.
        - Animate checker movement.
        - Add checkers/board/dice themes support. Both SVG themes and 
BMP themes should be supported (like in JavaFIBs client)
        - Add dice rolling. Should looks effective.

2.2 Game
--------
- FIBS: Auto-invite. There should be options - invite buddies/all 
players, select criteria for invitation - ie rating not more that 1400, 
experience not lesser than 100 and so on.
- FIBS: Auto-greeting on match start
- FIBS: Auto-message on match finish
- add other games support: Hypergammon, Nackgammon, Fevga, Plakoto, 
Deadgammon, Longgammon, Elimintaion.
- GGZ: integrate with GGZ (Yet Another Internet Backgammon Site - YAIBS? 
:) ). (long term)

2.3 Web
-------
- create a web site dedicated to backgammon. There should be a place 
where users could leave feedback, wishes, complaints, bug reports.

2.4 Engines
-----------
- There should be added several options for user to play:
    - 2 human player with one computer (local)
    - game over LAN, where one instance acts as server, another as client
    - game with computer opponent. There are two computer opponent 
engines available: gnubg (a world class player) and Daren's opponent. 
Need to investigate Daren's player. It would be nice to have different 
level computer opponents.




More information about the kde-games-devel mailing list