1. GOG.com logo

    Thanks to YOUR votes, GOG.com now sells:
    - Sea Dogs - Sea Dogs: Caribbean Tales
    - Sea Dogs: City of Abandoned Ships

    Vote now to add Pirates of the Caribbean to the list!

    Dismiss Notice
  2. Under the Crossbones Podcast

    A Pirate Podcast with Interviews
    Music, Comedy and all things Pirate!

    - Episode Guide - About - Subscribe -
    - Twitter - Facebook - iTunes - Android -
    - Youtube - Fill the Coffers -

    Dismiss Notice
  3. New Horizons logo

    Quick links for PotC: New Horizons
    - Download latest version
    - Wiki - FAQ - Report bugs here
    - ModDB profile

  4. GOF logo

    Quick links for AoP2: Gentlemen of Fortune 2
    - Downloads and info
    - Historical Immersion Supermod
    - ModDB Profile

Dismiss Notice
New to the forum?
Please take a moment to read our Welcome Message and Forum Rules.

Information aboute The New Pirate Age - Update! [WIP]

Discussion in 'POTC Build Mod' started by pirateking, Feb 22, 2017.

  1. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
    It is only notes for the Quest.
    Which will i make later.
     
  2. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    5,506
    There is no Pirate City Puerto Principe, unless you have created it. The only two towns on Cuba are Havana and Santiago. Punta de Maisi is a beach, not a town, and has no tavern. There is "Smugglers_Fort", a place which looks like a village and is a little way out from Havana, but that's completely empty - there is no tavern here either.

    That can work. If you're playing in the "Golden Age of Piracy" period, Alice Town is English, in which case you can leave Silvers Rayleigh with 'LAi_group_MoveCharacter(ch, "ENGLAND_CITIZENS");'. You'll still want to edit "InternalSettings.h" to make locators visible, go to the tavern, and find the name of a locator where you want him to sit.
     
  3. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
    Here Where are the Officer are Sitting in the Tavern:

    * Pirate Red-Hair Shanks of St. Martin / Marigot Tavern
    * Pireat Trafalgar D. Water Law off Antiugua / St. Johns Tavern
    * Pirate Silvers Rayleigh off Martinique / St. Pierre
     
    Last edited: Mar 7, 2017
  4. Pieter Boelen

    Pieter Boelen (Not So) Old Seadog Staff Member Administrator Storm Modder Hearts of Oak Donator

    Joined:
    Nov 11, 2004
    Messages:
    65,406
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    How about you do what I suggested:
    Walk around with VISIBLE_LOCATORS set to 1, find a nice tavern you like and use Console to tell you the location ID.
     
  5. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
    Yes i will doe it!

    It was only a Infor for you!
     
  6. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
  7. Pieter Boelen

    Pieter Boelen (Not So) Old Seadog Staff Member Administrator Storm Modder Hearts of Oak Donator

    Joined:
    Nov 11, 2004
    Messages:
    65,406
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    It's called Falaise de Fleur; that was the name in the unmodded game.
    You don't notice that inside the game anymore, but the code still refers to it.
     
  8. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
    Ah ok thanks!

    I am thing about to put more sitting Officiers in my update!
    * Nevis / Charlestown Tavern - Roronoa Zoro [First Mate]
    * Brababdos / Brigdetown Tavern - Nico Robin [Quartermaster]
    * Brababdos / Speightstown Tavern - Nami [Navigator]
    * Jamaica /Port Roaly Tavern - Sanji
    * Martinique / St. Pierre Tavern[SitSit7] - Tony Chopper [Surgeon]]
    * Cayman / Grand Cayman Tavern - Franky [Carpenter]
    * Hispanol / Santo Domingo Tavern - Lysop [Gunner]



    * Antigua / St. Johans Tavern[SitSit13] - Trafalgar D. Water Law
    * Turks / Grand Turk Tavern - Silvers Rayleigh
    * St. Martin / Marigot Tavern[SitSit5] - Red-Hair Shanks
     
  9. Pieter Boelen

    Pieter Boelen (Not So) Old Seadog Staff Member Administrator Storm Modder Hearts of Oak Donator

    Joined:
    Nov 11, 2004
    Messages:
    65,406
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    How about you get one actually working first?
    Once you do that, you'll know how to add them and then you can do whatever you want.
    No need to announce your grand plans on the forum of instead of thinking about things, you can DO things! ;)
     
  10. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
    I announce it because if any Island has a other Dateiname!

    @Pieter Boelen place can you check this:
    ch.old.name = "Trafalgar ";
    ch.old.lastname = "D. Law";
    ch.name = TranslateString("","Trafalgar");
    ch.lastname = TranslateString("","D. Law");
    ch.id = "Trafalgar D. Law";
    ch.model = "9S_Law";
    ch.sex = "man";
    ch.loyality = 15;
    ch.alignment = "SitSit13";
    ch.sound_type = "seaman";
    GiveItem2Character(ch, "bladeC40");
    ch.equip.blade = "bladeC40";
    ch.location = "SantJohns_tavern";
    ch.location.group = "Sit";
    ch.location.locator = "Sit13";
    ch.homelocation = "SantJohns_tavern";
    ch.homelocation.group = "sit";
    ch.homelocation.locator = "sit13";
    ch.Dialog.Filename = "Enc_Officer_dialog.c";
    ch.greeting = "";
    ch.rank = 1;
    ch.reputation = "45";
    TakeNItems(ch,"medical1", Rand(4)+1);
    ch.experience = CalculateExperienceFromRank(1)+ (CalculateExperienceFromRank(1)/10 + rand(500));
    ch.skill.Leadership = "5";
    ch.skill.Fencing = "5";
    ch.skill.Sailing = "4";
    ch.skill.Accuracy = "1";
    ch.skill.Cannons = "1";
    ch.skill.Grappling = "4";
    ch.skill.Repair = "3";
    ch.skill.Defence = "4";
    ch.skill.Commerce = "0";
    ch.skill.Sneak = "3";
    ch.money = "0";
    ch.quest.help = "0";
    ch.quest.dialog = "0";
    LAi_SetSitType(ch);
    LAi_group_MoveCharacter(ch, "ENGLAND_CITIZENS");
    ch.HPBonus = 100; // KevAtl 08-26-2007 to correct for game giving low HP
    ch.isOfficer = true;
    AddGameCharacter(n, ch);
     
    Last edited: Mar 8, 2017
  11. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    5,506
    Yes, all the islands which were in the original game still use their old names for coding. Also, in the original game, each town had the same name as the island, except for one where there were two towns on the same island.
    • Old name = New island name / new town name
    • Conceicao = La Grenade / Sao Jorge (*)
    • Falaise de Fleur = Martinique / St. Pierre
    • Redmond = Jamaica / Port Royale (*)
    • Isla Muelle = Puerto Rico / San Juan
    • Douwesen = Bonaire / Kralendijk
    • Oxbay = Barbados / Speightstown
      • Greenford = Bridgetown
    • Quebradas Costillas = Nevis / Pirate Settlement
      • Charlestown did not exist in the original game so has no old name, but it's on island Quebradas Costillas / Nevis
    • Khael Roa = Cozumel (no town on either the old or new island)
    (*) Islands and towns marked like this have different names in Build 14 depending on the period in which you're playing. The names given here are those used in the "Golden Age of Pirates" period, as I believe that's the period you're using. You can find the other names by looking in "PROGRAM\Periods.c".

    The model name can be anything you like, it does not have to resemble the name of the model on which it is based. The texture file which goes with it, however, must have exactly the same length file name as the original. So you could call the model "Law.gm", "Trafalgar.gm", "Trafalgar Law.gm" or anything else. But as all "9S" texture files have names 8 characters long, e.g. "9S_Nat_a.tga.tx", yours must also be 8 letters long. It does not need to contain "9S", though that does not do any harm. You could call it "9S_Law_T.tga.tx", "Traf_Law.tga.tx", or anything else 8 characters long. But "9S_Law.tga.tx" will not work.

    I'm not sure what 'ch.alignment' is supposed to do, but I'd be willing to bet that "SitSit13" is not a useful value for it.

    You're giving him "blade_C40". Presumably this is a new weapon you're introducing into the game?

    For the "location" lines, "SantJohns_tavern" does not exist. Check "PROGRAM\Locations\init\Antigua.c" - you'll find that the tavern is "Antigua_Tavern".

    You may want to add a 'ch.quest.officertype' line to define what sort of officer Trafalgar D. Law will be. You can find a list of valid officer types in "PROGRAM\Characters\officers.c". For example, to make him a first mate, add 'ch.quest.officertype = OFFIC_TYPE_FIRSTMATE;'.
     
  12. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
    Ok. Thanks!
    @Grey Roger
    The Texture is called: 9s_Law-2.tga.tx

    ch.old.name = "Trafalgar ";
    ch.old.lastname = "D. Law";
    ch.name = TranslateString("","Trafalgar");
    ch.lastname = TranslateString("","D. Law");
    ch.id = "Trafalgar D. Law";
    ch.model = "Trafalgar Law";
    ch.sex = "man";
    ch.loyality = 15;
    ch.alignment = "SitSit13";
    ch.sound_type = "seaman";
    GiveItem2Character(ch, "bladeC40");
    ch.equip.blade = "bladeC40";
    ch.location = "Antigua_Tavern";
    ch.location.group = "Sit";
    ch.location.locator = "Sit13";
    ch.homelocation = "Antigua_Tavern";
    ch.homelocation.group = "sit";
    ch.homelocation.locator = "sit13";
    ch.Dialog.Filename = "Enc_Officer_dialog.c";
    ch.greeting = "";
    ch.rank = 1;
    ch.reputation = "45";
    TakeNItems(ch,"medical1", Rand(4)+1);
    ch.experience = CalculateExperienceFromRank(1)+ (CalculateExperienceFromRank(1)/10 + rand(500));
    ch.skill.Leadership = "5";
    ch.skill.Fencing = "5";
    ch.skill.Sailing = "4";
    ch.skill.Accuracy = "1";
    ch.skill.Cannons = "1";
    ch.skill.Grappling = "4";
    ch.skill.Repair = "3";
    ch.skill.Defence = "4";
    ch.skill.Commerce = "0";
    ch.skill.Sneak = "3";
    ch.money = "0";
    ch.quest.help = "0";
    ch.quest.dialog = "0";
    ch.quest.officertype = OFFIC_TYPE_FIRSTMATE;'.
    LAi_SetSitType(ch);
    LAi_group_MoveCharacter(ch, "ENGLAND_CITIZENS");
    ch.HPBonus = 100; // KevAtl 08-26-2007 to correct for game giving low HP
    ch.isOfficer = true;
    AddGameCharacter(n, ch);
     
    Last edited: Mar 8, 2017
  13. Pieter Boelen

    Pieter Boelen (Not So) Old Seadog Staff Member Administrator Storm Modder Hearts of Oak Donator

    Joined:
    Nov 11, 2004
    Messages:
    65,406
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    That can only be "bad" or "good", if I recall.
    Does basically nothing for now.

    @pirateking: Remember what I said about typos?
    Because even if that location did exist, that's a typo right there.
    BE CAREFUL!

    Also, if you would do what I suggested three(!) times by now, you would use the Console which will absolutely give you a VALID location ID.

    I've got to admit I'm beginning to get quite annoyed here.
    Either actually TAKE MY ADVICE or stop asking questions if you aren't going to actually do something with the answers anyway!

    You can also check your own code simply by adding it to the game and seeing what happens.
    That's what all of us do first when we don't know stuff as well.
    "Trial and error" is how you learn.
    If you keep a backup of your original files, you can't mess things up too badly.
     
  14. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
  15. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    5,506
    The ch.alignment line still does not have a proper value. Looking at some officer definitions in other storylines, that line does not seem to be required. Where it is used, the values are either "good" or "bad". Trafalgar D. Law is presumably supposed to be one of your heroes, so you could change it to ch.alignment = "good";.

    The ch.greeting line has no assigned value. You can either go through "RESOURCE\INI\ALIASES\Greetings_alias.ini" and pick one that seems suitable, or edit the file to create your own greeting and then use that.

    Another line which you may want to add to all your characters is ch.questchar = true;. Without that, the system may do random things to the character's skills, abilities and level.

    You copied a little too much for the ch.quest.officertype line! Remove the '. from the end.
     
  16. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
    Ok Thanks!

    In which Line have tu put the Model texture File?
     
  17. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    5,506
    The texture file is not mentioned in the character definition here. The ch.model line refers to "Trafalgar Law", so in "RESOURCE\MODELS\Characters" there must be file "Trafalgar Law.gm", and in "RESOURCE\MODELS\Heads" must be "h_Trafalgar Law.gm". Use Hex Editor:
    http://www.piratesahoy.cloud/repository/Tools/Modeling+Texturing/HEX Editor.zip
    Edit both these files to change the texture file name. Here is how Hex Editor will look if "Trafalgar Law.gm" is a copy of "9S_Pir.gm":
    hexedit1.jpg

    I've outlined the texture file name - that red rectangle won't appear on the real Hex Editor screen. This is where you change it to use your new texture file name. So here is how it will look after you change the texture file name to "9S_Law_2":
    hexedit2.jpg

    And that's why the texture file name must be exactly the right length - it must exactly replace the original name.
     
    Pieter Boelen likes this.
  18. pirateking

    pirateking Freebooter

    Joined:
    Jun 9, 2011
    Messages:
    292
    Gender:
    Male
    Location:
    Austria
    Ok. Tthat i Have!

    @Grey Roger
    I need a List of alle Island with Old Name and New Name and City,
    but not only whicht have Change.
     
    Last edited: Mar 8, 2017
  19. Pieter Boelen

    Pieter Boelen (Not So) Old Seadog Staff Member Administrator Storm Modder Hearts of Oak Donator

    Joined:
    Nov 11, 2004
    Messages:
    65,406
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    Just a thought: add a space in your posts after any line of code.
    That's what I often do to avoid people accidentally copying any trailing periods.

    That looks like a good tutorial! Can you make a thread for that so it doesn't get lost?

    Towntable.c and islands.c contain the actual name conversion code, if I recall.
     
  20. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    5,506
    The original game only had 8 islands, which I listed in post #91. So those are the only ones which have old names.

    Other islands and towns change their names depending on which period you're playing in. Look at "PROGRAM\Periods.c" to see how towns and a couple of islands have different names in different periods, especially in "Early Explorers" when Spain owns almost everything.

    You can also look through "PROGRAM\Towns\InitTowns.c". This is where all the towns are listed. For each one, ctown.id is the name used for the town in coding; and ctown.island is the name of the island on which that town is located, as used for coding.
     

Share This Page