[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Developer Questions



I guess I'll introduce myself first, and mention why I'm working on crimson fields:


My name is Gil Pinheiro, I'm an 4th year undergrad at WLU (Ontario, Canada)
- I'm currently enrolled in a course on Artificial intelligence. The crux of
the course is a project, chosen by the student. Therein lies the reason for
this email - I'm going to add additional AI support to CF.

I've been hacking on the source for a week or so now, and though I don't have
much experience working on open projects, I've managed to abstract out a multiple
AI interface, and have added a game type that allows 2 AI to compete against
each other.

Principally, I'd like to merge this back into the main tree, but I am not sure
how to accomplish this, or even if its a good idea. Right now I'm using my own
SVN server to track my own local changes, and can generate DIFF files from it
to the main branch. 

Second, although my code works, I'm not sure that I understand the event handling
mechanism. Specifically what should I call to handle events during long processes
(such as when the AI is thinking) to ensure the UI does not 'hang'.

Right now my code has diverged quite significantly from the tree, I've done
some refactoring in some cases, with much more work to be done. At the moment
the build is stable with only a single serviceable AI (the stockAI, and a test
AI that does nothing). I would not recommend distribution, but would like feedback,
and a chance to share my work. 

Certainly I can tar.gz up my sources, or distribute a binary to see if the changes
are worthwhile. I would note however that the file format has changed, and any
compiled .sav, .lev would be incompatible.

It is actually pretty interesting to watch the two AIs battle it out.

There is more to say, but it can wait until later.