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

The Historical Ships Mod

Doober

Buccaneer
Storm Modder
I just uploaded to the FTP a new mod that overhauls the ships in POTC. Here are the highlights of what this fixes.
1. It places all ships into 8 classes. Class 8 is Tartanes, Class 7 is historically unrated ships. Class 6 to 1 are all the historical ships organized as they should rated by number of guns. They have all been renamed to drastically reduce the number of ship names and to make them more historically correct. For example corvettes have been reclassified as light frigates as a 32 gun ship like the one in the game is much larger than the historical corvettes which weren't even called corvettes until the Napoleonic era. Cannon weights are now historically accurate, so no frigates carrying a 42 gun array of 24 pounders.
2. All icons in the shipyard and sailing icons display properly and also correctly display the class of ship that it is.
3. Speeds have been adjusted somewhat to be more historically accurate. A schooner should no longer be able to outrun a square rigger when running with the wind. It will need to going perpendicular to the wind due to its sail configuration.
4. The old 40 gun lineships and warships are now rated as armed merchantships. It never made sense why a lineship would have fewer guns than a frigate, and we have enough ships with 50 guns and above to fill the lineships place in the game. They are now similar to the historical role of Indiamen ships which could hold their own against frigates and even lineships.

One effect on gameplay will be you will probably see more action by larger ships such as frigates and galleons and lower ships such as schooners and luggers may not generate quite as much. This is due to frigates are rated as class 5 ships so they have a 5 in 9 chance of generating as opposed to their prior chance of 2 in 8. Also, I did take some historical liberties as ships like caravels were not rated ships, and I had to include them somewhere.

I hope you all like this mod, please try it out and give feedback. If people like it, I would love to see it in the Build.

It is listed as Ship Mod in FTP site. It is compatible with the latest Alpha patch. I updated files such as the shipberthing files which don't really matter since shipberthing isn't working, but I didn't know what Screwface was going to do with that, and I wanted to make the game completely compatible with class 8 ships.
 
That sounds absolutely brilliant, Doober!
I'm going to include it in my current game version and so it should make it into Alpha 9.5 Patch 4. :onya

Do you think the frequency of encountering certain ship types/classes is historically correct?
Otherwise, we might need to change that a bit; if there's too many big ships,
it'll be hard for beginning players to find soem small ships to capture. :?
 
Sounds like a good mod, but I am worried about the big chance of finding a lot of large ships ingame, when in that time period there were mostly small ships. Is there any possibility that you up the chance of finding small ships instead of frigates?
 
I can't open the Resource\Textures\Interfaces\ships-16.tga.tx file with the TX Converter.
Could you please re-upload the ship-files you've got in Resource\Textures\Interfaces?
 
The thing I'm worried about is: did you change the ammount of cannons on some ships cause I think that should not be touched (as the ships actually have that many cannons on them)

Other than that it sounds good
 
Hmm, thats odd, I don't know why you can't open that. I know that I had to adjust the resolution on the TXConverter screen to get them to work properly. I think I had to select Alpha 2, 24 bit or something like that. It has something to do with the transparency of the image. Try that to see if it works, if not, I will re-upload later today.

I did adjust the cannons on some ships, but only because they were not correct to begin with. I went through most of the ships, counted the guns that actually fired and then adjusted the cannon amount to that number. The only thing that the cannon number affects is the ship interface showing how many guns is on the ship, it does not affect actual performance in battle. If you have the wrong number there, it will cost an incorrect amount to upgrade the guns, but that is all.

I was concerned about the greater number of higher ships that generate. The only way I can think of to adjust that is to use the code regarding frequency by age, which I can do if you would like. If you use the rpg mode where big ships do not generate until you get to that level, it eliminates the problem when you are starting out as only small ships will generate. I can adjust it if you would like.
 
There's nothing I can do with that file I mentioned;
I get an error message in the TX Converter right away when trying to open it.
Possibly something went wrong with uploading? :shrug
 
Oh... RESOURCE\INI\TEXTS\English\common.ini also seems to be missing from your upload.
I imagine you modified that file as well, right?
Seems like maybe your upload was interrupted in the middle of the corrupted texture file I reported?
 
Can you please compare attached file with your current ships_init.c one?
The attached file is your file with all post-Alpha 9.5 Patch 3 content added in.
I'm hoping you can modify it as you see fit; most notably the SoleilRoyal entry.
 
When starting the game with my current merge, I notice that some ship types lack their type name
(probably because common.ini is missing), interface pictures are stretched
(because I didn't use the corrupted texture files) and I get the following errors:
Code:
RUNTIME ERROR - file: ships\ships_init.c; line: 16127
missed attribute: bigpic
RUNTIME ERROR - file: ships\ships_init.c; line: 16127
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16128
missed attribute: bigpictex
RUNTIME ERROR - file: ships\ships_init.c; line: 16128
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16129
missed attribute: bigpictexname
RUNTIME ERROR - file: ships\ships_init.c; line: 16129
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16124
missed attribute: walk
RUNTIME ERROR - file: ships\ships_init.c; line: 16124
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16127
missed attribute: bigpic
RUNTIME ERROR - file: ships\ships_init.c; line: 16127
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16128
missed attribute: bigpictex
RUNTIME ERROR - file: ships\ships_init.c; line: 16128
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16129
missed attribute: bigpictexname
RUNTIME ERROR - file: ships\ships_init.c; line: 16129
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16124
missed attribute: walk
RUNTIME ERROR - file: ships\ships_init.c; line: 16124
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16127
missed attribute: bigpic
RUNTIME ERROR - file: ships\ships_init.c; line: 16127
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16128
missed attribute: bigpictex
RUNTIME ERROR - file: ships\ships_init.c; line: 16128
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16129
missed attribute: bigpictexname
RUNTIME ERROR - file: ships\ships_init.c; line: 16129
no rAP data
Other than that, this work certainly seems promising.
I hope you can sort out the problems and then it'll make a wonderful addition to the next patch! :woot
 
It doesn't work entirely right yet; you'll be better served to wait until it's included in the next patch.
 
Usually at http://www.pyratesahoy.com/potc but in this case at http://www.pyratesahoy.com/build
 
You were right, Pieter, it didn't upload correctly. I just re-uploaded it and there shouldn't be any problems now. I will work on merging your ships_init with mine and I will also try to change frequency of frigates and similar ships. For those altering the ships_init in the future, I organized the ships by class to find ships easier. It did make the code a little longer though. I hope that doesn't cause problems for anyone.
 
Ok, I just uploaded the new ship_init file, it has the Soleil Royal now. I did not see any other major changes. Was there anything else? I don't have that ship in my game either, so I wasn't able to test it to make sure the cannon numbers and everything were correct. I also edited the probability of frigates appearing, but I am not too sure about the how the coding for that works. I tested it briefly and it seems to generate fewer of frigate type ships, but it would be best if we could have a few people play using the mod and give feedback. The first and second class ships seem to generate correctly, third class may still be a little heavy, but it is hard to tell. There are all the different ages now and it is difficult to play test every age the the extent where you can make sure that it is balanced.
 
Thanks a lot, Doober! I'll redownload and remerge tomorrow. :yes
Sorting by ship class sounds very good to me; the ships_init.c file was a MESS! :shock

The chance coding for the appearance of ships is this:
Code:
		if (iNation >= 0 && iNation < NATIONS_QUANTITY) {
string sNation = GetNationNameByType(iNation);
if (sNation == "britain") {sNation = "england";} // Screwface : Fix for other nations type under English flag
if (CheckAttribute(rShip, sNation) == true && stf(rShip.(sNation)) < FRAND(1.0)) continue;
}
string sPeriod = GetCurrentPeriod();
if (CheckAttribute(rShip, "period."+sPeriod) && stf(rShip.period.(sPeriod)) < FRAND(1.0)) continue;
Basically, the lower the chance values, the lower the chance for the ship appearing.
And you're absolutely right on it being hard to balance all periods straight away.
I reckon we'll need some serious people testing the various periods and give some comments on how they 'feel'.
 
Well, its still a mess, its just an organized mess now. For everything to really be fixed correctly, all the model files should be renamed, but I was NOT going to step into that mess!

I understand the basics of how a ship is generated, I just don't understand why one ship as opposed to another is generated. For example, if I go into a sea battle from the worldmap, why would a first class ship ever be generated over a six class ship?
 
Did you put all the "CURSED" ships together? :?

Cause there is a little bit of code in there that is used to make skeletons appear on a certain ship and the Cursed Pearl and Cursed Blood need to be together ;)
 
I've got that all sorted now, Captain Maggee. :doff
Thanks a lot for your re-upload, Doober! It seems to be working now.
I do still get a while bunch of error logs generated, which I hope you can have a look at:
Code:
RUNTIME ERROR - file: ships\ships_init.c; line: 16135
missed attribute: bigpic
RUNTIME ERROR - file: ships\ships_init.c; line: 16135
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16136
missed attribute: bigpictex
RUNTIME ERROR - file: ships\ships_init.c; line: 16136
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16137
missed attribute: bigpictexname
RUNTIME ERROR - file: ships\ships_init.c; line: 16137
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16132
missed attribute: walk
RUNTIME ERROR - file: ships\ships_init.c; line: 16132
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16135
missed attribute: bigpic
RUNTIME ERROR - file: ships\ships_init.c; line: 16135
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16136
missed attribute: bigpictex
RUNTIME ERROR - file: ships\ships_init.c; line: 16136
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16137
missed attribute: bigpictexname
RUNTIME ERROR - file: ships\ships_init.c; line: 16137
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16132
missed attribute: walk
RUNTIME ERROR - file: ships\ships_init.c; line: 16132
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16135
missed attribute: bigpic
RUNTIME ERROR - file: ships\ships_init.c; line: 16135
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16136
missed attribute: bigpictex
RUNTIME ERROR - file: ships\ships_init.c; line: 16136
no rAP data
RUNTIME ERROR - file: ships\ships_init.c; line: 16137
missed attribute: bigpictexname
RUNTIME ERROR - file: ships\ships_init.c; line: 16137
no rAP data
 
Back
Top