1 tab = 8 spaces. You're presumably using 1 tab = 4 spaces.
I have my own pet peeves, including proper indentation, and having an 'if' block like this:
Code:
if (condition)
{
do stuff
}
... rather than...
Code:
if (condition) {
do stuff
}
... so that it's easier to scroll down and see where blocks start and end. But although I'll sometimes "correct" them while I'm making a genuine change to the code, I'll not go searching for them just to change them, and I'll certainly not upload any files which have only been changed to satisfy my style preferences. So I'm also not interested in files which have only changed by removing a few spaces.
Talking of genuine changes, I found this added to function 'wdmEvent_PlayerInStorm()' in "PROGRAM\WorldMap\worldmap_events.c":
Code:
if (CheckAttribute(GetMainCharacter(), "stormIndex")) return; // PW storm immunity otherwise locked in storm
Characters[GetMaincharacterIndex()].stormIndex = stormIndex;//PW set up variable for storm immunity (cleared in daily crew update)
There's no "stormIndex", or any other storm code, in "DailyCrewUpdate.c". Is "stormIndex" something new to Build 15? I'm guessing this function is what yanks you out of worldmap and into direct sailing if you've entered a storm cloud on the worldmap and if "stormIndex" isn't cleared because my version of "DailyCrewUpdate.c" doesn't have it, then the first time a storm kicks you out of worldmap will also be the last.
And I'm still not sure what everything added to "AIShip.c" does. By your own admission, the "Philippe" code caters to an attribute which is only set by a function that is commented out in "Tales of a Sea Hawk" and not used anywhere else at all. So that code may as well also be commented out. And some of your formatting changes were to remove commented out code. If I don't add it, you don't need to delete it later.
The code to prevent immortal characters returns 'makefloat(0)', and so does the check for 'bSeaActive'. Why not just return '0.0'? (A few lines down is your own code to prevent damage to an NPC ship hitting land does exactly that.)
Exactly what problems were reported due to this:
Code:
if(iRealismMode>0)
{
int MinSailCrew = GetCharacterShipHP(rCharacter)/100; // crew needed for sailing, intentionally not using mininum crew here
if (MinSailCrew >= 100000/100) MinSailCrew = 100; // Cursed ships are a special case
CrewQuantity -= MinSailCrew;
}
And have you checked to make sure that commenting it out hasn't caused any more problems?
This looks very dodgy:
Code:
if(CheckAttribute(arCharShip, "Impulse"))
stf(arCharShip.Impulse.Rotate.y);
Perhaps that should be:
Code:
if(CheckAttribute(arCharShip, "Impulse")) fRotate = stf(arCharShip.Impulse.Rotate.y);
There's no need to change "AIShip.c" to reduce the mast damage from grapeshot. That's what 'MAST_GRAPE_SCL', defined in "InternalSettings.h", is for. You could change that to 0 if you like.