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

Solved Updating the Interface Textures

Could you please explain what you mean?
The upper name bar is green, the lower dialog bar is blue-grey.
And if your variant "wins" I'll make changes to my own game as well. :)
 
The upper name bar is green, the lower dialog bar is blue-grey.
And if your variant "wins" I'll make changes to my own game as well. :)
Ah. Yes, as mentioned, it is closer to the stock texture: green for the face picture and name backgrounds, blue for the dialog text background. :)
stockdialoginterface.png borderlessdialoginterface.png
I derived the blue from the average RGB values in the stock texture, but it appears more faded in my version because of the transparency. Noteworthy to see that the stock texture also has seams.

For you and others who might prefer it, here is the blue from the 2013 version but with the improvements for the borders.
Attachment removed. See later posts.

The middle one stands out from the other two somehow..
In my opinion the blue is too intense and draws attention away from the rest. Rather than just being an interface to present the dialogs attention is drawn to the color of the interface itself. Of course the interface should look good but shouldn't itself draw the main attention. Everyone should be able to use what they prefer, so options can be provided.
 
Last edited:
The middle one stands out from the other two somehow..
I don't agree but let's end this discussion.
I have already made a folder for my texture preferencies so keep it as you like @Baste. No problem.
 
All right. I'm leaving the file with the improved borders in the post above if anyone wants it.

I found how to change the position of the things that were still on borders! Now everything fits inside the borders in the interfaces that I edited. Also more things have been centered and adjusted.

As before:
Based on November update.
C in PROGRAM\INTERFACE.
Blue in RESOURCE\INI\INTERFACES.
Brown in RESOURCE\INI\NEW_INTERFACES.
Brown TradeBook.ini in RESOURCE\INI\NEW_INTERFACES\animation.
Attachment removed. See later posts.
 
Last edited:
I could add my fixes to that as well for those who prefer it, but I guess we have to decide which one is going to be enabled by default. I think the 2013 version is a too intense blue, so I made the new closer to stock version.
The blue interface is supposed to be the old interface while brown is supposed to be the new interface. By that logic, I'd agree with @Baste's new "old" interface. For comparison, here's what dialog looks like in the stock game - the colours are near enough the same as @Baste's though they're not semi-transparent, so they don't look quite the same in game.
stock_dialog.jpg

It might be possible to add a new system variable so that, if you choose "new" interface, you also have the choice of brown or bright blue. If there's enough demand for it, I'll have a go at implementing this. Otherwise there's no point risking breaking the system as it is now. (Choice of "old" or new" is controlled by boolean system variable "bNewInterface" and it would probably be a lot harder to change to a three-way choice than to have the existing two-way choice of old/new, plus a choice of new brown or new blue.)

As for which is enabled by default, the current default is new/brown, which is what I've been using since I first started playing NH ages ago, so I'd prefer to keep it that way.
 
Well I have always used the blue interface and like the more blue variant. Maybe it's just me using the blue interface?
 
Some other people certainly use the blue interface - sometimes I get other players' savegames while investigating reported problems, and some of those are set to use the blue interface. Whether they like the bright blue or would prefer the original game scheme, I have no idea - the last time I saw a savegame which had chosen blue was some time ago and the question had not arisen.

Perhaps we could set up a poll to see which colour scheme people prefer? If there's a roughly even split between bright blue and dull blue/green, I'll see if I can put bright blue back as a choice for "new" interface.
 
Dialog interface colours are swtiched using new HEX-edited DLL files.
Personally I'd be inclined to recommend against doing to much coding work around those.
Just to be on the safe side.

My vote would be on the muted interface colours.
After all, the interface has only a supporting role.
It isn't supposed to draw too much undue attention to itself.
 
As for which is enabled by default, the current default is new/brown, which is what I've been using since I first started playing NH ages ago, so I'd prefer to keep it that way.
Just a note on this: What I mean is which dialog interface texture file is enabled when players select the blue interface, without having to replace files.
 
Dialog interface colours are swtiched using new HEX-edited DLL files.
Personally I'd be inclined to recommend against doing to much coding work around those.
Just to be on the safe side.
I'd found the DLL files and managed to hex-edit a new one. The only differences are a few places where "dialog" has been replaced by "dialg2", so I hex-edited them to "dialg1" instead. A Windows search for "bNewInterface" showed where I needed to change code - "RESOURCE\INI\dialog.ini" and "PROGRAM\dialog.c", as well as adding a new variable to "globals.c" for no reason other than that's where "bNewInterface" is defined.

It works! The only snag now is how to let users choose the dialog colour. The interface part of "Options" has a choice between "brown" and "blue" interfaces and adding a third option there is impossible due to the layout. It might be possible to add another option for the dialog interface somewhere else in "Options" - in fact, since "bNewInterface" is set by the interface section of "Options", it may be possible to show the choice of dialog interface colour only if old/"Blue" interface is chosen. Or I can just move the new variable into "InternalSettings.h" and anyone who wants bright blue instead of brown for the dialog interface can edit that. And on that note:
If there's a roughly even split between bright blue and dull blue/green, I'll see if I can put bright blue back as a choice for "new" interface.
It would probably make more sense to put the bright blue back as a choice for the "old" interface in which everything else is blue, rather than the "new" interface in which everything else is brown.
 
I can just move the new variable into "InternalSettings.h" and anyone who wants bright blue instead of brown for the dialog interface can edit that.
That does sound simpler.

I'd found the DLL files and managed to hex-edit a new one. The only differences are a few places where "dialog" has been replaced by "dialg2", so I hex-edited them to "dialg1" instead. A Windows search for "bNewInterface" showed where I needed to change code - "RESOURCE\INI\dialog.ini" and "PROGRAM\dialog.c", as well as adding a new variable to "globals.c" for no reason other than that's where "bNewInterface" is defined.
Yep, that's how it works.
Your coding keep improving, as far as I can tell.
Congrats! :cheers
 
It would probably make more sense to put the bright blue back as a choice for the "old" interface in which everything else is blue, rather than the "new" interface in which everything else is brown.
If that includes the dialog interface as well I'm happy.:)
 
As an example of the revised backgrounds, here are the cargo holds - blue original, blue new, brown original, brown new:
cargo_hold_blue_orig.jpg cargo_hold_blue_new.jpg
cargo_hold_brown_orig.jpg cargo_hold_brown_new.jpg
I'm not sure I prefer the new layout, especially since the ship's name is no longer centred properly in its frame. And there's a serious problem with the revised blue ship berthing:
shipberthing_blue_orig.jpg shipberthing_blue_new.jpg
The new one is missing the icons for the berthed ships.

But the tradebook is certainly improved:
tradebook_blue_orig.jpg tradebook_blue_new.jpg
tradebook_brown_orig.jpg tradebook_brown_new.jpg
The dividing lines are removed in the revised blue version, making it consistent with the brown version. And the word "contraband" is properly centred in both.
 
If that includes the dialog interface as well I'm happy.:)
That's all it includes. ;) The other interface screens use the same shade of blue as before, with some items moved around a bit.

Try this. In "InternalSettings.h", look for new variable DIALOGCOLOUR and change it to 1 to switch the dialog interface background. (Make sure to back up "PROGRAM\dialog.c" before you copy this lot into place, in case I've messed up and forgotten to include something.)
 

Attachments

  • dialog interfaces.zip
    165.9 KB · Views: 65
FYI, in the new engine the dialog texture can be configured as a simple attribute on the dialog entity. So in the future you can dynamically change these as much as you want.
 
FYI, in the new engine the dialog texture can be configured as a simple attribute on the dialog entity. So in the future you can dynamically change these as much as you want.
Does that mean new dialog textures won't need new DLL modules?

There would still need to be a system variable which "dialog.c" or its equivalent can check. The average player won't know anything about attributes or dialog entities. A variable defined somewhere like "InternalSettings.h", or for preference set in the "Options" menu, would help players choose from whatever dialog textures are available.
 
Does that mean new dialog textures won't need new DLL modules?
Yes. DLL modules also no longer exist.

I've currently updated the code to just check bNewInterface and assign the correct texture. I'll update it according to your new changes when I do the next merge.
 
The new one is missing the icons for the berthed ships.
Aii... I assume that's a simple mistake and @Baste could fix that relatively easily no..?

Yes. DLL modules also no longer exist.
Do all the DLL-added features still work then? I'm thinking:
- Different Flags (and pennants)
- Date and time display centre top on the screen
- Roll angle from my Capsize Mod in Storms
- Steam Frigate engine setting
(I may be forgetting some; but these are the main ones I recall...)
 
Going a bit off-topic here but:
Do all the DLL-added features still work then? I'm thinking:
- Different Flags (and pennants)
(I may be forgetting some; but these are the main ones I recall...)
You wound me not knowing about my flag rework, but yes those should be working (better) now: Flag rework

- Date and time display centre top on the screen
Should be working.

- Roll angle from my Capsize Mod in Storms
- Steam Frigate engine setting
Have not actually tested these yet. If they are not working I will make sure to fix them.
 
Back
Top