Yikes! For a start, don't use that line:
this and not ((chop1) in thislist) and not ((chop2) in thislist)It is seriously flawed. It means if chop1 or chop2 are in the trigger, it won't activate at all!
For your specific scenario, you could try something like this:
TriggerRadius: 0,0
Condition: Vehicle Present
Grouped with playerCondition Field: (player in thislist) and (getpos player select 2 < 2)
Onactivation field: "_x setdammage 1" foreach units alpha
First, to select 'Vehicle Present' you will need to hit F2 and drag a line from the trigger to the player unit.
That trigger will activate when the player is in the trigger, and gets to within 2 metres of the ground. The trigger will then kill all the units in group alpha.
However, I don't think that will solve your CPU slowdown problem. A unit out of sight doesn't use that much more runtime than if it doesn't exist at all. I suggest you simply don't have some of the units to start with
[size=0.5]
Edit: oops, I mis-read the question a bit... that should hopefully sort it now [/size]