My wife went on a cruise this June with her sister, overnighting in St Petersburg. They arrived without a visa and had just prebooked a non-cruiseline tour. As others have mentioned in the thread, you essentially have to stick with the tour group and cannot leave the ship to roam the nearby neighbourhood on your own.