Modular Collisions

From BZFlagWiki
Jump to: navigation, search

In present trunk code, collisions between tanks and shots are detected and reported from clients and do not undergo any kind of server-side verification. This is a straightforward approach that allows for a single authority on collisions and keeps the synchronization issues at a minimum, but because the server does not verify the information sent by the clients, it is possible to modify clients to have a smaller hit zone (or none at all). Thanks to lag compensation and timestamps in messages, the server has all the information it needs to do basic checks on collisions between tanks and shots. Implementing such a verification system is the goal of the collisions branch, which is the subject of one of the 2008 Google Summer of Code students' projects.