Update


Inadvertently distributed my personal start.ini copy that will point to a RESOURCE directory you don't have, so replaced with a generic one; this might require you to redefine your screen resolution.  Sorry for the trouble.

Fix random bug for sea cameras during save-load

Files

new-horizons-win-final.zip 10 GB
Version 14.4 Feb 24, 2019

Get New Horizons

Comments

Log in with itch.io to leave a comment.

I would appreciate if you could help me a bit with selpic and picnum in battleinterface and landinterface. It's still wrong for some ships, while it works for others. I don't know why this happens. I'm having a hard time understanding how it works. In original NH battleinterface and landinterface, there aren't such definitions, but I see that you added them because Maelstrom needs them I guess.

I have updated the mod to the latest official build from 5h July 2021. Still I'm missing some ship textures for certain ships. I have used the proper RESOURCE folder from NH website and combined with your 2016 build.

PROGRAM folder: https://mega.nz/file/5HRDhYBC#TSwWsZyEgeOauz2IbyM4Mnf9xO-vIyLZsTehcQfd7bA

RESOURCE folder: https://mega.nz/file/pL4iDQiR#s328mmKzWRl-ptmKhYNstk6TXzbJAsFDDiHBI0x4ce4

I worked a lot to fix NH as much as possible. Here is the updated Program folder (from July 2nd 2021, they updated the mod yesterday) and I have imported all the fixes. Also, I uploaded the RESOURCES folder.

Program:

https://mega.nz/file/dSggBIwC#yCsEu7AXD0E-LMbp0aCxP-8US74ZYfuGKt4luPVF7l0

RESOURCES:

https://mega.nz/file/pL4iDQiR#s328mmKzWRl-ptmKhYNstk6TXzbJAsFDDiHBI0x4ce4

Ok, so I managed to update the New Horizons build 14 to the one from 21st May 2018. The game loads fine, but when I want to start a new game, I choose storyline character and the game starts loading and crashes to desktop with no error message.

I have uploaded the dump file together with the ported PROGRAM folder with files from 2018.

https://mega.nz/file/JTwWiRzb#ffUBT-JDRYfkolw4aHGRQWdm-zpfSkPSgjYL0DvTFD4

https://mega.nz/file/ZShwkRrZ#5vUW0PUp9bzDraVw2tWBmHT4zOkgyJif_-iNoMJlGjM

Are you sure that's the ported Program zip?  It has a 2018 date and when I try to run, it doesn't load at all because it still uses the #libriary include statements, instead of the properly spelled #library, because I corrected the spelling in Maelstrom.  I think you linked the unported New Horizons.

Also notice that InternalSettings.h contains:

int iScriptVersion = 54128;

Maelstrom cannot load with that number, it must be 8675309, so if yours is loading, the menu screen OK, the .7z file you linked cannot be the correct one because its contents won't load in Maelstrom at all.

Let me check again, because I have a bunch of PROGRAM folders, maybe I uploaded the wrong one. 

Check out this one.

https://mega.nz/file/gTBBFYCZ#r_spCsxVZWrF-SlKn_1E5F7RCe9XTXipuFGIvxJdbEU

 It should boot up now. The reason it says 2018 is because all the newer updates in New Horizons are put up by a few modders on PA! From my personal experience, their tweaks actually brake the game and make it even more unstable. I have tested that on the original POTC game with 2.0 Storm engine. That's why I would prefer to stay with 2018 build for now. But it crashes for some reason and it doesn't even leave error logs. 90% of the scripts from PROGRAM folder are ported. 

(1 edit)

First, 99.9% of the SendMessage statements require the exact type/number of additional parameters, else they will crash the game, without warning or log message (some are more forgiving if the type is correct, but may have optional trailing parameters, but they are very few).  It's always been that way and I have yet to implement a .log message or more graceful handling of that as it's not a priority for scripts that are accurate like the ones we currently have.

In Program\Characters\CharacterUtilite.c, line 4052, MSG_CHARACTER_SETBLADE has a problem.  Change to:

SendMessage(chref, "llsfll", MSG_CHARACTER_SETBLADE, 0, modelName, liveTime, colors, colore);

Even after fixing, I can't run the game past this because I am missing a bunch of the newer Resources, so the start location fails to load some models for the default quest and it also looks like there are some script problems for things not defined, like SHIP_BATTLESHIP_FRANCE

Ok, I will try to fix those. Thanks for pointing me to the right direction. Yes, you ineed need the updated RESOURCE folder from imdb.com to be able to run it.

Ok, so changing the code in CharacterUtilite.c now loads the scene, but after loading to shore, it crashes again. At least now I have log in error logs which says:

RUNTIME ERROR - file: sea_ai\AIShip.c; line: 189

Can't create class: Flg3

RUNTIME ERROR - file: sea_ai\AIShip.c; line: 196

Can't create class: Pnt3

RUNTIME ERROR - file: sea_ai\AIShip.c; line: 205

Can't create class: PFg2

RUNTIME ERROR - file: sea_ai\AIShip.c; line: 212

Can't create class: PPn2

RUNTIME ERROR - file: sea_ai\AIShip.c; line: 221

Can't create class: QFg2

RUNTIME ERROR - file: sea_ai\AIShip.c; line: 228

Can't create class: QPn2

RUNTIME ERROR - file: sea_ai\AIShip.c; line: 235

Can't create class: FFg3

(1 edit)

When they made New Horizons, they copied the modules\rigging.dll a bunch of times, then used a HexEditor to change the class name inside the .dll binary file.  As a favor to allow Maelstrom to possibly be used similarly, I added features to rigging that would emulate the same behavior, but it requires different scripting and also modification to rigging.ini; I am not going to hex-edit the .dll files like they did, but instead provide the functionality that they were trying to achieve, but in a more proper manner, through features inside the engine/modules.

Use a visual file difference tool (like WinMerge) to compare that AIShip.c to the modified one we supply.  Also compare the RESOURCE\INI\rigging.ini the same way and make the same changes in our version to the New Horizons version.

There are also similar issues with the LogInterface, where the original engine only allowed one instance of it, but New Horizons copied the .dll and hex edited it.  So I added a way to achieve that too.  This is why you need to compare all files in two versions and find the changes needed to make it work for Maelstrom (both programs, INI files and in some cases RESOURCE files that need to be moved to different directories).

Is there any chance to update New Horizons to the latest build for Malestrom? I would fix the aesthetic issues one by one, but I cannot make it start with the new updates... 

I don't think I will do that.  The intention was for their own community to update it, but that did not happen.  I did the port as proof it could work because their forum has many posts where they supposedly wished the engine would be updated to DX9 and the newer 2.8 elements and I had hoped this work would provide them an incentive to take what I had done and proceed with updates from that point; they apparently are not really interested.

I have forgotten many of the needed changes and if I try to update, I will probably overwrite many of the changes again with the old, incompatible things, then since I don't know anything about New Horizons and never play it myself, it will go back to where in those old conversations with pedrwyth, when he was testing, a bunch of things will be found as broken again and I will have to investigate and redo changes just like I already had to do and that is very time consuming and I feel like it's not worth my time if they as a community are not interested.

I will try to port it myself. Chances are 10% that I will make it, but I got some spare time these days since school is finished and I have no lessons. If I succeed. I will let you know so you can replace it with the old one that you already have uploaded here.

There are a couple things that might help:

Something like FreeFileSync (https://freefilesync.org/) will allow you to compare the Program/Resource files with a "binary" comparison so you can limit investigation for things that are truly a difference and ignore things that are unchanged.

For the changed/different Program or other text files, use a visual file diff tool to quickly find the differences.

Thank you Jeffrey, you are the man! I have updated the Resources folder (including INI folder) and no bugs syntax errors so far. Errors start to occur when updating PROGRAM folder, but I can see that 80% of the files can be updated, the other ones cannot because of the updated engine (at least that seems logical). I might have something in a couple of days. Then I can start fixing the aesthetic issues mostly related to position of some icons in sailing and world map mode. If I succeed, I will start promoting maelstrom engine on Youtube, because like it or not, New Horizons is still the most popular mod for Storm engine games. That should be used to boost the sale of Maelstrom engine and hopefully make all this amazing work that you do payable.