You should move your post to Maps and Location section. You'll get better feedback. Good luck.
I should add that the annotation itself is a Lodge, which is declared
class Lodge: Mapsite, NSCoding
var fMember = false
var fSaleItem:[Int] = [0,0,0,0]
class Mapsite: MapObject
var fIsLodge = false
var fClues: Int = 0
var fXY: [Int] = [0,0]
var fLocation: [Double] = [0,0]
var fDimmed = true
class MapObject: NSObject, MKAnnotation
var fIsCampfire = false
var fIsExplorer = false
var coordinate = CLLocationCoordinate2D()
var fView: MKAnnotationView?
The variable required by the protocol (coordinate:CLLocationCoordinate2D) has a non-zero value but that's actually not relevant since, as I said, mapView is not even being called (I've set a breakpoint to verify that). The annotations that work are not Mapsites, they're in other subclasses of MapObject.