Open main menu


→‎Introduction: link some blogs
== Introduction ==
We have a list of potential tasks further down on this page, but before you look at them, perhaps you'd like to take a look at some of the successful projects from previous years! We encourage all of our students to maintain a blog during their summer work, which is a nice way to get some sense of what they accomplished.
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]]([ blog]), [[The Prince and the Coward]] ([ blog]) and [[Avalanche]] into ScummVM. In fact, our support for the [[Wintermute]] engine was not only started by a GSoC student([ blog]), who integrated the code into our tree, but also [[Wintermute/Games|drastically improved]] by another student a year later.
[[File:GSOC_EMI.png|160px]] [[File:GSOC_zvision.png|152px]] [[File:GSOC_EMI_asm.png|147px]]
A more 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([ blog], [ blog]), and the work on improving [[Operation Stealth]]([ blog]). Another option is to work on merging someone else's reverse engineering work, such as was done with the [[ZVision]] engine([ blog]).
If you'd prefer to improve ScummVM more directly, there are even more options available there; in the past, students have (to give some examples) improved our OpenGL support, added a testing framework([ blog]), improved our scaler code ([ blog]), written a new GUI framework, improved sound format support added loadable modules for embedded platforms ([ blog]), rearchitected our keyboard input code ([ blog]) 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!
== Tasks ==