• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Sparrow Sought - 13 Final & 13 Full + Update 3

Have you been meeting any special things other than ships? And do the ships always appear ahead of you or can they appear in different directions for you?
 
they DO appear in different directions, yes. i also meet lifeboats, the rogue log and sometimes floating cargo, but nothing else. i'm sure i met other things in build 14 a6.
 
That's odd; I thought all that new stuff <i>was</i> in that DirectSail version as well. Quite sure of it, actually, since it wasn't added later for Build 14. <img src="style_emoticons/<#EMO_DIR#>/no.gif" style="vertical-align:middle" emoid=":no" border="0" alt="no.gif" />
 
I'm all for the additions that have been mentioned!
Untill then however I humbly suggest some more hours are used by several people in regular game play with this clean version.
Not that I am particularly suspicious, but bugs keep still showing up. <img src="style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" /> Must be a curse!

Since I have moved on with the game yesterday I run into a wrong locator for the last soldier in the French attack in Phillipsburg port.

You can't slay him.
You can't shoot him.
He just stands there on the bottom of the shallow water waving his sword and sliding through the bottom of the landingboat as it floats up and down, making the entire scene incredibly stupid.

How should we tackle this one?

[attachment=1565:Wrongloc...lipsburg.bmp]
 
Holy crap; that looks REALLY weird! Strangely enough I've seen Barbossa do the same in stepping into the boat during the CotBP quest. I thought perhaps Short Jack Gold had done that on purpose to make it appear as if Barbossa was stepping into the boat. Now I'm not so sure. Could the issues be related?
 
I made a detour, leaving the ship at Baie Orient and then took the walk through the dungeons to Philipsburg, just to make sure I can recreate the scene without the landing boat coming in the way.

The process confirms it is a wrong locator for the emerging French soldiers...
<img src="style_emoticons/<#EMO_DIR#>/doff.gif" style="vertical-align:middle" emoid=":doff" border="0" alt="doff.gif" /> Considering there are thousands of lines added in the files and the additions work in 99.999% of the cases, a code beyond the land location only makes these people... human! <img src="style_emoticons/<#EMO_DIR#>/doff.gif" style="vertical-align:middle" emoid=":doff" border="0" alt="doff.gif" />

Any idea in which file to look for the emerging French attack in Phillipsburg port, because with the fleet at anchor elsewhere the wrong locator looks like this:

[attachment=1566:Wrongloc...lessboat.JPG]
 
<!--quoteo(post=233854:date=Jan 12 2008, 04:18 PM:name=Pieter Boelen)--><div class='quotetop'>QUOTE(Pieter Boelen @ Jan 12 2008, 04:18 PM) [snapback]233854[/snapback]</div><div class='quotemain'><!--quotec-->Holy crap; that looks REALLY weird! Strangely enough I've seen Barbossa do the same in stepping into the boat during the CotBP quest. I thought perhaps Short Jack Gold had done that on purpose to make it appear as if Barbossa was stepping into the boat. Now I'm not so sure. Could the issues be related?<!--QuoteEnd--></div><!--QuoteEEnd-->I DID add Barbossa to the boat <u>intentionally</u> so no worries there. (stops the player getting to him as that "exit" is locked.)
 
<img src="style_emoticons/<#EMO_DIR#>/mybad.gif" style="vertical-align:middle" emoid=":facepalm" border="0" alt="mybad.gif" />
In the Philipsburg port attack it just locks the case so it can't be finished...
... this being unintentional I figured I would have a look at the Philipsburg_patrol dialog.c which
triggers the ambush.

It doesn't look bad apart from an unintended space marked here with (_),
for the assignment of the number of enemy soldiers ( ..."Soldier"),_ 6, "enemy", "enemy"...) in the line:
Ambush(SelectSoldierModelByNation(FRANCE, "Soldier"), 6, "enemy", "enemy");

<img src="style_emoticons/<#EMO_DIR#>/bookish.gif" style="vertical-align:middle" emoid=":mm" border="0" alt="bookish.gif" />

So I wasn't lucky this time, in finding a quick fix!
I'd like to learn how this case has been made in terms of emerging choice for the ambushing soldiers (seabed/peer vs. port exit gate to town for example), if you people with the real skills have time to look into it!

<img src="style_emoticons/<#EMO_DIR#>/doff.gif" style="vertical-align:middle" emoid=":doff" border="0" alt="doff.gif" />
 
That space there does no harm. It seems the problem is caused by the <i>void Ambush(string modeltype, int bmax, string mainrel, string npcrel)</i> function in PROGRAM\CCCFunctions.c. The code looks rather weird. It seems it's using LAi_FindRandomLocator(group) (where group is "ambush") to determine the locator. However, I am not aware of any locator group called "ambush". I only know "reload" and "goto", etc. Also I just noticed that these lines:<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->    hasgun = 0.5
    ani = "man"
    group = "ambush"<!--c2--></div><!--ec2-->are missing ; at the end.
 
<img src="style_emoticons/<#EMO_DIR#>/modding.gif" style="vertical-align:middle" emoid=":modding" border="0" alt="modding.gif" />

The lines are there all right in CCCFunctions.C:

ref chr;
float hasgun;
string ani, group, locator, model;
hasgun = 0.5
ani = "man"
group = "ambush"

The line:
locator = LAi_FindRandomLocator(group);

Looks to me to pick-up the first locator for the ambush to work whichever that first locator is (random) which in \PROGRAM\Locations\init\SaintMartin is:

Locations[n].models.always.l1 = "GrPort"; this one being exactly the one on the water under the peer, supporting the additional buildingset where the ambush attackers are emerging.

I have crossed checked:
1. If I reduce the number of attackers in the ambush to only 1, then the only guy appearing is the one in the water.
2. If I change locator Locations[n].models.always.locators = "GrPort_l"; into ="GrPort", then the main character makes landfall in the water under the building set.

<img src="style_emoticons/<#EMO_DIR#>/modding.gif" style="vertical-align:middle" emoid=":modding" border="0" alt="modding.gif" /> ...mess with the functions crashes the game, mess with the locators crashes the Philipsburg port.

<img src="style_emoticons/<#EMO_DIR#>/biggrin.gif" style="vertical-align:middle" emoid=":D" border="0" alt="biggrin.gif" /> Why do I have this feeling that CCC could fix this in a wink of the eye, while it would take days to figure out otherways!
 
I have been testing the Philipsburg French attack over and over again, with nice results after replacing in PROGRAM\Dialogs\Philipsburg_patrol.c
the line:

Ambush(SelectSoldierModelByNation(FRANCE, "Soldier"), 6, "enemy", "enemy");

with the line:

Random_Raid(SelectSoldierModelByNation(FRANCE, "Soldier"), 1+sti(pchar.skill.fencing), FRANCE,"enemy","enemy","ALERT !! SOLDIERS RAID !!!!");

This function seems to be defined differently, using a reference to the maincharacters location.
With this function the French soldiers emerged from different place, like tavern, peer or shipyard ... without leaving any members of their party in the water.
And the nice touch suggested by CCC in the setting of the number (dialogue case above) works real wonderfull.
I do however worry a little because as this Random_Raid function is defined in the landencounters files, it is still using random locators.
So theoretically it could at some point place the attackers in the water under the docks, even though I haven't experienced it yet through two hours of testing.

I have however tested the cheat key number 9 triggering a French invasion. It doesn't misplaces any soldiers and gives the most realistic effect af all.
The real fix in the dialogue should in my opinion take this invasion function into account.
Are there several coding references to this key9 invasion?

<img src="style_emoticons/<#EMO_DIR#>/bookish.gif" style="vertical-align:middle" emoid=":mm" border="0" alt="bookish.gif" />
 
The Numpad key 9 invasion code is from "elrapido.c" file.

I have seen the rapid raid "attacker using the player boat locator" on another beach.
It was on one of the Cayman beaches.
 
<!--quoteo(post=234246:date=Jan 14 2008, 08:31 PM:name=Petros)--><div class='quotetop'>QUOTE (Petros @ Jan 14 2008, 08:31 PM) [snapback]234246[/snapback]</div><div class='quotemain'><!--quotec-->The Numpad key 9 invasion code is from "elrapido.c" file.

I have seen the rapid raid "attacker using the player boat locator" on another beach.
It was on one of the Cayman beaches.<!--QuoteEnd--></div><!--QuoteEEnd-->

I'played the same scene at least ten times now without a single "wet" attacker.
The French crowd appears now on the peer just as they should.

<img src="style_emoticons/<#EMO_DIR#>/danse1.gif" style="vertical-align:middle" emoid=":dance" border="0" alt="danse1.gif" />

I don't know what to say! ... You are simply the man! <img src="style_emoticons/<#EMO_DIR#>/doff.gif" style="vertical-align:middle" emoid=":doff" border="0" alt="doff.gif" />

The function comes actually with a whole user manual... gee...

The case in Philipsburg_patrol.c would then be:

case "Exit_raid":
PlaySound("OBJECTS\raid.wav");
Rapid_Raid("soldiers", "none", makeint(PChar.rank), FRANCE, "enemy", "enemy","A French infantry unit suddenly appears and attacks you!", "French Musketeer", 8, 4, 120, 360, 9, 9, 0, 80, 4, 20);
LAi_group_SetSayRadius(Npchar.chr_ai.group, 40000000.0);
LAi_group_SetHearRadius(Npchar.chr_ai.group, 40000000.0);
DialogExit();
Diag.CurrentNode = Diag.TempNode;
break;


instead of:

case "Exit_raid":
Ambush(SelectSoldierModelByNation(FRANCE, "Soldier"), 6, "enemy", "enemy");
LAi_group_SetSayRadius(Npchar.chr_ai.group, 40000000.0);
LAi_group_SetHearRadius(Npchar.chr_ai.group, 40000000.0);
DialogExit();
Diag.CurrentNode = Diag.TempNode;
break;

I have added the reference to main characters rank in order to increase players odds at the beginning of the game.

The action is a thrill!

It fixes the issue!

Thank you for pointing me to the pattern.

<img src="style_emoticons/<#EMO_DIR#>/doff.gif" style="vertical-align:middle" emoid=":doff" border="0" alt="doff.gif" />
 
Glad I could help. <img src="style_emoticons/<#EMO_DIR#>/me.gif" style="vertical-align:middle" emoid=":onya" border="0" alt="me.gif" />

That is the problem with me being around for so long but not knowing code. <img src="style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" />

I know were "some" stuff is but don't know what to do with it. <img src="style_emoticons/<#EMO_DIR#>/laugh.gif" style="vertical-align:middle" emoid="xD:" border="0" alt="laugh.gif" />


I'm glad you're here helping to sort things out! <img src="style_emoticons/<#EMO_DIR#>/buds.gif" style="vertical-align:middle" emoid=":drunk" border="0" alt="buds.gif" />
 
I wonder what we should do with this. Try and fix the Ambush function or use the Rapid_Rapid function instead? Basically they're two functions for pretty much the same thing. <img src="style_emoticons/<#EMO_DIR#>/wacko.gif" style="vertical-align:middle" emoid=":wacko:" border="0" alt="wacko.gif" />
BTW: Numpad 9 also used the Rapid_Raid code.
 
I really appreciate your guidance, Petros!
Pointing to where the stuff is is an invaluable help. <img src="style_emoticons/<#EMO_DIR#>/doff.gif" style="vertical-align:middle" emoid=":doff" border="0" alt="doff.gif" />
... the rest being dull work of making back up files and testing patterns...
<img src="style_emoticons/<#EMO_DIR#>/me.gif" style="vertical-align:middle" emoid=":onya" border="0" alt="me.gif" />

<!--quoteo(post=234484:date=Jan 15 2008, 01:04 PM:name=Pieter Boelen)--><div class='quotetop'>QUOTE (Pieter Boelen @ Jan 15 2008, 01:04 PM) <a href="index.php?act=findpost&pid=234484"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->I wonder what we should do with this. Try and fix the Ambush function or use the Rapid_Rapid function instead? Basically they're two functions for pretty much the same thing. <img src="style_emoticons/<#EMO_DIR#>/wacko.gif" style="vertical-align:middle" emoid=":wacko:" border="0" alt="wacko.gif" />
BTW: Numpad 9 also used the Rapid_Raid code.<!--QuoteEnd--></div><!--QuoteEEnd-->

<img src="style_emoticons/<#EMO_DIR#>/yes.gif" style="vertical-align:middle" emoid=":yes" border="0" alt="yes.gif" /> Actually we have three functions for pretty much the same thing. <img src="style_emoticons/<#EMO_DIR#>/yes.gif" style="vertical-align:middle" emoid=":yes" border="0" alt="yes.gif" />

1. "Ambush"
2. "Random_Raid"
3. "Rapid_Raid"

I do not have a thorough knowledge regarding their speciffic utilization purposes and I have not crossed examined every file where they function.
This being said however, I realized the following distinctions:
1.) "Ambush" produces quick action emerging from a random locator. It is lean and straight and most suitable for dialoguebased quests, because you can define what you want right there in the dialogue files, based on CCC's pattern. Imagine in principle a simple dialogue quest where a governor asks the player to conquer a town and in order to do that he must find the leader of the inssurgents. Give this leader a dialogue case with "ambush" when in fort, and write
you want 12 pirates, friendly to you and enemy to the town nation, and you have a side fight almost similar to the one in the Take of Greenford quest, without having to write volumes of quest lines.
Attention must be given to where you are using it, in terms of which locators the target environment has been built upon. We have just seen the side effects.
2.) "Random_Raid" is the predecessor of "Rapid_Raid", as explained in ElRapido by people far wiser then myself, where the definitions of who and where depend on how you are building up the characters with:
LAi_CreateFantomCharacterEx(false, 0, true, hasblade, hasgun, GetRandomModelForTypeExSubCheck(1, type, "man", nation), ani, group, locator);
These characters can also be set to "ambush" eachothers groups... sometimes, random that is.
Takes work with lines to assign the speciffications.
I have used it "as is" to see what happens.
Testing it in the Phillipsburg port, looked quite good. I had French soldiers emerging from in front of the shipyard then sometimes from in front of the tavern, then sometimes from the peer. It worked on the definitions in LEnc_monsters which relate basicly to main characters location.
Since I could not find the events in Phillipsburg in a distinct quest/story/case file I am never the less worried about it because the function might teorethically pick up at some point the wrong locator, and then you will maybe have every 20est player complaining about it whith the rest not sharing but a positive experience.
3.) Rapid_Raid is as explained in the El.Rapido an entire tool. The file consists of all the definitions necessary to make Rapid_Raid work.
It gives in addition challenge and satisfaction, you meet soldiers with more realistic soldier levels and they carry weapons worth looting.
The function seems entirely customized to the explanatory note in the file : "works only on land locations..."
In 30 dialogue tests it did't disapoint me ... it did'n put a single attacker in a water(boarding) location.
So this function is a fix which happens to be right there in th game.

Using Rapid_Raid is not a solution as elegant as fixing functionparameters or assigning locators, but it worked in my game.

My suggestion if you folks agree would be the following:
Since we have two characters in Philipsburg, who offer the fighting option (apart from the patrol outside town) , one being the soldier in port and the other being the officer in town, I wouldn't mind leaving the existing CCC design as dialog file for the officer in town only and then paste in addition a new set of dialogue c. and h. files using the Rapid_Raid functions to be assigned for the soldier in port character.
In this way I feel we still show reverence to CCC's wonderfull work and preserve it, while adding a right here and right now solution to the bug in port which would at least bring variety to the game in Philipsburg untill CCC and the comunity come with something more gracefull.

If you give the GO, I will make the files as soon as I get back from work tomorrow night.

<img src="style_emoticons/<#EMO_DIR#>/poet.gif" style="vertical-align:middle" emoid=":hmm" border="0" alt="poet.gif" />
 
In that case I'd just replace the Ambush function with the Rapid_Raid function in the Phillipsburg soldier dialog; saves us the trouble of making two files that are almost the same. That'd just complicate matters. CCC doesn't mind his code being changed/fixed or even replaced, so that's nothing to worry about. I do wonder about all other instances where the Ambush function is used. BuildingSet dialogs, random encounter dialogs and many others. Could these cause the same issues as you experienced in Phillipsburg?
 
<!--quoteo(post=234557:date=Jan 15 2008, 08:39 PM:name=Pieter Boelen)--><div class='quotetop'>QUOTE (Pieter Boelen @ Jan 15 2008, 08:39 PM) <a href="index.php?act=findpost&pid=234557"><{POST_SNAPBACK}></a></div><div class='quotemain'><!--quotec-->In that case I'd just replace the Ambush function with the Rapid_Raid function in the Phillipsburg soldier dialog; saves us the trouble of making two files that are almost the same. That'd just complicate matters. CCC doesn't mind his code being changed/fixed or even replaced, so that's nothing to worry about. I do wonder about all other instances where the Ambush function is used. BuildingSet dialogs, random encounter dialogs and many others. Could these cause the same issues as you experienced in Phillipsburg?<!--QuoteEnd--></div><!--QuoteEEnd-->

Good thinking!

The easy way is indeed to just paste this line:

Rapid_Raid("soldiers", "none", makeint(PChar.rank), FRANCE, "enemy", "enemy","A French infantry unit suddenly appears and attacks you!", "French Musketeer", 8, 4, 120, 360, 9, 9, 0, 80, 4, 20);

over the existing ambush line right there in case "Exit_raid": of PROGRAM\Dialogs\Philipsburg_patrol.c

<img src="style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" /> Utilization of random ambush linked to the recollection of that boarding image in 14a7 where the crew is waving swords from under the mast!!!
It is basicly the same picture as the French soldier linked to the bottom under the landing boat. Gives me shivers!
 
Ahoy!

First post and seeing that I've played 13 Final for as long as I have and this is my first unavoidable issue is great. Its a amazing mod project. My problem is with the main quest at the point where I have to go to Isla M to get into the Library but 1st have to do a job for the priest. But I can't talk to the priest... I've done the missing children quest and have the teacher as a passenger. Is this issue to do with the stock game or the build? <img src="style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" />
 
Back
Top