Found another bug : with your AIShip.c the option to dock at the cave in Dominica is, for some reason, disabled, thus preventing from doing the main quest (not a great loss you may say, i know, but... ehehe <img src="style_emoticons/<#EMO_DIR#>/rolleyes.gif" style="vertical-align:middle" emoid="
![Roll Eyes :rolleyes: :rolleyes:](/styles/emoticons/rolleyes.gif)
" border="0" alt="rolleyes.gif" /> ). It never appears, and instead you just have the option to go back to the world map view. The cave location is there, you can fast sail to the area, but never land. Using the original aiship from the supermod everything works fine. Just guessing, but, maybe you changed some sort of coords for the moor command? The fact is that this file is quite bigger (and more complex) than the officers one, so as of now i really haven't any chances of finding where is exactly the problem. What did you change there? Is there something relevant for the new cannon effects, or for the new ships?
EDIT
Just guessing, i still really don't know anything about the script language of this game, but these lines makes me wonder...
This is your version :
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->// check reload to locations possibility
if (iIslandIndex >= 0 && fMinEnemyDistance > MIN_ENEMY_DISTANCE_TO_DISABLE_ENTER_2_LOCATION)
{
if (Island_isReloadEnableGlobal(sPlayerLocation))
{
aref arReload;
makearef(arReload, rIsland.Reload);
int iNumLocators = GetAttributesNum(arReload);
for (int j=0; j<iNumLocators; j++)
{
aref arLocator;
arLocator = GetAttributeN(arReload, j);
string sLocatorName = GetAttributeName(arLocator);
if (Island_isReloadFort(sPlayerLocation, arLocator.name))
{
continue;
}
if (!Island_isReloadEnableLocal(sPlayerLocation, arLocator.name))
{
continue;
}
if(!CheckAttribute(rIsland, "reload." + sLocatorName + ".x") || !CheckAttribute(rIsland, "reload." + sLocatorName + ".z"))
{
continue;
}
float x1 = stf(rIsland.reload.(sLocatorName).x);
float z1 = stf(rIsland.reload.(sLocatorName).z);
float r = stf(rIsland.reload.(sLocatorName).radius);
if (sqrt(sqr(x1 - x) + sqr(z1 - z)) < r)
{
bCanEnterToLand = true;
sIslandID = rIsland.id;
makearef(arIslandReload, rIsland.reload);
sIslandLocator = rIsland.reload.(sLocatorName).name;
break;
}
}
}
}<!--c2--></div><!--ec2-->
And this is the supermod version :
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->// check reload to locations possibility
if (iIslandIndex >= 0 && fMinEnemyDistance > MIN_ENEMY_DISTANCE_TO_DISABLE_ENTER_2_LOCATION)
{
if (Island_isReloadEnableGlobal(sPlayerLocation))
{
aref arReload;
makearef(arReload, rIsland.Reload);
int iNumLocators = GetAttributesNum(arReload);
for (int j=0; j<iNumLocators; j++)
{
aref arLocator;
arLocator = GetAttributeN(arReload, j);
string sLocatorName = GetAttributeName(arLocator);
if (Island_isReloadFort(sPlayerLocation, arLocator.name)) { continue; }
if (!Island_isReloadEnableLocal(sPlayerLocation, arLocator.name)) { continue; }
float x1 = stf(rIsland.reload.(sLocatorName).x);
float z1 = stf(rIsland.reload.(sLocatorName).z);
/*if (checkAttribute(rIsland, "reload."+sLocatorName+".wdmisland"))
{
wdmCurrentIsland = rIsland.reload.(sLocatorName).wdmisland;
}*/
float r = stf(rIsland.reload.(sLocatorName).radius);
if (sqrt(sqr(x1 - x) + sqr(z1 - z)) < r)
{
bCanEnterToLand = true;
sIslandID = rIsland.id;
makearef(arIslandReload, rIsland.reload);
sIslandLocator = rIsland.reload.(sLocatorName).name;
break;
}
}
}
}<!--c2--></div><!--ec2-->
Apart from the difference in going on a new line for the parenthesis on those continue (that should'nt be an issue in any way for the language), the supermod uses a different expression for the third if, with that ".wdmisland", while you used both a ".x" and ".z", that, i suppose, refer to the float defines, instead of that wdmislands. Also, you first make the if statement, and only after define the float x1 and z1, while in supermod (more logically) those lines come first, then the if, and, finally, the third float r.
That seems to make more sense in the supermod version, however i cannot find from where that wdmisland came out and why you used that quite different expression. And i cannot imagine how those expressions for setting when there are the conditions to enter land are linked to some new ship models and effects but, well, i'm just speculating. <img src="style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid="
![Shrug :shrug :shrug](http://piratesahoy.bowengames.com/PA_Forum/Emoticons/dunno.gif)
" border="0" alt="dunno.gif" />
I hope to have at least got the real source of the issue.
Let me now something <img src="style_emoticons/<#EMO_DIR#>/hi.gif" style="vertical-align:middle" emoid=":gday" border="0" alt="hi.gif" />