When we were there the summer before last on the Crown Princess, there was NO shuttle bus...
The problem with St. Petersburg is that you need to have a visa to leave the ship...
When you take the ship's shore excursions, they have a "group visa"...
But, if you go on your own or if you take a privately arranged tour, you MUST have arranged for a visa...
Because of this, it seemed most cruisers went with the ship shore excursions...
Those who didn't, generally went with private operators who picked them up AT THE dock...
So, unlike other ports where everyone was free to just wander off on their own, there was little need for the ship to provide shuttle buses...