Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Network Manager

This is an archived page!
This page is very old and the content is not up to date.
Not everything (if any) which is written here will be in the final game!

ToDo

ToDos/Inputs for the Network Interface:

  1. Adjust Synchronizeable Arch
    • [DONE] Registration for variables (pointer, type) → see uml diagram
    • [DONE] data compression (zlib)
  1. Player stats
  • [DONE] structure to store/share stats over network (PlayerStats)
  • [NOT NEEDED] ability to listen to changes
  1. NetworkGameManager
  • [DONE] handle teamchanges / player names / …
  • respawn
  1. Synchronizeables
  • [DONE] implement event based sync
  • [DONE] do less polling :D
  1. NetworkStream
  • [DONE] create datastructure which represents player (id, socket, …)
  • attach synchronized (the same on all clients) timestamp to packets to predict movement
  • traffic shaping
  1. Collision detection
  • both (server and client) do collision detection
    • client: collision with objects/walls, but don't decrease health
    • server: everything, tell client to decrease health
  1. Other (important)
  • [DONE] network monitoring ability (telnet, http, …)
  1. Other
  • auto find lan servers
  • global server for internet servers

Advanced Feature Requests

  • [DONE ]UDP implementation (games programming community is not sure, if this realy is better: faster for sure but does this overwight reliability?) I can't agree that UDP gives a *better* performance. A faster performance, almost definitely. (Elden Armbrust)
  • One novelty you might try is give some graphical hint as to how much lag there is .. eg blur vision or something so the player can take the lag into account.

Documents

More information here:

Last modified 7 years ago Last modified on Apr 15, 2017, 2:54:59 PM