This team project was created during the course Softwareentwicklungspraktikum (SEP, english Software Development Lab) at university. In SEP, task is to develop a relatively big software project, with topics being specified by the computer science institutes. Besides the actual programming, task is to hand in substantial documentation, e.g. system specification, drafts and test documentation. At midterm, a prototype has to be runnable for a presentation and at the end of the semester the annual Day of the Young Software Developers takes place, at which all projects are presented publicly and are reviewed.
Our task was to develop a 3D game in C++ with the main character being a bird. Nothing special thus far. But controls via keyboard, mouse or joystick was prohibited, only input device was the Microsoft Kinect. The team had six members (alphabetically): Vildan Bagyetistiren, Dennis Franke, Ariana Prekazi, Julius Saretzki, Maximilian Töpfer and me.
The game has a short story in which the bird starts in heaven and asks himself why he died. So he heads back to earth to find out the reason.
The first level starts in heaven above clouds and gives the player time to get familiar with the gesture controls via the Microsoft Kinect. The player may fly around as much as he wants and can try to collect fruits that fall down for targeted practice. The level is finished once the player flies below the clouds.
The first real task is in level 2. The bird dives down to earth and has to collect fruits and optionally hearts while avoiding clouds. If he hits a cloud he loses one life point, which can be refilled by collecting hearts though. Target is to reach a certain point limit by collecting fruits which are worth different amounts of points.
Arrived at earth, task in level 3 is to throw eggs at moles. But the moles do not like that and throw coffee machines at the player who loses a life point when being hit. In this level there are also hearts falling down to re-fill the life points. After two areas with three small moles each, the player arrives at a colossal mole throwing coffee machines sized correspondingly. When finally having beat this mole, the game is over.
In level 2 as well as level 3, the player must not lose all the life points or he has to re-start the respective level.
Development and background
As it can be guessed, we had much fun developing the game CrazyChicken. Not only my arms - amongst other things I implemented the control gestures - hurt from time to time due to extensive testing.
For development, we used the Eclipse IDE with CDT, an SVN version control server given by the institute and Blender to create the models used in the game. For rendering, Ogre3D was used with an OgreSound plugin for including background music and sound effects. To access the Microsoft Kinect, OpenNI and NITE worked in the background.