Classifying Dota 2 Hero Characters Based on Play Style and Performance Lynn Gao, James Judd, Dave Wong, and Jamie Lowder Abstract— In this paper, heroes from the video game Dota 2 are classified by hero identifier and the positional role most commonly assigned to that hero. Classification is based on play style and performance data. Dota 2 is a team-based, competitive video game with complex rules and strategy. There is an active community of professional teams and broadcasters, which make Dota 2 an integral part of the eSports community. We collect and label data from professional and public Dota 2 matches. Using this data and supervised learning techniques, we attempt to predict hero identifiers and positional roles. Logistic regression and random forest classification methods are used to train classifiers on labeled Dota 2 player data. These classifiers are used for prediction. We are able to classify Dota 2 heroes using data from professional matches with about 90% accuracy for hero positional role and 75% accuracy for hero identifier. Data from public matches is classified with about 85% accuracy for hero positional role and 75% accuracy for hero identifier. We conclude that classification of Dota 2 heroes by positional role and hero identifier is relatively accurate. I. INTRODUCTION In this paper, player controlled heroes from the video game Dota 2 are classified. Dota 2 is an action real-time strategy video game developed by the Valve Corporation and released in July 2013. In Dota 2, discrete matches take place featuring two teams of five players. Each player controls a single hero character throughout the course of a match, with the goal of defeating the opposing team. The performance and actions of heroes in a match tend to vary by hero. Accordingly, the performance of a hero in a match and the actions taken by a hero during a match are used for classification. A. Motivation In team sports, such as basketball or American football, players are commonly assigned to a particular position on the field of play. For example, a quarterback or lineman in American football, or a point guard in basketball. In some sports, physiological attributes and performance characteristics of players tend to vary based on position [1], [2], [3], [4], [5], [6]. It is not unreasonable to assume that a quarterback in American football might complete more passes than a lineman, or that a center in basketball might be the tallest player on the team. Much like traditional team sports, heroes in Dota 2 are assigned to positions that define the role of a hero in a match. Although Dota 2 is not a traditional team sport like basketball, it is still a team sport. Accordingly, we assume that performance characteristics of heroes will tend to vary based on position. It may seem odd to call Dota 2 a team sport. However, in recent years, team based professional video game competi- Fig. 1. Prize pools in millions of USD for major eSports events in 2013. tions, also known as eSports, have become prevalent due to the popularity of games like Dota 2 and League of Legends. Major international tournaments featuring large prize pools attract a vast number of viewers and have given rise to professional eSports teams. As shown in Figure 1, prize pools of major eSports events in 2013 have exceeded two million dollars. Recent major eSports events have attracted millions of viewers. The League of Legends Season 3 World Championship attracted over 32 million viewers and more than 8.5 million concurrent viewers. The Dota 2 International 3 Championships attracted over 1 million concurrent viewers. We now present a basic overview of the rules and strategy of Dota 2. We do this in order to give the reader a better understanding of our feature selection for classification. To clarify, in American football the number of pass completions might be a relevant feature to classify between a quarterback and a lineman. However, if the reader is unfamiliar with American football, this feature will be unintuitive. B. Dota 2 Basic Rules Dota 2 is a game involving two teams of five players. The game is played on a rectangular map, as shown in Figure 2. Each team occupies a fortified stronghold located at opposite corners of the map. In the center of each team’s stronghold there is a building known as the Ancient. A match is won when either team’s Ancient is destroyed. A team’s ancient and experience priority is the support. Heroes used for this position are usually strong early and weak later in the game. Supports usually help carries acquire gold and experience in the early game, and are later ‘carried’ to victory by the hero in the carry position. Solo lane heroes are given an average amount of gold and experience priority and perform well by themselves. They tend to be strong in the midgame. II. R ELATED W ORK Fig. 2. Dota 2 map. Fortified strongholds, ancients, and lanes (top, middle, bottom) are highlighted. In the bottom left corner resides the Radiant stronghold. In the top right corner is the Dire stronghold. The circles in the center of either stronghold are the Ancients. is invulnerable until a series of structures in at least one lane (top, middle, or bottom) is destroyed. In Dota 2 each player controls one hero. At the time of writing there are over 100 heroes available in the game. Each hero has a different set of attributes, meaning different heroes have different amounts of health, do different amounts of damage, etc. Every hero has a unique set of abilities. These abilities allow the hero to interact with the game world. An ability can be used to damage enemy heroes, heal allied heroes, etc. Heroes have six inventory slots. Items can be placed in inventory slots. An item somehow makes a hero more valuable. For example, items can give a hero more health, or cause a hero to deal more damage, etc. Throughout the course of a Dota 2 match, a hero will acquire gold and experience points. When a hero acquires enough experience points, the hero will level up. Upon level up, a hero will gain one skill point, which can be used to upgrade one of the hero’s abilities. Upgrading an ability will somehow make the ability better. The gold a hero acquires can be used to purchase items, which can be placed in the hero’s inventory slots. As mentioned earlier, items somehow make a hero more valuable. C. Dota 2 Basic Strategy In Dota 2 there are three positions: carry, solo lane, and support. As seen in Figure 3, positions are determined by the gold and experience priority of that position. Carry is the position with the highest gold and experience priority. The heroes used for this position are usually weak early and strong later in the game. The position with the lowest gold There is research which suggests that performance characteristics and physiological attributes of athletes vary based on position. In this section, a brief review of the literature surrounding the impact of positional role is conducted. Ziv and Lidor [5] studied the physical attributes, physiological characteristics, and on-court performances of female and male elite basketball players. They found that differences in physical attributes, physiological characteristics, and performance existed among positions and skill level. Ziv and Lidor [6] also conducted a similar study of handball players. They found that differences exist among handball players of different positions and skill levels in physical attributes, physiological characteristics, and performance. Salvo et al. [1] used a computerized match analysis system to study the motion characteristics of top class soccer players. They found that the distance traveled at various intensities varied by positional role and skill level. Nicholas [4] studied rugby union football players and found that the anthropometric and physiological characteristics of the players varied by positional role and playing standard. K¨okl¨u et al. [3] studied fitness characteristics of Turkish professional basketball players. They found that physical fitness characteristics tend to vary by position. Gocentas et al. [2] investigated the positionrelated differences in cardio respiratory functional capacity (physiological attribute) of elite basketball players. They found that there exist significant physiological differences between players of different positions. Overall, the work referenced above suggests that performance characteristics, and physical and physiological attributes tend to vary based on positional role in a variety of traditional team sports. Although the number of sports studied in the referenced work is limited, the research seems to suggest that that positional role has an impact on performance characteristics, and physical/physiological attributes regardless of the team sport. Accordingly, our assumption that these findings extend to Dota 2 does not seem unreasonable. Whether our assumption is reasonable or not will be further explored when we attempt classification of Dota 2 heroes by play style and performance. III. P RELIMINARIES AND P ROBLEM D EFINITION In this paper we classify Dota 2 heroes. In each game of Dota 2, a player controls one hero. Throughout the course of the match, the player performs various actions. These various actions are recorded and stored by the Valve Corporation and are accessible after a match has been completed. We define the actions a player takes during the game to be the play style and performance data associated with a player in a match. Fig. 3. Dota 2 positional roles sorted by gold and experience priority. Accordingly, for every game of Dota 2 there is performance and play style data associated with each hero in a match. This data is analogous to performance data in traditional team sports. For example, points scored in basketball or running yards in American football. To classify Dota 2 heroes we rely heavily on supervised learning techniques. In general, these techniques involve a data set Q of size n elements. This data set is comprised of label, data pairs {yi , xi }ni=1 . yi is the label associated with a d dimensional vector xi . The elements of xi are data {xj }dj=1 . In our case the elements of xi are Dota 2 performance and play style data. The collection of labels yi and data vectors xi in data set Q are used to train a classifier. After being trained, this classifier can be used to predict the label yz of a data vector xz . In our problem, we have two labels associated with a data vector, yi and zi , representing the numerical identifier of a hero and the role the hero is most commonly used for, respectively. We collect a data vector xi for each player in a Dota 2 match, each player controlling one hero. We use supervised learning techniques to classify either hero role or hero identifier. Essentially, we have two data sets: {yi , xi }ni=1 and {zi , xi }ni=1 . We train a classifier using the data vector and either the hero identifier or the hero role. After training, we use the classifier to predict either the hero identifier yi or the hero role zi . The accuracy of the classifier is defined to be the percentage of labels which the classifier accurately predicts. In essence, we collect play style and performance data from Dota 2 matches. We use this data and labels associated with this data to train a classifier. We then use this classifier to predict the labels associated with play style and performance data. We define the accuracy of a classifier to be the percentage of data the classifier accurately predicts labels for. IV. A PPROACH We classify Dota 2 heroes by hero identifier and the positional role most commonly assigned to a hero. We perform this classification based on play style and performance data obtained from Dota 2 matches. A single data point is defined as the performance and play style data for one player controlling one hero during the course of one match. The specific performance and play style data utilized is explained later in this section. Each match features 10 players each controlling one hero, hence we collect ten data points per match. The data we collect is labelled using two labels: the numerical identifier (ID) of the hero and the positional role most commonly assigned to the hero. The numerical ID of the hero is a number which uniquely identifies a particular hero. At the time of writing, there are 108 heroes in Dota 2, hence this number is a number from 1-108. The positional role is a number which uniquely identifies the position a hero is most commonly assigned to. There are three roles, hence the role identifiers are 1) Carry 2) Solo lane 3) Support Classification is performed separately using either of these two labels, but not using both labels. This fits the problem description where we classify heroes by ID and hero positional role separately. We collect two data sets: a professional data set and public data set. The professional data set is comprised of matches played which took place during The International 3 Dota 2 Championships in August 2013. The International is an annual invitational Dota 2 tournament. The Valve Corporation invites the top professional Dota 2 teams from around the world to participate in this tournament. Accordingly, the professional data set is comprised of data from the top professional Dota 2 players in the world. This data is equivalent to basketball data collected from the National Basketball Associated Playoffs. The data collected from The International 3 are assumed to be high quality and are not filtered by match duration. We include only normal Dota 2 matches from The International 3. To clarify, we exclude the solo championship matches and the all-star show match. The public data set is comprised of matches which were created by Valve’s public matchmaking service. Valve uses a matchmaking service to match players of appropriate skill levels together from the pool of all players currently searching for a match. There is no restriction on player skill to participate in public matchmaking. Accordingly, matches in the public data set consist of very low skill matches to matches of players with near professional skill levels. Because the matches in public matchmaking are not guaranteed to be high quality, we restrict the matches we collect by balance patch, duration, lobby type, and game mode. In addition, we only use player data from players where the player was connected to the game for the entire match. It is possible for a player to disconnect from and abandon a Dota 2 match. This behavior is heavily discouraged by Valve, but it does happen. In an attempt to avoid data from a player which played in only part of a match, we filter players who disconnected or abandoned from a game. In the public data set we collect matches which took place during June, 2013. All the matches collected took place during Dota 2 balance patch 6.78. Balance patches in Dota 2 are periodically released and adjust settings in the game in an attempt to prevent heroes or items in the game from being too powerful or weak. Sometimes balance patches change the positional role of a hero or remove a hero from the game. Accordingly, we collect matches which took place during a single balance patch. Matches in the public data are between 20 and 80 minutes in duration. This filtering is done in an attempt to avoid low quality matches. Matches in Dota 2 are typically 25-50 minutes in duration. Occasionally matches last longer than 60 minutes, and extremely rarely matches last less than 20 minutes. By filtering very short or long matches, we attempt to eliminate outliers from the public match data. The public data set is filtered by lobby type (matchmaking type) and game mode. We only collect data from matches featuring ten human players created using public matchmaking lobbies, where players queue solo or in groups of one to five players. We restrict the game modes to normal, team based Dota 2 game modes. We exclude special seasonal game modes and game modes dedicated for new players. The allowable game modes are • • • • • • • All Pick Captains Mode Captains Draft Single Draft Random Draft All Random Compendium Matchmaking The remainder of this section describes our methods. We first discuss the methods by which we collect both our data sets. Then we discuss feature selection. Finally we discuss the supervised learning methods we use to classify our data. A. Data Collection In this section we introduce the methods by which data is collected and prepared for classification. We obtain match data for both data sets via the Valve Dota 2 match history web application programming interface (WebAPI). Data obtained from the match history WebAPI includes detailed information about a Dota 2 match and each of the players in that match. We use the data available from the WebAPI to collect data from matches which meet the criteria stated above. Data regarding player performance, items a player had in their inventory at the end of a match, and the order a player upgraded the abilities of their hero is obtained from the WebAPI. The professional data set consists of 124 matches that took place during The International 3. This data is assumed to be high quality, so this data set contains 1,240 data points. The public data set consists of 12,000 matches that took place during June 2013 and balance patch 6.78. This data is filtered to avoid low quality data, so this data set contains 110,979 data points. B. Feature Selection In this section we discuss the features we extract from the data. These features are used for hero classification. For the purpose of classification, we transform the hero data collected into features. We use 275 features per data point. These features can be divided into three categories: 1) Performance (10 features) 2) Items (240 features) 3) Ability upgrades (25 features) 1) Performance Features: Performance features are data regarding hero performance during a match normalized based on the duration of a match. Dota 2 matches have no guaranteed length. The duration of a match may affect the amount of gold a hero acquires during a match, the number of assists a hero has during a match, etc. These features are analogous to performance data in other sports. For example, points scored in basketball or passing yards in American football. There are ten performance features for each data point. These features are per minute: 1) Kills 2) Deaths 3) Assists 4) Gold earned 5) Experience points acquired 6) Damage done to enemy heroes 7) Damage done to enemy towers 8) Health points of allied heroes healed Per ten minutes: 9) Last hits (creeps killed) 10) Denies (creeps denied) 2) Item Features: At the time of writing, there are 240 unique items in Dota 2. We generate 240 features per player, one for each item. Each item has a unique numerical identifier from 1-240. We collect the ID’s of the items which a player had in their inventory at the end of a match. Items are expensive and not usually replaced throughout the course of a match. Accordingly, the items in a player’s inventory at the end of a match are a relatively decent indicator of the items a player purchased across the course of a match. We transform the item into features by creating a length 240 array filled with 0’s. Values in the array corresponding to the ID’s of the items the player had in their inventory at the end of the match are set to 1. The values at all other indices remain 0. Accordingly, there can be at most 6 1’s set in this array because a player has 6 inventory slots. For example, if a player had items 1, 100, and 132 in their inventory at the end of a match. Indices 1, 100, and 132 in the array would be set to 1. 4.2.3 Ability Upgrade Features: When a hero acquires enough experience points, the hero gains a level. The maximum level a hero can obtain is level 25. When a hero gains a level, they gain one skill point that they can use to upgrade one of their abilities. This makes the ability somehow better. We acquire data for the ability a hero upgrades at each level. Each hero has n abilities. We will label these abilities from 1 to n based on the position from the left of the ability. Fig. 4. Positional labeling of Dota 2 hero abilities. The ability furthest left is 1. The ability furthest right is n. The abilities shown are for the hero Elder Titan, who has 4 abilities. The ability furthest left is ability 1, the ability furthest right is ability n. Figure 4 gives an example of this numbering for the hero Elder Titan. We transform ability upgrade data features by creating a length 25 array. The values in this array represent the position of the ability the hero upgrades each level. Each index corresponds to a hero level in order from level 1 to level 25. To clarify, index 1 corresponds to level 1 and index 25 corresponds to level 25. We store the position of the ability the hero upgrades at each level in the corresponding index. Value 0 is used if a hero does not reach a particular level or does not spend their skill points before a match concludes. The value -1 is used if a hero uses their skill point to upgrade their hero attributes (health, damage, mana, etc.). C. Classification Methods In this section we discuss the methods used to classify heroes by performance and play style into hero id or hero positional role. To classify heroes we use supervised learning techniques. Specifically we use logistic regression and random forest classifiers. Each classifier is trained using a subset of one of the datasets (public or professional). The classifier is then used to predict either hero role or hero id of the remaining data in the dataset. The value predicted depends on the label used to train the classifier. If we train using hero role, we predict hero role. If we train using hero ID, we predict hero ID. We first partition a dataset into a training set and a testing set. A random 90% of the data is selected for training. The remaining 10% of the data is used for testing. Then the label associated with this data and the features generated from this data are used to train the classifier. After training, the classifier is used to predict the hero role or hero ID of the testing data. This process is repeated 20 times. A random 90% is selected for training each time. The average percentage accurately classified across all 20 runs is used to determine the quality of the classifier. The International 3 (TI3) competition. Our worst results for classifying hero roles was 84% using logistic regression on data obtained from public matches. The first key observation that was made is that the TI3 data proves to be significantly easier to classify - that is, based on information about a player and his/her style, the roles and IDs of professional players are much more predictable. As expected, the heroes of the players in these matches are much easier to classify because at a high skill level, the players act much more predictably and maximize the abilities of each hero much more consistently. Furthermore, these matches are in a competitive setting, free from any sort of distraction or perhaps apathy. In contrast, players in the public realm are generally expected to have a less consistent playing style, as their strategies are less defined, and they may be more open to experimental playing styles. Additionally, the range of player skill in the public data is likely much larger than that of the professional players, which can introduce varying common playing styles at various levels of expertise. Comparing the data, we find that the classification accuracy is consistently better for hero roles than it is for hero IDs, which is certainly expected, since there are only 3 roles, but over 100 actual heroes. TABLE I C LASSIFICATION R ESULTS FOR TI3 (T HE I NTERNATIONAL 3) M ATCHES Hero Roles Hero IDs Logistic Regression 89% 72% Random Forest 88% 80% While we are able to reliably classify hero roles with high accuracy, the most surprising results are the accuracy rates for hero IDs. Given that there are over 100 unique hero types, we would initially expect the accuracy of a random guess to be lower than 1%. In contrast, there are only three hero roles, which means a random guess should have 33% accuracy if we are classifying hero roles. Obtaining a 72% accuracy rate for hero IDs in professional matches is quite a leap from the expected accuracy of ¡1% for a random guess. However, it is important to note that the usage of heroes is not distributed evenly, and only a smaller subset of heroes are used the majority of the time. In professional matches especially, where we only have 124 matches of data, this can mean that we are generally only classifying a portion of the heroes available. To be exact, there were only 77 unique heroes used in the professional matches we classified. Furthermore, the top 28 most-used heroes made up for 76% of all the heroes used in the matches. For limited data sets like competitions, it may be in our future interests to only include player data whose hero is used frequently enough to provide enough training data. However, this issue is likely V. E XPERIMENTAL R ESULTS Through our tests, we were able to produce accurate and fairly desirable results consistent with our expectations. The highest classification accuracy obtained was 89% while classifying amongst the three hero roles using logistic regression and data from professional matches obtained from TABLE II C LASSIFICATION R ESULTS FOR P UBLIC M ATCHES Hero Roles Hero IDs Logistic Regression 84% 77% Random Forest 85% 72% Fig. 6. Confusion matrices for hero positional role classification of public and professional data sets using logistic regression. The horizontal axis shows predicted roles and the vertical axis shows actual roles. Elements are shaded based upon frequency of classification. Fig. 5. Confusion matrix for hero ID classification of public data set using logistic regression. Predicted hero ID’s are shown along the horizontal axis. Actual hero IDs are shown along the vertical axis. Elements of the matrix are shaded based upon the frequency of the classification. much less of a concern for the public matches in our data, since we are able to train our classifier with 12,000 matches. To better illustrate the accuracy of our classifications on the testing dataset, information about our classifications are displayed in the confusion matrix in Figure 5. The confusion matrix illustrates three dimensions of information - the actual role or hero ID of the player (vertical axis), the predicted role or hero ID of the player (horizontal axis), and the number/frequency of predictions for the combination of the two (illustrated by color). As a reference, a 100% accuracy rate would be illustrated by a single dark diagonal line illustrating 100% predictions where the actual role is equal to the predicted role. In Figure 5 is the confusion matrix for classifying hero IDs in public matches. The confusion matrix is not only another way to view accuracy, but it also serves as a way for us to identify common mis-predictions, indicated by dark squares that do not fall on the diagonal line. Although the confusion matrix above may be hard to read because of the 100+ hero IDs that need to be shown, it should be clear to see by the varying darkness of the diagonal line that some hero IDs are classified correctly much more often than others. Additionally, in Figure 6, we can see two more confusion matrices, this time showing hero positional role information instead of hero IDs. In Figure 6, not only can we see that the professional matches have a much higher classification accuracy, but we can also observe what kind of mis-classifications are more common than others. In both graphs, there is noticeable shading where the “Solo Lane” positional role meets the “Carry” positional role. This is expected, because the player style and traits of a “Solo Lane” hero often overlap with those of a “Carry” hero. We also observe a slightly lighter shading for where “Support” meets “Solo Lane”, and most notably, we see that “Support” is rarely ever misclassified as “Carry”, and vice versa. In addition to comparing hero positional roles vs. hero IDs and public matches vs. professional matches, we also can compare our results for various subsets of our final feature set to reveal more information about the game. In Table III, we show classification accuracies for only professional matches, using the random forest classifier. In Table 3, we observe a few interesting details. First, it appears that classification of hero roles works best with items in particular, if we have to choose only one from items, statistics, or abilities. Furthermore, we notice that the classification accuracy doesn’t suffer greatly when limited to only one of the three subsets of features. Second, we notice that hero ID classification accuracy is significantly reduced if we are forced to choose one of these three subsets of features. Making these observations, we can deduce a few things. Given that the classification accuracy for hero roles only decreases by 0.04 from using all features to using just the hero items as features, it is clear that these features are the most important subset of features observed. We can also draw similarities between a hero’s items and a sports player’s physical abilities, since items can play a key role in determining the key strengths of a hero in Dota 2, and it is often the key strengths of a player in any team sport that determine what kind of role or position he/she fills. Additionally, we find that the classification of a hero ID is very much dependent on all subsets of our feature set. Since many hero IDs may fill the same role, or act and perform similarly, we need as much data as possible to distinguish between hero IDs. It is also worth noting that using the ability upgrade information about a hero as the only feature produces a much higher classification accuracy than the rest of the feature subsets. Since each hero has a completely unique set of abilities, and particular abilities for TABLE III C LASSIFICATION ACCURACIES FOR VARYING F EATURE S ETS All Features Performance Only Items Only Abilities Only Hero Roles 0.88 0.73 0.83 0.76 Hero IDs 0.80 0.35 0.48 0.63 each hero are desirable earlier on in the game than other abilities, this feature makes for a great starting point for hero ID classification. VI. D ISCUSSION AND C ONCLUSION Our classification of Dota 2 heroes based on hero playing styles is relatively accurate. Specifically, we observe that the role of a hero can be predicted with 89% accuracy, using logistic regression over various player features. Even more surprising, we are able to obtain a 80% classification accuracy for hero IDs - a massive improvement over a random guess, which would be expected to yield less than 1% classification accuracy. The results of our study illuminate the true team-playing nature of Dota 2, and help validate our hypothesis that there are many parallels between traditional team-playing games and certain eSports like Dota 2 that make it possible to identify team player roles based on the characteristics and actions of a player. Since eSports may typically be considered completely separate and independent from traditional sports, it is interesting to be able to reveal some of these similarities. While our results primarily serve to present interesting information to the public, they also offer some applications for the Dota 2 community. Using a trained classifier model built from professional match data, we could evaluate the playing style of a more amateur player, and provide useful feedback to that player about the way they are using a particular hero, and how the player can improve their playing style with that hero. Furthermore, an application might classify the playing type of an amateur player in order to provide the player with suggestions for heroes that they would enjoy using and excel with in the future. Overall we are pleased with our results, but we are still limited by the data provided to us by Steam. For example, information about player position on the game map over time would likely be a useful addition to our feature set for classification, but this data is not available to us from the matches. Furthermore, this kind of study could be extended to other games to open up new possibilities for applications, such as online analysis for predicting the outcome of a game or guiding a player to a desired outcome, or even using classification data to improve the realism of AI (artificial intelligence) players. While performing in-depth analyses on eSports data may seem unimportant on the outset, it is clear that there is plenty of interesting information to learn and potentially useful applications for these analyses. R EFERENCES [1] V. Di Salvo, R. Baron, H. Tschan, F. J. Calderon Montero, N. Bachl, and F. Pigozzi, “Performance characteristics according to playing position in elite soccer,” International journal of sports medicine, vol. 28, no. 3, p. 222, 2007. [2] A. Gocentas, N. Jascaniniene, S. Poprzecki, J. Jaszczanin, and A. Juozulynas, Position-related differences in cardiorespiratory functional capacity of elite basketball players, J Hum Kinet, vol. 30, pp. 145152, Dec. 2011. [3] Y. Koklu, U. Alemdaroglu, F. U. Kocak, A. E. Erol, and G. Fındıko˘glu, Comparison of Chosen Physical Fitness Characteristics of Turkish Professional Basketball Players by Division and Playing Position, J Hum Kinet, vol. 30, pp. 99106, Dec. 2011. [4] D. C. W. Nicholas, “Anthropometric and Physiological Characteristics of Rugby Union Football Players,” Sports Med, vol. 23, no. 6, pp. 375–396, Jun. 1997. [5] G. Ziv and D. R. Lidor, “Physical Attributes, Physiological Characteristics, On-Court Performances and Nutritional Strategies of Female and Male Basketball Players,” Sports Med, vol. 39, no. 7, pp. 547–568, Jul. 2009. [6] G. Ziv and R. Lidor, “Physical characteristics, physiological attributes, and on-court performances of handball players: A review,” European Journal of Sport Science, vol. 9, no. 6, pp. 375–386, 2009.
© Copyright 2024