• 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.

Requesting Attack Height Damage System-- $$

Status
Not open for further replies.
Level 6
Joined
Sep 19, 2005
Messages
169
Hi. My map risk next gen is pretty strategic as is but something I've always wanted is for units that are on higher terrain to do slightly more damage based on how much higher they are compared to the units they are attacking.

Risk is a unit intense map. I had another system that did this but it wasn't up to the task and had some inherent bugs in it. This system would have to be efficient and not decrease map performance too noticeably.

I'm willing to pay for this, I want the system specifically tailored to the map so that it can be as optimal performance wise as possible. I know this is asking a lot considering the wc3 engine but it would at least be efficient enough for 1v1 mode.

This map gets played a lot and I would release map with changes right away. Would love for anyone who has some triggering skills to help out, willing to exchange cash for time if necessary. Although I think this resource could be useful for MANY genres of maps. So what I'm asking for is a performance minded system that would allow units on higher ground to do an increased amount of damage to the units below them.
 
This is pretty easy.

  • Events
    • Unit is attacked
  • Conditions
    • (Current flying height of (Attacking unit)) greater than (Current flying height of (Attacked unit))
  • Actions
    • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing (((Current flying height of (Attacking unit)) - (Current flying height of (Attacked unit))) x 0.50) damage of attack type Normal and damage type Normal
 
Sorry, I misunderstood you. This is what you need:

  • Events
    • Unit is attacked
  • Conditions
  • Actions
    • Set TempLocation[1]=(Position of (Attacking Unit))
    • Set TempLocation[2]=(Position of (Attacked Unit))
    • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
      • If - Conditions
        • (Height of (Region centered at (TempLocation[1]) Greater than (Height of (Region centered at (TempLocation[2])) with size (1.00, 1.00)
      • Then - Actions
        • Unit - Cause (Attacking unit) to damage (Attacked unit), dealing ((Height of (Region centered at (TempLocation[1])) with size (1.00, 1.00)) - (Height of (Region centered at (TempLocation[2])) with size (1.00, 1.00))) x 0.50) damage of attack type Normal and damage type Normal
      • Else - Actions
    • call RemoveLocation(udg_TempLocation[1])
    • call RemoveLocation(udg_TempLocation[2])
This should work for you. If it doesn't work, you are officially screwed.
 
Status
Not open for further replies.
Top