There are several issues with variables in the Loop trigger which need to get addressed.
1) Never set Spell__TargetPoint, Spell__Caster nor Spell__InRangeGroup.
2) Never destroy Spell__InRangeGroup.
3) Never remove Spell__TargetPoint.
Those variables are automatically set and handled by Spell System to never need to be removed nor destroyed.
Next, when you pick units in the Spell__InRangeGroup, have a look at how I do it in the demo triggers for Spell System:
Set Spell__InRangePoint = Spell__TargetPoint
Set Spell__InRange = 300.00
Unit Group - Pick every unit in Spell__InRangeGroup and do (Actions)
Notice that Spell__InRangePoint is set first, Spell__InRange second, and there is no need to do all those (Matching unit) checks as those are already handled by Spell System when adding units to Spell__InRangeGroup.
So, with those corrections, your loop trigger aught to work:
Lightning Orb Loop
Events
Conditions
Actions
-------- Do not set Spell__TargetPoint nor Spell__CasterOwner. They are already what you need them to be --------
Set Temp_Stats = (Intelligence of Spell__Caster (Include bonuses))
Set Temp_Value_1 = (0.00 x (Real(Temp_Stats)))
Set Spell__InRangePoint = Spell__TargetPoint
Set Spell__InRange = 300.00
Unit Group - Pick every unit in Spell__InRangeGroup and do (Actions)
Loop - Actions
-------- You don't need to change anything in here --------
-------- The next if-block is also perfect, you don't need to change anything --------
-------- Do not remove Spell__TargetPoint --------