Miniature
(→Features) |
|||
Line 3: | Line 3: | ||
== The concept == | == The concept == | ||
- | + | ''Draft.'' | |
* The main use case is playing online against other players at freechess.org | * The main use case is playing online against other players at freechess.org | ||
Line 9: | Line 9: | ||
* Playing against the computer is a given (chat is optional) | * Playing against the computer is a given (chat is optional) | ||
* Learning is important and it would be great to watch games, review stored games and also process offline the lessons given at certain times in freechess.org | * Learning is important and it would be great to watch games, review stored games and also process offline the lessons given at certain times in freechess.org | ||
- | * | + | * Connectivity: play against other player with a compatible protocol and/or device via [[WLAN]] or [[Bluetooth]]. |
- | * I guess if we got at this point then implement variants such as suicide chess, random house, etc is peanuts. | + | * Variants: I guess if we got at this point then implement variants such as suicide chess, random house, etc is peanuts. |
- | Basing this on Qt 4.6 would be useful to assure the Fremantle - Harmattan path, be fully compliant with whatever the Ovi store brings and have ports for Symbian, Windows Mobile and desktop OSs (Linux, Windows, Mac). | + | Basing this on Qt 4.6 would be useful to assure the [[Fremantle]] - [[Harmattan]] path, be fully compliant with whatever the Ovi store brings and have ports for Symbian, Windows Mobile and desktop OSs (Linux, Windows, Mac). |
== Features == | == Features == | ||
Line 25: | Line 25: | ||
== Roadmap == | == Roadmap == | ||
- | Draft | + | ''Draft, sorted by priority.'' |
- | Items with "?" are | + | Items with "?" are to be decided upon once we focus the discussion on them. These items might be moved to later phases of development, or removed from the roadmap altogether. |
=== Play games online === | === Play games online === | ||
Line 40: | Line 40: | ||
### Option to highlight legal moves? | ### Option to highlight legal moves? | ||
### TODO: draw a sequence diagram or similar to demonstrate the necessary interactions between remote server, our game component, and the board representation. Also indicate how the user is notified. | ### TODO: draw a sequence diagram or similar to demonstrate the necessary interactions between remote server, our game component, and the board representation. Also indicate how the user is notified. | ||
- | ## "Black/White Wins!" banner after a | + | ## "Black/White Wins!" banner after a match. |
## Resign. | ## Resign. | ||
## Pawn promotion, piece selection. | ## Pawn promotion, piece selection. | ||
- | ### Queen | + | ### Queen auto-promotion? |
## Draw request/accept. | ## Draw request/accept. | ||
## Timer | ## Timer |
Revision as of 20:23, 8 November 2009
You love chess. You love Maemo and its devices. You believe they fit so well... yet you haven't found a convincing implementation of a chess game for Maemo. Miniature to the rescue!
The concept
Draft.
- The main use case is playing online against other players at freechess.org
- Now imagine that you can also chat with the other player.
- Playing against the computer is a given (chat is optional)
- Learning is important and it would be great to watch games, review stored games and also process offline the lessons given at certain times in freechess.org
- Connectivity: play against other player with a compatible protocol and/or device via WLAN or Bluetooth.
- Variants: I guess if we got at this point then implement variants such as suicide chess, random house, etc is peanuts.
Basing this on Qt 4.6 would be useful to assure the Fremantle - Harmattan path, be fully compliant with whatever the Ovi store brings and have ports for Symbian, Windows Mobile and desktop OSs (Linux, Windows, Mac).
Features
None for real users yet. Miniature is just few days old and we are defining the features of the first relase.
Check Miniature/Development to follow the latest status and to get involved.
Screenshots
This is how the real application looks like, while being still under very initial and heavy development. Check the mockups in order to see how things should look like in the future.
http://taschenorakel.de/pictures/screenshots/2009/11/08/miniature_on_n900.jpg
Roadmap
Draft, sorted by priority.
Items with "?" are to be decided upon once we focus the discussion on them. These items might be moved to later phases of development, or removed from the roadmap altogether.
Play games online
- Chess game basics, demonstrated off-line.
- Finger friendly UI.
- Mechanism to avoid false moves. First tap to point square, second to confirm?
- TODO: extract all move mode proposals from thread so we can evaluate them while comparing working examples.
- Portrait mode.
- TODO: find out why "setAttribute( Qt::WA_Maemo5ForcePortraitOrientation, true); setAttribute( Qt::WA_Maemo5ForceLandscapeOrientation, false);" is not sufficient (used git master from here, but it now says: "don't use it". Perhaps this just works now?)
- Pieces can be moved manually.
- Only legal moves are possible.
- Option to highlight legal moves?
- TODO: draw a sequence diagram or similar to demonstrate the necessary interactions between remote server, our game component, and the board representation. Also indicate how the user is notified.
- "Black/White Wins!" banner after a match.
- Resign.
- Pawn promotion, piece selection.
- Queen auto-promotion?
- Draw request/accept.
- Timer
- Time limit warning?
- Finger friendly UI.
- Online chess basics, targeting http://www.freechess.org/ first
- Log in & out
- Register
- Search challengers / by time
- Propose a game
- Timeseal support.
- Online chess advanced
- Join tournaments
- Full access to FICS console (might make sense only in landscape mode)
Chat with your opponent
- Landscape support.
Customization
- Download and select different boards and pieces.
- Download and select different engines.
Play with other opponents P2P e.g. via Bluetooth
Learn chess lessons with moves + text
- Positions can be set manually.
Play local tournaments e.g. via Telepathy Tubes
Play against computer
Chess variants
Display games by you or others, live or stored
(moved to back since Chessmonk is concentrating on this for Maemo 5 => not that urgent for Miniature)
- History of an opening.
- Take a picture of a printed game, process the notations with OCR and display it.
- Display several games at a time.
- Watch game via webcam stream