1. Dismiss Notice
  2. 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
  3. 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
  4. New Horizons logo

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

  5. 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.

Need Help Is it possible to add famous ships sail arround the specific islands with accurate captains??

Discussion in 'Build Beta and Brainstorming' started by Calico Jack, Jul 3, 2017.

  1. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    6,414
    Very probably, but that's not going to help you while you're trying to shoot up his ship. ;)
     
  2. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,622
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    Definitely not! :rofl

    So that just means you HAVE to board the Queen Anne's Revenge, no? Is that a problem? :wp
     
  3. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    6,414
    Not if you add the 'LAi_SetImmortal(characterFromID("Blackbeard"), false);' line so that you can shoot up the ship to weaken it before boarding. ;)

    @Calico Jack: For a bit of fun, go to Cozumel and see if you can capture the Flying Dutchman. This should be possible if, in your code to set up the encounter, you do not have:
    Code:
    Character_SetAbordageEnable(characterFromID("Davy Jones"), false);
    Then go to Cayman, talk to the governor, and do the "Elizabeth Shaw" side quest...
     
  4. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,622
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    But still.... Is that a problem? Just means the Queen Anne's Revenge will be STUPIDLY difficult to capture!
    You, of all people, should know how much of an enticing target that can make! :rofl
     
  5. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    6,414
    It probably wouldn't be that hard to capture, once you're properly equipped. Queen Anne's Revenge has a base crew of 420, about the same as a large frigate and slightly more than a fast war galleon. Provided you remember to poke Blackbeard himself once with a borgiablade to strip off his immortality and then press "1" to quick-equip something better, it should be considerably easier than, say, Silehard's flagship at the end of "Tales of a Sea Hawk".
     
  6. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,622
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    So: Is it a problem?

    If this is considered a good idea, we could remove Blackbeard from the beach on Isla de Muerta and have him sailing around the QAR somewhere instead.
    Only disadvantage then is that the third beach will be empty again. But who cares? :cheeky
     
  7. Calico Jack

    Calico Jack Powder Monkey

    Joined:
    Jul 15, 2016
    Messages:
    44
    Gender:
    Male
    I gave an improvement in the queen annes revenge of this quest because he disappeared

    I would start the quest and leave it as the black pearl in the quest of nataniel halk but he was gone when I went to face him with the cursed black pearl(My favorite ship) just the two small ships that came with him appeared I think he sank to the fort
     
    Last edited: Jul 4, 2017
  8. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,622
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    I suppose eventually the fort could take care of any persistent NPC ships....
    Unless their captains are immortal.
     
  9. Calico Jack

    Calico Jack Powder Monkey

    Joined:
    Jul 15, 2016
    Messages:
    44
    Gender:
    Male
    I think that's exactly what happened, he was crazy, he attacked everything that appeared:rofl
     
  10. Calico Jack

    Calico Jack Powder Monkey

    Joined:
    Jul 15, 2016
    Messages:
    44
    Gender:
    Male
    I did a test I started a campaign as cursed I started the quest I saw if he was in the place and I went to the map and away from the island I accelerated the time at maximum and I waited to give a good number of days it was a 65 days I returned to the island And he was there. I still think it's going to work out:aar
     
    Last edited: Jul 4, 2017
    Captain92 and Pieter Boelen like this.
  11. Captain92

    Captain92 Powder Monkey

    Joined:
    Aug 18, 2013
    Messages:
    49
    Gender:
    Male
    Brilliant idea, so interesting!!!! Ibm tempted to test the file of tuo don't mine.
     
  12. Calico Jack

    Calico Jack Powder Monkey

    Joined:
    Jul 15, 2016
    Messages:
    44
    Gender:
    Male
    I had a problem when I added the cursed black pearl sailing around the isla de muerta the first time the pearl was on the isla de muerta but when I went to nevis to buy food and sell the cargo of the ship the pearl and the revenge were the Two were in the same place
     
  13. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    6,414
    I'd need to see "compile.log" from just after you arrived at Nevis and met both ships. Also, can you upload whichever code file contains the quest code to set up the Queen Anne's Revenge and Black Pearl?
     
  14. Calico Jack

    Calico Jack Powder Monkey

    Joined:
    Jul 15, 2016
    Messages:
    44
    Gender:
    Male
    case "BlackBeard":
    Group_CreateGroup("French_Squadron");
    Group_AddCharacter("French_Squadron", "BlackBeard");
    Group_SetGroupCommander("French_Squadron", "BlackBeard");
    Group_SetTaskAttack("French_Squadron", PLAYER_GROUP, true);
    Group_LockTask("French_Squadron");
    Group_SetAddress("French_Squadron", "QuebradasCostillas", "Quest_ships", "Quest_Ship_12");
    Sea_LoginGroupNow("French_Squadron");
    characters[GetCharacterIndex("BlackBeard")].nosurrender = 2;
    SetCharacterRelationBoth(GetCharacterIndex("BlackBeard"),GetMainCharacterIndex(),RELATION_ENEMY);
    if(GetRMRelation(Pchar, PIRATE) > REL_WAR) SetRMRelation(Pchar, PIRATE, REL_WAR);
    Character_SetAbordageEnable(characterFromID("BlackBeard"), true);

    if(GetRMRelation(Pchar, FRANCE) > REL_WAR) SetRMRelation(Pchar, FRANCE, REL_WAR);
    UpdateRelations();

    Pchar.quest.FrenchShipDestroyed.win_condition.l1 = "NPC_death";
    Pchar.quest.FrenchShipDestroyed.win_condition.l1.character = "BlackBeard";
    Pchar.quest.FrenchShipDestroyed.win_condition = "FrenchShipDestroyed";
    break;


    case "The_Cursed_Ship":
    Group_CreateGroup("French_Squadron");
    Group_AddCharacter("French_Squadron", "Barbossa");
    Group_SetGroupCommander("French_Squadron", "Barbossa");
    Group_SetTaskAttack("French_Squadron", PLAYER_GROUP, true);
    Group_LockTask("French_Squadron");
    Group_SetAddress("French_Squadron", "IslaDeMuerte", "Quest_ships", "Quest_Ship_12");
    Sea_LoginGroupNow("French_Squadron");
    characters[GetCharacterIndex("Barbossa")].nosurrender = 2;
    SetCharacterRelationBoth(GetCharacterIndex("Barbossa"),GetMainCharacterIndex(),RELATION_ENEMY);
    if(GetRMRelation(Pchar, PIRATE) > REL_WAR) SetRMRelation(Pchar, PIRATE, REL_WAR);
    Character_SetAbordageEnable(characterFromID("Barbossa"), true);

    if(GetRMRelation(Pchar, FRANCE) > REL_WAR) SetRMRelation(Pchar, FRANCE, REL_WAR);
    UpdateRelations();

    Pchar.quest.FrenchShipDestroyed.win_condition.l1 = "NPC_death";
    Pchar.quest.FrenchShipDestroyed.win_condition.l1.character = "Barbossa";
    Pchar.quest.FrenchShipDestroyed.win_condition = "FrenchShipDestroyed";
    break;

    Every time I change anything besides the name of the character and the island the game crash
    Every time I change anything beyond the name of the character and the island the game crash
    I tried to differentiate them as the code of the two quest but the game crash
    I did not understand anything in compile.log
     
    Last edited: Jul 7, 2017
  15. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    6,414
    You should probably change the names of the groups - replace "French_Squadron" with something different. Use different group names for Blackbeard and Barbossa. My guess is that because you're assigning both of them to "French Squadron", that is why you meet both of them at once.

    Look at this code:
    Code:
    Pchar.quest.FrenchShipDestroyed.win_condition.l1 = "NPC_death";
    Pchar.quest.FrenchShipDestroyed.win_condition.l1.character = "BlackBeard";
    Pchar.quest.FrenchShipDestroyed.win_condition = "FrenchShipDestroyed";
    This sets up a check for when Blackbeard has been defeated. When he is, it triggers quest case "FrenchShipDestroyed". But you have an identical piece of code, only it's looking for Barbossa to be defeated. If you sail to Isla de Muerta and then to Nevis, the condition for Blackbeard will overwrite the condition for Barbossa - the battle will end if you defeat Blackbeard, regardless of whether Barbossa is still afloat.

    Basically, you need to make the two pieces of code distinct so they don't confuse each other. Try something like this:
    Code:
    case "BlackBeard":
    Group_CreateGroup("Blackbeard_ship");
    Group_AddCharacter("Blackbeard_ship", "BlackBeard");
    Group_SetGroupCommander("Blackbeard_ship", "BlackBeard");
    Group_SetTaskAttack("Blackbeard_ship", PLAYER_GROUP, true);
    Group_LockTask("Blackbeard_ship");
    Group_SetAddress("Blackbeard_ship", "QuebradasCostillas", "Quest_ships", "Quest_Ship_12");
    Sea_LoginGroupNow("Blackbeard_ship");
    characters[GetCharacterIndex("BlackBeard")].nosurrender = 2;
    Characters[GetCharacterIndex("BlackBeard")].recognized = true;
    Character_SetAbordageEnable(characterFromID("BlackBeard"), true);
    UpdateRelations();
    
    Pchar.quest.BlackbeardDestroyed.win_condition.l1 = "NPC_death";
    Pchar.quest.BlackbeardDestroyed.win_condition.l1.character = "BlackBeard";
    Pchar.quest.BlackbeardDestroyed.win_condition = "BlackbeardDestroyed";
    break;
    
    
    case "The_Cursed_Ship":
    Group_CreateGroup("Cursed_Ship");
    Group_AddCharacter("Cursed_Ship", "Barbossa");
    Group_SetGroupCommander("Cursed_Ship", "Barbossa");
    Group_SetTaskAttack("Cursed_Ship", PLAYER_GROUP, true);
    Group_LockTask("Cursed_Ship");
    Group_SetAddress("Cursed_Ship", "IslaDeMuerte", "Quest_ships", "Quest_Ship_12");
    Sea_LoginGroupNow("Cursed_Ship");
    characters[GetCharacterIndex("Barbossa")].nosurrender = 2;
    Characters[GetCharacterIndex("Barbossa")].recognized = true;
    Character_SetAbordageEnable(characterFromID("Barbossa"), true);
    UpdateRelations();
    
    Pchar.quest.Cursed_ShipDestroyed.win_condition.l1 = "NPC_death";
    Pchar.quest.Cursed_ShipDestroyed.win_condition.l1.character = "Barbossa";
    Pchar.quest.Cursed_ShipDestroyed.win_condition = "Cursed_ShipDestroyed";
    break;
    At the moment you presumably have a piece of code which starts:
    Code:
    case "FrenchShipDestroyed":
    Make a second copy of that section. Change one to:
    Code:
    case "BlackbeardDestroyed":
    and the other to:
    Code:
    case "Cursed_ShipDestroyed":
    Relations code has been rewritten. 'SetCharacterRelationBoth' doesn't work as it did. Instead, 'Characters[GetCharacterIndex("Barbossa")].recognized = true;' will turn Barbossa hostile to you.

    This code:
    Code:
    if(GetRMRelation(Pchar, FRANCE) > REL_WAR) SetRMRelation(Pchar, FRANCE, REL_WAR);
    turns France hostile to you. That makes sense in "Hornblower" as France has just declared war on Britain at that point in the story; it makes little sense here unless you want France to get upset because you're attacking Blackbeard or Barbossa! Likewise:
    Code:
    if(GetRMRelation(Pchar, PIRATE) > REL_WAR) SetRMRelation(Pchar, PIRATE, REL_WAR);
    turns Pirates hostile to you, which might make sense as you're attacking a couple of legendary pirates, but does mean that you don't want to do this quest if you have joined the Brotherhood on Nevis.
     
  16. Calico Jack

    Calico Jack Powder Monkey

    Joined:
    Jul 15, 2016
    Messages:
    44
    Gender:
    Male
    thank you

    There's a way to make the barbossa be hostile to everyone.?
     
    Last edited: Jul 7, 2017
  17. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    6,414
    He's a pirate (presumably wherever you've defined the character, you've included 'ch.nation = PIRATE;') which means he'll be hostile to all nations apart from Pirates. He'll be hostile to you, regardless of what nation you are, because of the line 'Characters[GetCharacterIndex("Barbossa")].recognized = true;'.
     
    Calico Jack likes this.
  18. Calico Jack

    Calico Jack Powder Monkey

    Joined:
    Jul 15, 2016
    Messages:
    44
    Gender:
    Male
    For some reason when I start the quest a message appears in the corner of the screen written ERROR missing characte id: Barbossa
    I checked the names on the models and the name is right.
    this time i have no ideia whats happening this time
     
  19. Grey Roger

    Grey Roger Sea Dog Staff Member Storm Modder

    Joined:
    Feb 12, 2007
    Messages:
    6,414
    The model "Barbossa" might exist, but the character does not. You can meet him in storylines such as "Tales of a Sea Hawk" because they have folders such as "PROGRAM\Storyline\standard\characters\init", in which are the files that define the characters in the story. Look in "PROGRAM\Storyline\standard\characters\init\Story.c", where you'll find his definition. Copy that into "PROGRAM\Storyline\FreePlay\characters\init\TempQuestEnemy.c".

    The reason you haven't seen a similar error for Blackbeard is that he is defined in "PROGRAM\Characters\init\CommonQuest.c" so that he can appear on the beach of Isla de Muerte in all storylines. But if you put Barbossa's definition in that file, you'll get errors if you play any storyline which already has its own definition for him.
     
  20. Calico Jack

    Calico Jack Powder Monkey

    Joined:
    Jul 15, 2016
    Messages:
    44
    Gender:
    Male
    not worked still the same error i need to star a new campaing ?

    now work tanks for helping
     
    Last edited: Jul 7, 2017

Share This Page