• 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!

Fixed Missing character at cave entrances

Ah....ok so my first point in that post (with the screenshot to accompany it at the bottom) where i go to the item location near the rock (as in screenshot) and in stead of getting the hand icon with the word 'Item' underneath the icon as normal for these loot finds in the landscape, i get the error string instead, that is related to the 3 chars (so missing 1 char) instead of 4 spawning and that error message overwrites where the word 'Item' would be?

I see, i think i get the relationship between all this now :)
That could be possible. I often enough see some "old" strings showing temporarily where they don't belong. :facepalm
 
Cave entrances can get quite crowded. I have seen rapists, highwaymen,and pirates protecting their treasure all piled into that small area. Battles there turn into real melees with everyone hacking away at everyone else. In this case less is really better.
 
So my question stands: Exactly which location models are affected?
Then I'll add permanent "vcskip" attributes to them and then hopefully that'll be the end of this one.
 
So my question stands: Exactly which location models are affected?
Then I'll add permanent "vcskip" attributes to them and then hopefully that'll be the end of this one.
 
The following comes from "PROGRAM\Locations\init\Oxbay.c", and is duplicated in "Hispaniola.c", specifically the part of each file which refers to the cave entrance:
Code:
   //Models
   //Always
   Locations[n].models.always.locators = "Cave_l";
   Locations[n].models.always.cave = "Cave";
   Locations[n].models.always.grassPatch = "CAVE_g";
   Locations[n].models.always.l1 = "cave_b01";
   Locations[n].models.always.l1.level = 9;
   Locations[n].models.always.l1.tech = "LocationModelBlend";
   Locations[n].models.always.l2 = "cave_b02";
   Locations[n].models.always.l2.level = 8;
   Locations[n].models.always.l2.tech = "LocationModelBlend";
   Locations[n].models.always.l3 = "cave_b03";
   Locations[n].models.always.l3.level = 7;
   Locations[n].models.always.l3.tech = "LocationModelBlend";
   Locations[n].models.always.l4 = "cave_b04";
   Locations[n].models.always.l4.level = 6;
   Locations[n].models.always.l4.tech = "LocationModelBlend";
   //Day
   Locations[n].models.day.charactersPatch = "Cave_p";
   //Night
   Locations[n].models.night.charactersPatch = "Cave_p";
Presumably the lines which aren't "level" or "tech" are the location models for the cave entrance area?
 
The following comes from "PROGRAM\Locations\init\Oxbay.c", and is duplicated in "Hispaniola.c", specifically the part of each file which refers to the cave entrance:
Code:
   //Models
   //Always
   Locations[n].models.always.locators = "Cave_l";
   Locations[n].models.always.cave = "Cave";
   Locations[n].models.always.grassPatch = "CAVE_g";
   Locations[n].models.always.l1 = "cave_b01";
   Locations[n].models.always.l1.level = 9;
   Locations[n].models.always.l1.tech = "LocationModelBlend";
   Locations[n].models.always.l2 = "cave_b02";
   Locations[n].models.always.l2.level = 8;
   Locations[n].models.always.l2.tech = "LocationModelBlend";
   Locations[n].models.always.l3 = "cave_b03";
   Locations[n].models.always.l3.level = 7;
   Locations[n].models.always.l3.tech = "LocationModelBlend";
   Locations[n].models.always.l4 = "cave_b04";
   Locations[n].models.always.l4.level = 6;
   Locations[n].models.always.l4.tech = "LocationModelBlend";
   //Day
   Locations[n].models.day.charactersPatch = "Cave_p";
   //Night
   Locations[n].models.night.charactersPatch = "Cave_p";
Presumably the lines which aren't "level" or "tech" are the location models for the cave entrance area?
Can you show that entire location init entry? The part I'm interested in is probably a bit above that. I just care about the "model folder".

I mainly want to know if it is just that default "cave entrance" location model or if this problem affects other ones as well.
 
This is what appears before the chunk in the previous post:
Code:
   Locations[n].filespath.models = "locations\Outside\Cave Entrance";

   Locations[n].id = "Hispaniola_Jungle_09";
   locations[n].id.label = "Cave entrance";
   Locations[n].image = "Outside_Cave_Entrance.tga";
   //Sound
   locations[n].type = "jungle";
   locations[n].ambush = true;
   LAi_LocationMonstersGen(&locations[n], true);
   LAi_LocationSetMonstersTime(&locations[n], 22, 6);
After that are the 'Locations[n].models' lines already provided, and after those are the 'Locations[n].reload' lines which create the links to take the player into the cave or back to the jungle.
 
This is what appears before the chunk in the previous post:
Code:
   Locations[n].filespath.models = "locations\Outside\Cave Entrance";

   Locations[n].id = "Hispaniola_Jungle_09";
   locations[n].id.label = "Cave entrance";
   Locations[n].image = "Outside_Cave_Entrance.tga";
   //Sound
   locations[n].type = "jungle";
   locations[n].ambush = true;
   LAi_LocationMonstersGen(&locations[n], true);
   LAi_LocationSetMonstersTime(&locations[n], 22, 6);
After that are the 'Locations[n].models' lines already provided, and after those are the 'Locations[n].reload' lines which create the links to take the player into the cave or back to the jungle.
Thanks! This was the line I'm after:
Code:
Locations[n].filespath.models = "locations\Outside\Cave Entrance";
That indicates the location model folder for which the problem applies. With that, it is easy to find other locations that use that same model.

Then all that's left to know is if any other location models are affected by the same problem?
 
Not as far as I can see from a Windows search for "locations\Outside\Cave Entrance". That yields plenty of hits, showing all the inshore caves around the Caribbean and nothing which isn't a cave. (There's also another cave entrance built into a shore location, e.g. the one on La Grenade / Concepcion / Grenada / Conceicao, which uses a different model and isn't a problem anyway because highwaymen and rapists never appear there.)
 
Thanks. Then next week I'll just vcskip all locations using that model and then we'll see if that prevents the problem. :cheers
 
Hmm.... maybe "vcskip" isn't even needed. I could also get rid of these lines instead:
Code:
   LAi_LocationMonstersGen(&locations[n], true);
   LAi_LocationSetMonstersTime(&locations[n], 22, 6);
 
I made some code changes that should prevent issues with random characters at the cave entrances.
Now it will need testing after the next update.
 
There was always one missing character in my last game at the cave entrances. Will see how it is in a new game.
When was that last game? As per a month ago, there should be no more random encounters there at all.
And if there aren't any, then there also can't be one of the four missing.
But I don't know if the change I made actually has the intended effect.
 
Sorry. Console trip to Hispaniola cave shows there are still 3 random attackers (or sometimes rabid monkeys) outside this cave - at least in 13 Mar version.
 
Apparently removing those code lines didn't work then.
Have to add "vcskip" then indeed.
 
Hold off on that vcskip @Pieter Boelen, I'm not sure about this after all.

With the 13 Mar version there are three thugs but it has slowly dawned on me that I think they had a highwayman style dialogue but more than that there was no escaping victim - so perhaps these are just normal thugs. I was thrown by the woman being on the loading screen I think.

That's what comes of my jumping in in the middle of a problem (well strictly after the problem in this case) rather than looking at all angles. I'll check back with the original save provided at Hispaniola for comparison.

Anyone any idea of the ID's of other reported cave locations (or even which Islands so I can check the init files to find the cave) where this rapist scenario can be triggered and thus have a missing 4th man.

EDIT OK first one out the box this time was a rapist scenario with victim and only two attackers (probably because I and my gallant officers teleported in blocking some of the other locators) but maybe for that scenario you did manage to remove one attacker - so anyway yeh let's just vcskip these and move on. It does still leave an armed woman showing on the loading screan for some reason which would be better applied to only the particular circumstances it was made for bur that's a minor cosmetic. ENDEDIT
 
Last edited:
Hmm me again - just added another enc01 group locator to the location in tool and we have four bandits. So here is the amended locator file, of course it could still be OK to stop all these cave mouth encounters but that's a different issue!

EDIT PS these are not locators made visible even with visible locators so I just replicated a monsters locator position for enc01 group number 4 coordinates since I figured they won't both be in play at the same time. ENDEDIT
 

Attachments

  • Cave_l.7z
    1.5 KB · Views: 88
Last edited:
Back
Top