HouraiTeahouse / FantasyCrescendo

A 2.5D Touhou Platform Fighter, By the fans, for the fans.
https://docs.houraiteahouse.net/FantasyCrescendo
GNU General Public License v2.0
105 stars 29 forks source link

Delta compress state data #265

Closed james7132 closed 4 years ago

james7132 commented 6 years ago

This might require momentary reliable sequenced communication to transfer a snapshot of the game state, then send momentary deltas relative to that snapshot. This can strongly reduce the bandwidth used by the server. Example: send snapshot every second, then delta every 1/15 of a second. This can be used to decrease overall bandwidth while increasing synchronization rate.

This has already been applied to player input as a form of bandwidth reduction.

james7132 commented 6 years ago

This may require evaluation of whether this is worth it or not. Most of the packets we are sending are somewhere in the 20-50 byte range before LZ4 compression. At the current size, we might actually increase bandwidth usage if we implemented delta compression and increased send rate.