The cause is in PROGRAM\Locations\init\IslaDaMuerte.c:
Code:
locations[n].id = "IslaDeMuerte_Cabin";
locations[n].id.label = "Captain's Cabin";
locations[n].filespath.models = "locations\Inside\ShipyardPirates";
locations[n].image = "Inside_ShipyardPirates.tga";
//Town sack
Locations[n].townsack = "Redmond"; // PB: Otherwise Vanderdecken doesn't sell ships
The PROPER solution would be to create a new Isla Da Muerte TOWN.
But a town on that island doesn't make a whole lot of sense to me.
Alternatively, try adding this line in PROGRAM\INTERFACE\shipyard.c:
Code:
// KK -->
void SetFleetAtShipyard()
{
if (VanderdeckenShipyard()) return; // PB: Abort this if you're at Isla da Muerte
if(DEBUG_SHIPYARD_INTERFACE) trace("SetFleetAtShipyard");
ref mchref = GetMainCharacter();
ref rTown = GetCurrentTown();
if (CheckAttribute(rTown, "boarding.l1")) {
SetCharacterShipLocation(mchref, rTown.boarding.l1);
mchref.location.from_sea = rTown.boarding.l1;
PlaceFleetNearShore(mchref.location.from_sea);
}
}
// <-- KK
This happens if you do any repairing.