Jingo7
Landlubber
Hello, not sure if this thread is the best to post this in, but the build has a problem with not encountering 'punitive squadrons' (boats that actively come after you if you've been bad), which I think detracts from enjoyment of the game.
I'm not a coder or nothing but it could be related to this:
In PROGRAM>Encounters>Encounters_map.c
I'm not a coder or nothing but it could be related to this:
In PROGRAM>Encounters>Encounters_map.c
Code:
// try to make punitive squadron
ref rMainCharacter = GetMainCharacter();
int iReputation = sti(rMainCharacter.reputation);
if(iReputation < 40 && iCharacterIndexAsEnemy != -1) // FIX-ME
{
if(rand(100) < 40 * ((41 - iReputation) / 40))
{
iEncounterType = ENCOUNTER_TYPE_PUNITIVE_SQUADRON;
}
}
// NK do this below:
// find real encounter if not punitive
// nation find
int iNationsCanBe[MAX_NATIONS];
int iNumNationsCanBe = 0;
for (int i=0; i<NATIONS_QUANTITY; i++)
{
/*bool bCanBe = Encounter_CanNation(iEncounterType, i);
if(!bCanBe) continue;*/
if(iCharacterIndexAsEnemy != -1 && GetNationRelation2Character(i, iCharacterIndexAsEnemy) != RELATION_ENEMY) continue;
if(i == iNearIslandNation && rand(2) == 1)
{
iNationsCanBe[0] = i;
iNumNationsCanBe = 1;
break;
}
iNationsCanBe[iNumNationsCanBe] = i;
iNumNationsCanBe++;
}
if(iNumNationsCanBe == 0) return false;
rEncounter.Nation = iNationsCanBe[rand(iNumNationsCanBe - 1)];
// find real encounter if not punitive - NK use FindEncounter() 05-06-27
if(iEncounterType == -1)
{
iEncounterType = FindEncounter(ENCOUNTER_WAR, sti(rEncounter.Nation)); if(iEncounterType == -1) return false;