Getting into the world of Windows programming-----Introductory article

Source: Internet
Author: User

Abstract: Dota (Defence of the Ancients, Ancient Guardian), is based on Warcraft 3: Frozen Throne (Blizzard Entertainment company produced) multi-player real-time battle custom map, can support 10 people simultaneously connect the game. DotA fights against two opposing teams, usually 5v5, to protect their ancient ruins (near the Guardian's Tree of Life, the frozen throne of the scourge), while destroying each other's ancient ruins. DotA is currently the only Warcraft RPG that is officially recognised by Blizzard Entertainment. The popularity of DotA in college students is raspberry, and with the player's understanding of the game in depth, many of the mathematical models that exist in the game are dug up for research. The mathematical calculations used in the game are not complex, but the more specific the combination, the more difficult it will be to analyze it. In this paper, we will model and analyze the hero armor in DotA.


Keyword: Warcraft dota armor Modeling Analysis


Introduction to Basic properties
The mathematical calculations used in the game are not complex, but the more specific the combination, the more difficult it will be to analyze it. This paper makes a preliminary exploration on this. Basic properties each hero in DotA has a health value (HP), Mana (MANA), attack damage (according to Chinese translation should be ATK, but the actual English is damage, that is, physical damage), armor, range (ranged melee) These 5 obvious basic properties, as well as magical resistance, The 5 essential properties that are very important and cannot be seen directly in the game interface, such as the speed of life, the speed of magic, the speed of attack, and the speed of movement. In addition, there are pre-and post-attack, SHAFA/post-shake, daytime/night vision, ballistics, and other basic properties that are not often considered.
In addition, each hero also has three kinds of heroic attributes, power, agility, intelligence. These three hero attributes do not directly work, but are converted to basic properties and then work. Force attribute: Each additional strength increases 19 points of health and 0.03 points/second of life response speed. Agility attributes: Increase the attack speed by 1% with each additional point of agility, and add a little armor every 7 points of agility. Intellectual properties: Increase the Mana value by 13 mana and 0.04 pips/second for each additional intelligence.
Main attribute: Each hero will be the strength, agility, intelligence of one of the three as the main attribute, every 1 points of the main attribute will be added 1 points of attack.
Armor and Injury Introduction
There are several types of damage: magical damage, physical damage, sacred damage, and more. Physical damage is caused by a hero's ordinary attack, which is relative to the skill attack, causing magical damage.
Armor can counteract only physical damage, while mana damage can be reduced, but this article only discusses physical damage. The following is modeled, before which a few terms are defined:
DD: Damage Reduction (Damage decrease)
A: armor (armor)
HP: Health, the actual amount of blood that a hero armor is 0 o'clock
ephp: Equivalent extra physical life (equivalent Extra physical hp), a hero with armor, can withstand physical damage beyond the original HP. We consider this part of the physical damage that can be subjected to additional ephp.


Modeling
First, the relationship between DD and A is given:
DD ={(6a%)/(1+6a%), a≥0;
0.94 * * (-a)-1, -20 < a < 0;
71%, a≤-20;
This formula is specified by Blizzard, the armor value can be decimal, but in this article is rounded to retain two decimal places and only to discuss a greater than or equal to 0 of the case.
  
Armor is 0 o'clock, can withstand the damage is the size of HP, armor is more than 0 o'clock, the initial damage is C, then after the weakening effect of armor, the ultimate damage E = cx (1-DD), the maximum value of E is HP, then the maximum value of C Max (c) is Max (e)/(1-DD); c) is obviously able to withstand the maximum physical damage, which is actually ephp, calculated after ephp = HPX (1 + 6a%), that is, you want to output HPX (1 + 6a%) the size of physical damage in order to end an initial blood volume of HP armor for a hero.
So the existence of armor actually gives a hero an additional resistance to physical attack, this ability can be understood to give extra life, defined as eh, its size is obviously hpx6a%, if the HP is fixed, then the anti-attack ability and armor value A is linearly related. What is the point of this remark? For a derivative, there is ▲eh = hpx6%, which means that each additional piece of armor, can bring the extra life is fixed hpx6%, and a value independent. So armor for 0 when buy a Guardian ring (can add 2 armor armor) and buy armor for 10, the effect is the same.
For another example, when a hero HP = +, a = 10, he is to buy a vitality ball (increase 250 hp) or buy a plate armor (add 10 point Armor) more resistant to fight it (not consider the price factor)?
If buy vitality ball: ephp = (+ +) x (1 + 10x6%) = 2000
If buy board a: ephp = 1000x (1 + 20x6%) = 2200
  
Obviously buy a plate a more suitable, of course, this is only considered physical attack under the conditions of the conclusion, the actual PvP
There are a number of factors to consider, such as skill, magic resistance, support, etc., but the analysis provided in this article will help to make it more rational and avoid the failure caused by random decisions. You can also stream data by playing a game.


Reference:
[1] http://wenku.baidu.com/view/38edca18a76e58fafab0031e
[2] Wang Jundi (Department of Control Science and engineering, Zhejiang University, Level 09) "DotA Armor system Complete Analysis"

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.