How do you reduce lag on this?

Oreo_clan

New Member
Reaction score
4
Code:
Fire Shotgun
    Events
        Unit - A unit Starts the effect of an ability
    Conditions
        (Ability being cast) Equal to Fire Shotgun 
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Mana of (Triggering unit)) Greater than or equal to 1.00
            Then - Actions
                Unit - Set mana of (Triggering unit) to ((Mana of (Triggering unit)) - 1.00)
                Set locShootingPlayer = (Owner of (Triggering unit))
                For each (Integer A) from 1 to 8, do (Actions)
                    Loop - Actions
                        Set locPoint = (Position of (Triggering unit))
                        Unit - Create 1 Normal Bullet (M3 Super 90 Combat) for locShootingPlayer at (locPoint offset by 25.00 towards (Angle from locPoint to (Target point of ability being cast)) degrees) facing (((Angle from locPoint to (Target point of ability being cast)) - 22.50) + (5.00 x (Real((Integer A))))) degrees
                        Custom script:   call RemoveLocation( udg_locPoint )
                        Unit - Set the custom value of (Last created unit) to 500
                        Unit - Turn collision for (Last created unit) Off
            Else - Actions
                Unit - Order (Casting unit) to Stop
                Floating Text - Create floating text that reads RELOAD! above (Triggering unit) with Z offset 0.00, using font size 15.00, color (100.00%, 0.00%, 0.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 1.00 seconds

Code:
Shotgun Damage
    Events
    Conditions
    Actions
        Set locBullet = Bullet
        Set locShootingPlayer = (Owner of Bullet)
        Set locPoint = (Position of locBullet)
        Set locReal = (Random real number between 10.00 and 15.00)
        Unit Group - Pick every unit in (Units within 75.00 of locPoint matching ((Owner of (Matching unit)) Not equal to locShootingPlayer)) and do (Actions)
            Loop - Actions
                Special Effect - Create a special effect attached to the chest of (Picked unit) using Abilities\Spells\Other\Stampede\StampedeMissileDeath.mdl
                Special Effect - Destroy (Last created special effect)
                Unit - Cause locBullet to damage (Picked unit), dealing locReal damage of attack type Pierce and damage type Normal
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Life of locBullet) Greater than or equal to 9.00
                    Then - Actions
                        Unit - Cause locBullet to damage (Picked unit), dealing locReal damage of attack type Pierce and damage type Normal
                        Floating Text - Create floating text that reads CRITICAL SHOT! above (Picked unit) with Z offset 0.00, using font size 10.00, color (100.00%, 0.00%, 0.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 2.00 seconds
                    Else - Actions
                        Do nothing
        Unit - Remove locBullet from the game
        Set locBullet = No unit
        Custom script:   call RemoveLocation( udg_locPoint )

Code:
Bullet Loc
    Events
        Time - Every 0.01 seconds of game time
    Conditions
    Actions
        Unit Group - Pick every unit in (Units in (Playable map area)) and do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        Or - Any (Conditions) are true
                            Conditions
                                (Unit-type of (Picked unit)) Equal to Normal Bullet (AK-47)
                                (Unit-type of (Picked unit)) Equal to Normal Bullet (Arctic Warfare Magnum (AWP))
                                (Unit-type of (Picked unit)) Equal to Normal Bullet (Colt M4A1 Carbine)
                                (Unit-type of (Picked unit)) Equal to Normal Bullet (Desert Eagle .50AE)
                                (Unit-type of (Picked unit)) Equal to Normal Bullet (M249 PARA Light Machine Gun)
                                (Unit-type of (Picked unit)) Equal to Normal Bullet (M3 Super 90 Combat)
                                (Unit-type of (Picked unit)) Equal to Normal Bullet (MP5-Navy)
                                (Unit-type of (Picked unit)) Equal to Normal Bullet (USP Tactical .45 ACP)
                                (Unit-type of (Picked unit)) Equal to Knife (Thrown)
                    Then - Actions
                        Set locPoint = (Position of (Picked unit))
                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                            If - Conditions
                                (Number of units in (Units within (Max mana of (Picked unit)) of locPoint matching (((Owner of (Matching unit)) Not equal to (Owner of (Picked unit))) and (((Matching unit) is alive) Equal to True)))) Greater than or equal to 1
                            Then - Actions
                                Unit - Add classification of Mechanical to (Picked unit)
                                Unit - Order (Picked unit) to Hold Position
                                Set Bullet = (Picked unit)
                                For each (Integer A) from 1 to 9, do (Actions)
                                    Loop - Actions
                                        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                                            If - Conditions
                                                (Unit-type of (Picked unit)) Equal to BulletType[(Integer A)]
                                            Then - Actions
                                                Trigger - Run BulletDamageTrigger[(Integer A)] (ignoring conditions)
                                            Else - Actions
                                                Do nothing
                            Else - Actions
                                Set Bullet = (Picked unit)
                                Trigger - Run Bullet Move <gen> (checking conditions)
                        Custom script:   call RemoveLocation( udg_locPoint )
                    Else - Actions
                        Do nothing

Code:
Bullet Move
    Events
    Conditions
    Actions
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                (Bullet is Mechanical) Equal to False
            Then - Actions
                Set locMove = ((Real((Custom value of Bullet))) / 100.00)
                Unit - Move Bullet instantly to ((Position of Bullet) offset by locMove towards (Facing of Bullet) degrees)
            Else - Actions
                Do nothing

FYI, BulletType[8]=Normal Bullet (M3 Super 90 Combat)
And BulletDamageTrigger[8] = Shotgun Damage <gen>

My bullet triggers keep lagging. I think this lags the most in 1 shot.

Can someone suggest a good way to greatly reduce the lag?

I know there's a way... But I can't find it. Can someone tell me how?

http://www.epicwar.com/maps/238/

That link goes to a download area for a map. I want to be able to make the gun triggers like that.

Mine seem simpler but his lags a lot less.

So if anybody knows how those triggers are made, can you tell me, or just figure out how to make mine lag less.

It's probably because 12 people making that trigger go off will b major lag... But that map in the link doesn't. So how do you do it?
 

emjlr3

Change can be a good thing
Reaction score
395
lol, every .01 sec of game pick every unit in the map...maybe thats it
 

Oreo_clan

New Member
Reaction score
4
emjlr3 said:
lol, every .01 sec of game pick every unit in the map...maybe thats it

Well that's a bit obvious that that function is contributing to it... But can you suggest a way to fix it?

And it won't work well without that function...
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top