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

WIP Level of boarding enemies

I think we still need to work on the ratio of boarders etc. I haven't touched that yet. I've only changed the levels now to be depended of the shipclass again.
Based on our earlier discussion on the previous page, I proposed a different system:
Let me think if I can come up with a "final" approach here.... How about:

Boarder Level = Player Level scaled by Difficulty (Journeyman = 1.0)

Boarder Type = based on captain type:
- NAVY: "guard" with focus is 100% on fighting skills, so toughest possible enemies
- PIRATE: "abordage" with focus halfway on fighting skills, so medium enemies
- MERCHANT: "citizen" (or possibly a new "sailor" type?) with focus NOT at all on fighting skills, so easiest possible enemies

Boarder HP Bonus = value based on ratio between ship morales.
OPTIONAL: Include ratio of boarding skills.
There should be a min/max limit on how much this can be scaled so that enemies aren't too strong/weak.
This limit can be skipped for Swashbuckler.

Number of Boarders = based on ratio between crew sizes.
There should be a limit so this ratio is never more than 1:3. This limit can be skipped for Swashbuckler.

Boarder Weapons = based on captain type:
- NAVY: Get period-correct soldier weapons. Could make for excessive loot, but these are ALSO the toughest enemies, so having a larger reward is OK.
- PIRATE and MERCHANT: Get random weapons based on nation.

Does that sound about right?
@Levis, what of the above can you take take of and when might you be able to get something done for this?
I may be able to look into adding the remainder over the weekend. Perhaps....
That doesn't take into account "ship tier" at all. Should it? I figure that is included in the "crew counts".
Of course the 1:3 max ratio will be in favour of the player as long as you've got a VASTLY smaller ship.
 
Hmm might have remembered that post wrong.
Well I would like people to try this out and see.
Oh and the different boarder types are added so merchants will have very weak crew while navy will have very strong crew (Try attacking a fort :p it's quite hard I believe).

The bonus HP is still on my todolist.
 
The bonus HP is still on my todolist.
Depending on how it goes, I may be able to do some further work on this over the weekend.
I intend to move towards that system I described earlier. If you think I need to do it differently, better say so soon. ;)

For a HP bonus to take effect, does it need to be added before a character is fully initialized or can it be done later too?
Should be possible to do later, right? That is needed for the apothecary too, after all.
And that might make it relatively easy to add, once I find the right spot to add it and a good formula for it.
 
Depending on how it goes, I may be able to do some further work on this over the weekend.
I intend to move towards that system I described earlier. If you think I need to do it differently, better say so soon. ;)

For a HP bonus to take effect, does it need to be added before a character is fully initialized or can it be done later too?
Should be possible to do later, right? That is needed for the apothecary too, after all.
And that might make it relatively easy to add, once I find the right spot to add it and a good formula for it.

If you use ChangeHPBonus(ref chr, int offset) it doesn't matter where. I advise to do it before the init.
Search for the function GetCaptainRank
it occurs two times. This is where you need to make your changes
 
Also @Levis: What if we change this line for merchant captains to OFFIC_TYPE_SAILOR?
Code:
OfficerTypes.(type).crewtype = OFFIC_TYPE_CIVILIAN;

Which also means that those sailors do need some sort of importance for Fencing.
Just less than the other types of boarding crew.

How do "importance" and "noncontribchance" relate to each other?
 
Let me think if I can come up with a "final" approach here.... How about:

Boarder Level = Player Level scaled by Difficulty (Journeyman = 1.0)
I think the boarder level should be depended of the captain which is depended on off the ship tier. So higher tier ships have better crew. This means early in game you will probably attack smaller ships and the higher you get the larger ships you can get.

Boarder Type = based on captain type:
- NAVY: "guard" with focus is 100% on fighting skills, so toughest possible enemies
- PIRATE: "abordage" with focus halfway on fighting skills, so medium enemies
- MERCHANT: "citizen" (or possibly a new "sailor" type?) with focus NOT at all on fighting skills, so easiest possible enemies
This is done now.

Boarder HP Bonus = value based on ratio between ship morales.
Or just have a HP bonus based on the moral of the ship, So your crew also gets a HP bonus

OPTIONAL: Include ratio of boarding skills.
There should be a min/max limit on how much this can be scaled so that enemies aren't too strong/weak.
This limit can be skipped for Swashbuckler.
What?

Number of Boarders = based on ratio between crew sizes.
There should be a limit so this ratio is never more than 1:3. This limit can be skipped for Swashbuckler.
There is lots of stuff happening with this and I haven't had time to decypher it.

Boarder Weapons = based on captain type:
- NAVY: Get period-correct soldier weapons. Could make for excessive loot, but these are ALSO the toughest enemies, so having a larger reward is OK.
- PIRATE and MERCHANT: Get random weapons based on nation.
Have fun with this :).
 
Also @Levis: What if we change this line for merchant captains to OFFIC_TYPE_SAILOR?
Code:
OfficerTypes.(type).crewtype = OFFIC_TYPE_CIVILIAN;

Which also means that those sailors do need some sort of importance for Fencing.
Just less than the other types of boarding crew.

How do "importance" and "noncontribchance" relate to each other?
If you look in my new files there is an offic type sailor. Each captain has a crew type.

Importance relates to the skills. It just governs how the XP is diveded over the skills if no skill is given.
noncontribchance determines the chance the character has to pick a perk which he doesn't contribute.

Oh btw if you want to change the level of the boarders search for:
GetBoardingCrewRank
 
I think the boarder level should be depended of the captain which is depended on off the ship tier. So higher tier ships have better crew. This means early in game you will probably attack smaller ships and the higher you get the larger ships you can get.
But higher tier ships already have MORE crew. Isn't that enough of a bonus?

Or just have a HP bonus based on the moral of the ship, So your crew also gets a HP bonus
Except the player doesn't get affected by that. So if you have a huge morale, your own crew may get higher HP than you. :confused:

Imagine having a character with base HP of 100 but that is scaled all the way down to 10 or even negative numbers.
Don't want that. ;)

Have fun with this :).
Should not be so hard. Just call GiveSoldierWeapon on boarders of navy ships only.
I think everything else is already in place as it is the same ashore as well.
 
If you look in my new files there is an offic type sailor. Each captain has a crew type.
I saw that. But "sailor" isn't used as boarder type yet, so I thought we should make use of that.
But then they DO need an importance for fencing, which right now isn't there I think?

noncontribchance determines the chance the character has to pick a perk which he doesn't contribute.
So that affects PERKS only and not skills? Thanks. :doff
 
But higher tier ships already have MORE crew. Isn't that enough of a bonus?
They dont have that much more crew. its more decks. But you can heal in between so you just have to fight trough more battles but they aren't harder.
Unless you are forced to go to the next deck within X seconds after the last enemy falls the more decks is mostly an annoyance it doesn't make it that much harder.

Except the player doesn't get affected by that. So if you have a huge morale, your own crew may get higher HP than you. :confused:
but they are also a lot more stupid :p. And if you want to board multiple ships it's nice if your crew doesn't fall.

Imagine having a character with base HP of 100 but that is scaled all the way down to 10 or even negative numbers.
Don't want that. ;)
:)

Should not be so hard. Just call GiveSoldierWeapon on boarders of navy ships only.
I think everything else is already in place as it is the same ashore as well.
figured as much. I think it might even be set up already to work.
 
I saw that. But "sailor" isn't used as boarder type yet, so I thought we should make use of that.
But then they DO need an importance for fencing, which right now isn't there I think?

Indeed my mistake OFFIC_TYPE_CAPMERCHANT should have the sailor one.
And no it doesn't need importance for fencing. When none is give a default low value will be chosen. The sailors need to be the weakest of all boarding crew types so they should have the lowest fencing skills. You could give it 1 but even on a level 12 character or so they will have a substantional fencing skill already. if you leave it empty I think round level 12 they should be 2 or 3 in fencing. That's what your want.
 
They dont have that much more crew. its more decks. But you can heal in between so you just have to fight trough more battles but they aren't harder.
They DO get more crew if we use the ratios. So if you're technically outnumbered, you WILL be outnumbered.
So you get more fights from the boardings that are all harder because of the difference in crew numbers.
That difference may shift due to the losses sustained by both sides during the boarding though, of course.

Unless you are forced to go to the next deck within X seconds after the last enemy falls the more decks is mostly an annoyance it doesn't make it that much harder.
Even in mid-battle, you can use potions with the C-key. I think enemies can too, but they're probably never as well-supplied.
Oh well, I suppose there ARE some perks to being the main character in a game.

figured as much. I think it might even be set up already to work.
Would the navy boarders now be "soldier type"? With "issoldier = true" and everything?

Then this function may indeed already do it:
Code:
void SetUpCharacterWeapons(ref chr)
{
   if (CheckAttribute(chr,"itemtrade")) return; // PB: Merchants shouldn't equip their own stock
   if (isSoldier(chr) != UNKNOWN_NATION) GiveSoldierWeapon(chr, makeint(GetAttribute(chr, "nation")));   // PB: Re-Update Soldier Weapons
And that one is called in the PostInit, right? Which affects ALL characters and therefore includes enemy boarders?
 
Navy boarders are GUARD officer type.
I don't know for sure if it sets it up as isSoldier when that is the case. If not I can add that next week.

At the moment this function is called during init:
ExecuteCharacterEquip(chr);

But I believe the SetUpCharacterWeapons is also called in createcharater but I'm not 100% sure.

At the moment I believe only officers have the AI functions to use potions etc. It's still one of the open bugs :p.

And if the ratios are being worked out right then it should be harder yes.
 
I am going to work on this very soon so if people want to comment on it do it now!
 
I am going to work on this very soon so if people want to comment on it do it now!
I've already made my suggestions. As far as I'm concerned, those should be enough.
When those tweaks are made, we can see what else might need doing, no?
 
I believe with the most recent tweaks from @Tingyun and the consistent captain generation we can now call this one done.
If not people can start a new topic.
 
Based on our earlier discussion on the previous page, I proposed a different system:
Let me think if I can come up with a "final" approach here.... How about:

Boarder Level = Player Level scaled by Difficulty (Journeyman = 1.0)

Boarder Type = based on captain type:
- NAVY: "guard" with focus is 100% on fighting skills, so toughest possible enemies
- PIRATE: "abordage" with focus halfway on fighting skills, so medium enemies
- MERCHANT: "citizen" (or possibly a new "sailor" type?) with focus NOT at all on fighting skills, so easiest possible enemies

Boarder HP Bonus = value based on ratio between ship morales.
OPTIONAL: Include ratio of boarding skills.
There should be a min/max limit on how much this can be scaled so that enemies aren't too strong/weak.
This limit can be skipped for Swashbuckler.

Number of Boarders = based on ratio between crew sizes.
There should be a limit so this ratio is never more than 1:3. This limit can be skipped for Swashbuckler.

Boarder Weapons = based on captain type:
- NAVY: Get period-correct soldier weapons. Could make for excessive loot, but these are ALSO the toughest enemies, so having a larger reward is OK.
- PIRATE and MERCHANT: Get random weapons based on nation.

Does that sound about right?
@Levis, what of the above can you take take of and when might you be able to get something done for this?
I may be able to look into adding the remainder over the weekend. Perhaps....
That doesn't take into account "ship tier" at all. Should it? I figure that is included in the "crew counts".
Of course the 1:3 max ratio will be in favour of the player as long as you've got a VASTLY smaller ship.
@Levis: The post I quoted above is what we decided on last time. It appears that not all of that is currently the case.

We've had some different insights since then though, so player level should probably be removed from the equation somehow.
And we can skip the Boarder Weapons for the time being.
 
Back
Top