Carlos Tevez and Roque Santa Cruz were not even named on the bench for the match at the Peter Mokaba Stadium in Polokwane, South Africa.
And Gareth Barry, although named as a substitute, did not make an appearance.
Mark Hughes' team are taking part in the Vodacom Challenge as part of their pre-season tour, a competition which also includes the Kaizer Chiefs.
In an evenly contested first half, the Pirates managed to get the upper hand just four minutes before the break.
Ben Mee fouled Frank Olivier in the area and defender Lucas Thwala converted the penalty, beating City's new goalkeeper Stuart Taylor.
The Pirates doubled their lead in the 56th minute thanks to substitute Phenyo Mogale's long-range effort.
The game was played at a ground which will be used at next year's World Cup.
Big-spending City will now be looking to bounce back in their next match against the Kaizer Chiefs on Tuesday, where supporters will be hoping to see some of the new signings make their debuts.