maemo.org - Talk

maemo.org - Talk (https://talk.maemo.org/index.php)
-   Development (https://talk.maemo.org/forumdisplay.php?f=13)
-   -   Contributors needed: the killer free chess game for Maemo (https://talk.maemo.org/showthread.php?t=33764)

qgil 2009-10-31 09:36

Contributors needed: the killer free chess game for Maemo
 
EDIT: current status at http://wiki.maemo.org/Miniature

DISCLAIMER: I'm doing this on my own and my free time without any link to my job at Nokia.

I love chess, even if I'm less than an average player (around 1500 with enough concentration). I love Maemo and its devices. They would fit so well, yet there is no convincing implementation of a chess game for Maemo.

Sadly I'm not a developer myself, but I can help developers getting things done with ideas, plans, test, feedback, promotion...

The concept, 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 review 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).

Maybe there is already a good starting point?

twaelti 2009-10-31 09:49

Re: Contributors needed: the killer free chess game for Maemo
 
Very good starting point there is: PyChess . Most features already there, but needs FingerGUI.
GTK+ instead of QT, however :-)

qgil 2009-10-31 10:42

Re: Contributors needed: the killer free chess game for Maemo
 
Yes, PyChess could be a good choice to get something up for Maemo, Moblin and GNOME desktops. However, I have a personal interest in seeing how this Qt cross-platform strategy turns out to be in reality, specially when it comes to Maemo-Symbian compatibility.

This is why I find Qt 4.6 as a starting point worth trying even if it's clearly not the fastest path to get something done for Maemo 5.

lcuk 2009-10-31 11:48

Re: Contributors needed: the killer free chess game for Maemo
 
quim, I gather you have tried chess on the n900,
is it just me, or is it tougher to beat than it was on the n810?

in a quick search related to qtchess upgrades,

I found an older unsupporter Qt based networked chess game.
http://dir.filewatcher.com/d/FreeBSD...tgz.84691.html

also another

http://ostatic.com/qtchess

maybe these could be evaluated by someone with working qt compiler and could perhaps be used as a base or even just ideas.
its also possible the gnuchess engine may also be ported/embedded within qt too.

mikkov 2009-10-31 11:49

Re: Contributors needed: the killer free chess game for Maemo
 
here's something to look at http://qtchess.sourceforge.net/ . it's qt, has multiplayer and chat. don't know anything else ::)

jjmarin 2009-10-31 12:36

Re: Contributors needed: the killer free chess game for Maemo
 
Definitely, a Python backend for GNU chess is the way to go, IMHO, and pyChess or glChess are good starting points.

I don't understand the Maemo approach for Qt. Which is the Hildon equivalent on Qt. I mean, is there any Qt widget library with equivalents to HildonAppMenu, HildonPickerButton, etc ? or they are supposed to be created by the apps developers from basic Qt widgets (this is not easy, specially for people who don't know anything about Qt).

Is this the place for getting the latest news about Qt for Maemo information ? [1]

[1] http://wiki.forum.nokia.com/index.ph...y:Qt_for_Maemo

geneven 2009-10-31 13:40

Re: Contributors needed: the killer free chess game for Maemo
 
I won't be using any chess game on a tablet to play on FICS. Most of the people there play fast games; I play 1-minute most days. You need something fast, because seconds count. Speed is partly a question of size. A tablet just won't work well.

Computer chess is generally not fun. The world does not need another computer chess game of any size.

What is needed is a good chess display program. You can go to FICS or ICC or other chess hangouts and watch games being played all over the world.

It would also be incredibly handy to have a good chess display program to use while reading chess books, a popular pursuit among people who care about chess.

The program SCID is already available for Linux. It has already been made available on tablets, but it needed a few modifications (it should have been rotated for better board size) and no one ever responded to requests to do that. (It also has a new play feature, but I wasn't impressed by it.)

For playing, the chess interfaces Eboard and Xboard were already adapted to tablets, but needed more work, which was never done. They could also be used for watching multiple games in an international tournament at the same time.

lcuk 2009-10-31 14:15

Re: Contributors needed: the killer free chess game for Maemo
 
geneven - query?
why is the tablet not fast enough?

eean 2009-10-31 14:47

Re: Contributors needed: the killer free chess game for Maemo
 
I think geneven is saying that the display isn't big enough to be able to play chess quickly. At least for geneven. ;)

You know another idea Quim is a way to play against your family and friends over Telepathy tubes (which lets you open up a tcp/ip connection over jabber basically). Imagine how fun Maemo conferences would be if some games like that existed and Telepathy-salut worked (Link local jabber, probably would already work if you wrote an opponent choosing gui into the game).

:)

andybehr 2009-10-31 17:09

Re: Contributors needed: the killer free chess game for Maemo
 
I think this is a very good idea.
I would be willing to help/start developing such a chess app.

I am setting up a Garage project right now ;)

And done.

I will try to gather some basic information about interfaceing with freechess.org.

geneven 2009-10-31 17:23

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by eean (Post 362426)
I think geneven is saying that the display isn't big enough to be able to play chess quickly. At least for geneven. ;)



:)

When you'all get your chess game see up, I'll spot anyone here 10 seconds in a 1-min game or 1 min in a 3-min game if you'll promise to play me on the N900. I'm confident I'll come out way ahead.

Even without such a test, I'd love to see a video of someone playing speed chess on any tablet or phone.

But then, I've tried playing on FICS with my tablet. What has been the experience of any of you who might disagree with me? My bet is that no one else in this thread has ever tried speed chess on a tablet.

My USCF rating was something like 2178 when I was active...That was before I started working for Garry Kasparov.

andybehr 2009-10-31 17:29

Re: Contributors needed: the killer free chess game for Maemo
 
I used to play competitive chess as a teenager. But we never gotten higer than state level. And I suck at speed chess. So I guess I am not playing against geneven.

qgil 2009-10-31 18:43

Re: Contributors needed: the killer free chess game for Maemo
 
geneven, 1 min is indeed a fast case thit might not be optimal for a Maemo device. Although moving pieces with a mouse on a PC screen also takes time!

However, the FICS default is 4 12 if I recall correctly and I never had problems finding quickly players for 5 0 or 15 0.

Watching games is another case, indeed!

So we have already a garage project in its way? Cool! Now I have to run for dinner but I'll be back later, or tomorrow.

qgil 2009-10-31 19:13

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by jjmarin (Post 362370)
Is this the place for getting the latest news about Qt for Maemo information ? [1]

[1] http://wiki.forum.nokia.com/index.ph...y:Qt_for_Maemo

That is a good reference, yes. For the 4.6 and official Maemo support part see http://qt.nokia.com/developer/qt-for-maemo-developers

qgil 2009-10-31 19:18

Re: Contributors needed: the killer free chess game for Maemo
 
https://garage.maemo.org/projects/chess/

Great, but... which services do you plan to use?

andybehr 2009-10-31 22:48

Re: Contributors needed: the killer free chess game for Maemo
 
I just went through the ICS protocol description. Or what I could find of it.
(That is the protocol used by FICS)

Wow, that is from the middle ages of the internet... It is wordy and seems redundant in some places. It is basicly an interactive telnet session with pretty much plain English as commands and resonses.
The first challenge will be to write or adept an interface for that.

qgil 2009-10-31 22:52

Re: Contributors needed: the killer free chess game for Maemo
 
It would be worth to investigate whether there is a Qt engine already doing that, not to repeat work.

http://knights.sourceforge.net/ comes to mind.

andybehr 2009-10-31 22:58

Re: Contributors needed: the killer free chess game for Maemo
 
I will check that out.

I am also looking at the XBoard client.
http://www.gnu.org/software/xboard/
It is written in C and the ICS parsing might be reusable.
Also the project seems to be still very active.

qgil 2009-10-31 23:07

Re: Contributors needed: the killer free chess game for Maemo
 
andybehr and I have made already the first project decision:

Miniature

http://wiki.maemo.org/Miniature :)

qgil 2009-10-31 23:11

Re: Contributors needed: the killer free chess game for Maemo
 
See also: [Announce] Chess game analysis tool with Qt based GUI

http://sourceforge.net/projects/pacaq/

mikkov 2009-10-31 23:18

Re: Contributors needed: the killer free chess game for Maemo
 
That is actually designed for Maemo4 and windows.
edit: bah, could read the links. Runs in N900 too, but UI would need some polishing

qgil 2009-10-31 23:43

Re: Contributors needed: the killer free chess game for Maemo
 
Links to the already mentioned EBoard and Crafty for the N810/N800/N770 - http://maemo.org/downloads/product/OS2007/chess

I agree with geneven: portrait mode is much more appropriate for a chess app, both for better usage of the screen and more suitable for casual play.

qgil 2009-11-01 00:45

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by geneven (Post 362398)
What is needed is a good chess display program. You can go to FICS or ICC or other chess hangouts and watch games being played all over the world.

It would also be incredibly handy to have a good chess display program to use while reading chess books, a popular pursuit among people who care about chess.

What are the features that would define "good"? Feel free listing them here and/or http://wiki.maemo.org/Miniature#Use_cases under "Display games by you or others, live or stored."

otoh there seems to be a crisis in terms of contemporary chess games based on Qt... http://forum.kde.org/viewtopic.php?f=21&t=6538

qgil 2009-11-01 09:38

Re: Contributors needed: the killer free chess game for Maemo
 
What project resources do we need? Proposal:

- Garage mailing list for development.
- Thread in Talk Games subforum to gather user feedback.
- wiki.maemo.org for project documentation.
- gitorious.org for code repository.
- bugs.maemo.org when we are in shape to produce bugs. :)

Question for users: what information is ESSENTIAL for you see while playing chess online with someone? For instance, a board with pieces. ;)

And proposal for a very original Miniature logo: a black pawn.

Addison 2009-11-01 10:04

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by qgil (Post 362865)
What project resources do we need? Proposal:

- Garage mailing list for development.
- Thread in Talk Games subforum to gather user feedback.
- wiki.maemo.org for project documentation.
- gitorious.org for code repository.
- bugs.maemo.org when we are in shape to produce bugs. :)

Question for users: what information is ESSENTIAL for you see while playing chess online with someone? For instance, a board with pieces. ;)

And proposal for a very original Miniature logo: a black pawn.

-Chat window that works well with touchscreen keyboard.
-Game score. There's number algorithms out there that show if you're winning or losing. There's not that many chess programs that feature this.
-Biggest preference is to allow simple screen tapping to move pieces. I tend to stay away from anything that forces you to slide the stylus since it will eventually chew up the screen.

I used to play speed chess quite a lot over at chess.net.

That was like ten years ago. I still consider myself to be a world champion though. :)

andybehr 2009-11-01 11:52

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by qgil (Post 362865)
And proposal for a very original Miniature logo: a black pawn.

The pawn could have an ethernet cable or radio waves coming out of it.

qgil 2009-11-01 15:14

Re: Contributors needed: the killer free chess game for Maemo
 
About the data to be seen in play mode: which information of the game do you want to see at all times? Which information about your opponent? For instance, is it relevant to see the pieces taken, the history of last moves - or can these be retrieved through additional screens e.g. overlayed with some transparency?

Addison, chat might come later so we need to think a user interface for playing games without it.

Game score yes, Crafty can give you this but might be expensive in power manager. I still remember the fan of my laptop calculating those ratings N moves ahead. Perhaps better optional or even only in display mode. At the end... isn't a bit like cheating (o demoralizing) for normal game play?

Tapping to move, yes.

How modular should or could Miniature be? It would be nice to have a light core providing the minimum most players want: play chess online. And then provide the rest through additional modules or plugins.

Imagine this use case for the future: take a picture of a chess problem in the newspaper, get it processed thanks to and OCR module. Ready to be displayed in Miniature!

A couple of URLs found, just in case there is something interesting in there:

http://chessx.sourceforge.net/
a chess database. With ChessX you can operate on your collection of chess games in many ways: browse, edit, add, organize, analyze, etc.

http://chessratingcalc.sourceforge.net/
This is a free and open source calculator of chess rating for tournament players. It has features like saving calculation with details

http://ajonsson.kapsi.fi/cutechess.html
http://gitorious.org/cutechess

TomJ 2009-11-01 15:40

Re: Contributors needed: the killer free chess game for Maemo
 
I think it should be playable in landscape mode as well as portrait if there is to be a chat window; it would allow thge use of the keyboard for chatting while one plays.

allnameswereout 2009-11-01 15:46

Re: Contributors needed: the killer free chess game for Maemo
 
The right way is (IMO) to have the chess engine in libraries, and allowing a UI client to use these. A UI client can be written in Qt or GTK or whatever.

I remember a really funny chess game called Battle Chess:

http://www.gocollege.com/images/battle-chess.png

Depending on which type of piece was attacking which kind of other piece some kind of animation was shown. For example the bishop used magic, or the pawn used its lance to stick on the toes of the other piece, or the king would drink a potion. It was funny! And it got me into chess. Nowadays, on N900, such aspect would require nice artwork and OpenGLES, but maybe there is already a project like Battle Chess in existence?

Another important factor with games is that often they're not compatible with each other when running on different platforms. Which is cool on PyChess:

Quote:

If you like to play against other of the human speices, PyChess supports online play on the FICS servers.
Also some kind of saving state of game I think is important, so you could play a move during your break on work and resume the rest next day. This is important in other interactive games as well, such as stuff like Boggle.

Just my 2 ct...

eean 2009-11-01 17:40

Re: Contributors needed: the killer free chess game for Maemo
 
@allnameswereout: I had Battle Chess on the Amiga 500. That game was fun. :)

Anyways.

When this project is more developed I might pitch in and add P2P playing over Telepathy tubes. :) TelepathyQt4 should be ready by then.

qgil 2009-11-01 17:47

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by TomJ (Post 363018)
I think it should be playable in landscape mode as well as portrait if there is to be a chat window; it would allow thge use of the keyboard for chatting while one plays.

Indeed. I realized that while starting drawing some mockups. Perhaps I have something basic to show this evening?

I'm all for a default standard 2D green-grey board. All the 3D animated stuff might be fancy (question mark goes here) but it quite distracting when playing.

allnameswereout 2009-11-01 18:06

Re: Contributors needed: the killer free chess game for Maemo
 
Yes, same here (Amiga 500 and DOS/80286), fond memories of simple yet fun game :)

Quote:

Originally Posted by qgil (Post 363107)
I'm all for a default standard 2D green-grey board. All the 3D animated stuff might be fancy (question mark goes here) but it quite distracting when playing.

Not only fancy, also fun to the casual chess player or beginner. So, it depends on target user you trying to cater to.

Could be configurable. For example, in Battle Chess you could disable the animations, and IIRC can run it satellite view instead of bird view. Then it is question what is default setting.

It'd also require some real design work, and a concept for a theme. Or multiple theme support.

Just keep in mind not every chess player is a pro...

qgil 2009-11-01 18:15

Re: Contributors needed: the killer free chess game for Maemo
 
We need to find the stright way to get the features working with simple, usable, elegant UI. If this is done with, as you say, a good separation of engine and UI + themes then having an optional 3D animated UI is a task someone can take without delaying the trunk development.

Bird view in a mobile interface? It's not that you have the luxury of wasting too much space with angles and perspective.

Addison 2009-11-01 18:18

Re: Contributors needed: the killer free chess game for Maemo
 
I'll throw a simple vote in requesting that captured pieces should not take up space on the screen. Doesn't seem like it would be worth the trouble.

Last move would be something very important though. A simple straight arrow pointing to the piece and where it came from is a feature I would most love to see.

And I'm with qgil, a default standard 2D green-grey board is all that's needed.

3D chess graphics never did it for me.

Addison 2009-11-01 18:23

Re: Contributors needed: the killer free chess game for Maemo
 
If anyone would like for me to draw up the graphics, I wouldn't mind doing so.

I made this hack a few years back for the Gameboy Color.

Wow, I can't believe that web page still exists, I thought it would have died a long time ago. :)

Edit:
Here's a screen shot that's very close to what I would like to see.
http://images.appshopper.com/screenshots/300/592059.jpg

v13 2009-11-01 18:30

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by lcuk (Post 362338)
its also possible the gnuchess engine may also be ported/embedded within qt too.

I find this impossible. GNU chess is *extremely* fast (orders of magnitude ahead of competition) because of its code. Most things are accomplished with bit-wise operations with very small memory footprint. When I examined its code (about a couple of years ago - version 4) I was amazed because the location of pawns on a board were just a 64-bit bit-mapped integer (8x8):

typedef uint64_t BitBoard;

/* piece/pawn positions by side (0=white, 1=black) and then by piece (1=pawn..6=king).
For example, b[white][knight] has bits set for every board position occupied by a White Knight. */
BitBoard b[2][7];

Because of its small memory footprint most of the operations are performed by the processor alone (read: using processor cache, without significant memory reads/writes) which by itself boost its speed by a factor of 1000 (for using cache instead of memory) and perhaps an even greater factor for using mostly bit-wise operations.

So, if you port that to Qt, you'll most probably loose a lot. However, since this is simple C code, you can just use it as-is, or even better use gnuchess by itself as-is.

allnameswereout 2009-11-01 18:48

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by qgil (Post 363129)
We need to find the stright way to get the features working with simple, usable, elegant UI. If this is done with, as you say, a good separation of engine and UI + themes then having an optional 3D animated UI is a task someone can take without delaying the trunk development.

If designed with that in mind it allows easy addition to attract a different 'type' of player. Think: casual players, beginners, kids, women (the non-hardcore chess playing type).

Same with default settings. Default settings depend on most common user, depends on what user you're trying to cater to.

With regards to theming you can assume some people want the traditional symbols while other want more 'classy' symbols. Even in 2D. For example, some will prefer the symbols used in Chessmaster link while for other this will be unnecessary.

Quote:

Bird view in a mobile interface? It's not that you have the luxury of wasting too much space with angles and perspective.
Why not? It works on iPhone. If one can easily zoom in or out its not much of a problem. I assume that to be true on Harmattan. I also assume the chat can be hidden to give user fullscreen view of the board.

timoph 2009-11-01 18:50

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by qgil (Post 363129)
We need to find the stright way to get the features working with simple, usable, elegant UI. If this is done with, as you say, a good separation of engine and UI + themes then having an optional 3D animated UI is a task someone can take without delaying the trunk development.

Optional UI's could be added to the game as plugins. That way the optional UI's could be anything and their development woudn't drag the core development. Althought it would require some extra work on the game engine.

qgil 2009-11-01 21:14

Re: Contributors needed: the killer free chess game for Maemo
 
A first concept for the Play Game Online view.

http://wiki.maemo.org/Image:Miniatura-playgameh.png

- Board takes all the surface possible

- The Maemo status area (or a replica if it can't be embedded that way) happens to show important information: the time, you are online, battery left... saving you from having to go out & in of the game.

- The elements are boxes that should be easy to relocate in portrait mode.

- The texts on the left are purely orientative, both in copy and design. The player having the current move should be highlighted (but I have my limits with Gimp and starts to be late here).

- As you see from the opening identified, it asumes some database working in the background. Just like a score that could be added to see how well are you performing. These fields are optional and the UI should work equally well without them.

- The day we have chat, the messages would show up with transparency on the left side. The board is never covered.

c0rt3x 2009-11-01 21:37

Re: Contributors needed: the killer free chess game for Maemo
 
Quote:

Originally Posted by allnameswereout (Post 363126)
Not only fancy, also fun to the casual chess player or beginner. So, it depends on target user you trying to cater to.

3D view is completely unplayable... especially for bullet and blixt games. But it's fine as long as you play offline versus the N900, without time limits that is.


All times are GMT. The time now is 11:21.

vBulletin® Version 3.8.8