Warcraft III/Patch 1.29.0b

Patch 1.29.0 was a major patch that was released on April 10, 2018.

Foreword
Our sincere thanks to the Classic forums, the pros, the mapmakers, the players, r/WC3, Discord (Warcraft 3 United), and all the fans who reached out to help make this patch Rexxar approved. Classic is by your side on this journey.

Specific Changes & Improvements
Widescreen support added. To prevent stretching their have been changes to the interfaces:


 * Added bookends to the in-game interface
 * Added black pillars in menus

Game lobbies expanded to support 24 players. We’ve added 12 new team colors. Thanks to Erkan and others for contributing to the new palette:
 * Player 13 - Maroon
 * Player 14 - Navy
 * Player 15 - Turquoise
 * Player 16 - Violet
 * Player 17 - Wheat
 * Player 18 - Peach
 * Player 19 - Mint
 * Player 20 - Lavender
 * Player 21 - Coal
 * Player 22 - Snow
 * Player 23 - Emerald
 * Player 24 - Peanut

Bug Fixes

 * Clans can be created
 * Mac launches
 * Korean locale launches
 * Various missing textures located (Thanks to TriggerHappy for the test map)
 * Default resolution no longer resembles Felwood
 * Ladder maps cleansed of sneaky tower locations near starting mines

Known Issues

 * Temporarily disabled Fixed Aspect Ratio in Video Options
 * Chaos Kodo Beasts are showing as idle workers in campaign missions
 * Unable to input text while keyboard settings are under different languages in zhCN and koKR locales
 * Certain elements in World Editor overlap
 * Set/GetAbilityOnXXXX functions are renamed to Set/GetAbilityActivatedXXXX
 * SetUnitNameAll is disabled for now
 * PlaySpecialEffect is disabled for now
 * PlaySpecialEffectWithTimeScale is disabled for now
 * Crash: With an ability that has "Disabled"=false, attempting to set "Disabled" to false again will crash the World Editor
 * UnitDisableAbility does not hide an ability with Hide=true and Disabled=false
 * Default map directory is for from maps when creating custom games
 * Resolution does not change properly when switching between windowed and full screen
 * Tooltips for hero abilities may not be updated

Mountain King

 * Movement Speed
 * Increased base speed from 270 to 290
 * Stormbolt
 * Level 2: Reduce damage from 225 to 210
 * Level 3: Reduce damage from 350 to 325
 * Thunder Clap
 * Level 1: Increased damage from 60 to 65; Increased area of effect from 25 to 30
 * Level 2: Increased damage from 100 to 125; Increased area of effect from 30 to 35
 * Level 3: Increased damage from 140 to 175; Increased area of effect from 35 to 40

Paladin

 * Attack Speed
 * Reduced cooldown from 2.2 to 2.0 seconds
 * Movement Speed
 * Increased base speed from 270 to 290
 * Divine Shield
 * Level 2: Reduced duration from 30 to 25
 * Level 3: Reduced duration from 45 to 35

Blademaster

 * Mirror Image
 * Reduced Mana cost from 115 to 100 for all levels
 * Critical Strike
 * Removed + damage item interaction from multiplier calculation: (Avg Damage + Item Damage)*Critical Multiplier = Total Damage
 * Prior calculation: (Avg Damage *Critical Multiplier) + Item Damage = Total Damage

Far Seer

 * Feral Spirit
 * Level 1: Increased unit healths from 200 to 250
 * Level 2: Increased unit healths from 300 to 350; Reduced unit level from 4 to 3 to reduce enemy experience reward
 * Level 3: Reduced unit level from 5 to 4 to reduce enemy experience reward
 * Chain Lightning
 * Reduced damage reduction from 15% to 10% per jump for all levels
 * Far Sight
 * Level 1: Removed mana cost; Added a cooldown of 60 seconds
 * Level 2: Removed mana cost; Added a cooldown of 45 seconds
 * Level 3: Removed mana cost; Added a cooldown of 30 seconds

Shadow Hunter

 * Serpent Wards
 * Level 1: Increased damage from 11-13 to 14-16; Increased health from 75 to 90
 * Level 2: Increased damage from 23-26 to 27-30; Increased health from 135 to 165
 * Level 3: Increased damage from 41-45 to 48-52; Increased health from 135 to 200

Tauren Chieftain

 * Movement Speed
 * Increased base speed from 270 to 290
 * War Stomp
 * Level 1: Increased damage from 25 to 30
 * Level 2: Increased damage from 50 to 60
 * Level 3: Increased damage from 75 to 90
 * Reincarnation
 * Reduced spellcast from 7 seconds to 5 seconds

Crypt Lord

 * Movement Speed
 * Increased base speed from 270 to 290
 * Carrion Beetles
 * Level 1: Increased health from 140 to 170; Increase movement speed from 270 to 290
 * Level 2: Increased health from 275 to 330; Increase movement speed from 270 to 290
 * Level 3: Increased health from 410 to 490; Increase movement speed from 270 to 290
 * Impale
 * Level 1: Increased damage from 50 to 75
 * Level 2: Increased damage from 80 to 120
 * Level 3: Increased damage from 110 to 165

Dread Lord

 * Movement Speed
 * Increased base speed from 270 to 290
 * Carrion Swarm
 * Level 1: Increased maximum damage from 300 to 400
 * Level 2: Increased maximum damage from 600 to 700
 * Level 3: Increased maximum damage from 1000 to 1200
 * Mana Cost reduced from 110 to 100 for all levels
 * Now damages mechanical units
 * Sleep
 * Cooldown reduced from 6 seconds to 4 seconds for all levels
 * Level 1: Reduced duration from 20 (5) sec to 15 (4) sec; Reduced mana cost from 100 to 80
 * Level 2: Reduced duration from 40 (10) sec to 35 (8) sec; Reduced mana cost from 75 to 65
 * Level 3: Reduced duration from 60 (15) sec to 55 (12) sec
 * Vampiric Aura
 * Level 1: Increased life steal from 15% to 20%
 * Level 2: Increased life steal from 30% to 35%
 * Level 3: Increased life steal from 45% to 50%

Lich

 * Movement Speed
 * Increased base speed from 270 to 290

Demon Hunter

 * Mana Burn
 * Increased mana cost from 50 to 60 for all levels

Keeper of the Grove

 * Intelligence
 * Increased default value from 18 to 19
 * Tranquility
 * Added 3 seconds of invulnerability on spellcast
 * Reduced duration from 30 seconds to 15 seconds
 * Increased healing per second from 20 to 40
 * Entangling Root
 * Level 2: Reduced duration on units from 24 seconds to 18 seconds; Increased duration on heroes from 3 seconds to 5 seconds; Increased damage per second from 15 damage to 20 damage
 * Level 3: Reduced duration on units from 36 seconds to 30 seconds; Increased duration on heroes from 5 seconds to 7 seconds; Increased damage per second from 25 Damage to 30 Damage
 * Force of Nature
 * Increased Treant attack damage from 14 to 16

Priestess of the Moon

 * Attack Speed
 * Reduced cooldown from 2.46 to 2.33 seconds
 * Scout
 * Increased speed from 270 to 300
 * Level 1: Reduced mana cost from 100 to 50
 * Level 2: Reduced mana cost from 75 to 50

Warden

 * Blink
 * Level 2: Reduced cooldown from 10 seconds to 7 seconds
 * Level 3: Increased cooldown from 1 second to 4 seconds

Dark Ranger

 * Life Drain
 * Increase damage done per second and lower mana cost
 * Level 1: Increase damage per second from 25 to 30; Reduce Mana cost from 75 to 50
 * Level 2: Increase damage per second from 40 to 45, Reduce Mana cost from 75 to 50
 * Level 3: Increase damage per second from 55 to 60, Reduce Mana cost from 75 to 50

Firelord

 * Incinerate
 * Level 1: Increased bonus damage multiplier per stack from 1 to 2; Increased death by incineration damage full area from 90 to 120; Increased death by incineration damage half area from 180 to 240; Increased duration from 2 to 4
 * Level 2: Increased bonus damage multiplier per stack from 2 to 3; Increased death by incineration damage full area from 90 to 120; Increased death by incineration damage half area from 180 to 240; Increased duration from 2 to 4
 * Level 3: Increased bonus damage multiplier per stack from 3 to 4; Increased death by incineration damage full area from 100 to 120; Increased death by incineration damage half area from 180 to 240; Increased duration from 2 to 4
 * Soul Burn
 * Level 1: Increased duration on units from 14 seconds to 16 seconds; Increased duration on heroes from 6 seconds to 7 seconds; Increased damage from 100 to 125
 * Level 2: Increased duration on units from 16 seconds to 18 seconds; Increased duration on heroes from 7 seconds to 8 seconds; Increased damage from 225 to 270
 * Level 3: Increased duration on units from 18 seconds to 20 seconds; Increased duration on heroes from 8 seconds to 9 seconds; Increased damage from 375 to 450

Goblin Alchemist

 * Movement Speed
 * Increased base speed from 270 to 290
 * Healing Spray
 * No longer heals enemy units
 * Heals Alchemist
 * Acid Bomb
 * Level 1: Increased Damage from 5 to 8 (total damage 75 to 120; Secondary damage 3 to 5)
 * Level 2: Increased Damage from 10 to 13 (total damage 150 to 195; Secondary damage 6.5 to 8.5)
 * Level 3: Increased Damage from 15 to 18 (total damage 225 to 270; Secondary damage 10 to 12)

Goblin Tinker

 * Movement Speed
 * Increased base speed from 270 to 290
 * Cluster Rockets
 * Now targets air units
 * Level 1: Increased damage from 35 to 45 damage per second
 * Level 2: Increased damage from 65 to 75 damage per second
 * Level 3: Increased damage from 100 to 110 damage per second

Naga Sea Witch

 * Movement Speed
 * Increased base speed from 270 to 290

Pandaren Brewmaster

 * Movement Speed
 * Increased base speed from 270 to 290

1v1

 * (2)TerenasStand_LV
 * (2)Plunderisle_LV
 * (2)TheTwoRivers_LV
 * (2)RoadToStratholme_LV
 * (2)EchoIsle
 * (2)TirisfalGlades_LV
 * (2)Amazonia(COMMUNITY)
 * (2)LastRefuge-1.3(COMMUNITY)
 * (4)Floodplains1v1_LV
 * (4)TwistedMeadows
 * (4)TurtleRock

2v2

 * (4)PhantomGrove_LV
 * (4)Avalanche_LV
 * (4)TurtleRock
 * (4)Duskwood_LV
 * (4)BridgeTooNear_LV
 * (4)FrozenClover_LV
 * (4)TidewaterGlades_LV
 * (4)LostTemple
 * (4)TwistedMeadows
 * (6)Duststorm_LV
 * (6)GnollWood

3v3

 * (6)ThunderLake_LV
 * (6)GnollWood
 * (6)Monsoon_LV
 * (6)DarkForest
 * (6)UpperKingdom
 * (6)RuinsOfStratholme
 * (8)Mur’gulOasis_LV
 * (6)RollingHills
 * (6)TimbermawHold
 * (6)StranglethornVale
 * (8)Battleground_LV

4v4

 * (8)Feralas_LV
 * (8)Northshire_LV
 * (8)Sanctuary_LV
 * (8)TwilightRuins_LV
 * (8)Battleground_LV
 * (8)Deadlock_LV
 * (8)GolemsInTheMist_LV
 * (8)Mur’gulOasis_LV
 * (8)MarketSquare
 * (8)GoldRush
 * (8)Friends
 * (8)BlastedLands

FFA

 * (4)Deathrose
 * (6)Duststorm_LV
 * (6)EmeraldShores
 * (6)StranglethornVale
 * (6)Monsoon_LV
 * (6)ThunderLake_LV
 * (8)Deadlock_LV
 * (8)Mur’gulOasis_LV
 * (8)TwilightRuins_LV
 * (8)Battleground_LV

World Editor Upgrades

 * Object Limit: 30,000
 * Neutral Units: 2,048
 * Neutral Buildings: 384
 * Player Units: 4,320
 * Player Buildings: 2,400
 * Items: 1,024
 * Map Size Limit: 480 x 480
 * Tile Slot Limit: 16
 * Max Execution Limit: 3,000,000
 * Max Food Limit: 999
 * Max Resource Limit: 9,999,999
 * Array Size Limit: 32,768
 * "Always show Health Bars" now shows Mana Bars as well

New Natives

 * native GetTriggerPlayerMouseX: takes nothing returns real
 * native GetTriggerPlayerMouseY: takes nothing returns real
 * native GetTriggerPlayerMousePosition: takes nothing returns location
 * native GetTriggerPlayerMouseButton: takes nothing returns mousebuttontype
 * native SetAbilityTooltip: takes integer abilCode, string tooltip, integer level returns nothing
 * native SetAbilityActivatedTooltip: takes integer abilCode, string tooltip, integer level returns nothing
 * native SetAbilityExtendedTooltip: takes integer abilCode, string ExtendedTooltip, integer level returns nothing
 * native SetAbilityActivatedExtendedTooltip: takes integer abilCode, string ExtendedTooltip, integer level returns nothing
 * native SetAbilityResearchTooltip: takes integer abilCode, string researchTooltip, integer level returns nothing
 * native SetAbilityResearchExtendedTooltip: takes integer abilCode, string researchExtendedTooltip, integer level returns nothing
 * native GetAbilityTooltip: takes integer abilCode, integer level returns string
 * native GetAbilityActivatedTooltip: takes integer abilCode, integer level returns string
 * native GetAbilityExtendedTooltip: takes integer abilCode, integer level returns string
 * native GetAbilityActivatedExtendedTooltip: takes integer abilCode, integer level returns string
 * native GetAbilityResearchTooltip: takes integer abilCode, integer level returns string
 * native GetAbilityResearchExtendedTooltip: takes integer abilCode, integer level returns string
 * native SetAbilityIcon: takes integer abilCode, string iconPath returns nothing
 * native GetAbilityIcon: takes integer abilCode returns string
 * native SetAbilityActivatedIcon: takes integer abilCode, string iconPath returns nothing
 * native GetAbilityActivatedIcon: takes integer abilCode returns string
 * native GetAbilityPosX: takes integer abilCode returns integer
 * native GetAbilityPosY: takes integer abilCode returns integer
 * native SetAbilityPosX: takes integer abilCode, integer x returns nothing
 * native SetAbilityPosY: takes integer abilCode, integer y returns nothing
 * native GetAbilityActivatedPosX: takes integer abilCode returns integer
 * native GetAbilityActivatedPosY: takes integer abilCode returns integer
 * native SetAbilityActivatedPosX: takes integer abilCode, integer x returns nothing
 * native SetAbilityActivatedPosY: takes integer abilCode, integer y returns nothing
 * native GetUnitMaxHP: takes unit whichUnit returns integer
 * native SetUnitMaxHP: takes unit whichUnit, integer hp returns nothing
 * native GetUnitMaxMana: takes unit whichUnit returns integer
 * native SetUnitMaxMana: takes unit whichUnit, integer mana returns nothing
 * native DeleteHeroAbility: takes unit whichUnit, integer abilCode returns nothing
 * native SetItemName: takes item whichItem, string name returns nothing
 * native SetItemDescription: takes item whichItem, string name returns nothing
 * native GetItemDescription: takes item whichItem returns string
 * native SetItemTooltip: takes item whichItem, string name returns nothing
 * native GetItemTooltip: takes item whichItem returns string
 * native SetItemExtendedTooltip: takes item whichItem, string name returns nothing
 * native GetItemExtendedTooltip: takes item whichItem returns string
 * native SetItemIconPath: takes item whichItem, string name returns nothing
 * native GetItemIconPath: takes item whichItem returns string
 * native SetUnitName: takes unit whichUnit, string name returns nothing
 * native SetHeroProperName: takes unit whichUnit, string name returns nothing
 * native GetUnitBaseDamage: takes unit whichUnit, integer weaponIndex returns integer
 * native SetUnitBaseDamage: takes unit whichUnit, integer baseDamage, integer weaponIndex returns nothing
 * native GetUnitDiceNumber: takes unit whichUnit, integer weaponIndex returns integer
 * native SetUnitDiceNumber: takes unit whichUnit, integer diceNumber, integer weaponIndex returns nothing
 * native GetUnitDiceSides: takes unit whichUnit, integer weaponIndex returns integer
 * native SetUnitDiceSides: takes unit whichUnit, integer diceSides, integer weaponIndex returns nothing
 * native GetUnitAttackCooldown: takes unit whichUnit, integer weaponIndex returns real
 * native SetUnitAttackCooldown: takes unit whichUnit, real cooldown, integer weaponIndex returns nothing
 * native SetSpecialEffectColorByPlayer: takes effect whichEffect, player whichPlayer returns nothing
 * native SetSpecialEffectColor: takes effect whichEffect, integer r, integer g, integer b returns nothing
 * native SetSpecialEffectAlpha: takes effect whichEffect, integer alpha returns nothing
 * native SetSpecialEffectScale: takes effect whichEffect, real scale returns nothing
 * native SetSpecialEffectPosition: takes effect whichEffect, real x, real y, real z returns nothing
 * native SetSpecialEffectHeight: takes effect whichEffect, real height returns nothing
 * native SetSpecialEffectTimeScale: takes effect whichEffect, real timeScale returns nothing
 * native SetSpecialEffectTime: takes effect whichEffect, real time returns nothing
 * native SetSpecialEffectOrientation: takes effect whichEffect, real yaw, real pitch, real roll returns nothing
 * native SetSpecialEffectYaw: takes effect whichEffect, real yaw returns nothing
 * native SetSpecialEffectPitch: takes effect whichEffect, real pitch returns nothing
 * native SetSpecialEffectRoll: takes effect whichEffect, real roll returns nothing
 * native SetSpecialEffectX: takes effect whichEffect, real x returns nothing
 * native SetSpecialEffectY: takes effect whichEffect, real y returns nothing
 * native SetSpecialEffectZ: takes effect whichEffect, real z returns nothing
 * native SetSpecialEffectPositionLoc: takes effect whichEffect, location loc returns nothing
 * native GetLocalSpecialEffectX: takes effect whichEffect returns real
 * native GetLocalSpecialEffectY: takes effect whichEffect returns real
 * native GetLocalSpecialEffectZ: takes effect whichEffect returns real
 * native GetUnitArmor: takes unit whichUnit returns real
 * native SetUnitArmor: takes unit whichUnit, real armorAmount returns nothing
 * native UnitHideAbility: takes unit whichUnit, integer abilId, boolean flag returns nothing
 * native UnitDisableAbility: takes unit whichUnit, integer abilId, boolean flag, boolean hideUI returns nothing
 * native UnitCancelTimedLife: takes unit whichUnit returns nothing
 * native IsUnitSelectable: takes unit whichUnit returns boolean
 * native IsUnitInvulnerable: takes unit whichUnit returns boolean
 * native UnitInterruptAttack: takes unit whichUnit returns nothing
 * native GetUnitCollisionSize: takes unit whichUnit returns real
 * native GetAbilityManaCost: takes integer abilId, integer level returns integer
 * native GetAbilityCooldown: takes integer abilId, integer level returns real
 * native SetUnitAbilityCooldown: takes unit whichUnit, integer abilId, integer level, real cooldown returns nothing
 * native GetUnitAbilityCooldown: takes unit whichUnit, integer abilId, integer level returns real
 * native GetUnitAbilityCooldownRemaining: takes unit whichUnit, integer abilId returns real
 * native EndUnitAbilityCooldown: takes unit whichUnit, integer abilCode returns nothing
 * native GetUnitAbilityManaCost: takes unit whichUnit, integer abilId, integer level returns integer
 * native GetLocalUnitZ: takes unit whichUnit returns real
 * native DecPlayerTechResearched: takes player whichPlayer, integer techid, integer levels returns nothing
 * native SetEventDamage: takes real damage returns nothing