Achieving Fairness in Multiplayer Network Games through Automated Latency Balancing S. Zander, I. Leeder, G. Armitage, J. But <szander,garmitage,jbut@swin.edu.au> <i_leeder@hotmail.com> Centre for Advanced Internet Architectures Swinburne University of Technology SIGCHI ACE 2005, June 15 th -17th Overview � Motivation � Fairness Approach � Implementation � Client-site Bots � Evaluation Results � Conclusions and Future Work SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 2 Swinburne University of Technology 1
Motivation � Multiplayer network games have become very popular and have evolved into some kind of sports � Competitions and leagues are very popular and comparable to sporting competitions � Professional gamers earn their living just by gaming; they have fans and TV shows � Many people playing on amateur level take it seriously � Games requiring fast player reactions are very sensitive to the Quality of Service (QoS) of the underlying computer network(s) � Fairness is very important � Game design (we do not talk about this) � Network QoS differences SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 3 Motivation cont’d � Focus on fast-paced games e.g. first person shooters where fast player reactions are crucial � Focus on latency/delay (also called lag) � Influence of jitter has not been sufficiently studied � Influence of packet loss is much smaller � Previous work has shown that � Efficiency of players decreases with increasing latency � Latency differences cause unfairness � Latency differences are caused by � Network access technology � Distance between client and server (propagation delay) � Congestion in the network SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 4 Swinburne University of Technology 2
Fairness Approach � Implement tool that automatically equalizes players latency by adding artificial lag � Evaluate effectiveness of approach using human or computer players � Compare ‘objective’ performance metrics (e.g. kill rate) for players (player groups) with different latencies � Use hypothesis testing to determine if differences are significant � If differences are significant there is unfairness � Eliminate factors other than delay SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 5 Implementation � Self-Adjusting Game Lagging SAGLU TrafficShaper Utility (SAGLU) � Game independent proxy- D ummyNet application between game n Comms clients and server G ameServer n Player � Extensible multithreaded C++ implementation Gam eType Half-Life � Retrieves player information from the server (IP address, Q uake2 port and latency) Q uake3Arena � Equalizes player latencies by adding fake delay EnemyTerritory SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 6 Swinburne University of Technology 3
Implementation cont’d � Delay adjustment algorithm � How to determine amount of additional artificial delay? � How to add the delay? � How frequently to measure player's network delay and adapt the additional delay? � Implemented simple algorithm for (i in 1:#Players) P[i].NetDelay = getNetDelay() for (i in 1:#Players) P[i].AddDelay = min(max(P[1:#Players].NetDelay), MaxTolerableDelay) – P[i].NetDelay if (P[i].AddDelay > 0) setAddDelay(P[i].IPAddress, P[i].Port, P[i].AddDelay) sleep(AdaptationIntervalTime) SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 7 Client-side Bots � Usability trials with human players � Necessary for conclusive evaluation � Human responses are highly unpredictable (very difficult to eliminate all unwanted factors) � Resource and cost intensive (time, equipment, money) � Client-side computer players (bots) � Easy to eliminate unwanted factors e.g. bots behave identical, do not get tired, do not change playing style etc. � Far less resources needed � Bots are different from humans � Incapable of complex navigation (only line of sight) � Very effective delay compensation (movement prediction) � But send real network traffic and therefore should be affected by network delay SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 8 Swinburne University of Technology 4
Evaluation � FreeBSD PC with 2.4GHz and 1.25GB RAM � Emulate network delay using dummynet � Static � Dynamic (changing every second with exponential distribution) � Small simple map without obstacles (e.g. lava pits, elevators) and powerful explosive weapons � 4 bot players (same configuration) � SAGLU adaptation interval of 5 seconds � Experiments � How do bots react to delay? � Do bots experience unfairness? � Can SAGLU balance unfair games? � Average results over 15 games (15 minutes duration) SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 9 Evaluation Results � How do bots do react to delay? Weapons used for kills (bots) Kill rate decrease (bots & humans) 1 .2 1 0 0 Quake 2 Bots static Shotgun Quake 2 Bots dynamic Blaster 1 .0 Quake 3 [5] 8 0 Machinegun N o rm a liz e d M e a n K ill R a te Quake 3 [6] Grenade 0 .8 6 0 K ills [% ] 0 .6 4 0 0 .4 2 0 0 .2 0 .0 0 0 100 200 300 400 0 100 200 300 400 Delay [ms] Delay [ms] SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 10 Swinburne University of Technology 5
Evaluation Results cont’d � Do bots experience unfairness and can SAGLU balance the games? Dynamic delays without SAGLU Dynamic delays with SAGLU 1 0 Non-lagged Non-lagged 1 0 Lagged Lagged M e a n K ill R a te [1 /m in u te ] M e a n K ill R a te [1 /m in u te ] 8 8 6 6 4 4 2 2 0 0 0 100 200 300 400 0 100 200 300 400 Delay [ms] Delay [ms] SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 11 Conclusions and Future Work � Client-side bots behave similar to humans � Kill rate decreases and weapons with area effects become more effective with increasing delay � Experience unfairness because of delay differences � But performance (kill rates) cannot be directly compared � SAGLU effectively balances the game (http://caia.swin.edu.au/genius/tools/saglu-0.1.tar.gz) � Usability trials with human players in real networks � Refine delay adjustment algorithm � Optimize parameters (e.g. adapt. interval, tolerable delay) � Measure performance and overhead SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 12 Swinburne University of Technology 6
Thanks for your attention! SIGCHI ACE 2005, June 15 th -17 th http://caia.swin.edu.au szander@swin.edu.au Page 13 Swinburne University of Technology 7
Recommend
More recommend