Historically one half of a Pre-Marian army would be composed of allied troops, who are assumed to fought in the Roman manner but were consisted second rate compared to the Latin troops. (Unfortunately not much is written about them.) Additionally, The Triarii maniples were half the depth of the other maniples.
This being the case you may want to use more Hastati or even Town Watch to represent allied troops and use less Triarii to better represent their comparative numbers.
I think The Velite maniples were of the same strength as the main battle lines so you may want to use more light troops.
In terms of cavalry the Romans generally didn’t field much (until they fought Hannibal) unless they were hired troops such as Numidians or Gallic Cavalry.
With 20 boxes for an army composition, I would suggest:
Skirmish Line: (Roman: 2 Velites) + (Allied: 2 Velites or Mercenary Skirmishers)
1st Battle Line: (Roman: 2 Hastati) + (Allied: 2 Hastati or Town Watch or Mercenary Infantry)
2nd Battle Line: (Roman: 2 Hastati or Principes) + (Allied: 2 Hastati or Town Watch or Mercenary Infantry)
The Thin Line: (Roman: 1 Triarii) + (Allied: 1 Triarii or Town Watch or Mercenary Infantry)
Cavalry Wings: (Roman and Allied: 2 Equites or Roman Generals) + Any number of Mercenary Cavalry
Traditionally the Roman troops should form the centre with Allies to either flank. The key to fighting Barbarians is to blunt their intial attack with the lighter troops and then counter attack. On medium battle difficulty - normal size units this works (so far) so long as I stretch the Roman battle lines quite thin to almost 2 ranks deep and am willing to let the skirmish line take a beating sometimes. (Light troops tend to heal up quite well after battles for some reason.)
Bookmarks