This page is kept for historical purposes only. Please see the home page for my current situation. —Luca Saiu.

DLL: Big Project [Ce sujet reste identique pour le rattrapage.]

You have to work on the latest version of guile-game, which as of this time is 0.0.8 (version 0.0.7 contained wrong log files, with the protocol of previous single-ball versions). You should know how to use it by now: I've explained it in lab session 5, and the tarball also contains a README file.


Since many students have had problems with previous lab sessions, I've simplified the project - but not to the point of making a mockery of it.

Rappelez-vous que le choix entre projet et devoir est exclusif : si vous me donnez un devoir vous perdez le droit de faire le projet, et vice versa.

Date limite: le 16 juin 2011 le 1er février 2011, une semaine avant le jury.

The task

Your big project task is similar to a previous one: you have to create another client by copying and modifying the client source code, and make it play against the original client. Yours should play substantially better; an obvious strategy for the old task was computing the impact point and moving towards it, instead of towards the current position of the ball...

The only important difference is that the new version of guile-game contains a Pong game with three balls. Use some intelligent strategy, for example a variant of the strategy outlined above. Of course you won't be able to hit every ball, but you should play better than my client.

By necessity the protocol has changed a little, because now the pong "world" is a little more complex; but it remains easy to understand. And you don't need to modify the server or the monitor at all.

Hints: see previous lab sessions, such as this and this. Of course you have to also pay attention to legal issues: you must include correct copyright and license notices.

2010-12-12: simplification

If you prefer you can work with two balls instead of three; playing well becomes even easier that way: just modify the definition of ball-no in blobs/server.scm and recompile.

Back to my home page...

Luca Saiu
Last modified: 2011-05-17
Copyright © 2010 Luca Saiu