Ok, try and follow, i hope to explain this right.
Globals: RedboxCount=0, BlueboxCount=0, GreenboxCount=0
On the start of the layout there are 30 or so Redboxes, 1/3 of that is blue, 1/3 of that are green (math may be off- just as an example)
Redbox destroyed > add 1 to RedboxCount
RedboxCount = random (3,6)
(SubEvent) every random (2,6) secs
(Sub) trigger once > create Bluebox
BlueBox on destroyed > subtract 2 from RedboxCount
Add 1 to BlueBoxCount
BlueBoxCount = random (4,8)
(Sub) every random (4,7) secs
(Sub) trigger once > create Greenbox
Greenbox on destroyed > subtract 2.1 from BlueBoxCount
This may not be the easiest (not too good with variables, functions... All the hard stuff, but it works.
I watched for maybe 5-6 mins, Bluebox and Greenbox had different number of instances created, respectively.
My only big problem is trying to create a random number of each box randomly across the layout on Start of Layout. So it can be different each time.