Wiki - GiovanniGiampaolo/OSProject GitHub Wiki
Project done during the courses of Operating System operated by G.Grisetti, Sapienza University of Rome
Main purpose it's to create a VideoGame following those steps
-
implement a distributed videogame Server Side:
- the server operates in both TCP and UDP
TCP Part
- registerning a new client when it comes online
- deregistering a client when it goes offline
- sending the map, when the client requests it
- UDP part
- the server receives preiodic upates from the client in the form of <timestamp, translational acceleration, rotational acceleration> Each "epoch" it integrates the messages from the clients, and sends back a state update
- the server sends to each connected client the position of the agents around him
Client side
-
the client does the following
-
connects to the server (TCP)
-
requests the map, and gets an ID from the server (TCP)
-
receives udates on the state from the server
-
periodically
- updates the viewer (provided)
- reads either keyboard or joystick
- sends the packet of the control to the server
- the server operates in both TCP and UDP
TCP Part