By waves I assume you mean after all enemies are dead, a timer starts and after the timer is down a new wave appears. This is pretty simple, without hypers.
Here's how you'd do it:
Trigger("Enemy"){
Conditions:
Bring("Enemy", "Enemy Unit", "Anywhere", At most, 0);
Actions:
Create Unit("Enemy", "Enemy Unit", 10, "Spawn Loc");
Set Deaths("Progress", "Progress Marker", Set To, 1);
}
//-----------------------------------------------------------------//
Trigger("Enemy"){
Conditions:
Bring("Enemy", "Enemy Unit", "Anywhere", At most, 0);
Deaths("Enemy", "Progress Marker", Exactly, 1);
Actions:
Set Countdown Timer(Set To, 30);
}
//-----------------------------------------------------------------//
Trigger("Enemy"){
Conditions:
Deaths("Enemy", "Progress Marker", Exactly, 1);
Countdown Timer(Exactly, 1);
Actions:
Create Unit("Enemy", "Enemy Unit 2", 10, "Anywhere");
Set Deaths("Enemy", "Progress Marker", Set To, 2);
}
//-----------------------------------------------------------------//
The first trigger spawns 10 enemies and then sets the progress to 1, to show that wave 1 has been spawned.
The seconds trigger detects when all of the marines are dead
and when the progress is 1, which makes it only fire after the first trigger fired. It then starts a 30-second (well, really 29-second) countdown timer to give the players room in between waves.
The third trigger detects when the countdown timer falls to 1. It's set at 1 to be safer on glitches, as does the other condition, then it spawns 10 of the second wave.
None.