• 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.
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!
  • ✅ The POLL for Hive's Texturing Contest #34 is OPEN! Vote for the TOP 3 SKINS! 🔗Click here to cast your vote!
  • ✅ The POLL for Hive's Techtree Contest #20 is OPEN! Vote for the TOP 3 FACTIONS! 🔗Click here to cast your vote!

[Trigger] How to make ai use death pact? + rep

Status
Not open for further replies.
Level 19
Joined
Feb 15, 2008
Messages
2,174
How to make ai use death pact? + rep [SOLVED]

  • Meat Hook
    • Events
      • Time - Every 0.50 seconds of game time
    • Conditions
    • Actions
      • Set Temp_Unit = (Random unit from AI_Group)
      • Unit - Order TempUnit to Orc Tauren Chieftain - Shockwave (Random point in Arena <gen>)
I dont find death pact in the abilitys. how do i make this? + rep ofc.
 
Last edited:
ok thnx + rep.

But is this leak free or do i need set variable?

  • Meat Hook
    • Events
      • Time - Every 0.50 seconds of game time
    • Conditions
    • Actions
      • Set Temp_Unit = (Random unit from AI_Group)
      • Unit - Order TempUnit to Undead Death Knight - Death Pact (Random unit from (Units in Arena <gen>))
it dident work :/

I want so it randomly use it for enemy in arena area.
 
  • Meat Hook
    • Events
      • Time - Every 7.00 seconds of game time
    • Conditions
    • Actions
      • Set loc = (Random point in Arena Center <gen>)
      • Set Temp_Unit = (Random unit from AI_Group)
      • Unit - Order TempUnit to Undead Death Knight - Death Pact (Random unit from (Units in Arena Center <gen>))
i made this so far. what should i make more? and change?
 
  • Meat Hook
    • Events
      • Time - Every 7.00 seconds of game time
    • Conditions
    • Actions
      • Set loc = (Random point in Arena Center <gen>)
      • Set Temp_Unit = (Random unit from AI_Group)
      • Unit - Order TempUnit to Undead Death Knight - Death Pact (Random unit from (Units in Arena Center <gen>))
i made this so far. what should i make more? and change?

Well, if that is all your trigger then you forgot to add the units on the AI_Group, you need to add something to it for the AI_Group to take effect as far as I know.
 
- The loc variable is useless
- Don't forget to store (Units in Arena Center <gen>) in a variable with type group and destroy it with "call DestroyGroup(group)"
- As hell_master said, you are picking a random unit from AI_Group, if everything seems alright, that means the AI_Group is empty
 
the ai group havent been set up can you pls help me show a little minimap or something?

and also can you show me how the trigger should look like. Mybe add a simple little minimap so i can check and thnx for help so far.

and its only for computer aswell.
 
perhaps its because this:
  • Set Temp_Unit = (Random unit from AI_Group)
  • Unit - Order TempUnit to Undead Death Knight - Death Pact (Random unit from (Units in Arena Center <gen>))
You did set the "Temp_Unit" variable but used "TempUnit" variable (it's different), see?

  • Meat Hook
    • Events
      • Time - Every 7.00 seconds of game time
    • Conditions
    • Actions
      • Set Temp_Unit = (Random unit from AI_Group)
      • Unit - Add Death Pact to Temp_Unit
      • Set Temp_Group = (Units in Arena Center <gen>)
      • Unit - Order Temp_Unit to Undead Death Knight - Death Pact (Random unit from Temp_Group)
      • Custom script: call DestroyGroup(udg_Temp_Group)
 
ok thnx bud.

  • Use Death Pact
    • Events
      • Time - Every 2.00 seconds of game time
    • Conditions
    • Actions
      • Set Temp_Unit = (Random unit from AI_Group)
      • Set Temp_Group = (Units in Arena Center <gen>)
      • Unit - Order Temp_Unit to Undead Death Knight - Death Pact (Random unit from Temp_Group)
      • Custom script: call DestroyGroup(udg_Temp_Group)
i made this trigger and they still not use the spell :/ strange...
 
ok thnx bud.

  • Use Death Pact
    • Events
      • Time - Every 2.00 seconds of game time
    • Conditions
    • Actions
      • Set Temp_Unit = (Random unit from AI_Group)
      • Set Temp_Group = (Units in Arena Center <gen>)
      • Unit - Order Temp_Unit to Undead Death Knight - Death Pact (Random unit from Temp_Group)
      • Custom script: call DestroyGroup(udg_Temp_Group)
i made this trigger and they still not use the spell :/ strange...

The above still leaks. You need to do this to clear all the leaks.

  • Use Death Pact
    • Events
      • Time - Every 2.00 seconds of game time
    • Conditions
    • Actions
      • Custom script: set bj_wantDestroyGroup = true
      • Set Temp_Unit = (Random unit from AI_Group)
      • Set Temp_Group = (Units in Arena Center <gen>)
      • Custom script: set bj_wantDestroyGroup = true
      • Unit - Order Temp_Unit to Undead Death Knight - Death Pact (Random unit from Temp_Group)
      • Custom script: call DestroyGroup(udg_Temp_Group)
If it still isn't working check to see if the unit groups are empty and display a message if they are.
 
Also both your set bj_wantDestroyGroup = true's are unnecessary.
The first one is destroying AI_Group after a unit has been chosen from it (bad, it means it'll only work once before the AI_Group is gone!).
The second is unnecessary because of the call DestroyGroup(udg_Temp_Group) at the end. You should only use one or the other.

how come?

also the AI doesent work.

  • SetupAIGroup
  • Collapse Events
  • Map initialization
  • Conditions
  • Collapse Actions
  • Unit Group - Add YourUnitHere! to AI_Group
 
The AI does not use death pact as it is a move that only very experienced players can even consider using with any success. Sacrificing one unit for another is not an easy to make tactical decision. Since the AI in WC3 is kind of poor, it was not designed to make such decisions so was not programed to ever cast the ability. Same applies for the Lich's equivalent.
 
it still doesent work they dont use the spell. and Base ID is some unsubmerge i dont know why. and also unit or target point.

You're using channel? If so unsubmerge cannot be the baseorderid because the original submerge ability is an instant cast with no target ...

How can you cast death pact on a point? iirc you sacrifice a unit to get its hp back....

Look at abilities that are typical for unit only targeting...such as frost nova and use that as the base order id, or just use the regular death pact ability.
 
I tested to use death pact as AI spell and they do not still throw this blade. And i dont know how to fix this. can some one just have a look at the map and fix?

so now finaly fixed it on my own. thnx anyway.
 
Last edited:
Status
Not open for further replies.
Back
Top