Since the coding period of the Google Summer of Code is nearing dangerously, I’ve decided to blog a bit about my project and post some updates. The project I will be working on this year is, as I already mentioned, ScummVM. As some of you may know, ScummVM is a collection of engine reimplementations for old adventure games (e.g. The Secret of Monkey Island, a game we all know and love). Since one of its goals is to be highly portable, it enables one to play those games on a variety of architectures, provided you have access to the original game data files.
My specific assignment is to reimplement an old Czech adventure game called Dračí Historie (meaning Dragon History). The game was written in 1995 by a group of highschool students and soon became very popular, selling around 7000 copies and becoming the first Czech game to be released on a CD. The game has been open sourced since and the engine code (in Pascal, with some bits in assembly) is available on the game’s website. My mentors for the project are Eugene Sandulenko (of ScummVM) and Robert Špalek (who is in fact one of the original programmers of the game).
My first task will be to implement the BAR archiver which is the archiver the game uses for storing its data. I’ve exchanged a number of e-mails with Robert and he has been very helpful with discussing the engine with me; he was also kind enough to translate the identifiers and comments in the original source code for the archiver (which were in Czech). Since the coding period starts tomorrow, this is what I’ll be working on.
I’ve also had an interesting IRC meeting with Eugene last night to discuss the schedule for the next two weeks during which he will be absent. We’ve agreed that I should develop in small, incremental steps, gradually adding pieces of the game, and not by overdesigning or trying to get everything up and running at once. That way development won’t be boring and I can monitor my own progress. He also gave me some valuable advice on debugging the engine and how I should approach the development of the game’s bytecode parser/interpreter.
I wish all the GSOCers a good coding day tomorrow. Happy hacking!