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

Need Help Several minor bugs + questions

ch.perks.freepoints = 2; // Or whichever number you want
what is the same line for skillpoints? ch.skill.freepoints = 0 doesn't seem to work

Already figured out)

Also have two new questions. How can I lower exp gain with auto skill system twice? And how can I change ship design icon in ship interface (because I want my corsair frigate to be actually pirate design, not some sort of portugal... meh

And about the bugs: is it much hope that they can be solved in my current game?

And-d-d about skills past 10. Last time, I won't bother after this, but still: it's really no way to make second colunm of skills values display buffs and ignore 10 cap? Only in interface screen, not affecting gameplay or script codes in any way. Only visuals.
 
Last edited:
Where can I see it? (Officers ID I mean.)
That can be quite difficult, because your officers could come from anywhere and have any ID.
Try in PROGRAM\INTERFACE\passengers.c:
Code:
GameInterface.strings.CharacterName = chref.name + " " + chref.lastname + " - " + XI_ConvertString("S"+chref.quest.officertype);
Change that to:
Code:
GameInterface.strings.CharacterName = chref.id + " - " + XI_ConvertString("S"+chref.quest.officertype);
Then see if the Passengers interface will tell you.

what is the same line for skillpoints? ch.skill.freepoints = 0 doesn't seem to work

Already figured out)
Looks like:
Code:
ch.skill.freeskill = 0; // change with number you want

How can I lower exp gain with auto skill system twice?
Have a look in PROGRAM\Characters\Leveling.c, specifically these options:
Code:
#define SKILLS_UP_BONUS            25                // From 10 to 99 - speed of player's skills-increase
#define SKILL_EXPERIENCE_MULTIPLIER    0.8            // FLOAT - Must be a float higher than 0.0 - default is 1.0 - the rate at which the characters gain skill experience: For a 30% increase set to 1.3
#define EXPERIENCE_MULTIPLIER    0.8                // FLOAT - Must be a float higher than 0.0 - default is 1.0 - the rate at which the characters gain experience: For a 30% increase set to 1.3

#define ADD_SKILLPOINTS_PERLEVEL        2        // INT - The amount of new skill points added each level up for ALL characters (player and officers)
#define ADD_ABILITYPOINTS_PERLEVEL        1        // INT - The amount of new ability points added each level up for ALL characters (player and officers)

#define IMPORTANCE_BONUS_GAIN            25        // INT - The multiplier for the importance if a bonus is present for this skill
#define IMPORTANCE_SKILL_GAIN            30        // INT - The multiplier for each level the character has already in this skill
#define IMPORTANCE_BOOST                40        // INT - The multiplier for the importance set in officers.c

#define NPC_ONE_BONUS_CHANCE            60        // INT - The chance an NPC will have only 1 bonus skill
#define NPC_TWO_BONUS_CHANCE            30        // INT - The chance an NPC will have 2 bonus skills. If one and two aren't 100 together, there is a chance the NPC has no bonus skills.

And how can I change ship design icon in ship interface (because I want my corsair frigate to be actually pirate design, not some sort of portugal... meh
Keep searching until you find a pirate design version? It isn't just an icon, but also some variations on the stats.

But maybe:
Code:
aref chrship;
makearef(chrship, pchar.ship);
chrship.stats.nation = PIRATE;

And-d-d about skills past 10. Last time, I won't bother after this, but still: it's really no way to make second colunm of skills values display buffs and ignore 10 cap? Only in interface screen, not affecting gameplay or script codes in any way. Only visuals.
You could try increasing this number in PROGRAM\globals.c:
Code:
#define MAX_CHARACTER_SKILL        10    // Maximum number for each skill
But I haven't got a clue what is going to happen when you do that, so you might get weird side-effects.
 
Thanks a lot for the info and such fast answers х)

You could try increasing this number in PROGRAM\globals.c:
But isn't there separate files for just the interface (including characters screen)? Because I don't want to edit such funtamental feature. If that needed to change mere interface numbers than I give up on that. Kinda just roleplay thing than anything more.

Btw, sail speed/ship behavior from realistic mode could be applied to arcade in InternalSettings only by starting NG?
 
aref chrship; makearef(chrship, pchar.ship); chrship.stats.nation = PIRATE;
Worked like charm. I captured my ship from pirates and so it's quite strange to see portuguese design after so much repairs and full upgrade) I don't care about little difference in stats/bonuses, I'm perfectly fine with my current version. Visuals thing too, but so more satisfying with little icon change)
 
But isn't there separate files for just the interface (including characters screen)? Because I don't want to edit such funtamental feature. If that needed to change mere interface numbers than I give up on that. Kinda just roleplay thing than anything more.
You could try PROGRAM\INTERFACE\character.c and replace 'MAX_CHARACTER_SKILL' with a number higher than 10 only in that file.
But I'm not sure if that'll work as there could very well be safeguards in place elsewhere as well...

Btw, sail speed/ship behavior from realistic mode could be applied to arcade in InternalSettings only by starting NG?
You should be able to change it in mid-game, but:
1. You have to Reinit with F11
2. Any "old" ships will have the previous stats, so some weird effects could be expected. Replace your own ships with this console code:
Code:
    for (i = 0; i < COMPANION_MAX; i++) {
                limit = GetCompanionIndex(PChar, i);
                if (limit < 0) continue;
                ch = GetCharacter(limit);
                GiveShip2Character(ch,ch.ship.type,ch.ship.name,-1,ch.ship.stats.nation,true,true);
            }
(You can also replace 'ch.ship.stats.nation' with 'PIRATE' here so you'll get REAL pirate versions of your ships instead. ;) )
 
Oh my god, that is going to be really cool refreshing experience) Very greatful indeed, i thought it will take a lot longer to solve my issues.
Only the bug mith merchant quest still bothers me, other minor things like not dying officers (can always switch and execute someone through passengers screen if some weird stuff happen like I'll need to lower my reputation after feeling miserable because of Jamaica priest quest related actions disgraceful to any recpectable pirate).

Will try changing max_skill in interface file and see if it suddenly works)
 
But I haven't got a clue what is going to happen when you do that, so you might get weird side-effects.
Yep, that changes the exact max_skill. Didn't notice weird effects right after, but I'm not sure it won't be gamebreaking because 12-15 is too much if it still give bonuses when go above 10.
 
Replace your own ships with this console code:
Realised that didn't realize :shrug When shall I apply this? After all my ships are with captains or should I do this manually by assigning ships to my character (separate F12 for each?)
 
Realised that didn't realize :shrug When shall I apply this? After all my ships are with captains or should I do this manually by assigning ships to my character (separate F12 for each?)
It already loops over all ships in your fleet, so you only need to do it once.
 
Alright. And what about berthing ships?

Somehow now I'm stuck in interface screen (can't press anything except F1) after pressing passengers interface button. What could did that? Because I already reassigned half of my crew. Should I load or this bug is not a scary one?

Oh, it's not because of the savegame. Strange, I copied passengers file from archive with last build dataafter editing existing one. :bounce
or a direct extracting of the 7-Zip archive instead of letting the Installer EXE take care of it.
:facepalm

Also, how can I apply no reloading during fight setting? It seems it needs console command too
 
Last edited:
Noticed that one of my officers from secondary ships (not captain) seems to vanish and instead of him there is some blank "citizen" character. How that could have happened? :nerbz

Also, after swithing ships to those from realism mode ones cargo holds is lesser for each ship. It's like it should be, I assume?
 
Last edited:
1. At the beginning of the game I took escort quest from tavern merchant. Than raise Jolly Roger in the middle of our journey and boarded his ship. He was so shocked (I suppose) that didn't have surrender dialogue. So I coudn't talk to him and he just stands. But suddenly (!) I was transported to ship transfer interface screen. But that was only beggining... the suffering for my crimes. Now every time I try to talk to escort merchant in tavern (which appears after dialogue with tavernkeeper) I've got blank empty dialogue with him and unable to talk afterwards.
I won't do this again, I promise! Now I'm respectable pirate with fancy frigate and rather fight 2-3 tier ships =(

2. When executing captured captains through dialogue in cargo hold they dont die and still persent both in char interface and cargo hold after reloading location. Like nothing happens, only rep loss.
I finally had a chance to look into this. After managing to get the merchant ship to surrender, the captain did indeed not talk. Since I couldn't talk to him, I couldn't proceed to the looting screen. Maybe I didn't wait long enough - it could be that the dialog times out and takes you to the interface screen anyway. In any case, I have an idea about what may be causing this, but it will take time to check in detail and fix.

As for executing captured captains, I can't confirm that one. I did quite a bit of executing during one game a while ago to test some code I'd written. Prisoners which I'd executed did disappear.

(The code in question was to deal with the consequences of executing prisoners. The Brethren of the Coast don't mind if you execute prisoners, but civilised nations do. If you have a Letter of Marque from a nation, or are a naval officer, you're supposed to follow the rules of war, which means you're not allowed to execute prisoners. If you do, you'll get a warning and lose your next promotion. Keep doing it, and you lose your Letter of Marque or are kicked out of the navy.)
 
(The code in question was to deal with the consequences of executing prisoners. The Brethren of the Coast don't mind if you execute prisoners, but civilised nations do. If you have a Letter of Marque from a nation, or are a naval officer, you're supposed to follow the rules of war, which means you're not allowed to execute prisoners. If you do, you'll get a warning and lose your next promotion. Keep doing it, and you lose your Letter of Marque or are kicked out of the navy.)
Problem appeared even when I haven't got any Letter of Marque and was siding only with pirates. Officer dies, dissapears, but not from char. and passangers screen and reappears after reloading location.

I can only be patient then

In the end, except merchant and prisoners bugs, there is:
- bug with blacksmith on Pir. Settlment (fasttravel)
- missing officers. I read forums about the matter and it seems I lost that officer forever. So I'll replace him, but can I get rid of "citizen" and prevent this in future?
- not a bug. realistic reloading settings in battle (how to apply to arcade after changing in InternalSettings?)
- not a bug (i hope). cargo question
- odd bug with no cooldown on sea abilities, but I'm trying to remember timings still (But I saw few times something like Caribbean Drift from companions with the anchor ability (lmao)) х)
 
Last edited:
I'll try executing some more prisoners to see if any of them stay in my "Passengers" list, but unless I can get that to happen, I can't figure out what's causing it or how to stop it.

I've no idea what has happened to fast travel on Pirate Settlement. There are a few ways in which fast travel can be blocked entirely everywhere, or blocked entirely in one area, but I don't know what can block fast travel to a single place.

Which storyline are you playing? There have been bugs in some storylines in which a character assigned to a ship by the story may disappear or lose his ship information. I don't recall the officer himself being replaced, though.

Some changes in "InternalSettings.h" will take effect if you close down the game, run it again, and load up your savegame. Others need you to start a whole new game. If the reload setting doesn't work after you've stopped and started the game and then loaded the savegame, you may need to start over entirely.

I've also no idea why cargo capacity should change between "Arcade" and "Realistic" settings. Speed and turn rate are certainly different, but not cargo. However, if you've changed your ship from Portuguese design to Pirate design, that may reduce the capacity. Portuguese designed ships get a 20% bonus to their capacity. Pirate designed ships don't. If that is the reason then you should also have a slight increase in maximum speed because Pirate ships get a 10% speed bonus and Portuguese ships don't.
 
While I'm at it, I'm going to try to fix another bug which I've found in relation to escort quests. Twice I've been attacked by an enemy ship which is supposedly friendly to both me and the merchant. This is probably why:
Code:
           // PB: Possibility for Enemy at Destination -->
           if(rand(1) == 0) // Fixed 50% chance
           {
               GenerateQuestShip("Convoy Pirate", GetServedNation()); // PB: Use Generic Function
That makes the enemy ship hostile to your nation - your real nation, not the nation of whichever flag you happen to be flying when you accept the quest, and not the trader's nation either. So if you're a pirate or have no served nation, but you've made peace with at least one nation, you can take escort quests from that nation. Therefore:
Case 1: I'm friendly to Spain and England, and have no served nation ("Personal") . Portugal is neutral to Spain but hostile to me. I take a Spanish escort mission. We're attacked by a Portuguese ship.

Case 2: I'm a pirate but have a French LoM. I take a French escort quest. At the destination, we're attacked by a Spanish ship. Spain is allied to France.

Here's what I'm going to try:
Code:
           if(rand(1) == 0) // Fixed 50% chance
           {
               if(CheckAttribute(characterFromID("quest trader"), "nation") iTradeNation = sti(characters[GetCharacterIndex("quest trader")].nation);
               else iTradeNation = GetServedNation());
               GenerateQuestShip("Convoy Pirate", iTradeNation);   // GR: make the enemy hostile to the trader
"quest trader" should have a nation set - by default it's ENGLAND in the character's definition, and it changes when a quest is generated. But I've learned always to check attributes before using them, just in case. Paranoid programmer at work. xD
 
I've also no idea why cargo capacity should change between "Arcade" and "Realistic" settings. Speed and turn rate are certainly different, but not cargo. However, if you've changed your ship from Portuguese design to Pirate design, that may reduce the capacity. Portuguese designed ships get a 20% bonus to their capacity. Pirate designed ships don't. If that is the reason then you should also have a slight increase in maximum speed because Pirate ships get a 10% speed bonus and Portuguese ships don't.
Maybe because any upgrades dissapeared? But prior to that I've got 2900 on my Corsair Frigate and now only 2000 which is lesser than 6-th rate tier 5 frigate.

Before (pirate icon was edited through console prior to swithing ships so it's actually portuguese design cargo capacity)
9da309d83909.png

10d35ced2ed5.png


After
e1014712e633.png

5c2a51559d3f.png


Happened with all 4 ships. For example, english advanced warship was 3600 or close enough, but 3500 after tweaking ships with console.But all other ships cargo reduced significantly.
And what became with ships turnrate, wow.

Edit
Now I see that all values (cannons, crew) messed up
 
Last edited:
Yes, loss of upgrades would certainly affect your cargo capacity. The corsair refit increases your cargo capacity. Loss of upgrades will also reduce the ship's performance, but switching from "realistic" to "arcade" settings will change it as well, which may explain the increase in turn rate.

First attempted fix of the day: download this and put it in "PROGRAM\QUESTS". That will hopefully fix the problem with the merchant failing to talk to you when you try to get another escort mission. It won't fix the problem of the merchant captain failing to talk to you after he surrenders, so for the moment, you'll either need to board the ship before it surrenders, sink it and try to salvage floating cargo, or escort the ship to its destination.
 

Attachments

  • quests_common.c
    240.4 KB · Views: 96
Last edited:
But cannons caliber, crew amount was changed as well. And I don't understand what have gone wrong with that console command (InternalSettings settings?)
 
Back
Top