• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

[Trigger] Critical error in skills

Status
Not open for further replies.
Level 4
Joined
Jul 29, 2006
Messages
84
For single player mode, everything goes well. Problem appears when i implement it into my map. Every game, which someone uses the skill, ends with crashing whole warcraft. Randomly. Once i crashed the game at first try, another time i made my hero max lvl and soon after game died. Tried to make this skill 3 different ways, each time same result. I need this skill badly.
 

Attachments

  • Fast_Arrow_Shot_2nd_variation.w3x
    34.8 KB · Views: 54
Last edited:
Level 4
Joined
Jul 29, 2006
Messages
84
I tryed to use FAS and skill crush then i made the same skill but in different way FAS2 but the skill also crushed
Sorry that i didnt do trigers board i just dont know yet how to do it just download this map and u will see maybe u help find the bug that i cant find
Its the same skill maded by 2 different ways but with the same resoult Error and game goes to desktop when i try to use it on multiplayer map
 
Level 4
Joined
Jul 29, 2006
Messages
84
  • FAS begin
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Fast Arrow Shoot
    • Actions
      • Set TempPoint = (Target point of ability being cast)
      • Set TempPoint2 = (Position of (Triggering unit))
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Distance between TempPoint and TempPoint2) Greater than 300.00
        • Then - Actions
          • Unit Group - Add (Triggering unit) to FAS_Shooters
          • Hashtable - Save Handle OfTempPoint as 1 of (Key (Triggering unit)) in FAS_Hashtable
          • Animation - Change (Last created unit)'s animation speed to 200.00% of its original speed
          • Set TempPoint = ((Position of (Triggering unit)) offset by ((Random real number between -20.00 and 20.00), (Random real number between -20.00 and 20.00)))
          • Unit - Create 1 Shadow for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
          • Hashtable - Save Handle Of(Last created unit) as 8 of (Key (Triggering unit)) in FAS_Hashtable
          • Animation - Play (Last created unit)'s attack animation, using only Common animations
          • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 60.00% transparency
          • Set TempPoint = ((Position of (Triggering unit)) offset by ((Random real number between -20.00 and 20.00), (Random real number between -20.00 and 20.00)))
          • Unit - Create 1 Shadow for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
          • Hashtable - Save Handle Of(Last created unit) as 7 of (Key (Triggering unit)) in FAS_Hashtable
          • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 60.00% transparency
          • Animation - Play (Last created unit)'s attack animation, using only Common animations
          • Animation - Change (Last created unit)'s animation speed to 150.00% of its original speed
          • Set TempPoint = ((Position of (Triggering unit)) offset by ((Random real number between -20.00 and 20.00), (Random real number between -20.00 and 20.00)))
          • Unit - Create 1 Shadow for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
          • Hashtable - Save Handle Of(Last created unit) as 6 of (Key (Triggering unit)) in FAS_Hashtable
          • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 60.00% transparency
          • Animation - Play (Last created unit)'s attack animation, using only Common animations
          • Animation - Change (Last created unit)'s animation speed to 250.00% of its original speed
          • Set TempPoint = ((Position of (Triggering unit)) offset by ((Random real number between -20.00 and 20.00), (Random real number between -20.00 and 20.00)))
          • Unit - Create 1 Shadow for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
          • Hashtable - Save Handle Of(Last created unit) as 5 of (Key (Triggering unit)) in FAS_Hashtable
          • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 60.00% transparency
          • Animation - Play (Last created unit)'s attack animation, using only Common animations
          • Animation - Change (Last created unit)'s animation speed to 300.00% of its original speed
          • Set TempPoint = (Position of (Triggering unit))
          • Unit - Create 1 Shooter for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
          • Hashtable - Save Handle Of(Last created unit) as 2 of (Key (Triggering unit)) in FAS_Hashtable
          • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 100.00% transparency
          • If ((Level of Fast Arrow Shoot for (Triggering unit)) Equal to 2) then do (Unit - Add Item Damage Bonus (+2) to (Last created unit)) else do (Do nothing)
          • If ((Level of Fast Arrow Shoot for (Triggering unit)) Equal to 3) then do (Unit - Add Item Damage Bonus (+4) to (Last created unit)) else do (Do nothing)
          • Unit - Create 1 Shooter for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
          • Hashtable - Save Handle Of(Last created unit) as 3 of (Key (Triggering unit)) in FAS_Hashtable
          • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 100.00% transparency
          • If ((Level of Fast Arrow Shoot for (Triggering unit)) Equal to 2) then do (Unit - Add Item Damage Bonus (+2) to (Last created unit)) else do (Do nothing)
          • If ((Level of Fast Arrow Shoot for (Triggering unit)) Equal to 3) then do (Unit - Add Item Damage Bonus (+4) to (Last created unit)) else do (Do nothing)
          • Unit - Create 1 Shooter for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
          • Hashtable - Save Handle Of(Last created unit) as 4 of (Key (Triggering unit)) in FAS_Hashtable
          • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 100.00% transparency
          • If ((Level of Fast Arrow Shoot for (Triggering unit)) Equal to 2) then do (Unit - Add Item Damage Bonus (+2) to (Last created unit)) else do (Do nothing)
          • If ((Level of Fast Arrow Shoot for (Triggering unit)) Equal to 3) then do (Unit - Add Item Damage Bonus (+4) to (Last created unit)) else do (Do nothing)
          • Trigger - Turn on FAS shoot <gen>
        • Else - Actions
          • Game - Display to (Player group((Owner of (Triggering unit)))) the text: Can't shoot so clos...
          • Unit - Order (Triggering unit) to Stop
      • Custom script: call RemoveLocation(udg_TempPoint)
      • Custom script: call RemoveLocation(udg_TempPoint2)
  • FAS shoot
    • Events
      • Time - FAS_Timer expires
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Number of units in FAS_Shooters) Greater than 0
        • Then - Actions
          • Unit Group - Pick every unit in FAS_Shooters and do (Actions)
            • Loop - Actions
              • Set TempPoint = ((Load 1 of (Key (Picked unit)) in FAS_Hashtable) offset by ((Random real number between -200.00 and 200.00), (Random real number between -200.00 and 200.00)))
              • Unit - Order (Load 2 of (Key (Picked unit)) in FAS_Hashtable) to Attack Ground TempPoint
              • Set TempPoint = ((Load 1 of (Key (Picked unit)) in FAS_Hashtable) offset by ((Random real number between -200.00 and 200.00), (Random real number between -200.00 and 200.00)))
              • Unit - Order (Load 3 of (Key (Picked unit)) in FAS_Hashtable) to Attack Ground TempPoint
              • Set TempPoint = ((Load 1 of (Key (Picked unit)) in FAS_Hashtable) offset by ((Random real number between -200.00 and 200.00), (Random real number between -200.00 and 200.00)))
              • Unit - Order (Load 4 of (Key (Picked unit)) in FAS_Hashtable) to Attack Ground TempPoint
              • Animation - Queue (Load 5 of (Key (Picked unit)) in FAS_Hashtable)'s attack animation
              • Animation - Queue (Load 6 of (Key (Picked unit)) in FAS_Hashtable)'s attack animation
              • Animation - Queue (Load 7 of (Key (Picked unit)) in FAS_Hashtable)'s attack animation
              • Animation - Queue (Load 8 of (Key (Picked unit)) in FAS_Hashtable)'s attack animation
              • Custom script: call RemoveLocation(udg_TempPoint)
        • Else - Actions
          • Trigger - Turn off (This trigger)
  • FAS end
    • Events
      • Unit - A unit Stops casting an ability
    • Conditions
      • (Ability being cast) Equal to Fast Arrow Shoot
    • Actions
      • Unit Group - Remove (Triggering unit) from FAS_Shooters
      • Animation - Change (Triggering unit)'s animation speed to 100.00% of its original speed
      • Unit - Add a 0.01 second Generic expiration timer to (Load 2 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 3 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 4 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 5 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 6 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 7 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 8 of (Key (Triggering unit)) in FAS_Hashtable)
      • Set TempPoint = (Load 1 of (Key (Triggering unit)) in FAS_Hashtable)
      • Custom script: call RemoveLocation(udg_TempPoint)
      • Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in FAS_Hashtable
2nd skill:

  • FAS2 begin
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Fast Arrow Shoot
    • Actions
      • Set TempPoint = (Target point of ability being cast)
      • Set TempPoint2 = (Position of (Triggering unit))
      • Unit Group - Add (Triggering unit) to FAS_Shooters
      • Hashtable - Save Handle OfTempPoint as 1 of (Key (Triggering unit)) in FAS_Hashtable
      • Animation - Change (Last created unit)'s animation speed to 200.00% of its original speed
      • Set TempPoint = ((Position of (Triggering unit)) offset by ((Random real number between -20.00 and 20.00), (Random real number between -20.00 and 20.00)))
      • Unit - Create 1 Shadow for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
      • Hashtable - Save Handle Of(Last created unit) as 3 of (Key (Triggering unit)) in FAS_Hashtable
      • Animation - Play (Last created unit)'s attack animation, using only Common animations
      • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 60.00% transparency
      • Set TempPoint = ((Position of (Triggering unit)) offset by ((Random real number between -20.00 and 20.00), (Random real number between -20.00 and 20.00)))
      • Unit - Create 1 Shadow for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
      • Hashtable - Save Handle Of(Last created unit) as 4 of (Key (Triggering unit)) in FAS_Hashtable
      • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 60.00% transparency
      • Animation - Play (Last created unit)'s attack animation, using only Common animations
      • Animation - Change (Last created unit)'s animation speed to 150.00% of its original speed
      • Set TempPoint = ((Position of (Triggering unit)) offset by ((Random real number between -20.00 and 20.00), (Random real number between -20.00 and 20.00)))
      • Unit - Create 1 Shadow for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
      • Hashtable - Save Handle Of(Last created unit) as 5 of (Key (Triggering unit)) in FAS_Hashtable
      • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 60.00% transparency
      • Animation - Play (Last created unit)'s attack animation, using only Common animations
      • Animation - Change (Last created unit)'s animation speed to 250.00% of its original speed
      • Set TempPoint = ((Position of (Triggering unit)) offset by ((Random real number between -20.00 and 20.00), (Random real number between -20.00 and 20.00)))
      • Unit - Create 1 Shadow for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
      • Hashtable - Save Handle Of(Last created unit) as 6 of (Key (Triggering unit)) in FAS_Hashtable
      • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 60.00% transparency
      • Animation - Play (Last created unit)'s attack animation, using only Common animations
      • Animation - Change (Last created unit)'s animation speed to 300.00% of its original speed
      • Set TempPoint = (Position of (Triggering unit))
      • Unit - Create 1 Shooter for (Owner of (Triggering unit)) at TempPoint facing (Facing of (Triggering unit)) degrees
      • Animation - Change (Last created unit)'s vertex coloring to (20.00%, 20.00%, 20.00%) with 100.00% transparency
      • Hashtable - Save Handle Of(Last created unit) as 2 of (Key (Triggering unit)) in FAS_Hashtable
      • Trigger - Turn on FAS shoot <gen>
      • Custom script: call RemoveLocation(udg_TempPoint)
      • Custom script: call RemoveLocation(udg_TempPoint2)
  • FAS2 shoot
    • Events
      • Time - Every 0.20 seconds of game time
    • Conditions
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Number of units in FAS_Shooters) Greater than 0
        • Then - Actions
          • Unit Group - Pick every unit in FAS_Shooters and do (Actions)
            • Loop - Actions
              • Set TempPoint = ((Load 1 of (Key (Picked unit)) in FAS_Hashtable) offset by ((Random real number between -200.00 and 200.00), (Random real number between -200.00 and 200.00)))
              • Set TempUnit = (Load 2 of (Key (Picked unit)) in FAS_Hashtable)
              • Set TempInt = (Level of Fast Arrow Shoot for (Picked unit))
              • Unit - Order TempUnit to Neutral Tinker - Cluster Rockets TempPoint
              • Unit Group - Pick every unit in (Units within 100.00 of TempPoint matching (((Owner of (Matching unit)) is an enemy of (Owner of TempUnit)) Equal to True)) and do (Unit - Cause TempUnit to damage (Picked unit), dealing (10.00 x (Real(TempInt))) damage of attack type Spells and damage type Normal)
              • Animation - Queue (Load 3 of (Key (Picked unit)) in FAS_Hashtable)'s attack animation
              • Animation - Queue (Load 4 of (Key (Picked unit)) in FAS_Hashtable)'s attack animation
              • Animation - Queue (Load 5 of (Key (Picked unit)) in FAS_Hashtable)'s attack animation
              • Animation - Queue (Load 6 of (Key (Picked unit)) in FAS_Hashtable)'s attack animation
              • Custom script: call RemoveLocation(udg_TempPoint)
        • Else - Actions
          • Trigger - Turn off (This trigger)
  • FAS2 end
    • Events
      • Unit - A unit Stops casting an ability
    • Conditions
      • (Ability being cast) Equal to Fast Arrow Shoot
    • Actions
      • Unit Group - Remove (Triggering unit) from FAS_Shooters
      • Animation - Change (Triggering unit)'s animation speed to 100.00% of its original speed
      • Unit - Hide (Load 2 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Hide (Load 3 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Hide (Load 4 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Hide (Load 5 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Hide (Load 6 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 2 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 3 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 4 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 5 of (Key (Triggering unit)) in FAS_Hashtable)
      • Unit - Add a 0.01 second Generic expiration timer to (Load 6 of (Key (Triggering unit)) in FAS_Hashtable)
      • Set TempPoint = (Load 1 of (Key (Triggering unit)) in FAS_Hashtable)
      • Custom script: call RemoveLocation(udg_TempPoint)
      • Hashtable - Clear all child hashtables of child (Key (Triggering unit)) in FAS_Hashtable
 
Level 4
Joined
Jul 29, 2006
Messages
84
I want it to be a MUI triger how i supose to use loop in MUI from where i must to start and where end?
And now someone know what exacly the problem is i mean what do that game crushes and go to desktop with Warcraf3 comunicat of critical fatal error?
 
wc3 hash tables can cause game crashes on some windows 7 computers i know this because it happens to me all the time when i host a map and i have win 7
if you are using win 7 instead of a hash table use arrays this spell does not require a hash table anyways

I have windows 7, i use hashtables and i don't fatal error, except if everyone fatal error (not from hashs)
 
Status
Not open for further replies.
Top