News
Due to several requests the final presentation date was postponed to: 13.08.2014, 9:50-11:30. It will take place in room E202. The meeting on July 30th remains valid and will be used for feedback.
We have set up a mailing list for the course. If you did not get a welcome e-mail from the list, please sign up here. You can use the list for all general questions or to find a team if you do not have one.
Meetings and Slides
Initial Meeting | 23.04., 9:50-11:30, A313 | Introduction & Organization |
slides console demo source code |
Phase 1 | 30.04., 9:50-11:30, A313 | Game concept, initial implementation | slides |
Phase 2 | 14.05., 9:50-11:30, A313 | Interest Management | slides |
Phase 3 | 28.05., 9:50-11:30, A313 | Communication protocol | slides |
Phase 4 | 11.06., 9:50-11:30, A313 | Half time | slides |
Phase 5 | 25.06., 9:50-11:30, A313 | PlanetLab | slides |
Phase 6 | 09.07., 9:50-11:30, A313 | ||
Phase 7 | 30.07., 9:50-11:30, A313 | ||
Final Presentation | 13.08., 9:50-11:30, E202 | ||
Delivery of Report and Source Code | 31.08., 23:59 |
Registration
Please register via TUCaN or write us an email.Topic
In this year's lab course, we explore peer-to-peer mechanisms for state management in multiplayer online games. The virtual worlds of such games typically contain lots of objects, each having its own (modifiable) state. With the peer-to-peer approach, the game state is not managed centrally on a server, but distributed and replicated over all participating peers, avoiding the central single point of failure.
The peer-to-peer approach, however, has several challenges, such as:
- concurrent access to state,
- leaving and failing peers (churn),
- unbalanced load, and others.
Some the relevant issues are:
- agreement
- backup and failover
- load balancing
- scalability
Prerequisites
- Programming in Java or C++
- Creativity
- Willingness to work in a team
Goals
- Understanding the concept of peer-to-peer computing
- Implementing and testing large-scale network applications
- Successfully work in a team
Language
The lab will be held in English. All students' presentations and texts can either be in English or German (English preferred).