|
|
(117 intermediate revisions not shown) |
Line 1: |
Line 1: |
- | 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!
| + | {{Miniature}} |
| | | |
- | == The concept ==
| + | '''We are moving to http://miniature-chess.org/''' |
- | | + | |
- | More or less:
| + | |
- | | + | |
- | * 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
| + | |
- | * A variant would be to play against othe player with a compatible device via local network or bluetooth.
| + | |
- | * 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).
| + | |
- | | + | |
- | == Project status ==
| + | |
- | | + | |
- | Kicking off. Nothing exists. Just a [http://talk.maemo.org/showthread.php?t=33764 Talk thread], a [https://garage.maemo.org/projects/chess/ Garage project] and this wiki page.
| + | |
- | | + | |
- | == Mockups ==
| + | |
- | | + | |
- | These are the current sketches.
| + | |
- | | + | |
- | [[Image:Miniature_normal_mode.jpg|frameless|caption]] [[Image:Miniature_normal_options.jpg|frameless|caption]]
| + | |
- | | + | |
- | | + | |
- | === Old ;) ===
| + | |
- | | + | |
- | [[Image:Miniatura-playgameh.png|frameless|caption]] [[Image:Miniatura_alternative.png|frameless|caption]]
| + | |
- | | + | |
- | == Features and roadmap ==
| + | |
- | Draft. Sorted by priority.
| + | |
- | | + | |
- | === Current features ===
| + | |
- | None. Minuature is currently vaporware. :(
| + | |
- | | + | |
- | === Roadmap ===
| + | |
- | | + | |
- | # Play games online
| + | |
- | ## Chess game basics, demonstrated off-line.
| + | |
- | ### Finger friendly UI.
| + | |
- | #### Mechanism to avoid false moves. First tap to point squeare, second to confirm?
| + | |
- | ### Portrait mode.
| + | |
- | ### Pieces can be moved manually.
| + | |
- | ### Only legal moves are possible.
| + | |
- | ### "Black/White Wins!" banner after a mat.
| + | |
- | ### Resign.
| + | |
- | ### Pawn promotion, piece selection.
| + | |
- | ### Draw request/accept.
| + | |
- | ### Timer
| + | |
- | ## Online chess basics, targeting http://www.freechess.org/ first
| + | |
- | ### Log in & out
| + | |
- | ### Register
| + | |
- | ### Search challengers / by time
| + | |
- | ### Propose a game
| + | |
- | ### [http://www.freechess.org/Help/HelpFiles/timeseal.html 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.
| + | |
- | # Play with other opponents P2P e.g. via Bluetooth.
| + | |
- | # Learn chess lessons with moves + text.
| + | |
- | # Play local tournaments e.g. via Telepathy Tubes.
| + | |
- | # Play against computer.
| + | |
- | # Chess variants (suicide, randomhouse...)
| + | |
- | # Display games by you or others, live or stored (moved to back since [http://talk.maemo.org/showpost.php?p=364101&postcount=58 Chessmonk] is concentrating on this for Maemo 5 - not that urgent)
| + | |
- | ## 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
| + | |
- | | + | |
- | == Technology selections ==
| + | |
- | How to make the most from existing free projects avoiding forking and duplicated work as much as possible.
| + | |
- | | + | |
- | * Qt 4.6 for UI layer. The goal is to have Maemo as primary development platform, aiming for straight ports to Symbian and other Qt compatible platforms.
| + | |
- | ** Can we save work by looking at [http://pacaq.sourceforge.net/ pacaq] and [http://knights.sourceforge.net/ Knights]? Others? --[[User:qgil|qgil]] 06:22, 3 November 2009 (UTC)
| + | |
- | * What starting point to get the online chess features?
| + | |
- | * What starting point for chatting?
| + | |
- | ** TP connection manager: http://telepathy.freedesktop.org/wiki/Components
| + | |
- | *** Qt 4.6 wrapper (http://telepathy.freedesktop.org/wiki/TapiocaQt) might be a good idea to look at.
| + | |
- | ** Rationale: I would like to see a "I play chess!" tag next to each contact I have. This information would of course have to come from a central server or such. Also, it would be great if we could just re-use the chat functionality that is already there with maemo5 (of course it needs a modified view to fit into our UI) --[[User:mikhas|mikhas]].
| + | |
- | * What starting point for game analysis?
| + | |
- | ** [http://scid.sourceforge.net/ Scid] ([http://packages.debian.org/lenny/scid see dependencies]) would be nice by itself and as gateway to [http://www.craftychess.com/ Crafty] ([http://packages.debian.org/lenny/crafty see dependencies]) and other engines.--[[User:qgil|qgil]] 06:22, 3 November 2009 (UTC)
| + | |
- | | + | |
- | == Architecture ==
| + | |
- | Logic:
| + | |
- | * Game - the logic for a particular game, right now that would be just chess, but other board games could be possible too. (Chess based or other)
| + | |
- | * Pre-Game - How to find players, select a server or engine
| + | |
- | | + | |
- | Domain:
| + | |
- | * Board - Represents the data structure of the board (duh)
| + | |
- | * Player - information about the other player, like online status, skill level
| + | |
- | | + | |
- | Communication:
| + | |
- | * ICS
| + | |
- | * Bluetooth
| + | |
- | * Telepathy
| + | |
- | * Computer Chess Engine - an offline engine should be accessed the same way any online game is, the engine does not have to be in the same task
| + | |
- | | + | |
- | == References ==
| + | |
- | * [http://www.craftychess.com/ Crafty] is a free, open-source computer chess program.
| + | |
- | * [http://www.v7f.eu/public/n800/chess/ EBoard and Crafty] for the N810/N800/N770 - [http://maemo.org/downloads/product/OS2007/chess OS2007 Downloads page].
| + | |
- | * [http://knights.sourceforge.net/ Knights] aimed to be the ultimate chess resource for the K Desktop Environment... years ago.
| + | |
- | * [http://pacaq.sourceforge.net/ pacaq] is a chess game visualizing and analysis tool done with the Maemo 4.1 Qt4 port - [http://talk.maemo.org/showthread.php?t=21793 Talk thread].
| + | |
- | * [http://scid.sourceforge.net/ SCID], a chess database application for Windows, Linux and Mac OS operating systems.
| + | |
- | ** See also [http://scid.sourceforge.net/scidpocket.html SCID Pocket]
| + | |
- | * [http://www.gnu.org/software/xboard/ Xboard] is a graphical user interface for chess in all its major forms.
| + | |