• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[Feedback] Compiled List of Bugs & Issues for 1.30.1+

Level 11
Joined
Nov 23, 2013
Messages
665
Two minor bugs after you win the last UD mission in TFT:
  • Scorescreen shows a human/BE picture when it should have been an undead picture, with a Crypt Lord:
    udscorescreen-png.320887
  • In the Credits cinematic, the first line is bugged, the transmission is made by a unit with no name "(null"):
    tftcredits-png.320888
I'm playing on 1.30.4, English version
 
Last edited:

deepstrasz

Map Reviewer
Level 69
Joined
Jun 4, 2009
Messages
18,835
Please make a normal minimize for the game. It's annoying, I can't even use the show desktop feature and am forced to quit the game unless I have the necessary programs opened to use Alt+Tab to switch between the game and them.

I would love it if the ambient sounds and other channels (assuming they are separate) have their own volumes like in StarCraft II, Diablo III because ambient sounds are too loud and they can only be either stopped or lowered along with the rest of the sound channels.
 
Level 5
Joined
May 10, 2018
Messages
129
JASS:
BlzUnitCancelTimedLife
just kills the unit!!!!!
What is the difference between
JASS:
BlzUnitCancelTimedLife
and
JASS:
KillUnit
?
What is the reverse operation of
JASS:
UnitApplyTimedLife
?
 
Level 11
Joined
Nov 23, 2013
Messages
665
Sometimes in melee games (vs computer, I don't know if it happens in competitive games), enemy buildings will be displayed on minimap even though they were defeated.
minimapbug-png.321328
This happenned on map "Friends", on 1.30.4

Also, I forgot to save the screenshot, but I had an issue with AI on a melee map vs computer: after my gold mine had collapsed, my AI ally built two Town Halls in my base for no reason.
 
Level 9
Joined
Jul 20, 2018
Messages
176
Level 2
Joined
Mar 11, 2018
Messages
20
bnet one here
Imgur
cannot create acc with this name, I've made that name up and been using it for about 7 years now, as much as I'd like to believe, it might've evolved into some sort of taboo and synonym for hubris that would require blacklisting, I highly doubt it. So instead I'm reporting it as a bug.
 

deepstrasz

Map Reviewer
Level 69
Joined
Jun 4, 2009
Messages
18,835
When closing a leaderboard, there appears a weird golden cross-like UI element with the leaderboard arrow facing south. It's very brief so I can't really print screen it.

EDIT:
OK, caught something:
weirdUIleaderboard.png
 
Last edited:
Level 5
Joined
May 10, 2018
Messages
129
When closing a leaderboard, there appears a weird golden cross-like UI element with the leaderboard arrow facing south. It's very brief so I can't really print screen it.

EDIT:
OK, caught something:
The same situation when closing a leaderboard.

BTW, I have posted this issue so many times in this forum. (Since 5 months ago, 3-4 times) Maybe my English is not good enough to have someone noticed. haha...
 
Level 5
Joined
May 10, 2018
Messages
129
Bugs in 1.31 PTR:
[|jass]BlzGetUnitWeaponRealField[/|jass] dosen't work whatever the field is. I haven't tested other types of field.

Some old bugs:

1. I have never successfully applied [|jass]BlzUnitCancelTimedLife[/|jass] on a unit. Sometimes nothing happened, and the other times the unit was killed. [ver. 1.29 - present]

2. Abilities with base ability 'Arel' perform incorrectly when [|jass]SetUnitAbilityLevel[/|jass] from 1 to 2 / from 2 to 1
[|jass]GetUnitAbilityLevel[/|jass] returns the right value, but HP regeneration rate remains old. [ver. 1.24(at least) - present]
 
Level 13
Joined
May 10, 2009
Messages
868
I was messing around with these two
JASS:
native BlzGetUnitRealField                         takes unit whichUnit, unitrealfield whichField returns real
native BlzSetUnitRealField                         takes unit whichUnit, unitrealfield whichField, real value returns boolean
and there are problems regarding a bunch of fields.


It looks like there's some sort of hierarchy among the following fields:
JASS:
6. UNIT_RF_SIGHT_RADIUS ->
5. UNIT_RF_ANIMATION_RUN_SPEED ->
4. UNIT_RF_ANIMATION_WALK_SPEED ->
3. UNIT_RF_STRENGTH_PER_LEVEL ->
2. UNIT_RF_AGILITY_PER_LEVEL ->
1. UNIT_RF_INTELLIGENCE_PER_LEVEL
Assigning any value to UNIT_RF_SIGHT_RADIUS will change it along with all the other fields mentioned above. Though, changing UNIT_RF_INTELLIGENCE_PER_LEVEL won't do anything to the others as they're "above it".

There's a small test map attached below.


It only changes the hp/mana bar size correctly, though it doesn't affect the actual selection circle.

1.5.png

3.0.png



JASS:
UNIT_RF_SHADOW_IMAGE_WIDTH,
UNIT_RF_SHADOW_IMAGE_HEIGHT,
UNIT_RF_SHADOW_IMAGE_CENTER_X,
UNIT_RF_SHADOW_IMAGE_CENTER_Y
None of those work at all.

Attempts on assigning a new value to UNIT_RF_SHADOW_IMAGE_WIDTH will instead affect UNIT_RF_SHADOW_IMAGE_CENTER_Y by re-applying its own default values at first. Further attempts on changing UNIT_RF_SHADOW_IMAGE_WIDTH will affect UNIT_RF_SHADOW_IMAGE_CENTER_X.

Attempts on assigning a new value to UNIT_RF_SHADOW_IMAGE_HEIGHT will instead affect UNIT_RF_SHADOW_IMAGE_CENTER_X by re-applying its own default values at first. Further attempts on changing UNIT_RF_SHADOW_IMAGE_HEIGHT will affect UNIT_RF_SHADOW_IMAGE_CENTER_Y.

both UNIT_RF_SHADOW_IMAGE_CENTER_X and UNIT_RF_SHADOW_IMAGE_CENTER_Y are properly storing the values internally, but no apparent changes could be seen.

UNIT_RF_SCALING_VALUE:
Its setter internally stores the values, but, apparently, it doesn't change the unit size at all. The getter function returns whatever value the setter was told to store. In case the setter wasn't used, then it returns the correct value. Also, any size modifier (e.g. bloodlust) won't do any effect on the returned value either.

UNIT_RF_FLY_HEIGHT:
It looks like the setter isn't working at all. Though, the getter works as intended. Well, I wouldn't worry too much about this one, because there's already a native that deals with setting a unit's flying height.

UNIT_RF_CAST_POINT:
It seems to work while the unit hasn't cast any spell. After that, any changes to this field won't do anything. Though, the getter will return whatever value was assigned last.

UNIT_RF_CAST_BACK_SWING doesn't work at all.

UNIT_RF_MAXIMUM_XXX_ANGLE_DEGREES:
Both UNIT_RF_MAXIMUM_PITCH_ANGLE_DEGREES and UNIT_RF_MAXIMUM_ROLL_ANGLE_DEGREES functions aren't working at all.


NOTE: I have no idea how these guys work; I couldn't test them properly.
JASS:
UNIT_RF_ELEVATION_SAMPLE_RADIUS,
UNIT_RF_FOG_OF_WAR_SAMPLE_RADIUS,
UNIT_RF_SELECTION_CIRCLE_HEIGHT,
UNIT_RF_OCCLUDER_HEIGHT
These are working as they should.
JASS:
UNIT_RF_HIT_POINTS_REGENERATION_RATE,
UNIT_RF_MANA_REGENERATION,
UNIT_RF_DEATH_TIME,
UNIT_RF_TURN_RATE,
UNIT_RF_DEFENSE,
UNIT_RF_PRIORITY,
UNIT_RF_SPEED,
UNIT_RF_HP,
UNIT_RF_MANA,
UNIT_RF_ACQUISITION_RANGE, // Still limited to a minimum of 51. - just like the old native.
UNIT_RF_MINIMUM_ATTACK_RANGE

Credits to @MyPad for providing a StateWatcher library which helped me test those fields.
 

Attachments

  • SR-RN-WK-ST-AG-IN_Testmap.w3x
    20.5 KB · Views: 68
Last edited:

deepstrasz

Map Reviewer
Level 69
Joined
Jun 4, 2009
Messages
18,835
Diablo II BETA ver. 0.75
Crashes when the next map is supposed to start after the first one (new game/hero).
Tried it on 1.30.4. Not sure if it's related to the patch or not.

EDIT:
KotNR Star Wars RPG
This one's first map doesn't want to start at all. Tried saving it on the latest and the same happens.
Alright, tried saving the first map not just the whole campaign and I think it's a JASS error:
kotnJASSprob.png

EDIT2:
This one also suffers from coding errors:
Nature's Call - Return of the Dragon

EDIT3:
Mathias Chronicles Redux Demo
See that post about an inconsistent crash on one map from a campaign.

EDIT4:
Avatar of Ice
Random crashes related to enemy unit selection, possibly.
EDIT: hopefully the issue has been solved: Avatar of Ice
 
Last edited:
Warcraft 3 1.31 PTR World Editor removes the text of disabled triggers beeing converted to custom text (jass) on map close or opening.
the disabled jass triggers are cleared when I reopened my map. GUI Triggers were not cleared.

Edit: Text of disabled scriptfiles (jass) is also removed.
 
Last edited:
BlzHideUnitAbility and BlzDisableUnitAbility are cumulative. I.e. the number of times you hide/disable an ability, is the number of times you will need to show/enable that ability for it to actually work, and vice versa.
I suppose this could be intended, but it definitely surprised me.

JASS:
// a will be visible
call BlzUnitHideAbility(u, a, false)
call BlzUnitHideAbility(u, a, true)

// a will still be hidden
call BlzUnitHideAbility(u, a, false)
call BlzUnitHideAbility(u, a, false)
call BlzUnitHideAbility(u, a, true)

// a will be visible
call BlzUnitHideAbility(u, a, false)
call BlzUnitHideAbility(u, a, false)
call BlzUnitHideAbility(u, a, true)
call BlzUnitHideAbility(u, a, true)

// Other way around:

// a will be hidden
call BlzUnitHideAbility(u, a, true)
call BlzUnitHideAbility(u, a, false)

// a will still be visible
call BlzUnitHideAbility(u, a, true)
call BlzUnitHideAbility(u, a, true)
call BlzUnitHideAbility(u, a, false)

// a will be hidden
call BlzUnitHideAbility(u, a, true)
call BlzUnitHideAbility(u, a, true)
call BlzUnitHideAbility(u, a, false)
call BlzUnitHideAbility(u, a, false)
 
@leandrotp has a thread about silence, where he is explaining each ability has 2 integer counters, silence-counter and hide-counter. When the hide-counter gets above 0, for example, then the ability will be hidden. When it returns to 0, or <1 more exactly, it will be visible again.

One reason they use integer over boolean could be... he explains that some abilities, like Hex do set the counter to -1 intentionally for "Move" ability for example, before the Silence effect drops and makes all abilities to increase their counter by +1, resulting in silencing all abilities. But this way, the "Move" will only get from -1 to 0, so will not be silenced like others.

Still yes, it would be nice if there could be some constraint for the counter... or a way to explicitly get wanted result with only one function call.

SilenceEx - Everything you don't know about Silence.
 

deepstrasz

Map Reviewer
Level 69
Joined
Jun 4, 2009
Messages
18,835
Not technically a bug but it would be great to have a dynamic camera for melee games so highground/mountain maps could become viable. Right now, if the terrain is too high (cliff level), the camera remains pretty static and it's like it being zoomed on the terrain and gameplay becomes unacceptable.
 
Adding subanimations with BlzSpecialEffectAddSubAnimation does not seem to combine them as you would expect. E.g. for town hall, adding "work", "upgrade" and "first" just shows the tier1 version's work animation.
This might be by design, but we should be able to combine subanimations that way.

Also, removing a subanimation that was added before a second one, will not cause the second one to be applied.
E.g. for the footman, if you add to Stand "victory" and then "defend", the victory animation will play. If you then remove victory, the defend animation will not play.
 
Last edited:
If one uses the new FireOrb skill to improve gained healing/regeneration by using a value above 1.0, an unit with regeneration will lose life when the "debuff" expires. As higher the regeneration as higher the life lose.
 

Attachments

  • FireOrb test.w3x
    17.7 KB · Views: 115
Last edited:
"framedef.toc" on PTR 1.31 misses this base fdfs:
[box]
UI\FrameDef\Glue\battlenetchannellist.fdf
UI\FrameDef\Glue\battlenetcustompanel.fdf
UI\FrameDef\Glue\battlenettemplates.fdf
UI\FrameDef\Glue\battlenetuserlistboxitem.fdf
UI\FrameDef\Glue\standardtemplates.fdf
UI\FrameDef\UI\escmenutemplates.fdf
UI\FrameDef\UI\infopanelbuildingdetail.fdf
UI\FrameDef\UI\infopanelitemdetail.fdf
UI\FrameDef\UI\infopaneltemplates.fdf
UI\FrameDef\UI\infopanelunitdetail.fdf
UI\FrameDef\Glue\dialog.fdf
UI\FrameDef\Glue\listbox.fdf
UI\FrameDef\Glue\multiplayermenu.fdf
[/box]
which results into failing creating anything from them.
 

deepstrasz

Map Reviewer
Level 69
Joined
Jun 4, 2009
Messages
18,835
Not technically a bug, rather a suggestion.
The Tome of Knowledge's item model colour is the same as that for the Manual of Health. All Runes have the same hue.
It'd be better if they'd be all differentiated for ladder. That way you'll know with which hero you'll quickly right-click the tome without needing to select/left click it first to see what it is or randomly take it with the closest hero.
 
Level 5
Joined
Sep 29, 2016
Messages
43
I've noticed some weird behaviour using the Channel Ability in Spellbooks.

First example:
A Unit has a spellbook. That spellbook has a Channel Spell, Follow Trough Time: 5, Visible Activated.
Trigger: If that unit uses that Channel spell, make the Owner of Triggering Unit select the other unit.
-> Other unit is selected. UI (Move, Attack, anything) vanished. Rightclick movement is possible, Hotkey AttackMove/Stop/Hold Position/etc. do not work.
If you click on the 2nd unit, nothing changes. If you Double click the unit, UI appears again.

Second example:
A Unit has NO spellbook. The Channel Spell is added to the unit, Follow Through Time: 5, Visible Activated.
Trigger: If that unit uses that Channel spell, make the Owner of Triggering Unit select the other unit.
-> Other unit is selected. UI is visible.

I do know that this does not happen if you use a different Instant No Target Spell, like War Stomp for example.

I attached a map, where you can test both examples.
I do hope this bug can be fixed for the upcoming patch.
 

Attachments

  • SpellBookChannelSelectionBug.w3x
    17.5 KB · Views: 119
Level 20
Joined
Aug 29, 2012
Messages
826
Just noticed a small bug: some voice files for Shamans are in English in my French game, not all of them though.

Affected sounds are: What1, What2, What3, What4, Yes1, Yes3, Yes4, YesAttack1, YesAttack2 and YesAttack3.

That's oddly specific and as far as I know, it's the only unit affected by this bug.
 
Interaction between Elunes grace (nightelf archer skill) and bracers (spellreduction) is wierd and changes on the order the unit gained them. If one adds elune first and bracer second only bracer is used. If one adds bracers first and elune second both are used.
  • SpellRess Stacking Test
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Unit - Set Name of Soldat 0024 <gen> to Bracer 33 + Bracer 60
      • -------- Uses 33 --------
      • Unit - Add Zauberschaden-Reduzierung to Soldat 0024 <gen>
      • Unit - Add Zauberschaden-Reduzierung (60) to Soldat 0024 <gen>
      • -------- ---- --------
      • Unit - Set Name of Soldat 0026 <gen> to Bracer 60 + Bracer 33
      • -------- Uses 60 --------
      • Unit - Add Zauberschaden-Reduzierung (60) to Soldat 0026 <gen>
      • Unit - Add Zauberschaden-Reduzierung to Soldat 0026 <gen>
      • -------- ---- --------
      • Unit - Set Name of Soldat 0027 <gen> to Elune + Elune 60
      • -------- Uses Both --------
      • Unit - Add Elunes Anmut to Soldat 0027 <gen>
      • Unit - Add Elunes Anmut (60) to Soldat 0027 <gen>
      • -------- ---- --------
      • Unit - Set Name of Soldat 0028 <gen> to Elune + Bracer
      • -------- Uses Bracer --------
      • Unit - Add Elunes Anmut to Soldat 0028 <gen>
      • Unit - Add Zauberschaden-Reduzierung to Soldat 0028 <gen>
      • -------- ---- --------
      • Unit - Set Name of Soldat 0029 <gen> to Bracer + Elune
      • -------- Uses Both --------
      • Unit - Add Zauberschaden-Reduzierung to Soldat 0029 <gen>
      • Unit - Add Elunes Anmut to Soldat 0029 <gen>
      • Game - Display to (All players) for 99999.00 seconds the text: Deal 100 Spell-dama...
      • Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
        • Loop - Actions
          • Unit - Cause (Picked unit) to damage (Picked unit), dealing 100.00 damage of attack type Spells and damage type Magic
 

Attachments

  • Bracer and Elunes Grace.w3x
    17.5 KB · Views: 123

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,535
With patch 1.31:

Index 0 is the new Index 1, which is probably intended. However, You can't change Attack Interval's Index to 0 (minimum 1 to 2), so the Attack Interval function doesn't work.
  • Unit - Set Dice Number of (Triggering unit) to 4 for weapon index: 0
  • Unit - Set Dice Sides of (Triggering unit) to 1 for weapon index: 0
  • Unit - Set Attack Interval of (Triggering unit) to 2.00 for weapon index: 1
The Index for Level is now 1 less, so a Level 1 ability should be set to "Level: 0" in order for it to work. This is a bit misleading. Although, I suppose it's not necessarily a bug.
  • Unit - For Unit (Triggering unit), Set cooldown of ability Animate Dead, Level: 0 to 5.00
Also, there was a bug from before 1.31 that would occasionally cause the cooldown animation to not play. I'll keep an eye out to see if it's still happening with 1.31.

EDIT: Yes, the cooldown visual bug is still happening. What's weird is if you re-select the unit then the cooldown displays properly again. I guess re-selecting it reloads the UI.
 
Last edited:

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,535
Last edited:
You do realize that the function ends with the return statement? I.e. anything after it will never be executed.
Anyway, I haven't encountered anything like that, are you sure there isn't some other error? Keep in mind that the reported lines are often (if not always) inaccurate.

Maybe it's taking the lines after the return statement to be part of the return statement? It would kind of make sense in an unintended way, because as I said those line are otherwise useless.
 
Level 4
Joined
Nov 27, 2012
Messages
85
Ya, I never really thought about that until today, had a realization after I posted. Now I'm wondering how many leaks I have
It's definitely those lines as those errors will disappear after I comment them out but I've just been moving things to before the return

So I only had to edit about 15 of these instances to get it compiling, thanks for the help
 
Last edited:
Level 4
Joined
Nov 27, 2012
Messages
85
At some point World Editor decided to replace almost every string in object editor with some random string

Edit: I've determined this actually happens during saving
Edit2: Ok I see that this is a known issue and widely reported. Would be great if this was written in the official patch notes
 
Last edited:
Top