(added lots of global variables) |
No edit summary |
||
(29 intermediate revisions by 2 users not shown) | |||
Line 4: | Line 4: | ||
['day duration'] = 600, -- half of it is day, half is night |
['day duration'] = 600, -- half of it is day, half is night |
||
['tree respawn time'] = 180, |
['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 |
||
-- attribute bonuses |
-- attribute bonuses |
||
Line 20: | Line 24: | ||
['mana regen'] = 0, |
['mana regen'] = 0, |
||
['magic resistance'] = 0.25, |
['magic resistance'] = 0.25, |
||
+ | ['status resistance'] = 0, |
||
['armor'] = -1, |
['armor'] = -1, |
||
['attack speed'] = 100, |
['attack speed'] = 100, |
||
+ | ['attack point'] = 0.75, |
||
['attack damage min'] = 1, |
['attack damage min'] = 1, |
||
['attack damage max'] = 1, |
['attack damage max'] = 1, |
||
− | ['acquisition range'] = |
+ | ['melee acquisition range'] = 600, |
+ | ['ranged acquisition range'] = 800, |
||
['base attack time'] = 1.7, |
['base attack time'] = 1.7, |
||
['attack range'] = 600, |
['attack range'] = 600, |
||
Line 33: | Line 40: | ||
['sight range night'] = 800, |
['sight range night'] = 800, |
||
['legs'] = 2, |
['legs'] = 2, |
||
+ | ['gib type'] = Default, |
||
+ | ['max level'] = 30, |
||
+ | |||
+ | -- respawn time |
||
+ | ['roshan min respawn'] = 480, |
||
+ | ['roshan max respawn'] = 660, |
||
+ | ['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 |
-- experience |
||
Line 40: | Line 84: | ||
['creep deny factor'] = 0.5, -- lane creeps grant this much less experience when denied |
['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 |
['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 |
['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 |
['hero deny health'] = 0.25, -- heroes may be denied when their health percentage is below this value |
||
Line 45: | Line 90: | ||
-- gold |
-- gold |
||
− | ['starting gold'] = 600, -- |
+ | ['starting gold'] = 600, -- starting gold when picking a hero |
['starting gold randomed'] = 800, -- starting gold when randoming a hero |
['starting gold randomed'] = 800, -- starting gold when randoming a hero |
||
['first blood gold'] = 135, |
['first blood gold'] = 135, |
||
− | ['kill base gold'] = |
+ | ['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 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 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 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 max'] = 10, -- amount of kills required to reach the max streak bounty |
||
− | ['kill streak value'] = |
+ | ['kill streak gold value'] = 5, -- streak gold multiplier |
− | ['kill streak |
+ | ['kill streak gold exponent'] = 2, -- streak gold exponent |
+ | ['kill streak xp base'] = 10, -- streak gold exponent |
||
+ | ['kill streak xp exponent'] = 2, -- streak gold exponent |
||
['assist base gold'] = 30, -- base gold granted to players that counted as kill assists |
['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 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 |
['assist radius'] = 1500, -- every ally within this range gains assist gold |
||
− | ['death gold |
+ | ['death gold loss divisor'] = 40, -- amount of gold lost on death, net worth divided by this value |
− | ['base gpm'] = 100 |
+ | ['base gpm'] = 100, -- 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 time window'] = 10, -- bought items can be sold back for full price within this time window |
||
− | ['item sellback |
+ | ['item sellback factor'] = 0.5, -- when sold outside the above time window, selling items grants this much gold back instead |
+ | ['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 transfering an item to another unit |
||
-- movement speed limits |
-- movement speed limits |
||
Line 74: | Line 129: | ||
['attack range buffer'] = 250, -- distance the attack target can move before the attack animation gets canceled |
['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 |
['cast range buffer'] = 250, -- distance the attack target can move before the cast animation gets canceled |
||
− | ['uphill miss chance'] = 0.25, -- ranged attacks |
+ | ['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 values |
||
− | ['armor |
+ | ['armor base'] = 1, -- armor damage reduction formula base value |
+ | ['armor factor'] = 0.06, -- armor damage reduction formula multiplier |
||
-- attack classes table |
-- attack classes table |
||
Line 108: | Line 165: | ||
-- neutral creep values |
-- neutral creep values |
||
['neutral spawn interval'] = 60, |
['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, |
||
+ | |||
['roshan respawn min'] = 300, |
['roshan respawn min'] = 300, |
||
['roshan respawn max'] = 480, |
['roshan respawn max'] = 480, |
||
Line 117: | Line 181: | ||
['neutral damage aggro range'] = 1800, -- a neutral creep aggroes when a player deals damage while within this range of 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 |
['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 distance'] = 750, -- the max distance neutrals will move when fleeing |
||
['neutral flee duration'] = 5, -- the max duration neutrals flee |
['neutral flee duration'] = 5, -- the max duration neutrals flee |
||
Line 124: | Line 188: | ||
['neutral aggro duration'] = 5, -- neutrals lose aggro when this many seconds pass |
['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 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 {{#time:i:s|@<value>}} 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 |
-- lane creep values |
||
Line 129: | Line 208: | ||
['lanecreep upgrade cycle'] = 450, |
['lanecreep upgrade cycle'] = 450, |
||
['lanecreep upgrade cycle turbo'] = 150, |
['lanecreep upgrade cycle turbo'] = 150, |
||
− | ['lanecreep upgrade multiplier'] = 3, |
+ | ['lanecreep upgrade turbo multiplier'] = 3, |
['lanecreep max upgrades'] = 30, |
['lanecreep max upgrades'] = 30, |
||
['lanecreep upg melee hp'] = 12, |
['lanecreep upg melee hp'] = 12, |
||
Line 138: | Line 217: | ||
['lanecreep upg range gold'] = 6, |
['lanecreep upg range gold'] = 6, |
||
['lanecreep upg range xp'] = 8, |
['lanecreep upg range xp'] = 8, |
||
+ | ['lanecreep upg siege dmg'] = 16, |
||
['lanecreep upg sup melee hp'] = 19, |
['lanecreep upg sup melee hp'] = 19, |
||
['lanecreep upg sup melee dmg'] = 2, |
['lanecreep upg sup melee dmg'] = 2, |
||
Line 144: | Line 224: | ||
['lanecreep upg sup range dmg'] = 3, |
['lanecreep upg sup range dmg'] = 3, |
||
['lanecreep upg sup range gold'] = 6, |
['lanecreep upg sup range gold'] = 6, |
||
+ | |||
+ | -- illusion values |
||
+ | ['illusion bounty level factor'] = 2, |
||
+ | ['illusion fixed bounty'] = 5, |
||
+ | ['illusion dmg v structure'] = 0.6, |
||
-- abilities |
-- abilities |
||
Line 149: | Line 234: | ||
['ability level interval'] = 2, |
['ability level interval'] = 2, |
||
['aura linger duration'] = 0.5, |
['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 |
||
} |
} |
Revision as of 23:13, 23 February 2022
Documentation for this module may be created at Module:Attribute bonuses/data/doc
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
-- attribute bonuses
['bonus damage'] = 1, -- primary attribute
['bonus health'] = 20, -- 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
-- hero base values
['health'] = 200,
['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
['roshan min respawn'] = 480,
['roshan max respawn'] = 660,
['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
['tower deny health'] = 0.1, -- buildings may be denied when their health percentage is below this value
-- 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 gold exponent
['kill streak xp exponent'] = 2, -- streak gold exponent
['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'] = 100, -- 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 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 transfering an item to another unit
-- movement speed limits
['movement speed min'] = 100,
['movement speed max'] = 550,
-- attack speed limits
['attack speed min'] = 20,
['attack speed max'] = 700,
-- range buffers
['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.0, -- hero damage vs hero armor
['hero v basic'] = 1.0, -- hero damage vs basic armor
['hero v structure'] = 0.5, -- hero damage vs structur armor
['basic v hero'] = 0.75, -- basic damage vs hero armor
['basic v basic'] = 1.0, -- basic damage vs basic armor
['basic v structure'] = 0.7, -- basic damage vs structur 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 structur armor
['siege v hero'] = 1.0, -- siege damage vs hero armor
['siege v basic'] = 1.0, -- siege damage vs basic armor
['siege v structure'] = 2.5, -- siege damage vs structur 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,
-- spell lifesteal
['spell lifesteal creep factor'] = 0.2,
-- 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,
['roshan respawn min'] = 300,
['roshan respawn max'] = 480,
-- 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
['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 {{#time:i:s|@<value>}} 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
}