Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

White sails

A topic by Valium1994 created Jul 28, 2022 Views: 310 Replies: 8
Viewing posts 1 to 6

Hi.
I noticed that ships have different type of material which is use in sail (sometimes they're white,  gray-ish, etc).
What should I edit in some files to have only white sails in every  ship?

Sometimes, when I'm at shipyard and trying to change color of sail, they're white there but not that white I'd like to. 


If it's not undestable, I can show it.


Also, got some problems to find some ships at shipyard.

As an example, I have 36-gun-frigate but I met 30-gun-frigate which seems really cool but it's hard to find it at shipyard even if I can meet there 100-guns warships more often.

(+1)

Not all ships are available for sale in shipyards; some ships can only be obtained through encounters at sea. 

To make all ships have just one sail, edit the function ref procGetSailTextureData(), in file Program\battle_interface\BattleInterface.c.  Set it to the texture you want for all ships (probably silk based on your description), geraldTex blank:

BI_objRetValue.normalTex = "ships\parus_silk.tga.tx";
BI_objRetValue.geraldTex = "";
BI_objRetValue.sailscolor = argb(255,255,255,255);

return &BI_objRetValue;

Any idea how to meet this ship again? I wonder if it's possible to edit something to meet at shipyard, at battle, etc. 

(1 edit)

Thanks, that works.

Any idea if it's possible to set on some ships which are not in use in game?

Any idea how to make it possible to but 30-gun-frigate? I only saw it once!

That's strange that I can buy 80-gun warships but this one can't find.

If you are playing ERAS, the 30 gun frigate was technically "removed" because it is a Napoleonic era ship and too late for the time frame.  Since ERAS was derived from GOF and that ship did exist in that older mod, ERAS ship list does have it, but was marked as "no encounter".  However, it does technically still exist, but only very rarely will be encountered, because MK did want some of the removed ships to sometimes become available at sea for those that might want them from the older mod.  However, there is no easy way to force an encounter to include one.  The removed ships are also never available for sale in the shipyard.  If you want to edit the Program\scripts\ShipsUtilites.c file, modify the SetShipyardStore function to add SHIP_30GunFrigate.  The easiest way might be to simply replace SHIP_KETCH, or SHIP_WAR_TARTANE with SHIP_30GunFrigate in the file, then wait for one to appear in the shipyard.

As I wrote, I found 30 gun frigate and now it appears more frequently since I have it.

But I did the same thing for surprise and no result.

(+1)

You won't see the ship in your shipyards, because the code you edited is incorrect.  From your earlier post:

iTest_ship = rand(17);

switch(iTest_ship) {
    case 1: bAdd = true; nToAdd = SHIP_WAR_TARTANE; break;
...
    case 17: bAdd = true; nToAdd = SHIP_BarcoCostero; break;
    case 18: bAdd = true; nToAdd = SHIP_30GunFrigate; break;
}

iTest_ship = rand(21);

switch(iTest_ship) {
    case 1: bAdd = true; nToAdd = SHIP_LUGGERVML; break;
...
    case 22: bAdd = true; nToAdd = SHIP_30GunFrigate; break;
}

In the assignment to iTest_ship above, it will receive a randomly chosen value between 0 to 17, or 0 to 21.  But then it investigates for the value in the following switch statements for a case of 18 and a case of 22, which are supposed to be true if the value for iTest_ship is either 18 or 22 in your additional lines.  That will never happen.

You either have to change the rand(17) and rand(21) to rand(18) and rand(22), or simply replace one of the existing case lines with the ship type you want.  Example:  change SHIP_WAR_TARTANE and SHIP_LUGGERVML with SHIP_30GunFrigate.  Then you will sometimes see the ship you want in the shipyard.  The more case lines you replace, the higher the chance of seeing your desired ship.

FillShipParamShipyard(NPChar, SHIP_TARTANE, "ship1");

//#20190122-01

bool bAdd = false;

int nToAdd = SHIP_WAR_TARTANE;

iTest_ship = rand(17);

switch(iTest_ship) {

    case 1: bAdd = true; nToAdd = SHIP_WAR_TARTANE; break;

 ...

    case 17: bAdd = true; nToAdd = SHIP_BarcoCostero; break;

    case 18: bAdd = true; nToAdd = SHIP_30GunFrigate; break;

    }

    if(bAdd) FillShipParamShipyard(NPChar, nToAdd, "ship2");

    bAdd = false;

iTest_ship = rand(21);

switch(iTest_ship) {

case 1: bAdd = true; nToAdd = SHIP_LUGGERVML; break;

...

    case 22: bAdd = true; nToAdd = SHIP_30GunFrigate; break;

    }

    if(bAdd) FillShipParamShipyard(NPChar, nToAdd, "ship3");

    bAdd = false;


Will it be ok or something else?

That's a pity that these ships are not included, anyway I met it once and didn't save my game because of energy loss in half of my city... :/

I don't know if it works but I found it! And I found it once again in better version. It's kinda funny that it's hard to find it but when you did it and have it, there're lots of them. Like in GTA San Adreas when you found Turismo at last and there're a lot of them instantly.