[gcompris-devel] Would like to extend the Chess MoveLearn sub-application for Sugar OLPC : how is architectured GCompris ?

Bruno Coudoin bruno.coudoin at gcompris.net
Sun Jun 30 16:38:45 UTC 2013


Le 28/06/2013 11:25, laurent bernabe a écrit :
> Hello everyone,
>
> I've just suscribed to this mailing list.
>
> I plan to extend the Sugar OLPC port of GCompris Chess MoveLearn (and why
> not the already existing os-agnostic one if I have the level and if you
> agree ?) : http://activities.sugarlabs.org/en-US/sugar/addon/4106
>
> What I want to do is to implement a very basic way to learn pieces movement
> : "Can this piece move to this cell ?", "Can this piece capture this one
> ?", with an highlight of the destination cell, and just the needed pieces
> (kings may not be there). And also add a "Theory mode" : where one person
> can learn just by reading and watching the little animations.
> I think this feature can be added as a new mode to the Chess MoveLearn
> application.
>
> So I've looked at the source code, but in the SugarLabs Git repository, and
> I have noticed that :
>
>     -
>     - the boards implementations are written in C language, under the
>     src/boards folder
>     - the xml definition of the board is defined in boards/
>     chess_movelearn.xml.in
>     - the pieces are in the boards/chess folder
>
> I have a good OOP knowledge (Java, Python), but I also a quite good
> knowledge in C language : what else must I know in order to get started ?
> Is there a simple way to fork the project, so that if I manage to extend
> the project I can suggest you my changes ?
>
Hi,

I saw you found the wiki with all the developers information you need.

Concerning the chess code, we are driving gnuchess in the backend 
through a text based interface. This is not as reliable as an API and 
thus any changes in the output breaks GCompris. This is why I ended up 
including and distributing a version of gnuchess that we support.

For having a version without a king, this is not possible to do this 
with gnuchess. For sure a chess engine without a king would not know 
what to do.

If you end up with something interesting, I'll be glad to incorporate 
your work in GCompris.

Bruno.





More information about the Gcompris-devel mailing list