Networking

From FIFE development wiki
Jump to: navigation, search

This article is outdated and is just stored for archive purposes. Archived.png

This article became outdated and is just stored for archive purposes in this wiki. There are several reasons why an article could become outdated. The development team may have decided to use a different concept or even the author itself felt that the article is not really up-to-date with the current development status of the project anymore.

Overview

At the moment I am considering a TCP over UDP type system, with the two flags, one that guarantees that packets arrive at their destination and another that will guarantee they arrive in order.

Implementation

A rough idea would be including an id with each UDP packet, and after a set amount of time, based on network latency, send back to the server with a list of the ids that were received and the server can resend the packets that were not received, if the server does not receive the update packet then it resends all.

Possible implementation options

3rd party libraries

Alternatives

  • Pure BSD socket implementation via the Python standard library.
  • Pure BSD socket implementation via platform specific C libraries.

Former networking article

The old networking article was moved to Networking (deprecated). The author of the old article has left the project and it's unlikely that he returns and resumes working on the networking functionality.

First of all I do not think that support for a server should be part of the engine, that can be written separately, it doesn't really have a place within the engine because what is a server going to do with graphics, sound, etc... If anyone disagrees feel free to chime in.