If you'd like to get involved in ScummVM - or one of our sister projects, such as ResidualVM - we'd love to help you get started!
We've had a lot of successful student projects as part of Google's Summer of Code in previous years -- we hope to inspire you to work with us and (hopefully) add your own success.
Most importantly, we'd like you to join our community. There are many previous GSoC participants who are still involved in our project, and whether or not you participate as part of Summer of Code, we'd love for you to get involved too.
You should come to our IRC Channel and introduce yourself! We're friendly, and it's often the easiest way to ask questions about the tasks and the code in general. The channel is the main form of everyday communication for the project, and there will almost always be developers there who can discuss your project ideas, answer questions and help out.
One popular type of task is to improve our support for the games you love, whether this means a new game engine, or helping us to perfect an existing one.
Sometimes source code is available - in recent summers, students integrated code supporting games such as Sfinx, The Prince and the Coward and Avalanche into ScummVM. In fact, our support for the Wintermute engine was not only started by a GSoC student, who integrated the code into our tree, but also drastically improved by another student a year later.
Amore challenging (but hopefully rewarding) idea is to start (or continue) reverse engineering a game where no source is available. Two good examples are the pair of students who drastically improved ResidualVM's support for Escape from Monkey Island, and the work on improving Operation Stealth. Another option is to work on merging someone else's reverse engineering work, such as was done with the ZVision engine.
If you'd prefer to improve ScummVM more directly, there are even more options available there; in the past, students have improved our OpenGL support, added a testing framework, written a new GUI framework, improved sound format support and added support for high-colour (16bpp and above) graphics. It's difficult for us to imagine ScummVM as it was before some of these projects, you can make a huge difference!
Technical contacts: Fuzzie
Many 90s-era adventure games were developed using the Macromedia (now Adobe) Director tool. It would be nice to be able to play these games in ScummVM! We have Python code available which can parse and display the contents of Director 2 and Director 3 'movie' files. This should be enough to implement a ScummVM engine to allow some early Director adventures to be played; for example, parsing the movie files, implementing the frame-based playback system, drawing bitmaps and shapes, playing sounds and running some basic (Lingo) scripting.