• 🏆 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!

[Crash] [desync?] Unit Dies

Level 18
Joined
Mar 16, 2008
Messages
721
Unsure what exactly causes the desync but it seems to be usually occur to 0, 1, or 2 players when they see the death of the unit named Murkgul.


1705196323510.png

1705195856516.png

1705195874645.png

1705195902474.png

1705195925377.png

1705195951939.png

1705195960353.png

1705195990226.png

  • furbolg quest acquire
    • Events
      • Unit - A unit comes within 256.00 of Furbolg 0197 <gen>
    • Conditions
      • ((Triggering unit) is A Hero) Equal to True
      • (Furbolg 0197 <gen> is alive) Equal to True
    • Actions
      • AI - Ignore Furbolg 0197 <gen>'s guard position
      • Player Group - Make Player Group - Neutral Hostile treat Player Group - Neutral Passive as an Enemy
      • Player Group - Make Player Group - Neutral Passive treat Player Group - Neutral Hostile as an Enemy
      • Quest - Display to (All players) the Quest Discovered message: Optional Quest Acqu...
      • Quest - Mark fur_quest as Discovered
      • Trigger - Turn on furbolg quest complete <gen>
      • Trigger - Turn on furbolg quest attack loop <gen>
      • Countdown Timer - Start furbolg_qst_atk_loop_timer as a One-shot timer that will expire in 1.00 seconds
      • Trigger - Turn off (This trigger)
  • furbolg quest attack loop
    • Events
      • Time - furbolg_qst_atk_loop_timer expires
    • Conditions
      • (fur_quest is completed) Equal to False
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (fur_quest is completed) Equal to True
        • Then - Actions
          • Player Group - Make Player Group - Neutral Hostile treat Player Group - Neutral Passive as an Neutral
          • Player Group - Make Player Group - Neutral Passive treat Player Group - Neutral Hostile as an Neutral
          • Trigger - Turn off (This trigger)
        • Else - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (Furbolg 0197 <gen> is alive) Equal to True
              • (Murkgul (unique boss creep) 0350 <gen> is alive) Equal to True
            • Then - Actions
              • Unit - Order Furbolg 0197 <gen> to Attack Murkgul (unique boss creep) 0350 <gen>
              • Unit - Order Murloc Plaguebearer 0232 <gen> to Attack Furbolg 0197 <gen>
              • Unit - Order Murloc Plaguebearer 0234 <gen> to Attack Furbolg 0197 <gen>
              • Unit - Order Murloc Plaguebearer 0235 <gen> to Attack Furbolg 0197 <gen>
              • Unit - Order Murloc Plaguebearer 0233 <gen> to Attack Furbolg 0197 <gen>
              • Set VariableSet fur_unit_pt = (Position of Furbolg 0197 <gen>)
              • Sound - Play FurbolgYesAttack1 <gen> at 80.00% volume, located at fur_unit_pt with Z offset 0.00
              • Custom script: call RemoveLocation(udg_fur_unit_pt)
              • Cinematic - Flash a speech indicator for Furbolg 0197 <gen> of color (100.00%, 100.00%, 100.00%) with 0.00% transparency
              • Countdown Timer - Pause furbolg_qst_atk_loop_timer
              • Countdown Timer - Start furbolg_qst_atk_loop_timer as a One-shot timer that will expire in 12.00 seconds
            • Else - Actions
  • furbolg quest fail
    • Events
      • Unit - Furbolg 0197 <gen> Dies
    • Conditions
    • Actions
      • Trigger - Turn off furbolg quest complete <gen>
      • Countdown Timer - Pause furbolg_qst_atk_loop_timer
      • Trigger - Turn off furbolg quest attack loop <gen>
      • Special Effect - Destroy fur_sfx
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (fur_quest is completed) Equal to True
        • Then - Actions
        • Else - Actions
          • Player Group - Make Player Group - Neutral Hostile treat Player Group - Neutral Passive as an Neutral
          • Player Group - Make Player Group - Neutral Passive treat Player Group - Neutral Hostile as an Neutral
          • Quest - Display to (All players) the Quest Failed message: Optional Quest Fail...
          • Quest - Mark fur_quest as Failed
      • Trigger - Turn off (This trigger)
  • furbolg quest complete
    • Events
      • Unit - Murkgul (unique boss creep) 0350 <gen> Dies
    • Conditions
    • Actions
      • Countdown Timer - Pause furbolg_qst_atk_loop_timer
      • Trigger - Turn off furbolg quest attack loop <gen>
      • Trigger - Turn off furbolg quest fail <gen>
      • Special Effect - Destroy fur_sfx
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • (Furbolg 0197 <gen> is alive) Equal to True
        • Then - Actions
          • Unit - Order Furbolg 0197 <gen> to Follow Neutral Furbolg Hut (Den of Wonders) 0183 <gen>
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (fur_quest is discovered) Equal to True
              • (Neutral Furbolg Hut (Den of Wonders) 0183 <gen> is alive) Equal to True
            • Then - Actions
              • Quest - Change the description of fur_quest to The Neutral Furbolg...
              • Quest - Display to (All players) the Quest Completed message: Optional Quest Comp...
              • Quest - Mark fur_quest as Completed
              • Unit - Make Neutral Furbolg Hut (Den of Wonders) 0183 <gen> Invulnerable
              • Unit - Add Shop Purchase Item to Neutral Furbolg Hut (Den of Wonders) 0183 <gen>
              • Unit - Add Sell Items to Neutral Furbolg Hut (Den of Wonders) 0183 <gen>
              • Unit - Add Select Hero to Neutral Furbolg Hut (Den of Wonders) 0183 <gen>
              • Neutral Building - Turn special minimap icon On for Neutral Furbolg Hut (Den of Wonders) 0183 <gen>
            • Else - Actions
        • Else - Actions
      • Unit Group - Pick every unit in hero_units and do (Actions)
        • Loop - Actions
          • Hero - Add 300 experience to (Picked unit), Show level-up graphics
          • Floating Text - Create floating text that reads |cff00ff00+300 XP|r above (Picked unit) with Z offset 1.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
          • Floating Text - Change (Last created floating text): Disable permanence
          • Floating Text - Change the lifespan of (Last created floating text) to 5.00 seconds
          • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 45.00 degrees
          • Trigger - Turn off furbolg quest acquire <gen>
      • Trigger - Turn off (This trigger)
 

Attachments

  • 1705195645830.png
    1705195645830.png
    907.8 KB · Views: 10

Uncle

Warcraft Moderator
Level 64
Joined
Aug 10, 2018
Messages
6,579
Random stuff:

This looks unnecessary, shouldn't it just be a repeating timer?
  • Countdown Timer - Pause furbolg_qst_atk_loop_timer
  • Countdown Timer - Start furbolg_qst_atk_loop_timer as a One-shot timer that will expire in 12.00 seconds
You can Pause it once the quest is completed.

You're turning off the furbolg quest acquire trigger multiple times in the loop:
  • Unit Group - Pick every unit in hero_units and do (Actions)
    • Loop - Actions
      • Hero - Add 300 experience to (Picked unit), Show level-up graphics
      • Floating Text - Create floating text that reads |cff00ff00+300 XP|r above (Picked unit) with Z offset 1.00, using font size 10.00, color (100.00%, 100.00%, 100.00%), and 0.00% transparency
      • Floating Text - Change (Last created floating text): Disable permanence
      • Floating Text - Change the lifespan of (Last created floating text) to 5.00 seconds
      • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 45.00 degrees
      • Trigger - Turn off furbolg quest acquire <gen>
You're ordering the unit follow a potentially dead unit:
  • Unit - Order Furbolg 0197 <gen> to Follow Neutral Furbolg Hut (Den of Wonders) 0183 <gen>
Move that to the Then - Actions section where you've confirmed the Den is actually alive.

Make sure this Special Effect actually exists:
  • Special Effect - Destroy fur_sfx
  • Custom script: if udg_fur_sfx != null then
  • Special Effect - Destroy fur_sfx
  • Custom script: endif
Also, try using a different model for the unit and the special effect.
 
Top