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.

Including sidequests in a new storyline

Discussion in 'Other' started by Jason Maffettone, Aug 1, 2014.

  1. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    Hey all, I just made a custom storyline and I want to include all the side quests from the main game; everything not related to the main quest. The examples here include a couple here and there but I want all of them and its not obvious what I need to port over into my new folder to accomplish this.

    Any help would be greatly appreciated.

    [​IMG]
     
    Last edited: Aug 21, 2014
    HellSailor and DavyJack like this.
  2. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,628
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    http://www.piratesahoy.net/wiki/new-horizon-quests/
    If you copy Master & Commander/The Buccaneer, then you get a whole bunch of sidequests already included.
    Not all, because the person who was working on separating them from the Standard storyline stopped work on it at some point.
    Each quest is spread out over a great many files, so you'd have to find all relevant code sections and add them into your new storyline folder.
    See this thread for further reference: http://www.piratesahoy.net/threads/sidequests-for-additional-storylines.20555/

    If you would be interested to work on this, by all means please do so!
    Select a quest you'd like to move over and if you get stuck, post here so we can point you in the right direction. :doff
     
  3. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    What about doing it this way: Can I simply move the ENTIRE standard story, with all the side quests, into the new storyline and simply disable the mainstory missions with an eye twoards stripping them out as I go along? This way, in the end, we would have a compilation of ALL the non-Seahawk quests that could simply be dropped in any current or new storyline folder. Simply preventing the French invasion of Oxbay should render the entire standard storyline inaccessable.
     
  4. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,628
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    You can certainly try. You'd probably end up with quite a lot of code-clutter though.
    I never saw any objection to the main quest being there anyway; you can easily ignore it and do something else. :shrug
     
  5. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    What would I need to move into the story folder to make that happen?
     
  6. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,628
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    Just copy that whole Standard folder and start modifying.
     
  7. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    On the case!

    Now, to stop the main storyline from happenning (in the short term before I get it stripped down) I can just comment-out (//) the initial mission, correct?
     
  8. Jack Rackham

    Jack Rackham HoO Team Member Quest Writer Storm Modder

    Joined:
    Jul 5, 2004
    Messages:
    3,288
    Gender:
    Male
    Occupation:
    math teacher
    Location:
    Sund, Ramsjö, Sweden
    Do it (/* */) and see what happens. Maybe you want to get rid of Malcolm Hatcher too - or not.
    You'll see what works.
     
  9. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    Well, the both_reaction file seemed to have nothing but main story info in it so I just didn't include it and so far everything seems alright. Found and hired Rys Bloom in Port Royal and met the pirate chick on one of the Spanish islands that wants to rob the mine. The only thing that I notice is missing so far is the two guys that are having the fight at the pirate port and one joins you after and you have that trasure mission with. Forget the names. You can stop the bully from killing the navigator when you first enter the pirate settlement. That's not there although I start the player in the tavern of the pirate settlement so maybe that has something to do with it.

    Another odd thing. I have you start at the tavern in the pirate port and if you use the quick travel to go to the port it brings you to the tavern while on that island and it doesn't put your ship at the pirate port but rather the English settlement on the far side of the island. Not sure why...
     
  10. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,628
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    Both_reaction.c in the Standard storyline contains a lot of Tutorial stuff, but I think also a bit of Sideques affairs.
    Do you have the correct SetCharacterShipLocation line?
     
  11. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    Didn't think to look at the indicators. Assumed that since I was at the pirate port it would put my ship there. I assumed over much it seems, lol. Where would one locate the SetCharacterShipLocation line?
     
  12. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,628
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    Probably just before the QuestReloadToLocation line. Example from console.c:
    Code:
        //   DoQuestReloadToLocation("Oxbay_Port", "reload", "reload1" ,"_");
         //   SetCharacterShipLocation(Pchar, "Oxbay_Port");
     
  13. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    Found the trouble; I set my starting port to the Tavern as well. :oops:
     
    Pieter Boelen likes this.
  14. Nightmare

    Nightmare Freebooter

    Joined:
    Jun 15, 2014
    Messages:
    252
    Gender:
    Male
    Occupation:
    Year 9 Student
    Location:
    Melbourne Victoria Australia
    holy Jason my friend will love this story i also makeing a storyline.
     
  15. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    Okay, how do I prevent the French invasion of Oxbay, so as to derail the whole main storyline, without causing the entire game to foul up. Everything I've tried ends up causing an error to occure.
     
  16. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,628
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    quests_reaction.c, this code is what is triggered for the French Invasion:
    Code:
        case "Story_leavingOxbay":
           ChangeCharacterAddress(characterFromID("Guy Gilroy"), "none", ""); // NK 05-07-20
    
           Locations[FindLocation("Oxbay_town_exit")].locators_radius.goto.citizen08 = 12.0;
           Locations[FindLocation("Falaise_De_Fleur_location_03")].reload.l3.disable = 0; // NK
           //âêëþ÷àåì êîðàáëü îäíîãî èç îôèöåðîâ.
           setCharacterShipLocation(characterFromID("Clair Larrouse"), "Muelle_port"); // boal
           //Óñòàíîâêà àòðèáóòà äëÿ ïðîâåðêè çàõâà÷åííîñòè Îêñáýÿ
           PChar.Quest.Story_OxbayCaptured = "1";
           //Ñìåíà íàöèîíàëüíîñòè ôîðòà Îêñáýÿ
           // KK Characters[GetCharacterIndex("Oxbay Commander")].nation = FRANCE;
           // KK Characters[GetCharacterIndex("Oxbay Commander")].model = "Soldier_fra";
           // NK - LAi_SetImmortal(characterFromID("Oxbay Commander"), true);
           // KK SetTownNation("Oxbay", FRANCE); // NK
           //Ñìåíà àíãëèéñêèõ ñîëäàò â Îêñáýå íà ôðàíöóçñêèõ
           //Óäàëåíèå àíãëèéñêèõ
           CaptureTownForNation("Oxbay", FRANCE);   // KK
    
           // KK: Set French Soldiers for Oxbay -->
           for (int n = 0; n < CHARACTERS_QUANTITY; n++)
           {
             if (!CheckAttribute(characters[n], "location")) continue;
             if (FindLocation(characters[n].location) == -1) continue;
             if (GetTownIDFromLocID(characters[n].location) == "Oxbay")
             {
               if (isOfficer(characters[n])) continue;     // LDH fix for our officers becoming French soldiers on leaving Oxbay - 19Jan09
               if (isSoldier(characters[n]) != UNKNOWN_NATION)
               {
                 characters[n].Dialog.Filename = "Story_Fra_Occup_common_dialog.c";
                 characters[n].greeting = "Gr_Story_French Occupant";
               }
             }
           }
           // KK: Set French Soldiers for Oxbay <--
    
           // ADDING GOODS AND CREW TO THEIR SHIPS // changed by MAXIMUS [gunpowder mod] --> // KK -->
           SetCrewQuantity(characterFromID("Remy Gatien"), makeint(GetMaxCrewQuantity(characterFromID("Remy Gatien"))));
           SetCharacterGoods(characterFromID("Remy Gatien"),GOOD_WHEAT,makeint(sti(GetCrewQuantity(characterFromID("Remy Gatien"))) * FOOD_PER_CREW * WHEAT_DAYS));
           SetCharacterGoods(characterFromID("Remy Gatien"),GOOD_RUM,makeint(GetCrewQuantity(characterFromID("Remy Gatien"))) * FOOD_PER_CREW * RUM_DAYS));
           SetCrewQuantity(characterFromID("Yves Giner"), makeint(GetMaxCrewQuantity(characterFromID("Yves Giner"))));
           SetCharacterGoods(characterFromID("Yves Giner"),GOOD_WHEAT,makeint(sti(GetCrewQuantity(characterFromID("Yves Giner"))) * FOOD_PER_CREW * WHEAT_DAYS));
           SetCharacterGoods(characterFromID("Yves Giner"),GOOD_RUM,makeint(GetCrewQuantity(characterFromID("Yves Giner"))) * FOOD_PER_CREW * RUM_DAYS));
           SetCrewQuantity(characterFromID("Begon Monchaty"), makeint(GetMaxCrewQuantity(characterFromID("Begon Monchaty"))));
           SetCharacterGoods(characterFromID("Begon Monchaty"),GOOD_WHEAT,makeint(sti(GetCrewQuantity(characterFromID("Begon Monchaty"))) * FOOD_PER_CREW * WHEAT_DAYS));
           SetCharacterGoods(characterFromID("Begon Monchaty"),GOOD_RUM,makeint(GetCrewQuantity(characterFromID("Begon Monchaty"))) * FOOD_PER_CREW * RUM_DAYS));
           // ADDING GOODS AND CREW TO THEIR SHIPS // changed by MAXIMUS [gunpowder mod] <-- // <-- KK
    
           // ADDING GUNPOWDER TO THEIR SHIPS // added by MAXIMUS [gunpowder mod] -->
           if (CANNONPOWDER_MOD) {// TIH --> mod toggle 7-7-06
             canQty = 0;
             crewQty = 0;
             canQty = GetCannonQuantity(characterFromID("Remy Gatien"));
             crewQty = GetCrewQuantity(characterFromID("Remy Gatien"));
             SetCharacterGoods(characterFromID("Remy Gatien"),GOOD_GUNPOWDER,makeint(canQty*5)+makeint(crewQty*3));
             canQty = GetCannonQuantity(characterFromID("Yves Giner"));
             crewQty = GetCrewQuantity(characterFromID("Yves Giner"));
             SetCharacterGoods(characterFromID("Yves Giner"),GOOD_GUNPOWDER,makeint(canQty*5)+makeint(crewQty*3));
             canQty = GetCannonQuantity(characterFromID("Begon Monchaty"));
             crewQty = GetCrewQuantity(characterFromID("Begon Monchaty"));
             SetCharacterGoods(characterFromID("Begon Monchaty"),GOOD_GUNPOWDER,makeint(canQty*5)+makeint(crewQty*3));
           }// TIH <-- mod toggle
           // ADDING GUNPOWDER TO THEIR SHIPS // added by MAXIMUS [gunpowder mod] <--
    
           Group_CreateGroup("Story_French_Squadron");
           Group_AddCharacter("Story_French_Squadron", "Remy Gatien");
           Group_AddCharacter("Story_French_Squadron", "Yves Giner");
           Group_AddCharacter("Story_French_Squadron", "Begon Monchaty");
           Group_SetGroupCommander("Story_French_Squadron", "Remy Gatien");
           Group_SetAddress("Story_French_Squadron", "Oxbay", "Quest_Ships","Quest_Ship_7");
    
    // KK -->
           if (!CheckQuestAttribute("StartAdventure", "begin")) {
             //Ïåðåìåùåíèå Ðåéìñà â ðåçèäåíöèþ ãóáåðíàòîðà
             ChangeCharacterAddress(characterFromID("Raoul Rheims"), "Redmond_residence", "goto1");
    
             //Çàâåäåíèå êâåñòà íà âñòðå÷ó ñ Ðåéìñîì â ðåçèäåíöèè ãóáåðíàòîðà è óõîä Ðåéìñà
             Pchar.quest.Story_First_Meeting_with_Rheims.win_condition.l1 = "location";
             Pchar.quest.Story_First_Meeting_with_Rheims.win_condition.l1.location = "redmond_residence";
             Pchar.quest.Story_First_Meeting_with_Rheims.win_condition = "Story_First_Meeting_with_Rheims";
    
             //çàâåäåíèå êâåñòà íà äèàëîã ñî ñòðàæíèêîì
             if(GetServedNation() == ENGLAND || GetServedNation() == PERSONAL_NATION)
             {
               pchar.quest.first_time_to_redmond_townhall.win_condition.l1 = "locator";
               pchar.quest.first_time_to_redmond_townhall.win_condition.l1.location = "Redmond_town_01";
               pchar.quest.first_time_to_redmond_townhall.win_condition.l1.locator_group = "goto";
               pchar.quest.first_time_to_redmond_townhall.win_condition.l1.locator = "goto10";
               pchar.quest.first_time_to_redmond_townhall.win_condition = "first_time_to_redmond_townhall_complete";
             }
    
             Locations[FindLocation("Redmond_town_01")].locators_radius.goto.goto10 = 2.0;
    
             DeleteQuestHeader("Tutorial_SpyGlass");
             DeleteQuestHeader("Tutorial_Store");
             DeleteQuestHeader("Tutorial_Shipyard");
             DeleteQuestHeader("Tutorial_Tavern");
    
             Pchar.quest.Tut_SellGoods.over = "yes";
             Pchar.quest.Tut_RepairShip.over = "yes";
             Pchar.quest.Tut_HireCrew.over = "yes";
           // TIH --> alternative methods for completion finished Sep3'06
             Pchar.quest.Tut_BuySpyGlass.over = "yes";
             Pchar.quest.Tut_BuySpyGlass3.over = "yes";
             Pchar.quest.Tut_BuySpyGlass4.over = "yes";
           // TIH <--
             DeleteAttribute(Pchar, "quest.tutorial.Spyglass");
    
    //KK & TIH -->
             SetQuestHeader("Story_OxbayCaptured");
             if (ENABLE_FLAGS == 0) {
               // do the original code, original quest text only
               AddQuestRecord("Story_OxbayCaptured", 2);
               PostVideoAndQuest("Invasion",500,"Story_MapLoadAfterleavingOxbay");
               bSkipSeaLogin = true;
             } else {
               // do enhanced flag deception and sailing method
               AddQuestRecord("Story_OxbayCaptured", 1);
               Pchar.quest.Story_InvasionVideoAfterLeaveOxbay.win_condition.l1 = "MapEnter";
               Pchar.quest.Story_InvasionVideoAfterLeaveOxbay.win_condition = "Story_InvasionVideoAfterLeaveOxbay";
             }
    //KK & TIH <--
             Locations[FindLocation("Oxbay_town")].reload.l2.disable = false;
             Locations[FindLocation("Oxbay_town")].reload.l55.disable = false;
           }
    // <-- KK
         break;
    It contains some stuff that you might want to keep, so I'd recommend removing only the lines related to the invasion and main quest.
    I'd imagine something like this:
    Code:
        case "Story_leavingOxbay":
           ChangeCharacterAddress(characterFromID("Guy Gilroy"), "none", ""); // NK 05-07-20
    
           Locations[FindLocation("Oxbay_town_exit")].locators_radius.goto.citizen08 = 12.0;
           Locations[FindLocation("Falaise_De_Fleur_location_03")].reload.l3.disable = 0; // NK
           //âêëþ÷àåì êîðàáëü îäíîãî èç îôèöåðîâ.
           setCharacterShipLocation(characterFromID("Clair Larrouse"), "Muelle_port"); // boal
    // KK -->
           if (!CheckQuestAttribute("StartAdventure", "begin")) {
             Locations[FindLocation("Redmond_town_01")].locators_radius.goto.goto10 = 2.0;
    
             DeleteQuestHeader("Tutorial_SpyGlass");
             DeleteQuestHeader("Tutorial_Store");
             DeleteQuestHeader("Tutorial_Shipyard");
             DeleteQuestHeader("Tutorial_Tavern");
    
             Pchar.quest.Tut_SellGoods.over = "yes";
             Pchar.quest.Tut_RepairShip.over = "yes";
             Pchar.quest.Tut_HireCrew.over = "yes";
           // TIH --> alternative methods for completion finished Sep3'06
             Pchar.quest.Tut_BuySpyGlass.over = "yes";
             Pchar.quest.Tut_BuySpyGlass3.over = "yes";
             Pchar.quest.Tut_BuySpyGlass4.over = "yes";
           // TIH <--
             DeleteAttribute(Pchar, "quest.tutorial.Spyglass");
    
             Locations[FindLocation("Oxbay_town")].reload.l2.disable = false;
             Locations[FindLocation("Oxbay_town")].reload.l55.disable = false;
           }
    // <-- KK
         break;
    I think that keeps all tutorial+sidequest code intact.
     
  17. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    I'm keeping the tutorial in place. I've changed Malcolm to a Brittish naval officer and reworked the dialogue so that it explains the background of the storyline. Essentially you port in Barbados to drop off the officers and crew who didn't want to take part in the mutany and he lets you know that the pirates you captured are willing to stay on as your new officers. I have all that in-game now I haven't been able to disable the main quest without crashing the game though.
     
  18. Hylie Pistof

    Hylie Pistof Curmudgeon Staff Member QA Tester Storm Modder

    Joined:
    Jan 15, 2010
    Messages:
    13,768
    Gender:
    Male
    Is the name of the ship the Bounty? :wp
     
    Cappy Dexer likes this.
  19. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    That would be a little on the nose, don't you think? lol
     
    Cappy Dexer likes this.
  20. Jason Maffettone

    Jason Maffettone Lord of Entropy Provisional Quest Writer Storm Modder

    Joined:
    Oct 13, 2005
    Messages:
    411
    Gender:
    Male
    Occupation:
    Malcontent
    Location:
    Florida, U.S.
    Okay, that seems to have done the trick, thank you, Peter. there is an issue, however, and it is not unique to me--I've noticed this with the free play story lines already in the game: The quest book does not have any text in it. You have the "?" and check marks for current missions displayed on the right-hand side but the actual text lines are blank.
     

Share This Page