To ensure adequate observations and depth of analysis, we implemented a replay system to record all events and inputs from play sessions and to conduct analysis based on this replay data.
This allows us to do multiple predictions per update i. The replay system is a server-side implementation that is designed to accurately playback all game actions and events exactly as they were recorded. The replay system records all relevant information from a play session as it happens. It records player input, births time i. Player input records consist of a time stamp, directional information, and mouse input at every update of the simulation.
A player snapshot consists of all state information that is important to gameplay, namely: player position, velocity, health, and ammo. After recording all necessary data, the system can then play it back. This is done by spawning a given player at its recorded birth time. Then, as the simulation progresses, the time stamp of the input record that is next to execute is checked.
If it is time to execute this input, it gets executed. The same is done for the snapshot records. Once the death time of the player is reached, the player is killed. In this way, all recorded data is played back, such that an entire game play session can be observed after it has been recorded. Our test environment also has the capability to run and evaluate dead reckoning schemes and to measure and record metrics associated with each such scheme. At each update of the playback simulation, the replay system can check any number of criteria in order to decide if a simulated dead reckoning prediction should be made.
To do so, the replay system must know the positional history of all objects. It achieves this by recording player positional data at each update of the simulation. From the latter, it can predict a position at the current time, as well as measure how accurate the prediction is by comparing it to the current position. That is, since the replay system makes only simulated dead reckoning predictions, we can easily compare such predictions against the actual player data.
In particular, we can compute how far away the predicted position is from the actual position and measure the number of packets that would be sent by the current dead reckoning scheme as will be explained shortly. For the training and evaluation of our algorithm, we ran in total 3 play sessions of our 2D networked multiplayer game Ethereal.
Table 2 outlines the number of players in and duration i. All participants were avid for professional video game players, male, between the ages of 17 and 30, and they were either undergraduate students, graduate students, or graduates.
We used sessions 1 and 3 25 participants for our evaluations. We chose this many players as they constitute a representative set of set of the actual players that would be seen in an online game playing community. Furthermore, this size of sample follows suit with the sample sizes of similar studies.
Finally, teams within a game were organized with respect to the configuration of the room so that players sitting close to each other were on the same team, allowing them to discuss strategy.
The play sessions were conducted in a local-area network LAN scenario, and thus while playing, players experienced near perfect network conditions. We experimented with different prediction methods, analyzing them with our replay system. We can setup any amount of delay into the simulation and test the predicted position against the actual position of any player. At the time of making a prediction, we can then measure different metrics.
We measured the average export error AEE , the number of hits, and the number of packets sent. We believe that these metrics accurately test and contrast the accuracy of these dead reckoning schemes.
AEE is the average distance from the predicted position and the actual position of the player for all predictions made. To calculate it, we take the median of all export errors at fixed intervals of time e. The calculation of AEE is shown in Here, is the total number of predictions made throughout the lifetime of all replay data.
The AEE is a measurement of how similar the estimated behaviour of a player is related to the true and actual movement of a player. The AEE is the best metric in determining the accuracy of any given prediction method:. The next metric we take is hits. A hit is defined as when the predicted location is within a specific threshold measured in pixels of the actual position.
It is taken at specific points in time. This metric measures how many times the prediction scheme has predicted a position correctly. Whenever the position of the player is accurately predicted as a hit, this means that the play experience is improved for the player because it means that the estimated player position will not have to be corrected to the actual player position.
We also measure the number of packets that need to be transmitted over the network during each session of play. This is done by assuming that a packet only needs to be sent when the predicted position of the player is more than a certain static threshold distance away from the actual position of the player. We use a threshold of because it is less than the width of a player.
Measuring the number of packets sent is done in order to evaluate network traffic which, ideally, should be as low as possible. Network bandwidth is often a performance bottleneck for distributed interactive simulations. When there are less packets that need to be sent per object, the game can replicate more objects over the network. We present packets sent as a single integer, representing the total number of packets that have been sent throughout all play sessions that were conducted.
To ensure we test our prediction scheme against other prediction schemes in identical situations of play, we make a prediction and measure its accuracy as often as possible. Instead of simulating realistic lag onto the players at the moment of play, we test our prediction scheme at every update of the simulation during replay playback of the recorded replay data.
Furthermore, at each tick of the simulation, we test lag at varying degrees of network delay. We do 7 predictions per update of the simulation for each and every player in the game. We use nonrandom, deterministic lag intervals to ensure that analysis and comparison are done absolutely fair, such that nothing is left to chance.
Combining testing prediction at every update of the simulation with an all-encompassing approach to lag simulation allows the testing of every possible game scenario at every level of lag with each dead reckoning scheme. Finally, we remark that jitter is not addressed in this work. In this subsection, the results of our experiments with our different versions of EKB are described. The discussion is organized with respect to each metric we consider: AEE, then number of hits, and finally packets sent.
The average export error AEE is the discrepancy between the actual location of the player and the predicted location of the player in pixels. AEE increases as prediction time increases. This suggests that the EKB performs better under higher latency conditions. We introduced the hybrid method to increase the number of hits and decrease the number of packets sent. While it does this effectively, it also has the effect of lowering the accuracy of the AEE.
Table 4 shows the same data. The number of hits without using the hybrid method was much lower than with, and this is why we introduced the hybrid method. The fact that the hybrid method has the effect of improving the number of total hits while at the same time lowering AEE accuracy demonstrates that although the position of the player is often accurately predicted, it does not mean that the position of the player is overall better approximated.
The hybrid method improves the number of hits because it allows for frequent predictions of the player moving in a straight line, during which time it is exactly accurate in predicting the player as long as the player is moving linearly.
Without the hybrid scheme, the EKB does approximate the player relatively accurate but does not produce as many exact predictions of player position. We also measure the number of dead reckoning packets or position packets that need to be sent through the network. Instead, as explained earlier, we work under the assumption that a packet is sent only when the predicted position is a certain threshold distance away from the actual position of the player. To calculate packets sent per second, we add up all the packets that would be sent in this way for each dead reckoning algorithm and then divide it by total time of the play session such that we obtain a measure of packets sent per second.
Figure 9 shows the number of packets required to be sent by the different versions of EKB. We observe that the hybrid method reduces the number of packets that need to be sent. From this figure we can see that the OAEKB considerably lowers the overall prediction error when predicting at large amounts of network delay. It considers various factors that would affect the player in the context of the game and uses these to predict the path of the player.
We then measure the number of times each algorithm makes an accurate hit. Figure 11 lays out the number of hits that were recorded at each given time interval. Table 6 shows the same data as Figure The strength of the TDM is its ability to predict an object moving in a linear direction. The total number of hits as shown in Figure 12 is calculated by taking a mean calculation of all the previous hit percentage results. This is because the TDM predicts very accurately when a player moves in a single direction, which is often the case.
The IS performed poorly because it failed to account for the case when a player would move in a straight line for an extended period of time. The IS assumes that the player will maintain the original velocity for only a relatively short amount of time. We also measure the number of packets that need to be transmitted over the network during each time interval we monitor.
This is because the AEE is a measure of overall accuracy, while hits and packets sent are concerned with making a binary observation of whether the prediction was within a small threshold or not. The strength of the TDM is in its ability to perfectly predict the player, as long as this player is moving in a constant direction.
The strength of hybrid OAEKB is that it selectively chooses to predict the player moving in a constant direction or to a defined behaviour. In this way, AEE can be improved without adversely affecting the number of hits made or the number of packets sent.
In light of the limitations observed in existing work on dead reckoning, we have proposed here a new prediction scheme that relies on user play patterns. Our research takes place in the context of a 2D top-down multiplayer online game we have developed.
We emphasize that both the proposed play patterns and algorithms proceed from the data collected for a specific 2D multiplayer competitive game opposing two teams and in which players have freedom to move in all directions without gravity. We observe that traditional 3D first-person shooter games, such as Unreal Tournament , Quake III , and Counter-Strike , employ mostly 2-dimensional player motion aside from jumping.
Thus, our algorithms could be well-suited for these kinds of games as well. However, our algorithms specifically assume there are teams of players. Thus, the generalization of our results to other types of games still constitutes future work. Furthermore, we remark that we still adopt a simple approach to prediction. More complex schemes that in the spirit of swarm artificial intelligence would enable a player to simultaneously use multiple strategies taking into account many possible scenarios are beyond the scope of our current research.
Additionally, we would like to explore the potential for our method to take into account past decisions and play styles of the player to increase prediction accuracy. Our method assumes all players are interested at the same rate in following teammates and reacting to enemy players. In reality, many players possess differing play styles and skill levels and will react differently in any given situation.
Utilizing machine learning or data analytics with this in mind could provide greatly improved results. Just by playing, a user could see automatically personalized improvements in prediction. We would also like to experiment with taking into account the play styles associated with different weapons or character classes in order to increase prediction accuracy. Many games have different ways to interact in the world such as different weapons and characters to use that can greatly change how a player interacts with teammates and enemies.
Building a framework that would allow knowledge of such factors could increase prediction accuracy even further. We would like to improve upon how the desired position is calculated for the player.
This may be caused by the fact that the position that is currently being used to predict where the player would like to be is fundamentally incorrect. More work should be done in finding exactly where the player would like to be at any given time. Another difficult question we hope to eventually address pertains to the possibility that users could possibly adapt their input based on the network latency they are currently experiencing.
Finally, work needs to be done in order to reduce the number of packets that are sent over the network. Though each of the 3 versions of the EKB results in improved AEE and hits over the two other dead reckoning methods we considered, it does so with no improvement to network traffic. Box 1 is an example of the raw gameplay data recorded from a play session. The authors declare that there is no conflict of interest regarding the publication of this paper. This is an open access article distributed under the Creative Commons Attribution License , which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Article of the Year Award: Outstanding research contributions of , as selected by our Chief Editors.
Read the winning articles. Journal overview. Special Issues. Academic Editor: Abdennour El Rhalibi. Received 05 Jan Revised 27 Mar This service is more advanced with JavaScript available. Encyclopedia of Multimedia Edition.
Editors: Borko Furht. Contents Search. Dead Reckoning. How to cite. Contents Search. Dead Reckoning. How to cite. This is a preview of subscription content, log in to check access. Aggarwal, H. Read Article. Download PDF. Share Full Text for Free. Web of Science. Let us know here. System error. Please try again! How was the reading experience on this article? The text was blurry Page doesn't load Other:. Details Include any more information that will help us locate the issue and fix it faster for you.
Thank you for submitting a report! Submitting a report will send us an email through our customer support system.
0コメント