Infinity loop example
Your trigger reacts on bloodlust spell cast, and what is the function doing? Creating dummy which cast next bloodlust!
Change the condition refering to ability being cast to some differend ability. Afterall you want to make non autocast BL. >.>
@Mr_Bean Trigger leaks location in case you redeclare it without destroying prevoius one. You need second parameter to make it properly.
You can improve the trigger a bit with (Owner of Triggering Unit)) >> (Triggering player) replacement. Additionaly, please add filter for alive and non structure units as Maker said.
@TaShadan Fixed trigger:
Unit - A unit Starts the effect of an ability
(Ability being cast) Equal to SomeSpell
Set point = (Target point of ability being cast)
Custom script: set bj_wantDestroyGroup = true
Unit Group - Pick every unit in Units within 500.00 of point matching (((Owner of (Mathing Unit)) is an ally of (Triggering player) Equal to True) and ((Matching unit) is alive Eqaul to True) and ((Matching unit) is Building Not equal to True)) and do (Actions)
Loop - Actions
Set p = Position of (Picked unit)
Unit - Create 1 Dummy for (Triggering player) at point facing Default building facing degrees
Unit - Add Bloodlust to Last created unit
Unit - Order (Last created unit) to Orc Shaman - Bloodlust (Picked unit)
Unit - Add a 1.00 second Generic expiration timer to (Last created unit)
Custom script: call RemoveLocation(udg_p)
Custom script: call RemoveLocation(udg_point)
Ofcourse, we can omit second location parameter and just create dummies in 'point = (Target point of ability being cast)', just make sure dummy's bloodlust has enough range to be castable.