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

Rupture 1.1 [No vJASS]

  • Like
Reactions: GIANT_CRAB
This Spell to be used gives the buff (Rupture) the enemy which makes
that the unit has that buff that causes you some damage "per second
only when the unit moves (run, to get knockback, etc)
If the unit is still not cause any damage.

EDIT : Map has been Updated =D

Keywords:
Star Wars, Jedi, Knight, Star Craft, Bob Marley.
Contents

Rupture 1.1 [No vJASS] (Map)

Reviews
12:31, 3rd Jun 2011 Maker: Approved, MUI and no leaks. You can remove this line Set RuptureEfecto = (Last created special effect) and just use Special Effect - Destroy (Last created special effect) You're doing some actions in bot then and else...

Moderator

M

Moderator

12:31, 3rd Jun 2011
Maker: Approved, MUI and no leaks.
You can remove this line
  • Set RuptureEfecto = (Last created special effect)
and just use
  • Special Effect - Destroy (Last created special effect)
You're doing some actions in bot then and else branches. Move them outside the if/then/else.
 
Level 5
Joined
Feb 15, 2011
Messages
67
no triggers? :(

  • Rupture
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Rupture
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • RuptureTurnoApagado Equal to 0
        • Then - Actions
          • Trigger - Turn on Rupture Loop <gen>
        • Else - Actions
      • Set Rupture_Integer = (Rupture_Integer + 1)
      • Set RuptureTurnoApagado = (RuptureTurnoApagado + 1)
      • Set Rupture_Apagado[Rupture_Integer] = True
      • Set RuptureCaster_2[Rupture_Integer] = (Triggering unit)
      • Set RuptureCaster_1[Rupture_Integer] = (Target unit of ability being cast)
      • Set RupturePunto_1[Rupture_Integer] = (Position of (Target unit of ability being cast))
      • Unit - Cause (Triggering unit) to damage (Target unit of ability being cast), dealing (150.00 + (40.00 x (Real((Level of Rupture for (Triggering unit)))))) damage of attack type Chaos and damage type Unknown
      • Special Effect - Create a special effect attached to the chest of RuptureCaster_1[Rupture_Integer] using Objects\Spawnmodels\Human\HumanBlood\BloodElfSpellThiefBlood.mdl
      • Set RuptureEfecto = (Last created special effect)
      • Special Effect - Destroy RuptureEfecto
  • Rupture Loop
    • Events
      • Time - Every 0.04 seconds of game time
    • Conditions
    • Actions
      • For each (Integer Rupture_Loop) from 1 to Rupture_Integer, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • Rupture_Apagado[Rupture_Loop] Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • (RuptureCaster_1[Rupture_Loop] has buff Rupture ) Equal to True
                • Then - Actions
                  • Set RupturePunto_2 = (Position of RuptureCaster_1[Rupture_Loop])
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • (Distance between RupturePunto_2 and RupturePunto_1[Rupture_Loop]) Greater than 0.00
                    • Then - Actions
                      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                        • If - Conditions
                          • RuptureTiempo[Rupture_Loop] Equal to 8
                        • Then - Actions
                          • Unit - Cause RuptureCaster_2[Rupture_Loop] to damage RuptureCaster_1[Rupture_Loop], dealing ((Distance between RupturePunto_2 and RupturePunto_1[Rupture_Loop]) / 5.00) damage of attack type Chaos and damage type Magic
                          • Special Effect - Create a special effect attached to the chest of RuptureCaster_1[Rupture_Loop] using Objects\Spawnmodels\Human\HumanBlood\BloodElfSpellThiefBlood.mdl
                          • Set RuptureEfecto = (Last created special effect)
                          • Special Effect - Destroy RuptureEfecto
                          • Set RuptureTiempo[Rupture_Loop] = 0
                          • Custom script: call RemoveLocation(udg_RupturePunto_2)
                          • Custom script: call RemoveLocation(udg_RupturePunto_1[udg_Rupture_Loop])
                          • Set RupturePunto_1[Rupture_Loop] = (Position of RuptureCaster_1[Rupture_Loop])
                        • Else - Actions
                          • Unit - Cause RuptureCaster_2[Rupture_Loop] to damage RuptureCaster_1[Rupture_Loop], dealing ((Distance between RupturePunto_2 and RupturePunto_1[Rupture_Loop]) / 5.00) damage of attack type Chaos and damage type Magic
                          • Set RuptureTiempo[Rupture_Loop] = (RuptureTiempo[Rupture_Loop] + 1)
                          • Custom script: call RemoveLocation(udg_RupturePunto_2)
                          • Custom script: call RemoveLocation(udg_RupturePunto_1[udg_Rupture_Loop])
                          • Set RupturePunto_1[Rupture_Loop] = (Position of RuptureCaster_1[Rupture_Loop])
                    • Else - Actions
                • Else - Actions
                  • Set RuptureTiempo[Rupture_Loop] = 8
                  • Set Rupture_Apagado[Rupture_Loop] = False
                  • Set RuptureTurnoApagado = (RuptureTurnoApagado - 1)
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • RuptureTurnoApagado Equal to 0
                    • Then - Actions
                      • Set Rupture_Integer = 0
                      • Trigger - Turn off (This trigger)
                    • Else - Actions
                  • Custom script: call RemoveLocation(udg_RupturePunto_1[udg_Rupture_Loop])
            • Else - Actions
i sense something wrong and sorry couldnt put in tags
 
Level 10
Joined
Apr 25, 2009
Messages
296
Genji Lone, put the triggers in [HIDDEN=""][/HIDDEN] tags.

Instead of reusing 'Triggering Unit' and 'Target of Ability Cast' use the actual variable, as its more efficient.

There's no need for
  • Set RuptureEfecto = (Last created special effect)
Just destroy it.

"Star Wars, Jedi, Knight, Star Craft, Bob Marley." Yeah, change those.

I'd suggest converting the variable names into english, as I have no idea what 'Apagado' is supposed to mean.

I don't see a recycling method, which isn't very good, as if you somehow manage to cast this spell over 8000ish times, it won't work. Also, it loops through every integer, and that decreases its efficiency significantly.


Seems to work, however, the JASS version will be more efficient, period, as its JASS.


I'll rate... 3/5 for the effort, as the lack of originality and recycling method brings this down significantly.
 
Level 10
Joined
Apr 25, 2009
Messages
296
091128-derp.jpg


Bummer :(

Listen to Archangel. He's right about all those ... except the .32 thing xD
That's 3 FPS xD (EPIC FAIL)

yeah... GUI only supports up to 2 decimal places

Now that would look bad :)

If I remember correctly, in GUI values are rounded so 0.032 would turn into 0.03.

.32...
| | = Two decimal points D:


.32, not .032...

The condition uses an integer that increases until it reaches 8, then resets. If you remove it, and set the timer to (8x.4 = .32.) .32, it'll work fine...

Also, since this ability doesn't move a unit, it just checks if the distance is greater than X, the FPS doesn't affect the outcome.
 
Last edited:
091128-derp.jpg








.32...
| | = Two decimal points D:


.32, not .032...

The condition uses an integer that increases until it reaches 8, then resets. If you remove it, and set the timer to (8x.4 = .32.) .32, it'll work fine...

Also, since this ability doesn't move a unit, it just checks if the distance is greater than X, the FPS doesn't affect the outcome.

not really, take these examples:

I have 10 HP, now the trigger deals 20% distance as damage, I moved 50, in about .5 seconds

Scenario 1:
Trigger deals damage per second, I die after 1 second
-->A support char has more chances of healing you in this scenario

Scenario 2:
Trigger deals damage per .32 seconds, I die after .64 seconds

Scenario 3:
Trigger deals damage per .1 seconds, I die after .50 seconds

and there are others too... at least you get the idea on how the timer countdown could affect the spell...
 
Level 10
Joined
Apr 25, 2009
Messages
296
Just FYI, its was about the .032 decimal point thing.

Also, from reviewing the triggers, this spell inflicts damage at an .04 rate, as both of the conditions having damage inflicting outcomes. The If/Then/Else statement determines if an SFX effect is created. (The blood). What I'm saying is merely removing the If/Then/Else statement, and increasing the damage to be equivalent and then creating the SFX effect normally.

Current Scenario:
Trigger deals damage at an .04 rate. (Current Damage Interval Rate)
-->Dies after .52 seconds.

My Scenario:
Trigger deals damage at an .32 rate
-->Dies after .64 seconds

What the spell's creator's wanted scenario is:
Trigger deals damage at an 1 second rate. (Which would use an 1 second interval rate or some integer)
-->Dies after 1.0 second.


Adikutz, you're right about the healing time thing, however, this spell does not currently use damage per second. (Loops at an .04 rate, inflicts damage if distance is greater than 0. SFX created if its the 8th time damage has been inflicted.) He/she should likely remove that in his/her description, as its misleading. If the rate of damage was at 1.0, the SFX rate may prove too spread out, however, that's an opinion.

In all honesty, the interval could be .24, .03, .50, or anything. I suggested .32 as it removed the condition for the SFX but would be visually the same at he/she currently has it.


The damage does not scale with levels currently. I hope this spell creator will respond soon.
 
Last edited:
Top