Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

Rise of the Lycans v1.01

Submitted by tjordell
This bundle is marked as substandard. It may contain bugs, not perform optimally or otherwise be in violation of the submission rules.
This is my second "working" uploaded spell on THW. The spell is 100% MUI and Leakless. Removed all Locations and Destroyed Groups & Special Effects.

Please give Credits on usage. The look of the spell is... Okay but i couldn't find any way to start the lycans Move animation because they're moving forward, throught a action, and when that is done, the Lycans will immediately starting the "Stand" Animation type.

[IMG]http://www.hiveworkshop.com/forums/pastebin_data/zw0jdy/Rise%20of%20the%20Lycans%20Prev.jpg[/IMG]
Rises 3 lycans on each side of the hero, rushing throught everything in it's path, damaging the enemy for 40 damage per Lycan. The Lycans rushes for 1000 range.

Cooldown: 23 seconds.


Here's the Code:
Code
RotL Init
  • RotL Init
    • Events
      • Unit - A unit Starts the effect of an ability
    • Conditions
      • (Ability being cast) Equal to Rise of the Lycans
    • Actions
      • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
        • If - Conditions
          • RL_Index Equal to 0
        • Then - Actions
          • Trigger - Turn on RotL Loop <gen>
        • Else - Actions
          • Set RL_Index = (RL_Index + 1)
      • Set RL_MUI = (RL_MUI + 1)
      • Set RL_Boolean[RL_MUI] = True
      • Set RL_Cstr[RL_MUI] = (Triggering unit)
      • Animation - Play RL_Cstr[RL_MUI]'s Spell 2 animation
      • Set RL_Loc[1] = (Position of RL_Cstr[RL_MUI])
      • For each (Integer A) from 1 to 3, do (Actions)
        • Loop - Actions
          • Set RL_Offset[RL_MUI] = (RL_Offset[RL_MUI] + 70.00)
          • Set RL_Degrees[1] = (Facing of RL_Cstr[RL_MUI])
          • Unit - Create 1 Spirit Wolf (Level 1) for (Owner of RL_Cstr[RL_MUI]) at (RL_Loc[1] offset by RL_Offset[RL_MUI] towards ((Facing of RL_Cstr[RL_MUI]) - 90.00) degrees) facing RL_Degrees[1] degrees
          • Unit - Turn collision for (Last created unit) Off
          • Unit Group - Add (Last created unit) to RL_LycanGroup[1]
          • Unit - Create 1 Spirit Wolf (Level 1) for (Owner of RL_Cstr[RL_MUI]) at (RL_Loc[1] offset by RL_Offset[RL_MUI] towards ((Facing of RL_Cstr[RL_MUI]) - 270.00) degrees) facing RL_Degrees[1] degrees
          • Unit - Turn collision for (Last created unit) Off
          • Unit Group - Add (Last created unit) to RL_LycanGroup[1]
      • Custom script: call RemoveLocation (udg_RL_Loc[1])
RotL Loop (Initially Off)
  • RotL Loop
    • Events
      • Time - Every 0.03 seconds of game time
    • Conditions
    • Actions
      • For each (Integer RL_Loop) from 1 to RL_MUI, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • RL_Boolean[RL_Loop] Equal to True
            • Then - Actions
              • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                • If - Conditions
                  • RL_CountD[RL_Loop] Less than 1000.00
                • Then - Actions
                  • Set RL_CountD[RL_Loop] = (RL_CountD[RL_Loop] + 20.00)
                  • Unit Group - Pick every unit in RL_LycanGroup[1] and do (Actions)
                    • Loop - Actions
                      • Set RL_Loc[3] = (Position of (Picked unit))
                      • Unit - Move (Picked unit) instantly to (RL_Loc[3] offset by 20.00 towards (Facing of (Picked unit)) degrees)
                      • Animation - Play (Picked unit)'s Stand animation
                      • Special Effect - Create a special effect at RL_Loc[3] using Abilities\Spells\Orc\MirrorImage\MirrorImageDeathCaster.mdl
                      • Special Effect - Destroy (Last created special effect)
                      • Set RL_Group1[1] = (Units within 40.00 of RL_Loc[3] matching ((((Matching unit) belongs to an enemy of (Owner of RL_Cstr[RL_Loop])) Equal to True) and (((Matching unit) is Magic Immune) Equal to False)))
                      • Unit Group - Pick every unit in RL_Group1[1] and do (Actions)
                        • Loop - Actions
                          • Set RL_Loc[2] = (Position of (Picked unit))
                          • Unit - Cause RL_Cstr[RL_Loop] to damage (Picked unit), dealing 40.00 damage of attack type Spells and damage type Normal
                          • Special Effect - Create a special effect at RL_Loc[2] using Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
                          • Special Effect - Destroy (Last created special effect)
                          • Custom script: call RemoveLocation (udg_RL_Loc[2])
                      • Custom script: call DestroyGroup (udg_RL_Group1[1])
                      • Custom script: call RemoveLocation (udg_RL_Loc[3])
                • Else - Actions
                  • Unit Group - Pick every unit in RL_LycanGroup[1] and do (Actions)
                    • Loop - Actions
                      • Unit - Remove (Picked unit) from the game
                  • Unit Group - Remove all units from RL_LycanGroup[1]
                  • Set RL_CountD[RL_Loop] = 0.00
                  • Set RL_Index = (RL_Index - 1)
                  • Set RL_Boolean[RL_Loop] = False
                  • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    • If - Conditions
                      • RL_Index Equal to 0
                    • Then - Actions
                      • Trigger - Turn off (This trigger)
                      • Set RL_MUI = 0
                    • Else - Actions
            • Else - Actions

The MUI is made throught Indexing.

Changelog
v 1.01 - Fixed a mayor bug reported by Egorman (The blood effect does no longer affect dead units)

v 1.00 - Uploaded


Creator & Idea: tjordell
Thanks to: Underworld, Rise of the Lycans Movie (where i got the name from xD).

Keywords:
lycan, gui, mui, rise of the lycan, tjordell, wolf
Contents

Rise of the Lycans v1.01 (Map)

Reviews
Moderator
12th Dec 2015 IcemanBo: Too long time as NeedsFix. Rejected. 12:17, 17th Jun 2010 TriggerHappy: MUI and leakless.
  1. 12th Dec 2015
    IcemanBo: Too long time as NeedsFix. Rejected.

    12:17, 17th Jun 2010
    TriggerHappy:

    MUI and leakless.
     
  2. Grantuu

    Grantuu

    Joined:
    Dec 8, 2009
    Messages:
    172
    Resources:
    3
    Spells:
    3
    Resources:
    3
    Hm looks nice Tjordell^^

    I'll review it.
     
  3. tjordell

    tjordell

    Joined:
    Jan 25, 2009
    Messages:
    554
    Resources:
    5
    Icons:
    1
    Spells:
    4
    Resources:
    5
    Do so my friend =)

    EDIT: Grantuu log on to Skype please.
     
  4. Egorman

    Egorman

    Joined:
    Mar 29, 2009
    Messages:
    28
    Resources:
    0
    Resources:
    0
    Nice=)
    But wolves are causing damage and dead units. Simply lay the skeleton and over it gives the effect of blood ....
    Can you edit this?
     
  5. tjordell

    tjordell

    Joined:
    Jan 25, 2009
    Messages:
    554
    Resources:
    5
    Icons:
    1
    Spells:
    4
    Resources:
    5
    Yeah for sure. But not right now. I'm busy atm...

    EDIT: Fixed the problem. Thanks for reporting. You´r name is in the Changelog under v 1.01
     
    Last edited: Mar 30, 2010
  6. MortAr

    MortAr

    Joined:
    Feb 25, 2009
    Messages:
    1,765
    Resources:
    7
    Icons:
    6
    Packs:
    1
    Resources:
    7
    - Better use coordinates so you can have the 'walk' animation played while the 'lycans' rushes forward. The stand animation doesn't really fit the 'rush' part ..
    - The "RL_Group[1]" group doesn't filter dead units, mechaninal or flying units.
    - You can make the lycan's to become transparent as they rush forward or simply increase their size. One of those effects would be really nice.
    - Paladon's Knockback system might as well fit the spell well.
    - Summoning loop look kinda weird
    - You could also increase lycan's speed slighty for every 200 range they move on.

    Overall, nothing really special. You might want to change the SFX when you move the lycans, 'cause it doesn't look really amazing.

    3/5 with neutral vote.

    EDIT: Moving a unit with coordinates instead of location:

    • Actions
      • Custom script: set udg_x = GetUnitX(udg_<unit>)
      • Custom script: set udg_y = GetUnitY(udg_<unit>)
      • Custom script: call SetUnitX(udg_<unit> , udg_x + 10.00 * Cos(GetUnitFacing(udg_<unit>) * 0.017453292) )
      • Custom script: call SetUnitY(udg_<unit> , udg_y + 10.00 * Sin(GetUnitFacing(udg_<unit>) * 0.017453292) )
      • // Removed the "Speed" variable and replaced it with the actuall value.


    X, Y and are 'real' variables and udg_<unit> (for example, make it lycan) is a 'unit' variable, but, since you are picking the 'lycans' from a group, you can use GetEnumUnit, without the need of a separate unit variable.
     
    Last edited: Mar 30, 2010
  7. D4RK_G4ND4LF

    D4RK_G4ND4LF

    Joined:
    Feb 4, 2009
    Messages:
    1,196
    Resources:
    20
    Models:
    3
    Spells:
    15
    Tutorials:
    2
    Resources:
    20
    baaaaad indexing

    indexing is the most efficient way to run things periodically but you have to do it right

    (shift the data from the last slot to the next free slot like this:

    Code (vJASS):
    data data data data //4 instances running
    data data ---- data //3rd instance is over
    data data data ---- //4th instance got moved to 3rd place


    this way you only have to count up to 3 instead of a really high number
    the spell duration is really short so it won't stack up but remember that for further spells (most of my spells are indexed this way so you may look at them to see how things work or just try out yourself cause it's the easiest way to leran something [there also are tutorials about it and there sould be an example spell for this in the spell section])

    and your spell is NOT MUI
    set the cooldown to 0 and spam it
    you will see that the wolfs run faster and therefore run further
    I'm sure you would have seen that yourself if you made a proper testmap
    but waiting 23 seconds for next cast really is a turn-off
    and only 4 tiny peasants to be consumed by an infinite number of hungry wolfs?
    ....c'mon.... be more generous

    I thought reals would only have 3 digits after the 0,....?
    (don't think that anyone will ever notice the difference between 0.1 and 0.11 but still...)
     
  8. tjordell

    tjordell

    Joined:
    Jan 25, 2009
    Messages:
    554
    Resources:
    5
    Icons:
    1
    Spells:
    4
    Resources:
    5
    MortAr-, Thanks alot for the suggestions, and now i see again that i really want & need to learn JASS! It looks awesome! =D Could you please give me a hand of help for the things you do with the custom scripts. It seems nice. Send me a PM or add me on Skype. If you want to send me a PM you can do a mini-tutorial for me please, and if you add me on skype/msn you can help me thorught instant messaging xD

    +rep

    Skype username: dark-man32
    MSN: tomjordell@hotmail.com

    =================================================================

    D4RK G4ND4LF, Thanks alot to you also. I had a SICK hurry when creating and uploaded this xD I'm rebuilding my bathroom xD
    So now, much to do xD +rep
     
  9. MortAr

    MortAr

    Joined:
    Feb 25, 2009
    Messages:
    1,765
    Resources:
    7
    Icons:
    6
    Packs:
    1
    Resources:
    7
    BIG TRIGGER TEXT + COMMENTS

    • Actions
      • Custom script: set udg_x = GetUnitX(udg_<unit>) // The X coordinate of where the unit currently is
      • Custom script: set udg_y = GetUnitY(udg_<unit>) // The Y coordinates of where the unit currently is
      • Custom script: call SetUnitX(udg_<unit> , udg_x + 10.00 * Cos(GetUnitFacing(udg_<unit>) * 0.017453292) ) // Moving the unit to its new coordinate (X) with the given speed (10.00 per interval) calculating the Cos of the unit Facing * times * 0.017453292
      • Custom script: call SetUnitY(udg_<unit> , udg_y + 10.00 * Sin(GetUnitFacing(udg_<unit>) * 0.017453292) ) // Moving the unit to its new coordinate (Y) with the given speed (10.00 per interval) calculating the Sin of the unit Facing * times * 0.017453292



    Result: The unit will move 10 units forward (the direction is always forward since we have its facing used for an angle) within the given interval (in this case, every 0.03 seconds). This will make the unit always perform the "stop" order, thus making usage of different animations imposibble.
     
  10. tjordell

    tjordell

    Joined:
    Jan 25, 2009
    Messages:
    554
    Resources:
    5
    Icons:
    1
    Spells:
    4
    Resources:
    5
    But why do you have the "* 0.017453292" there :S
     
  11. Catch_ya

    Catch_ya

    Joined:
    May 21, 2009
    Messages:
    981
    Resources:
    1
    Spells:
    1
    Resources:
    1
    It is because when you say Sin(something) or Cos(something) then it is calculated in Radians. For making Radians to degrees (which you use in GUI) then you just multiply it with that number. It is a constant. :) Hope it helped.
     
  12. Aspard

    Aspard

    Joined:
    Jul 2, 2008
    Messages:
    595
    Resources:
    1
    Spells:
    1
    Resources:
    1
    Also I'd like to inform everybody, who didn't add some more units to the map: the spell damages technical units, flying units and, gush, buildings! :)

    Add filter for this please. However, spell immune units are not damaged.
     
  13. ChaosKnight

    ChaosKnight

    Joined:
    Jul 18, 2009
    Messages:
    196
    Resources:
    1
    Spells:
    1
    Resources:
    1
    Just a fast suggestion, couldnt this be made with Stampede? :xxd: Otherwise, very cool spell. :thumbs_up:
     
  14. tjordell

    tjordell

    Joined:
    Jan 25, 2009
    Messages:
    554
    Resources:
    5
    Icons:
    1
    Spells:
    4
    Resources:
    5
    ChaosKnight, No it can't. Because the stampede summons them like my spell but all the "stampede" things isn't moved at the same time. It sometimes summons 2 at 0.50 seconds of casting and another at 0.54 seconds of casting. My spell summons all at the same time and they´re moving at the same direction at the same time. Well but i really need to update this spell but i'm learning JASS atm so i can't...
     
  15. smoopa

    smoopa

    Joined:
    Mar 23, 2008
    Messages:
    340
    Resources:
    0
    Resources:
    0
    haha nice, i remeber that movie the CGI sucked but it made me laugh to see wolves burrowing in passages like hedgehogs xD
     
  16. tjordell

    tjordell

    Joined:
    Jan 25, 2009
    Messages:
    554
    Resources:
    5
    Icons:
    1
    Spells:
    4
    Resources:
    5
    Haha now when I've learned GUI alot more this spell is like trash for me xD