At least, as it is written, all drivers should go in the tank 147.
You must ask each driver (specify his unit number) to go in his proper tank.
replace also
Set @car = GetNUnitsinArea ( ARMY , 2 , HUMAN , "tanks" , NO_PANIC )
by
Set @car = GetNUnitsinArea ( group , "TankDriver" , HUMAN , "tanks" , NO_PANIC )
and last :
If ( @Vill4 < 4 ) Then
ReinforcementLand ( Group , "TankDriver" )
delay ( 500 )
RunCommand ( Group , "TankDriver" , Move , RECT , "tanks" )
endif
Or the second condition will not work.