Module:Attribute bonuses/data

return { -- server ['tick rate'] = 1/30, -- how often Dota sends data between server and client ['day duration'] = 600, -- half of it is day, half is night ['tree respawn time'] = 180, ['tree respawn radius'] = 150, -- a tree won't respawn when there is a unit within this range of it ['tree collision size'] = 128, -- a tree's collision size ['turbo mode factor'] = 2, -- gold and xp multiplier in Turbo Mode. For some items (Aghanim's Shard, Neutral Items etc.), value is divided. ['multikill time window'] = 18, -- time window between kills for a multi-kill streak

-- clock at match start, (convert this to seconds for Mediawiki expr) ['clock start regular'] = "-90", -- the time of day at the start of a regular match ['clock start bots'] = "-75", -- the time of day at the start of a play vs bots match ['clock start turbo'] = "-60", -- the time of day at the start of a turbo match (but not new player mode) ['clock start demo'] = "0", -- the time of day at the start of the demo hero mode

-- attribute bonuses ['bonus damage'] = 1, -- primary attribute ['bonus universal damage'] = 0.7, --uni to attack damage ['bonus health'] = 22, -- str ['bonus health regeneration flat'] = 0.1, --str ['bonus armor'] = 1/6, --agi ['bonus attack speed'] = 1, --agi ['bonus mana'] = 12, --int ['bonus mana regeneration flat'] = 0.05, --int ['bonus magic resistance'] = 0.001, --int, stacks additively to base magic resistance

-- hero base values ['health'] = 120, ['health regen'] = 0.25, ['mana'] = 75, ['mana regen'] = 0, ['magic resistance'] = 0.25, ['status resistance'] = 0, ['armor'] = -1, ['attack speed'] = 100, ['attack point'] = 0.75, ['attack damage min'] = 1, ['attack damage max'] = 1, ['melee acquisition range'] = 600, ['ranged acquisition range'] = 800, ['base attack time'] = 1.7, ['attack range'] = 600, ['projectile speed'] = 900, ['movement speed'] = 300, ['turn rate'] = 0.6, ['sight range day'] = 1800, ['sight range night'] = 800, ['legs'] = 2, ['gib type'] = Default, ['max level'] = 30,

-- respawn time ['res neutral min time'] = 26, -- minimum respawn time for dying to neutral creeps. ['res lvl1'] = 12, ['res lvl2'] = 15, ['res lvl3'] = 18, ['res lvl4'] = 21, ['res lvl5'] = 24, ['res lvl6'] = 26, ['res lvl7'] = 28, ['res lvl8'] = 30, ['res lvl9'] = 32, ['res lvl10'] = 34, ['res lvl11'] = 36, ['res lvl12'] = 44, ['res lvl13'] = 46, ['res lvl14'] = 48, ['res lvl15'] = 50, ['res lvl16'] = 52, ['res lvl17'] = 54, ['res lvl18'] = 65, ['res lvl19'] = 70, ['res lvl20'] = 75, ['res lvl21'] = 80, ['res lvl22'] = 85, ['res lvl23'] = 90, ['res lvl24'] = 95, ['res lvl25'] = 100, ['res lvl26'] = 100, ['res lvl27'] = 100, ['res lvl28'] = 100, ['res lvl29'] = 100, ['res lvl30'] = 100,

-- experience ['xp radius'] = 1500, ['xp hero base'] = 100, -- base xp bounty of a hero ['xp hero factor'] = 0.13, -- factor for additional xp bounty of a hero, based on their xp ['creep deny factor'] = 0.5, -- lane creeps grant this much less experience when denied ['summon deny factor'] = 0.0, -- summons grant this much less experience when denied ['hero deny factor'] = 0.0, -- heroes grant this much less experience when denied ['creep deny health'] = 0.5, -- creeps may be denied when their health percentage is below this value ['hero deny health'] = 0.25, -- heroes may be denied when their health percentage is below this value ['building deny health'] = 0.1, -- buildings may be denied when their health percentage is below this value

-- hero experience ['xp lvl1'] = 0, ['xp lvl2'] = 240, ['xp lvl3'] = 400, ['xp lvl4'] = 520, ['xp lvl5'] = 600, ['xp lvl6'] = 680, ['xp lvl7'] = 760, ['xp lvl8'] = 800, ['xp lvl9'] = 900, ['xp lvl10'] = 1000, ['xp lvl11'] = 1100, ['xp lvl12'] = 1200, ['xp lvl13'] = 1300, ['xp lvl14'] = 1400, ['xp lvl15'] = 1500, ['xp lvl16'] = 1600, ['xp lvl17'] = 1700, ['xp lvl18'] = 1800, ['xp lvl19'] = 1900, ['xp lvl20'] = 2000, ['xp lvl21'] = 2200, ['xp lvl22'] = 2400, ['xp lvl23'] = 2600, ['xp lvl24'] = 2800, ['xp lvl25'] = 3000, ['xp lvl26'] = 4000, ['xp lvl27'] = 5000, ['xp lvl28'] = 6000, ['xp lvl29'] = 7000, ['xp lvl30'] = 7500,

-- gold ['starting gold'] = 600, -- starting gold when picking a hero ['starting gold randomed'] = 800, -- starting gold when randoming a hero ['first blood gold'] = 135, ['kill base gold'] = 125, -- base gold bounty of a hero ['kill lvl multiplier'] = 8, -- multiplier for additional gold bounty of a hero, based on their level ['kill time window'] = 20, -- time window for who gets kill credits. If the target dies later, it gets distributed evenly instead. Also used for assist creditting ['kill streak min'] = 3, -- amount of kills required for it to start counting as a streak ['kill streak max'] = 10, -- amount of kills required to reach the max streak bounty ['kill streak gold value'] = 5, -- streak gold multiplier ['kill streak gold exponent'] = 2, -- streak gold exponent ['kill streak xp base'] = 10, -- streak xp base value ['kill streak xp exponent'] = 2, -- streak xp exponent ['kill streak xp multiplier 1'] = 1.25, -- streak xp first multiplier ['kill streak xp multiplier 2'] = 2.5, -- streak xp second multiplier ['assist base gold'] = 30, -- base gold granted to players that counted as kill assists ['assist networth factor'] = 0.038, -- multiplier for additional assist gold, based on the victim's net worth ['assist radius'] = 1500, -- every ally within this range gains assist gold ['death gold loss divisor'] = 40, -- amount of gold lost on death, net worth divided by this value ['base gpm'] = 90, -- passive gold income per minute ['draft gold loss'] = 2, -- amount of gold loss per second during the drafting phase when not picking a hero within the time limit ['tower deny factor'] = 0.5, -- amount of gold denied from denying towers

-- items ['item sellback time window'] = 10, -- bought items can be sold back for full price within this time window ['item sellback factor'] = 0.5, -- when sold outside the above time window, selling items grants this much gold back instead ['item extended sellback time window'] = 40, -- the sellback time window for items bought at the start of the game ['item disassemble time window'] = 10, -- combined items which are non-disassemble-able by default can no longer be disassembled after this time window ['item drop range'] = 100, -- the range for dropping an item on the ground ['item pickup range'] = 150, -- the range for picking up an item from the ground is ['item transfer range'] = 300, -- the range for transferring an item to another unit ['backpack penalty cooldown'] = 6, -- the penalty cooldown that applies when moving an item from the backpack to the main inventory. ['backpack cooldown rate'] = 0.5, -- the cooldown rate of items in the backpack

-- movement speed limits ['movement speed min'] = 100, ['movement speed max'] = 550,

-- attack speed limits ['attack speed min'] = 20, ['attack speed max'] = 700,

-- range buffers ['cast range min'] = 150, -- cast range reductions limit ['attack range buffer'] = 250, -- distance the attack target can move before the attack animation gets canceled ['cast range buffer'] = 250, -- distance the attack target can move before the cast animation gets canceled ['uphill miss chance'] = 0.25, -- ranged attacks miss chance against targets on higher ground ['melee miss range'] = 350, -- distance the attack target misses on melee attacks, when the target moves further before the attack

-- armor values ['armor base'] = 1, -- armor damage reduction formula base value ['armor factor'] = 0.06, -- armor damage reduction formula multiplier

-- attack classes table ['hero v hero'] = 1,			   -- hero damage vs hero armor ['hero v basic'] = 1,			   -- hero damage vs basic armor ['hero v structure'] = 0.5,		-- hero damage vs structure armor ['basic v hero'] = 0.75,			-- basic damage vs hero armor ['basic v basic'] = 1,			-- basic damage vs basic armor ['basic v structure'] = 0.7,		-- basic damage vs structure armor ['pierce v hero'] = 0.5,			-- pierce damage vs hero armor ['pierce v basic'] = 1.5,			-- pierce damage vs basic armor ['pierce v structure'] = 0.35,	-- pierce damage vs structure armor ['siege v hero'] = 1,	     		-- siege damage vs hero armor ['siege v basic'] = 1,			-- siege damage vs basic armor ['siege v structure'] = 2.5,		-- siege damage vs structure armor

-- collision sizes ['collision size building'] = 298, ['collision size tower'] = 144, ['collision size filler'] = 96, ['collision size huge'] = 80, ['collision size hero'] = 24, ['collision size regular'] = 16, ['collision size small'] = 8, ['collision size smallest'] = 2,

-- lifesteal ['spell lifesteal creep factor'] = 0.2, ['item lifesteal creep factor'] = 0.6, -- item lifesteal against creeps

-- neutral creep values ['neutral spawn interval'] = 60, ['neutral upg hp'] = 30, ['neutral upg armor'] = 0.5, ['neutral upg damage'] = 3, ['neutral upg as'] = 5, ['neutral upg gold'] = 1, ['neutral upg xp'] = 5, ['neutral ability interval'] = 900,

['roshan respawn min'] = 480, ['roshan respawn max'] = 660, ['tormentor spawn'] = 1200, ['tormentor respawn'] = 600, -- stacking gold values ['neutral stack penalty'] = 0.15, -- stacked neutrals grant this much less gold/xp to their killer ['neutral stacker gold'] = 0.30, -- the stacking player gets this amount if an ally kills their stack -- aggroing values ['neutral approach aggro range'] = 240, -- a neutral creep aggroes when a player gets this close to it ['roshan approach aggro range'] = 140, -- Roshan aggroes when a player gets this close to it  ['neutral damage aggro range'] = 1800, -- a neutral creep aggroes when a player deals damage while within this range of it  ['neutral nearby aggro range'] = 500, -- other neutral creeps within this range around the aggroed neutral creep get aggroed as well -- if source of damage is invisible, neutrals flee ['neutral flee distance'] = 750, -- the max distance neutrals will move when fleeing ['neutral flee duration'] = 5, -- the max duration neutrals flee -- losing aggro ['neutral guard distance'] = 400, -- neutrals do not lose aggro when within this range of their spawn location ['neutral aggro duration'] = 5, -- neutrals lose aggro when this many seconds pass ['neutral re-aggro duration'] = 3, -- when re-aggroed before the previous aggro resets, they aggro for shorter

-- neutral item timings -- store values here in seconds, use to convert to mm:ss format. ['neutral t1 items'] = 420, ['neutral t1 drop rate'] = 0.14, ['neutral t2 items'] = 1020, ['neutral t2 drop rate'] = 0.1, ['neutral t3 items'] = 1620, ['neutral t3 drop rate'] = 0.1, ['neutral t4 items'] = 2200, ['neutral t4 drop rate'] = 0.1, ['neutral t5 items'] = 3600, ['neutral t5 drop rate'] = 0.1, ['neutral items ancient creep mult'] = 3, ['neutral items drop radius'] = 1200,

-- lane creep values ['lanecreep spawn interval'] = 30, ['lanecreep upgrade cycle'] = 450, ['lanecreep upgrade cycle turbo'] = 150, ['lanecreep upgrade turbo multiplier'] = 3, ['lanecreep max upgrades'] = 30, ['lanecreep upg melee hp'] = 12, ['lanecreep upg melee dmg'] = 1, ['lanecreep upg melee gold'] = 1, ['lanecreep upg range hp'] = 12, ['lanecreep upg range dmg'] = 2, ['lanecreep upg range gold'] = 6, ['lanecreep upg range xp'] = 8, ['lanecreep upg siege dmg'] = 16, ['lanecreep upg sup melee hp'] = 19, ['lanecreep upg sup melee dmg'] = 2, ['lanecreep upg sup melee gold'] = 1.5, ['lanecreep upg sup range hp'] = 18, ['lanecreep upg sup range dmg'] = 3, ['lanecreep upg sup range gold'] = 6,

-- illusion values ['illusion bounty level factor'] = 2, ['illusion fixed bounty'] = 5, ['illusion dmg v structure'] = 0.6,

-- abilities ['ultimate level interval'] = 6, ['ability level interval'] = 2, ['aura linger duration'] = 0.5,

-- ability draft ['ad heroes'] = 10, ['ad extra heroes'] = 2, ['ad plan phase'] = 60, --initial phase ['ad pick time'] = 7, --picking ability time ['ad break time'] = 5, ['ad phases'] = 4, --4 picking phases + 4 break times ['ad strat phase'] = 30, --strategy time

-- pseudo-random distribution values (PRD% = Probablity;Approx Value in C) defined by P(N) = C x N -- ['0.01'] = 0.000156;1.002238 -- ['0.02'] = 0.000620;2.002579 -- ['0.03'] = 0.001386;3.001511 -- ['0.04'] = 0.002449;4.002288 -- ['0.05'] = 0.003802;4.994758 -- ['0.06'] = 0.005440;6.005638 -- ['0.07'] = 0.007359;7.003934 -- ['0.08'] = 0.009552;8.010426 -- ['0.09'] = 0.012016;8.987512 -- ['0.10'] = 0.014746;10.014611 -- ['0.11'] = 0.017736;11.004199 -- ['0.12'] = 0.020983;12.005177 -- ['0.13'] = 0.024482;13.024971 -- ['0.14'] = 0.028230;13.975791 -- ['0.15'] = 0.032221;14.959288 -- ['0.16'] = 0.036452;15.999053 -- ['0.17'] = 0.040920;17.009059 -- ['0.18'] = 0.045620;17.972132 -- ['0.19'] = 0.050549;18.976664 -- ['0.20'] = 0.055704;19.954822 -- ['0.21'] = 0.061081;20.943636 -- ['0.22'] = 0.066676;22.012710 -- ['0.23'] = 0.072488;22.979420 -- ['0.24'] = 0.078511;24.014735 -- ['0.25'] = 0.084744;25.031101 -- ['0.26'] = 0.091183;25.959664 -- ['0.27'] = 0.097826;27.102915 -- ['0.28'] = 0.104670;28.023057 -- ['0.29'] = 0.111712;29.000554 -- ['0.30'] = 0.118949;29.959944 -- ['0.31'] = 0.126379;31.002753 -- ['0.32'] = 0.134001;31.939392 -- ['0.33'] = 0.141805;32.999597 -- ['0.34'] = 0.149810;34.025757 -- ['0.35'] = 0.157983;34.908278 -- ['0.36'] = 0.166329;35.980153 -- ['0.37'] = 0.174909;37.053368 -- ['0.38'] = 0.183625;38.058557 -- ['0.39'] = 0.192486;38.999431 -- ['0.40'] = 0.201547;40.008482 -- ['0.41'] = 0.210920;41.034227 -- ['0.42'] = 0.220365;42.099236 -- ['0.43'] = 0.229899;42.969354 -- ['0.44'] = 0.239540;44.056551 -- ['0.45'] = 0.249307;45.176913 -- ['0.46'] = 0.259872;45.906516 -- ['0.47'] = 0.270453;46.863211 -- ['0.48'] = 0.281008;48.012061 -- ['0.49'] = 0.291552;48.983830 -- ['0.50'] = 0.302103;49.938326 -- ['0.51'] = 0.312677;51.091310 -- ['0.52'] = 0.323291;51.903294 -- ['0.53'] = 0.334120;53.118028 -- ['0.54'] = 0.347370;54.012304 -- ['0.55'] = 0.360398;54.951094 -- ['0.56'] = 0.373217;56.077072 -- ['0.57'] = 0.385840;56.917788 -- ['0.58'] = 0.398278;57.943470 -- ['0.59'] = 0.410545;58.905304 -- ['0.60'] = 0.422650;59.988002 -- ['0.61'] = 0.434604;61.122079 -- ['0.62'] = 0.446419;62.023197 -- ['0.63'] = 0.458104;63.044547 -- ['0.64'] = 0.469670;63.999181 -- ['0.65'] = 0.481125;65.143609 -- ['0.66'] = 0.492481;66.020110 -- ['0.67'] = 0.507463;66.997186 -- ['0.68'] = 0.529412;68.085570 -- ['0.69'] = 0.550725;68.980741 -- ['0.70'] = 0.571429;70.037330 -- ['0.71'] = 0.591549;71.011632 -- ['0.72'] = 0.611111;72.145387 -- ['0.73'] = 0.630137;73.091401 -- ['0.74'] = 0.648649;73.969421 -- ['0.75'] = 0.666667;74.791519 -- ['0.76'] = 0.684211;75.818460 -- ['0.77'] = 0.701299;77.138471 -- ['0.78'] = 0.717949;77.965415 -- ['0.79'] = 0.734177;79.041386 -- ['0.80'] = 0.750000;80.042903 -- ['0.81'] = 0.765432;80.993302 -- ['0.82'] = 0.780488;81.967885 -- ['0.83'] = 0.795181;82.964831 -- ['0.84'] = 0.809524;84.091559 -- ['0.85'] = 0.823529;85.107832 -- ['0.86'] = 0.837209;86.080003 -- ['0.87'] = 0.850575;87.164960 -- ['0.88'] = 0.863636;88.069258 -- ['0.89'] = 0.876404;88.907065 -- ['0.90'] = 0.888889;90.034934 -- ['0.91'] = 0.901099;91.098742 -- ['0.92'] = 0.913043;91.925283 -- ['0.93'] = 0.924731;93.009413 -- ['0.94'] = 0.936170;94.065413 -- ['0.95'] = 0.947368;95.073302 -- ['0.96'] = 0.958333;95.967448 -- ['0.97'] = 0.969072;96.931159 -- ['0.98'] = 0.979592;97.973900 -- ['0.99'] = 0.989899;98.999119 }