28-11-2015, 02:34 PM
Donc t'es conscient que ton système va générer des cas où le serveur va crasher, mais tu n'envisageras pas de changer d'implémentation quand même... Tu fais comme tu veux.
Le problème n'est pas uniquement le dépassement du tick, mais la durée pendant laquelle ce dépassement perdure. A 60Hz, un dépassement de 5% qui durera pendant tes 8 heures de sommeil génèrera une stack de 86.400 ticks de retard (sur 1.728.000 ticks) qui soit fera planter le serveur, soit devra être vidée (et on en revient à l'implé setTimeout, sans stack), soit fera accélérer le temps perçu in-game (en augmentant la capa serveur qui traitera donc plus de ticks/seconde et les joueurs verront un jeu qui s'accélère).
PS: Dans Medal Of Honor Allied Assaut (sûr de moi) et dans NeoAxis (moins sûr de moi), la fréquence des ticks peut être changée à la volée, sans que le jeu ne se mette à accélérer (ou ralentir).
Le problème n'est pas uniquement le dépassement du tick, mais la durée pendant laquelle ce dépassement perdure. A 60Hz, un dépassement de 5% qui durera pendant tes 8 heures de sommeil génèrera une stack de 86.400 ticks de retard (sur 1.728.000 ticks) qui soit fera planter le serveur, soit devra être vidée (et on en revient à l'implé setTimeout, sans stack), soit fera accélérer le temps perçu in-game (en augmentant la capa serveur qui traitera donc plus de ticks/seconde et les joueurs verront un jeu qui s'accélère).
PS: Dans Medal Of Honor Allied Assaut (sûr de moi) et dans NeoAxis (moins sûr de moi), la fréquence des ticks peut être changée à la volée, sans que le jeu ne se mette à accélérer (ou ralentir).