The problem you're going to run into is that typically the only way to remove the scratches is to color sand ( 1500 grit ) and buff them out with compound and a buffer.... however, on a semi gloss finish this will also turn that area into a gloss finish.
The only possibility I can think of would be to remove the scratches, either by buffing or sanding with ultrafine paper, then try to duplicate the semi gloss finish by either buffing by hand ( which will give less gloss that machine buffing ) or possibly dulling a machine buffed surface with something like 0000 steel wool ?
A lot of it will come down to how fine your scratches are ,exactly how shiny or flat is the "semi-gloss" finish on the truck and the overall condition of the existing paint.
Any hidden areas you can test on first?
You could try lightly sanding a small spot with 3000 or higher grit or 0000 steel wool to see what finish it leaves before trying anything in a visable area.
Any way you could post a good picture of the area you are working on? It would be worth 1000 words!