• 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 Ingame Explanation of Nation Relations

Pieter Boelen

Navigation Officer
Administrator
Storm Modder
Hearts of Oak Donator
We're about to get started on making quite some large changes to everything dealing to player actions and nation relations.
Full overview of our current intentions can be found here: http://www.piratesahoy.net/threads/change-in-nation-relations-from-player-actions.25514/

Players will of course need to know about these changes when playing as well.
So how are we going to handle this in such a way that people won't get needlessly confused?

Here are some thoughts of mine:

The governor.c dialog file contains a case "international relations".
At the moment that makes him tell you all nations they are hostile with. This should be expanded to also mention the nations they are allied with.
I wonder if this dialog option should be available to ALL players or only to those who have a LoM from that nation or are in their navy?

"Served Nation" is used to define where your alliances lie.
At the moment this affects mainly which nations' relation changes you will follow in Free Play.
But soon this will also affect what flag you'll hoist when you are recognized for flying false colours.
In other words, this will be quite important but at the moment it isn't communicated to the player.
Does anyone have any thoughts on where we can fit this into the interfaces?
Ideally the F2>Characters or F2>Nation Relations one would be the most appropriate, I reckon.

Your nation relation text turns GREEN when you can be promoted.
I want to change this so it only does that if you can ACCEPT that promotion because you actually have a LoM.
So if for whatever reason, you DO have a number higher than 0 for any nation, it should still not turn green if you don't have a LoM there.

--------------------------

And then some queries on the coding side:

There is an ENABLE_FLAGS toggle that is used in many parts of the code and controls whether you can make use of false flags or not.
This is, of course, always true as I do not know why anyone would want the feature to not be there.
And if we truly DO want to prevent it, we should be able to just disable the button and leave the nation relation systems as-is.
This has also created pretty much TWO systems for nation relations that probably isn't making things any simpler either.
I'm not even sure if ALL code always takes this toggle into account where necessary.
In other words: The game might not even work normally anymore if this is set to false.

On the other hand, we DO have a wide range of different players who enjoy our game.
Now that we'll potentially be making the nation relations more complicated than they ever were before, do we need to maintain some sort of "simple mode".
If so, what kind of simplifications would be in order? And should that be linked to Arcade Game Mode or get its own toggle?
@Jason, do you happen to have any ideas?

It appears that a lot of the nation relation code is linked to specific governor characters.
However, I have no clue why that is the case and it sounds to me like that is quite a needless complication as we care about nations as a whole, don't we?
So I propose getting rid of everything related to this to prevent any confusion arising from it.

Actually, looking at nations.c, I see a LOT of apparently convoluted code and perhaps we ought to REALLY redo it all pretty much from scratch.
Perhaps we should leave that amount of cleaning up for Build 15 though as I do fear there is a risk of breaking things there.
On the other hand, we can probably simplify things quite substantially too. :facepalm


@Levis: If you're wondering, I'm making separate threads for different parts of this functionality as this is quite a complex one and I'd like to keep a bit of an overview. :wp
 
The governor.c dialog file contains a case "international relations".
At the moment that makes him tell you all nations they are hostile with. This should be expanded to also mention the nations they are allied with.
I wonder if this dialog option should be available to ALL players or only to those who have a LoM from that nation or are in their navy?
Why not make it available to all characters? Apart from simplifying the dialog a little because you don't need to check for a LoM, why shouldn't anyone else know about alliances as well? It might at some future time be relevant to merchants and smugglers.

"Served Nation" is used to define where your alliances lie.
At the moment this affects mainly which nations' relation changes you will follow in Free Play.
But soon this will also affect what flag you'll hoist when you are recognized for flying false colours.
That had better not happen until the recognition works properly. At the moment it is inevitable - even entering a hostile port right at the start of the game, when I'm about as famous as a small piece of wood, any merchant ship which happens to be in the area recognises me within a few seconds, and sometimes I get the message that I've been recognised even if there's nothing in sight. (When I played "Bartolomeu" before I'd altered starting relations to put Portugal at peace with France, it was easier to sail straight into St. Pierre than try to sneak onto the beach. There was always a naval patrol near the beach, whereas there were only a couple of random merchants in port, and the little ship with which you start the game had an easier job of taking out the merchants than the naval patrol. A false flag didn't work on the ships, of course, but it did mean that I didn't need to worry about the fort.)

Be careful with this. Some storylines require you to enter a hostile port with a false flag. If you've delayed progressing the storyline and now have some level of fame when you have to enter port, this could break the story.

Your nation relation text turns GREEN when you can be promoted.
I want to change this so it only does that if you can ACCEPT that promotion because you actually have a LoM.
So if for whatever reason, you DO have a number higher than 0 for any nation, it should still not turn green if you don't have a LoM there.
Why? I always regarded that as a sign that this would perhaps be a good time to look for a LoM from that nation.

There is an ENABLE_FLAGS toggle that is used in many parts of the code and controls whether you can make use of false flags or not.
This is, of course, always true as I do not know why anyone would want the feature to not be there.
And if we truly DO want to prevent it, we should be able to just disable the button and leave the nation relation systems as-is.
Does that mean preventing the player from changing flag? Remember that the "Standard" storyline forcibly changes your flag a few times and, even if not as a deception to enter a hostile port, players might want to change the flag back before the story does it for them.
 
Why not make it available to all characters? Apart from simplifying the dialog a little because you don't need to check for a LoM, why shouldn't anyone else know about alliances as well? It might at some future time be relevant to merchants and smugglers.
I was wondering about that as well. The information IS available from the F2>Nations Relations menu for EVERYONE, of course.
So I figured that the dialog option being available only to Privateers/Navy Officers might indicate that it actually has meaning for those.
At the start of the game, the option won't be there, but once you buy a LoM, it will appear so players might notice something is different and then actually ask about it to get the explanation.

That had better not happen until the recognition works properly.
You don't need to worry about that one. I am aware of the issue with that and won't implement this until AFTER that functionality actually does what I want it to do (as opposed to whatever crazy stuff it thinks its doing now o_O ).

Be careful with this. Some storylines require you to enter a hostile port with a false flag. If you've delayed progressing the storyline and now have some level of fame when you have to enter port, this could break the story.
There is already a variable in place that can be used to FORCE your false flag to always be believed.
This should be enabled just prior to such quest scenes and set back to normal afterwards.

Why? I always regarded that as a sign that this would perhaps be a good time to look for a LoM from that nation.
A nation relation higher than 0 already indicates that; the green text then doesn't tell you anything new.
Additionally, right now the green text is misleading if you don't already have a LoM from a nation sa it suggests you can be instantly promoted, while that isn't true.
Once the changes I am proposing have been implemented, you pretty much shouldn't be able to get nation relations greater than 0 unless you have a LoM anyway; that is one of the main advantages to having a LoM.
If, for whatever reason, you do manage that, then the hint to get a LoM is by the number being greater than zero.

Does that mean preventing the player from changing flag? Remember that the "Standard" storyline forcibly changes your flag a few times and, even if not as a deception to enter a hostile port, players might want to change the flag back before the story does it for them.
How did it work in the original game? You couldn't change flags there at all and the Standard Storyline still worked.
Did it do some automatic nation changes from ENGLAND to PIRATE and back perhaps?

As far as I'm concerned, I'd be quite happy with getting rid of that toggle altogether and having all nation relation stuff always work the same, regardless of realism mode.
Things will be simpler in the Standard Storyline anyway because Changing Relations isn't ON.

Anyway, this query is mainly directed to players for whom this is just all too complicated.
But as I figure it, if you don't want to use a false flag, then don't use it. And if you don't get two LoMs, everything remains fairly straightforward.
Then only fly the flag of your served nation (or perhaps your personal flag) and I don't see what we need any extra toggles/simplifications for.
 
@Levis: Do you have any thoughts on especially the coding queries I posted above? I'd like to hear your feedback before I start overhauling everything I lay my eyes on.
Especially for things like this, I reckon it is better to think things through properly before getting started.
But I do want to start trying this soon; maybe even this evening.
 
How did it work in the original game? You couldn't change flags there at all and the Standard Storyline still worked.
Did it do some automatic nation changes from ENGLAND to PIRATE and back perhaps?
I'm not sure now - it's been so long since I played the stock game! But I don't think the stock game took any notice of your flag. Relations with England and France were dictated by the story. As I recall, you started off friendly to everyone except France, became neutral to France so you could sail to Falaise de Fleur to meet the Oiseau, and possibly became hostile to France again after that. You started off with an English flag and switched to French, either while escorting the Oiseau or when escaping from Oxbay with the French corvette. After that you kept the French flag, but England was friendly and France was hostile. Other nations remained friendly, presumably unless you attacked their ships, so you could sail safely into Douwesen, Isla Muelle and Conceicao. When you stole the statuette from Greenford, England became hostile and you got a Pirate flag, which still didn't make Spain, Holland or Portugal hostile. Pirates were always hostile, even when you had become one.
 
Getting rid of the toggle sounds good to me. Removing all code which shouldn't be used.
I mean you can always choose not to use the false flag option if you don't want too. I don't thik we are making it that complex ... I would even go as far as to say to have the interface showing you can promote only in say arcade mode, and show you the numbers. For more difficult modes I wouldn't even show it, or only update it after talking to the gouvernor etc.

I like the idea of the governor explaining stuff but mind it doesn't become an information dump, so when possible it's always best to serve information in pieces.
So for example we could make a little "quests" where if you are able to promote for the first time you get a notification or someone tells you too.
For example with the script I wrote already for the opium chasing I could modify it a bit so it's easier to use and we could have a guard come to you if you are in an location for this nation. He will inform you, you should visit the governor. If this only happens the first time it will learn people you should check reguarly but it wouldn't become annoying.
 
For now I'll try to stick as closely as possible to the functionality already there.
That is done and players are familiar with it. So the green numbers can remain, I reckon.
If they don't turn green, then the Wiki will now tell you anyway so not making it green wouldn't serve much of a purpose.

Unless you want to make everything on the F2>Nation Relations interface update only when talking to the governor/asking for tavern news.
That is certainly something we could consider for Build 15. But for now, that would probably complicate things.
 
"Served Nation" is used to define where your alliances lie.
At the moment this affects mainly which nations' relation changes you will follow in Free Play.
But soon this will also affect what flag you'll hoist when you are recognized for flying false colours.
In other words, this will be quite important but at the moment it isn't communicated to the player.
Does anyone have any thoughts on where we can fit this into the interfaces?
Ideally the F2>Characters or F2>Nation Relations one would be the most appropriate, I reckon.
Here is the Character Interface:
upload_2015-7-24_18-27-46.png

The only open spot is marked in red. However, in some cases, this might display a "captain type" for the player as well.
This only happens if you use the "Level-Up Cheats" and can probably easily be disabled.
That might be one option where to mark this.

The Nations Relations screen is already pretty full as it is:
upload_2015-7-24_18-29-3.png

Coloured texts indicate promotions, so I don't see how we can combine that with another colour indicating your Served Nation.

However, there is one more spot that we can make use of:
upload_2015-7-24_18-30-59.png

Until now, the national crests in the Questbook Interface basically served only to make it look pretty, but had no function.
It was, however, extremely easy to change the colour of size of the texts already there.
So now I have all nations in a normal colour and only your served nation in yellow and enlarged.

At least it is better than it was because until now you couldn't see this ANYWHERE. Now you can. :cheeky
But now my question to you players: Would you consider this clear enough and can we consider that part done?
 
Would it be possible to put a ring around one of the shields in the "Relations" screen? Or a piece of coloured background? Or have a different icon in the column under your personal emblem - crossed weapons means hostile, scales means neutral, tankards means friendly, something else means served nation?
 
Would it be possible to put a ring around one of the shields in the "Relations" screen? Or a piece of coloured background? Or have a different icon in the column under your personal emblem - crossed weapons means hostile, scales means neutral, tankards means friendly, something else means served nation?
I take it you aren't impressed by my simple solution, then?

Something like your ideas might be possible, but unfortunately it would by far not be as easy.
I was thinking of having a "flashing area" around your served nation stuff though, similar to when you click on the Crew in F2>Ship.
But I don't know how hard that is to add. Maybe @Levis has any thoughts on how to easily do that. I myself am not overly familiar with interfaces.
 
Until now, the national crests in the Questbook Interface basically served only to make it look pretty, but had no function.
It was, however, extremely easy to change the colour of size of the texts already there.
So now I have all nations in a normal colour and only your served nation in yellow and enlarged.

At least it is better than it was because until now you couldn't see this ANYWHERE. Now you can. :cheeky
But now my question to you players: Would you consider this clear enough and can we consider that part done?
This simple way of showing your Served Nation is now included in here: http://www.piratesahoy.net/threads/build-14-beta-3-5-internal-wip-for-testing.24817/
If we want something more fancy, that will require some figuring out and right now I'm going to pass on that.... :wp
 
I need to see but I think it would be possible to have something round the shield yes. But this will probably have to wait till after 3.5. Altough I do see the nations seem to appear in a textbox. A textbox has a alternative texture for being activated, see for example the perks interface where this is used when you click on it. We might be able to use this feature, I just need to figure out what triggers it and then the textbox would light up instead of the shield.

But if we are talking about explaining it to people.
How hard would it be to make a quest of it.
If you check the quests for smuggling for example you can see I made a system already where you can have the same quest text for multiple quest entries.
So you could start a quest being for example:
"LoM&nation=england" which would use the text from LoM
In here you could use a text with preprocessor data to say you got a LoM from england and you could even tell what things would add to the nation points as extra explanation.
When you promote you could add a quest text too and when you leave service you could end the quest so you will know instantly when this happens.
This would allow use to explain more. We could even for example show hints on lower difficulty in there but not on higher difficulty.
 
All possible. But my first concern will be too get the functionality right.
I wonder how much we can assume players might be able to figure out on their own.
Based on past experience.... Probably less than I'd hope. :facepalm
 
The RandomNationsRelationsChange() function can do part of the explaining as well.
In fact, it already does contain some stuff on the effect of various random nation relations for the player.
I'm not convinced these notes are actually correct though, especially not with the rewritten system.
But it is there to be modified. :yes
 
Another query for you guys on the area marked in red:
upload_2015-7-28_23-43-57.png

At the moment there is some code in place to update those icons based on whether you've been recognized or not.
With the system I'm now setting up, I don't think there is any sensible way to maintain that so I propose to drop it and have it only show your personal relations.
So basically it would end up serving the same purpose as the column with numbers right next to it.

Problem with updating it if you've been recognized is because you may have been recognized by a specific group of ships, which has turned those hostile.
But other ships of the same nation may still be neutral to you as they haven't yet recognized you.
So there isn't any "England is now hostile to this fake Portuguese flag" because that would apply only to some English ships.

You'll also notice there that the "Neutral" flag is removed from the interface.
I have disabled it for the time being as that has always been an unfinished feature and we haven't even figured out what to do with it.
We could treat it as an "always fake" flag, though the best would be, of course, to use it to deliberately surrender yourself and your fleet.
But while interesting, that would be a whole different feature to be added at a later date, I think.

It is should also be quite simple to disable that Personal flag button. Is that worth doing?
For now, I'm thinking of skipping on that and leaving it up to the player, but once we've got a reliable system, we can think about putting a requirement in place.
One thing we COULD already do is to disable it unless your Served Nation is Personal, e.g. you started the game as Personal or have multiple LoMs.
That can now easily be done.
 
I think the choice to fly a personal flag should always be left as an option with the player otherwise you are pushing them down a road of how you think the game should be played where at the moment a personal flag may avoid some aspects (the "free" in free play).

However pressing on the personal flag icon opens the personal flag interface allowing choice of a different personal flag midgame - which not only doesn't make much sense (unless your a real pirate) it also confuses the hell out of the flag system such that you can find you have no personal flag showing on your ships. So I think that aspect of personal flags should be blocked ie you make your starting choice and stick with it- (actually reverting to your first choice seems the only reliable way of getting your non Nation flag back if you lose it on swapping).
 
I think the choice to fly a personal flag should always be left as an option with the player otherwise you are pushing them down a road of how you think the game should be played where at the moment a personal flag may avoid some aspects (the "free" in free play).
Indeed we also have Realism Modes and Difficulty Levels to consider.
Maybe "disabling the personal flag option if your served nation isn't personal" can be limited to Iron Man Game Mode,
with an InternalSettings.h toggle for those who want to have that limitation in other realism modes too.

Which reminds me.... Once I'm done, when you attack a ship that has recognized you while still flying your (friendly) false flag, you'll get a large reputation/relation hit.
Reason being that you fired on a ship while flying a flag friendly to them, which if I understand correctly, historically wasn't much appreciated.
You'd get this large hit even when the nation recognizes you was already hostile to you, which is different from previous game behaviour.
Should that also be something that is not enabled by default, but requires a toggle? Or have that linked to Difficulty?
And how much of a penalty should you get for doing that anyway?

However pressing on the personal flag icon opens the personal flag interface allowing choice of a different personal flag midgame - which not only doesn't make much sense (unless your a real pirate) it also confuses the hell out of the flag system such that you can find you have no personal flag showing on your ships. So I think that aspect of personal flags should be blocked ie you make your starting choice and stick with it- (actually reverting to your first choice seems the only reliable way of getting your non Nation flag back if you lose it on swapping).
The Jack Sparrow storyline actually swaps your personal flag for you a couple of time, from your "England-based" one to the EITC one, to a non-English style version once you have turned Pirate.
I'm pretty sure changing personal flags in mid-game does work, but you might need to reload the scene before it shows properly.
From what I understand, the game doesn't load ALL flag textures when you enter 3D sailing mode, only the ones it needs at the time.
So if you change personal flag to one on the same row (=same texture file), it'll work immediately; anything else requires a reload.
 
Though I never use Personal flag myself and wouldn't be upset if it was removed entirely, other players do. So I agree with @pedrwyth, the button should be left so players who want to use it can do so. Rather than limiting it so that you can only use it if your served nation is Personal, I'd have it the other way round; if you hoist the Personal flag then your served nation becomes Personal. That provides a quick and easy way for players who don't want to belong to a nation but don't want to be Pirates either.

Which reminds me.... Once I'm done, when you attack a ship that has recognized you while still flying your (friendly) false flag, you'll get a large reputation/relation hit.
Reason being that you fired on a ship while flying a flag friendly to them, which if I understand correctly, historically wasn't much appreciated.
You'd get this large hit even when the nation recognizes you was already hostile to you, which is different from previous game behaviour.
Should that also be something that is not enabled by default, but requires a toggle? Or have that linked to Difficulty?
And how much of a penalty should you get for doing that anyway?
That can only work if you're allowed to change flag during a battle. At the moment, once someone has started firing at you, your flag is locked.

Attacking while under a false flag was a major dishonour. (It probably still is.) What I'd like to see, though, is that if you don't change flag and don't fire back, it ought to affect anyone else's chance of recognising you. But if you do fire while flying a flag friendly to the other ship (and if the game allows you to change flag in battle) then you take a major reputation hit, possibly switch served nation to Pirate, and get an automatic mutiny if you're a naval officer or a privateer with a single LoM. You have committed a war crime and one of your officers is trying to arrest you. If you win, you certainly lose the LoM (and your professional navy status if you had it); if you lose, either die as usual, or teleport to a governor's house to be stripped of the LoM (and naval status).

The other way to look at it is that he's firing at you while flying a friendly flag, so he's the one committing the crime; you're defending yourself. That would be a valid excuse if it proves too difficult to allow flag change in battle so you can't really be penalised for firing back while still flying the false flag.
 
Though I never use Personal flag myself and wouldn't be upset if it was removed entirely, other players do. So I agree with @pedrwyth, the button should be left so players who want to use it can do so. Rather than limiting it so that you can only use it if your served nation is Personal, I'd have it the other way round; if you hoist the Personal flag then your served nation becomes Personal. That provides a quick and easy way for players who don't want to belong to a nation but don't want to be Pirates either.
You said that before, but I am inclined to not do that because there are already two other ways to accomplish the same thing (starting the game as personal OR getting multiple LoMs).
Otherwise it might also affect players who DON'T want that, so we'd probably beter avoid that.

That can only work if you're allowed to change flag during a battle. At the moment, once someone has started firing at you, your flag is locked.
At the moment, I already changed that in my game. That isn't exactly difficult to do.
What IS difficult is to have the game respond to that in a sensible way because I can't make it work it while this is still a problem: http://www.piratesahoy.net/threads/ship_fireaction-not-working.25565/

Attacking while under a false flag was a major dishonour. (It probably still is.) What I'd like to see, though, is that if you don't change flag and don't fire back, it ought to affect anyone else's chance of recognising you. But if you do fire while flying a flag friendly to the other ship (and if the game allows you to change flag in battle) then you take a major reputation hit, possibly switch served nation to Pirate, and get an automatic mutiny if you're a naval officer or a privateer with a single LoM. You have committed a war crime and one of your officers is trying to arrest you. If you win, you certainly lose the LoM (and your professional navy status if you had it); if you lose, either die as usual, or teleport to a governor's house to be stripped of the LoM (and naval status).
What I want to know is whether "Ship_FireAction" is executed for EACH cannonball that hits the enemy ship or for each fire action that you do.
That will affect how this would need to be easily set up. But since I'm not getting any useful response from that function, I cannot figure it out.

There is already a function that is meant to be used when you fire on friendly ships. There are also the "acts of piracy" from the rewritten "nation response from ship sink/capture".
I'd like to merge this with either of those two responses so we at least won't get a third separate function for a similar thing.
If at all possible, I'd like to have ALL of that handled by the same function, ideally to be based on the one I have already recently rewritten.

A reputation hit, served nation to Pirate and losing ALL your LoMs sounds about right to me.
I like your idea of any companion mutinying if you have a LoM/are a professional navy officer.

The other way to look at it is that he's firing at you while flying a friendly flag, so he's the one committing the crime; you're defending yourself. That would be a valid excuse if it proves too difficult to allow flag change in battle so you can't really be penalised for firing back while still flying the false flag.
Allowing flag change in battle = easy.
Getting a proper response from that would be easy if only that ruddy bloody function wasn't bugged.

(As you might be able to tell, I'm quite annoyed by me not being able to trigger the response from that function that I want, because it prevents me from giving you the system that you and I actually want. :boom: )

On another note: The question of a simplified system for lower difficulties/Arcade Game Mode still stands.
 
Back
Top