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.

Fixed Tales of Sea Hawk - Stormy Start

Discussion in 'Bug Archive' started by Talisman, Dec 28, 2016.

  1. Talisman

    Talisman Smuggler Storm Modder

    Joined:
    Apr 29, 2009
    Messages:
    2,825
    Gender:
    Male
    Location:
    Hiding From The Coastguard
    Build 14 Beta 4-1 ( with fixes only incl GreyRogers latest fixes ) Main screen says 23 Nov 16

    When starting the Standard Story & using the Stormy Start I get an on screen error message when I am put on the beach after talking to Malcolm ( see image )
    POTC_B14_B4-1_Standard.JPG

    There appears to be some missing code (cases) in the Standard/ Quests/ both_reaction.c file

    I checked by playing the free Play version of the Stormy start and it worked OK. (no message )

    in the Standard Story Compile.log I got the following :-

    Code:
    
    ItemLogic: found 0 buttons
    Quest name EnableModelSelect FOUND in BothQuestComplete
    ERROR - Quest name stormystart4 NOT found in ANY function  <<<--- THIS ENTRY
    SETTING MUSIC: music_jungle
    SETTING MUSIC: music_jungle
    Reload: Process started for locator_name = reload1_back and lockedReloadLocator =
    

    The both_reaction.c file in the Standard Story folder has this as the code at the end of case "stormystart3": :

    Code:
    
    case "stormystart3":   // casts you ashore at a random beach with random resources
    
    ........ ( edited out lots of code from case"stormystart3") .....
    
            case 19:
               loadPort = "Oxbay_shore_01";
               loadTown = "Oxbay_shore_01";
               rldLocator = "see";
             break;
    
             // default:
             loadPort = "KhaelRoa_port";
             loadTown = "KhaelRoa_port";
             rldLocator = "reload1";
           }
           i = getRandomContrabandGood(GetIslandByID(FindIslandByLocation(loadTown)));
           if (i > 0) AddCharacterGoods(PChar, i, (2.0+rand(2))/10.0 * GetCharacterFreeSpace(PChar, i) ); // PB&Levis: Between 20%-40% contraband
           SetQuestHeader("StormyStart");
           AddQuestRecord("StormyStart", 1);
           AddQuestRecord("StormyStart", 2);
           CloseQuestHeader("StormyStart");
    
           DoQuestReloadToLocation(loadTown, "reload", rldLocator, "stormystart4");   <<---- CAUSES ERROR MESSAGE
           PlaceFleetNearShore(loadPort); // KK
    
           PostEvent("DoInfoShower",500,"s","");   //TIH - clears black screen
         break;
    // ccc end stormy start mod
    
    // KK -->
         case "Tut_SkipTutorialInPort":
           rldLocator = "Reload1";
           switch(GetCurrentFlag())
           {
             case ENGLAND:
               rldLocator = "reload1";
             break;
    
             case FRANCE:
               rldLocator = "Falaise_de_fleur_location_01_02";
    
    
    While the both_reaction.c file in the Free Play Story folder has this:

    Code:
    
    case "stormystart3":   // casts you ashore at a random beach with random resources
    
    ........ ( edited out lots of code from case"stormystart3") .....
    
            case 19:
               loadPort = "Oxbay_shore_02"; // PB (separated from ship)
               loadTown = "Oxbay_shore_01";
               rldLocator = "see";
             break;
    
             // default:
             loadPort = "KhaelRoa_port";
             loadTown = "KhaelRoa_port";
             rldLocator = "reload1";
           }
           i = getRandomContrabandGood(GetIslandByID(FindIslandByLocation(loadTown)));
           if (CharPlayerType == PLAYER_TYPE_CASTAWAY)
           {
             if (i > 0) AddCharacterGoods(PChar, i, 2);   // contraband
             SetQuestHeader("Beginning_Castaway");
             AddQuestRecord("Beginning_Castaway", 1);
           }
           else
           {
             if (i > 0) AddCharacterGoods(PChar, i, (2.0+rand(2))/10.0 * GetCharacterFreeSpace(PChar, i) ); // PB&Levis: Between 20%-40% contraband
             SetQuestHeader("StormyStart");
             AddQuestRecord("StormyStart", 1);
           }
           DoQuestReloadToLocation(loadTown, "reload", rldLocator, "stormystart4");
           PlaceFleetNearShore(loadPort); // KK
    
           PostEvent("DoInfoShower",500,"s","");   //TIH - clears black screen
         break;
    
         case "stormystart4":
           PChar.quest.stormystart5.win_condition.l1 = "ExitFromLocation";
           PChar.quest.stormystart5.win_condition.l1.location = PChar.location;
           PChar.quest.stormystart5.win_condition = "stormystart5";
         break;
    
         case "stormystart5":
           if (CharPlayerType == PLAYER_TYPE_CASTAWAY)
           {
             AddQuestRecord("Beginning_Castaway", 2);
             CloseQuestHeader("Beginning_Castaway");
           }
           else
           {
             AddQuestRecord("StormyStart", 2);
             CloseQuestHeader("StormyStart");
           }
         break;
    // ccc end stormy start mod
    
    // KK -->
         case "Tut_SkipTutorialInPort":
           rldLocator = "Reload1";
           switch(GetCurrentFlag())
           {
             case ENGLAND:
               rldLocator = "reload1";
             break;
    
             case FRANCE:
               rldLocator = "Falaise_de_fleur_location_01_02";
    
    
    with additional cases - "stormystart4": & "stormystart5":


    I was playing the Standard Story with the default occupation of Merchant - when I changed the occupation to Castaway I still got the error message on screen. :read


    :drunk
     

    Attached Files:

  2. Pieter Boelen

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

    Joined:
    Nov 11, 2004
    Messages:
    66,575
    Gender:
    Male
    Occupation:
    Maritime Research: Project Engineer (Analysis)
    Location:
    Wageningen, The Netherlands
    You're very much correct, @Talisman!

    Just replace this:
    Code:
    DoQuestReloadToLocation(loadTown, "reload", rldLocator, "stormystart4");
    
    With this:
    Code:
    DoQuestReloadToLocation(loadTown, "reload", rldLocator, "_");
    
     

Share This Page