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

Included in Build Skill modifiers for characters

Levis

Find(Rum) = false;
Staff member
Administrator
Creative Support
Programmer
Storm Modder
I've now made a attribute for the skills called charmod.
Here you can add a bonus or penalty which will be applied on the characters personal skill level. So if you want a character to have a skill of 0 you can apply the charmod of -10 and it will never show a skill level above 0.
If the character is set up with skill 0 in the init it will get this penalty already.
I'm now going to apply this also in cases where levels have to be substracted. For example if a captain surenders he will also get this, but then only -1.
 
Just in case you hadn't seen, I intend to make a new Installer EXE by Sunday evening which will of course include your latest work on Hornblower.
If you have anything extra that you'd like me to add, you'd be very welcome to post it before that time. :doff

On this occasion, visiting any other place is going to be a good trick, unless you do it by console command in which case it's your own fault. xD There's only one way out of Bridgetown prison and when you use it, you're standing in front of the prison. That's when Wolfe is supposed to teleport to "officers/reload27_2", which is also just outside the prison.
I didn't use console to get out of the prison! :shock

So does Lt. Uriah Quelp at case "a_new_dawn_a_new_ship" - he becomes a companion officer and a companion ship at about the same time. I suspect that there's nothing preventing a companion captain from being put on land as well, other than the quest writer being careful not to have the same character in two places at once. It's not even logically inconsistent - you're both captain of a ship and walking around on land, why can't your officers do likewise?
I think it is perfectly fine. Except when that character is killed while ashore, the ship probably disappears with him.
So if you DO intend to allow that, I might suggest making such characters immortal until they have outlived their quest purpose.

It won't matter if Matthews, Styles etc. are all under the protection of 'SetCharacterRemovable'. Besides, at the moment Matthews, for example, has Sailing 6, which is fair enough as he is a sailor. So making him Navigator and getting the benefit of that skill should be alright. He just shouldn't be able to command anything, which he won't if he's not removable and can't be put onto another ship. As for Leadership, Matthew has - OK, that's getting changed right now, nobody should have Leadership 13!
13??? :shock

I did wonder why those sailors are even assigned as officers at all.
Could they not be "LAi_ActorFollowEverywhere" instead? So they're with you, but you can't assign them to anything?
That is done with Pintel for Jack Sparrow too, if I recall.

I'm fairly sure I was able to assign Pellew to different roles when I was fighting Temeraire.
Well, if you sort out the needed SetRemovable lines, I'll get rid of that limitation in the Passengers menu altogether.
Then you most definitely WILL be able to reassign Pellew too. Which is fine by me. :shrug
 
I've now made a attribute for the skills called charmod.
Here you can add a bonus or penalty which will be applied on the characters personal skill level. So if you want a character to have a skill of 0 you can apply the charmod of -10 and it will never show a skill level above 0.
If the character is set up with skill 0 in the init it will get this penalty already.
I'm now going to apply this also in cases where levels have to be substracted. For example if a captain surenders he will also get this, but then only -1.
If I understand that correctly:
- Enemy captain surrenders, get -1 leadership charmod
- You hire him
- That captain can now NEVER EVER get up to 10 Leadership, because he always maintains that -1

While if it is done directly on his skill itself, then he CAN still get back to 10.

Am I misunderstanding something? Or is that truly what we would want? :confused:
 
If I understand that correctly:
- Enemy captain surrenders, get -1 leadership charmod
- You hire him
- That captain can now NEVER EVER get up to 10 Leadership, because he always maintains that -1

While if it is done directly on his skill itself, then he CAN still get back to 10.

Am I misunderstanding something? Or is that truly what we would want? :confused:
you could give him an item to reach the 10.
I will also make a decrease (skill)level function where things will be checked and set right so this can be used when needed.
But I think it's nice. I intend to giving the charmods and ID or something like that. so it is possible to distinguise between one which is set because of quest purposes and one which is set because of surrendering (for example).
If you hire the captain you could for example set a questcase which removed this penalty again after X amount of time.
Or we could just use the lowerskilllevel function there. but personally I'm not fond on using that because effectivly he should have the XP...
I haven't done anything with the surrendering yet. I'm still also tinking about how to make it best.
 
you could give him an item to reach the 10.
Exactly my point. Once you surrender, you can NEVER fully recover from the shame.
Not entirely sure that sounds right....

I intend to giving the charmods and ID or something like that. so it is possible to distinguise between one which is set because of quest purposes and one which is set because of surrendering (for example).
If you hire the captain you could for example set a questcase which removed this penalty again after X amount of time.
Sounds interesting. But I've got to wonder how complicated we want to have it in the end.
I've got to admit I am quite fond of simple solutions whenever possible.... :oops:

In this case my suggestion of using the "sailing/leadership=0" trick is just making use of game functionality I know was already in place.
Therefore I figured it shouldn't be so hard. But then I thought the same thing about "Fake Level Up" and look how that turned out! :shock
 
The 0 is inplace already now and working (in my version). I'm now thinking how else i can use this :).

Just took a look at the code and what i can do is just check against the modified skill so you could still go to 10. And then it would show gold, but till then it's red cause you where modified. It would also mean effectively you need to go to level 11 which means you need more xp to get there.
That sounds better right?
 
What is wrong with surrendered captains as they are now? Is there a point to making them useless unless you find some item or other?

because of what we found out here:
Confirmed Bug - Levelling: Skills of Zero Trigger Errors | PiratesAhoy!

When a captain surenders his skill level for 2 skills is reduced. I'm now debating if that should have a bit more effect, mostly because lowering the skill without showing anything would be weird because the character wouldn't be following the leveling rules anymore.
 
The 0 is inplace already now and working (in my version). I'm now thinking how else i can use this :).

Just took a look at the code and what i can do is just check against the modified skill so you could still go to 10. And then it would show gold, but till then it's red cause you where modified. It would also mean effectively you need to go to level 11 which means you need more xp to get there.
That sounds better right?
Does indeed sound better.

But before you spend too much time on this, maybe it is worth taking a step back?
The reason I was thinking of deliberately setting skills to 0 is because it could provide a simple one-line solution for quest purposes.
However, there ARE other solutions available, such as SetRemovable to false and also using LAi_ActorFollowEverywhere .

And while the "surrendering reduces your skills" thing is a nice idea, I don't think it is truly necessary to the game.

The Levelling system is getting really quite complex as it is and the initialization is quite heavy on the game as well.
So what if we simply remove all instances where character skills are reduced?
And don't use skills of 0, but some of those other solutions instead?

That would require some more work on the quest writing side.
But at least it wouldn't require tweaking a very general game system to suit very specific quest needs.

I'm afraid otherwise the system will become so complex that we only end up introducing new errors and don't truly manage to get it fully ironed out.
And so heavy that game performance suffers too. Does that sound like an idea? Or am I wrong here? I honestly do not know.... :confused:
 
The skill 0 doesn't add any load really. it's 1 ifcase.
Same with that I sugest would only add 1 if case.

When I look trough the character init I see quite a lot of character with skills set at 0. And it used to be a functionality. Like I said this is already working now. I'm just thinking about if and how I could make this better.
I also have a catch in place alread if a skill is reduced. the interface wont do anything weird anymore and it should fix it if it shows more then 100%. The only problem which could occur is when a character with a skill level of 1 will have a reduction (what happened for you).

I would love to just remove all case where skills are reduced, but I haven't come up yet with a search where I can easily find them... So unless you know all cases where skills are reduced.

Also I'm thinking ahead, I would still like to use prisons more. And prisons should have some kind of penalty if you end up in them. So I was thinking about useing the same approach as in the elder scrolls games where being in prison lowers some of your skills.
 
When I look trough the character init I see quite a lot of character with skills set at 0.
I think those are left-overs from the stock game. We don't need to keep it like that, I reckon...

I would love to just remove all case where skills are reduced, but I haven't come up yet with a search where I can easily find them... So unless you know all cases where skills are reduced.
I thought perhaps your Ayacuhasa/Opium functions may do it, but you obviously would have known if that were the case! :rofl

Other than that, I can't really think of any. Didn't even remember that "surrendering" one. It could very well have been the only such situation.
And if not, we could still assume that it is and wait for game testing to tell us otherwise. ;)

Also I'm thinking ahead, I would still like to use prisons more. And prisons should have some kind of penalty if you end up in them. So I was thinking about useing the same approach as in the elder scrolls games where being in prison lowers some of your skills.
If that makes your system more complicated, the effects of being imprisoned can also be shown through reduced reputation, relations and fame.
That may be enough and then you don't need to add it into the Levelling system.
 
Hmmm.....
I do think this should be in, just beacuse I dont need it now it might be usefull later.
Let me try something for the next installer. If people don't like it or if it impacts wrong I can remove it again. It's not that much of a change anyways.
 
It is up to you in the end. But don't forget that anyone can make things complicated.
But only true masters of their craft can make complicated things simple. ;)
 
Okay what I have now:

If you call this function the skill will either be increased or decreased how you want (just like a fakelevel for the rank). If you put in a negative value it will show the skill value red in the character interface. Once you level up the amount of levels which was set as offset the color will go back to normal.
If you increase the level, the level will stay green untill you reach the max level. Then the bonus will be removed and your skill will be set on 10 in the character again.
 
It is up to you in the end. But don't forget that anyone can make things complicated.
But only true masters of their craft can make complicated things simple. ;)
You know that saying mostly origins from interfacing with something right ;)?
Using this system will be very easy :p you only have 2 functions which you can use.
A set function and a ResetFunction. My system will take care of the rest :).
 
Back
Top