• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Artois

Who Me or Artois? <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" />

Right i now have build mod and when i save him and dont press him for information he goes back to the orginal dialog and the quest starts all over again excepet that the pirates are not standing over him so i cant save him

two files you will want to see

The relevent bit of quests_reaction.c

<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->//Artois Voysey
  case "Story_Artois":
      if (CheckQuestAttribute("main_line", "ines_info_denied"))
      {
    LAi_QuestDelay("Story_Artois", 4.0);
      }
      else
      {
    DeleteAttribute(&Locations[FindLocation("QC_Town")],"vcskip"); // NK
    LAi_SetHP(characterFromID("Artois Voysey"), 50.0, 50.0);
    LAi_SetHP(characterFromID("Nigel Blythe"), 50.0, 50.0);
    LAi_SetActorType(CharacterFromID("Artois Voysey"));
    LAi_SetActorType(CharacterFromID("Nigel Blythe"));
    LAi_group_MoveCharacter(CharacterFromID("Artois Voysey"), "Artois");
    LAi_group_MoveCharacter(CharacterFromID("Nigel Blythe"), "Nigel");
    LAi_SetImmortal(CharacterFromID("Nigel Blythe"), true);
    LAi_ActorAttack(characterFromID("Nigel Blythe"), characterFromID("Artois Voysey"), "");
    LAi_ActorAttack(characterFromID("Artois Voysey"), characterFromID("Nigel Blythe"), "");
    LAi_SetCheckMinHP(characterFromID("Artois Voysey"), 20.0, true, "Story_Artois_2");
    LAi_SetActorType(pchar);
    LAi_ActorFollow(pchar, characterFromID("Nigel Blythe"), "", 25.0);
      }
      StartQuestMovie(true, false, false);
  break;
    
  case "Story_Artois_2":
      LAi_SetStayType(pchar);
      LAi_type_actor_Reset(characterFromID("Artois Voysey"));
      LAi_type_actor_Reset(characterFromID("Nigel Blythe"));
      LAi_ActorDialog(characterFromID("Nigel Blythe"), pchar, "", 2.0, 1.0);
  break;
  
  case "saving_artois":
      LAi_SetImmortal(characterFromID("Nigel Blythe"), false);
      LAi_SetPlayerType (Pchar);
      LAi_group_MoveCharacter(CharacterFromID("Nigel Blythe"), "nigel_2");
      //LAi_group_MoveCharacter(CharacterFromID("Artois Voysey"), "Artois");
      LAi_group_FightGroups("nigel_2", LAI_GROUP_PLAYER, true);
      LAi_group_SetCheck("nigel_2", "Artois_saved");
  break;
  
  case "Artois_saved":
      EndQuestMovie();
      SetQuestHeader("Artois");
      AddQuestRecord("artois", "1");
      LAi_SetActorType(pchar);
      LAi_SetActorType(CharacterFromID("Artois Voysey"));
      LAi_ActorWaitDialog(CharacterFromID("Artois Voysey"), PChar);
      LAi_ActorDialog(PChar, CharacterFromID("Artois Voysey"), "", 2.0, 1.0);
  break;
    
  case "Voysey_listed":
      LAi_SetImmortal(characterFromID("Artois Voysey"), false);
  
      Pchar.quest.Artois_Voysey.win_condition.l1 = "location";
      Pchar.quest.Artois_Voysey.win_condition.l1.character = "Artois Voysey";
      Pchar.quest.Artois_Voysey.win_condition.l1.location = "Conceicao_port";
      PChar.quest.Artois_Voysey.win_condition = "Artois_missed";
//NK --> fix for Artois quest repeating    
      pchar.quest.Voysey_lost = "0";
//NK <--
    
      LAi_SetPlayerType(Pchar);
      SetOfficersIndex(Pchar, 3, GetCharacterIndex("Artois Voysey")); // NK was -1
      LAi_SetOfficerType(characterFromID("Artois Voysey"));
  break;
  
  case "Voysey_listed_2":
      LAi_SetImmortal(characterFromID("Artois Voysey"), false);
  
      LAi_SetPlayerType(Pchar);
      SetOfficersIndex(Pchar, -1, GetCharacterIndex("Artois Voysey"));
  break;
  
  case "Artois_missed":
//NK -->
      if(!CheckAttribute(PChar,"quest.Voysey_lost") || PChar.quest.Voysey_lost != "0") break;
//NK <--
      if(FindFellowTravellers(PChar, CharacterFromId("Artois Voysey")) == FELLOWTRAVEL_OFFICER || FindFellowTravellers(PChar, CharacterFromId("Artois Voysey")) == FELLOWTRAVEL_PASSENGER)
      {
    LAi_LocationMonstersGen(&locations[FindLocation("Conceicao_town_exit")], false);
    pchar.quest.Voysey_lost = "1";
    RemovePassenger(pchar, characterFromID("Artois Voysey"));
    
    LAi_SetActorType(Pchar);
    Pchar.Temp.self.dialog = Pchar.dialog.currentnode;
    Pchar.dialog.currentnode = "Artois_lost";
    LAi_ActorSelfDialog(Pchar, "player_back");
    AddQuestRecord("artois", "4");
    characters[GetCharacterIndex("Artois Voysey")].location = "Redmond_store";
    ChangeCharacterAddress(characterFromID("Artois Voysey"), "none", "");
      }
  break;
  
  case "artois_before_room_on_second_floor":
      AddQuestRecord("artois", "5");
      Locations[FindLocation("Conceicao_tavern")].reload.l2.disable = false;
      Pchar.quest.Blaze_arrest.win_condition.l1 = "location";
      Pchar.quest.Blaze_arrest.win_condition.l1.location = "Conceicao_tavern_upstairs";
      PChar.quest.Blaze_arrest.win_condition = "Blaze_arrest";
      pchar.quest.Voysey_lost = "2";
  break;
    
  case "Blaze_arrest":
      AddQuestRecord("artois", "6");
      Locations[FindLocation("Conceicao_tavern")].reload.l2.disable = true;
      /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "brodyaga", "goto", "goto4");
      sld.dialog.filename = "anacleto_dialog.c";
      sld.dialog.currentnode = "ask_about_artois";
      LAi_SetActorType(sld);
      LAi_ActorSetLayMode(sld);
      LAi_ActorWaitDialog(sld, pchar);
      LAi_SetActorType(pchar);
      LAi_ActorDialog(pchar, sld, "", 4.0, 1.0);
    break;
    
  case "Blaze_cop_dialog":
      Locations[FindLocation("Conceicao_tavern_upstairs")].reload.l1.disable = true;
      LAi_SetPlayerType(pchar);
      /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "soldier_por", "reload", "reload1");
      sld.Dialog.Filename = "Cops_dialog.c";
      sld.dialog.currentnode = "First time";
      sld.id = "solja";
    
      /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "soldier_por", "reload", "reload1");
      LAi_SetActorType(sld);
      LAi_ActorFollow (sld, pchar, "", 10);
      sld.id = "solja1";
      LAi_group_MoveCharacter(sld, "CONCEICAO_SOLDIERS");
      
      LAi_SetActorType(characterfromID("solja"));
      LAi_ActorDialog(characterfromID("solja"), PChar, "", 10, 10);
      LAi_SetPlayerType(Pchar);
  break;
  
  case "artois_fight_in_tavern_upstairs":
      LAi_SetWarriorType(characterfromID("solja"));
      LAi_SetWarriorType(characterfromID("solja1"));
      LAi_group_MoveCharacter(characterFromID("solja"), "CONCEICAO_SOLDIERS");
      LAi_group_MoveCharacter(characterFromID("solja1"), "CONCEICAO_SOLDIERS");
      LAi_group_SetCheck("CONCEICAO_SOLDIERS", "Open_Locators");
      LAi_group_FightGroups("CONCEICAO_SOLDIERS", LAI_GROUP_PLAYER, true);
      
      // unneeded if(GetRMRelation(GetMainCharacter(), PORTUGAL) > REL_AFTERATTACK) SetRMRelation(GetMainCharacter(), PORTUGAL, REL_AFTERATTACK); // RM - SetNationRelation2MainCharacter(PORTUGAL, RELATION_ENEMY);
      LeaveService(PChar, PORTUGAL, false); // RM
      AddQuestRecord("artois", "7");
  break;
  
  case "Open_Locators":
      Locations[FindLocation("Conceicao_tavern_upstairs")].reload.l1.disable = false;
      
      Pchar.quest.fight.win_condition.l1 = "location";
      Pchar.quest.fight.win_condition.l1.location = "Conceicao_town";
      PChar.quest.fight.win_condition = "Blaze_fight_the_world";
      
      Pchar.quest.artois_captured.win_condition.l1 = "location";
      Pchar.quest.artois_captured.win_condition.l1.location = "Conceicao_town_exit";
      PChar.quest.artois_captured.win_condition = "artois_captured";
  break;
  
  case "Blaze_fight_the_world":
      pchar.quest.escape_from_conceicao.win_condition.l1 = "location";
      pchar.quest.escape_from_conceicao.win_condition.l1.location = "conceicao";
      pchar.quest.escape_from_conceicao.win_condition = "escape_from_conceicao";
      
      Locations[FindLocation("Conceicao_town")].reload.l3.disable = true;
      
      if (GetCharacterSkill(pchar, SKILL_SNEAK) < 3)
      {
    /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "soldier_por", "goto", "goto3");
    LAi_SetActorType(sld);
    LAi_group_MoveCharacter(sld, "CONCEICAO_SOLDIERS");
  
    /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "soldier_por", "goto", "goto5");
    LAi_group_MoveCharacter(sld, "CONCEICAO_SOLDIERS");
  
    /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "soldier_por", "goto", "goto5");
    LAi_group_MoveCharacter(sld, "CONCEICAO_SOLDIERS");
  
    /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "soldier_por", "goto", "goto3");
    LAi_group_MoveCharacter(sld, "CONCEICAO_SOLDIERS");
    
    LAi_group_FightGroups("CONCEICAO_SOLDIERS", LAI_GROUP_PLAYER, true);
      }
  break;
  
  case "escape_from_conceicao":
      Locations[FindLocation("Conceicao_town")].reload.l3.disable = false;
      
      PChar.quest.possible_for_resque_artois.win_condition.l1 = "Timer";
      PChar.quest.possible_for_resque_artois.win_condition.l1.date.day = GetAddingDataDay(0,0,4);
      PChar.quest.possible_for_resque_artois.win_condition.l1.date.month = GetAddingDataMonth(0,0,4);
      PChar.quest.possible_for_resque_artois.win_condition.l1.date.year = GetAddingDataYear(0,0,4);
      PChar.quest.possible_for_resque_artois.win_condition = "possible_for_resque_artois";
  break;
  
  case "possible_for_resque_artois":
      pchar.quest.artois_captured.over = "yes";
      ChangeCharacterAddress(CharacterFromID("Artois Voysey"), "none", "");
      ChangeCharacterAddress(CharacterFromID("Pirates_1"), "none", "");
      ChangeCharacterAddress(CharacterFromID("Pirates_2"), "none", "");
      ChangeCharacterAddress(CharacterFromID("Pirates_3"), "none", "");
      CloseQuestHeader("Artois");
  break;
  
  case "artois_captured":
      LAi_SetImmortal(characterFromID("Artois Voysey"), true);
      ChangeCharacterAddress(CharacterFromID("Artois Voysey"), "Conceicao_town_exit", "goto14");
      characters[GetCharacterIndex("Artois Voysey")].dialog.currentnode = "Captured";
      LAi_SetActorType(characterfromID("Artois Voysey"));
      LAi_ActorSetLayMode(characterfromID("Artois Voysey"));
      characters[GetCharacterIndex("Pirates_1")].dialog.filename = "anacleto_dialog.c";
      characters[GetCharacterIndex("Pirates_1")].dialog.currentnode = "artois_lay";
      characters[GetCharacterIndex("Pirates_2")].dialog.filename = "anacleto_dialog.c";
      characters[GetCharacterIndex("Pirates_2")].dialog.currentnode = "artois_lay";
      characters[GetCharacterIndex("Pirates_3")].dialog.filename = "anacleto_dialog.c";
      characters[GetCharacterIndex("Pirates_3")].dialog.currentnode = "artois_lay";
      ChangeCharacterAddress(CharacterFromID("Pirates_1"), "Conceicao_town_exit", "goto8");
      ChangeCharacterAddress(CharacterFromID("Pirates_2"), "Conceicao_town_exit", "goto9");
      ChangeCharacterAddress(CharacterFromID("Pirates_3"), "Conceicao_town_exit", "goto10");
      LAi_SetActorType(CharacterFromID("Pirates_1"));
      LAi_SetActorType(CharacterFromID("Pirates_2"));
      LAi_SetActorType(CharacterFromID("Pirates_3"));
      LAi_ActorFollow(CharacterFromID("Pirates_1"), CharacterFromID("Artois Voysey"), "reset_pirates", 7.0);
      LAi_ActorFollow(CharacterFromID("Pirates_2"), CharacterFromID("Artois Voysey"), "reset_pirates", 7.0);
      LAi_ActorFollow(CharacterFromID("Pirates_3"), CharacterFromID("Artois Voysey"), "reset_pirates", 7.0);
      //LAi_QuestDelay("go_to_artois", 20.0);
      DeleteAttribute(pchar, "quest.voysey_lost");
      LAi_SetHP(CharacterFromID("Pirates_1"), 80.0, 80.0);
      LAi_SetHP(CharacterFromID("Pirates_2"), 80.0, 80.0);
      LAi_SetHP(CharacterFromID("Pirates_3"), 80.0, 80.0);
      LAi_SetCheckMinHP(CharacterFromID("Pirates_1"), 79.0, false, "fight_for_artois_with_child_of_giens");
      LAi_SetCheckMinHP(CharacterFromID("Pirates_2"), 79.0, false, "fight_for_artois_with_child_of_giens");
      LAi_SetCheckMinHP(CharacterFromID("Pirates_3"), 79.0, false, "fight_for_artois_with_child_of_giens");
  break;
  
  case "reset_pirates":
      LAi_SetStayType(CharacterFromID("Pirates_1"));
      LAi_SetStayType(CharacterFromID("Pirates_2"));
      LAi_SetStayType(CharacterFromID("Pirates_3"));
      AddQuestRecord("artois", "10");
  break;
  
  case "fight_for_artois_with_child_of_giens":
      LAi_RemoveCheckMinHP(CharacterFromID("Pirates_1"));
      LAi_RemoveCheckMinHP(CharacterFromID("Pirates_2"));
      LAi_RemoveCheckMinHP(CharacterFromID("Pirates_3"));
      LAi_SetPlayerType(pchar);
      LAi_group_MoveCharacter(characterFromID("Pirates_1"), "CHILD_OF_GIEN");
      LAi_group_MoveCharacter(characterFromID("Pirates_2"), "CHILD_OF_GIEN");
      LAi_group_MoveCharacter(characterFromID("Pirates_3"), "CHILD_OF_GIEN");
      LAi_group_FightGroups("CHILD_OF_GIEN", LAI_GROUP_PLAYER, true);
      
      LAi_group_SetCheck("CHILD_OF_GIEN", "Artois_resque_in_jungles");
      pchar.quest.possible_for_resque_artois.over = "yes";
  break;
  
  case "portugal_becomes_neutral":
      if(GetRMRelation(GetMainCharacter(), PORTUGAL) < REL_AMNESTY) SetRMRelation(GetMainCharacter(), PORTUGAL, REL_AMNESTY); // RM - SetNationRelation2MainCharacter(PORTUGAL, RELATION_NEUTRAL);
      LAi_group_SetRelation("CONCEICAO_SOLDIERS", LAI_GROUP_PLAYER, LAI_GROUP_NEITRAL);
  break;
  
  case "Artois_resque_in_jungles":
      pchar.quest.artois_line = "resqued";
      LAi_fade("Artois_resque_in_jungles_2", "Artois_resque_in_jungles_3");
  break;
  
  case "Artois_resque_in_jungles_2":
      LAi_ActorSetStayMode(characterFromID("Artois Voysey"));
      LAi_ActorWaitDialog(characterFromID("Artois Voysey"), pchar);
  break;
  
  case "Artois_resque_in_jungles_3":
      LAi_SetActorType(pchar);
      LAi_ActorDialog(pchar, characterFromID("Artois Voysey"), "pchar_back_to_player", 5.0, 1.0);
      AddPartyExp(pchar, 5000);
  break;
  
  case "pause":
      AddQuestRecord("artois", "8");
      Locations[FindLocation("Conceicao_townhall")].reload.l1.disable = 1;
      DoQuestReloadToLocation ("Conceicao_townhall", "goto", "goto7", "pause2");
  break;
    
  case "pause2":
      Locations[FindLocation("Conceicao_tavern_upstairs")].reload.l1.disable = false;
      /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "soldier_por", "goto", "goto8");
      LAi_SetActorType(sld);
      
      /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "soldier_por", "goto", "goto1");
      LAi_SetActorType(sld);
      sld.id = "guard";
    
      /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "man6", "goto", "goto2");
      LAi_SetActorType(sld);
      sld.id = "witness";
      sld.Dialog.Filename = "witness-dialog.c";
      LAi_SetActorType(CharacterFromID("Jacinto Arcibaldo Barreto"));
      LAi_ActorSetSitMode(CharacterFromID("Jacinto Arcibaldo Barreto"));
      characters[GetCharacterIndex("Jacinto Arcibaldo Barreto")].dialog.currentnode = "j_day";
      LAi_ActorDialog(characterfromID("Jacinto Arcibaldo Barreto"), PChar, "", 2.0, 1.0);
  break;
    
  case "ex_dialog":
      LAi_ActorDialog(characterfromID("witness"), PChar, "", 1.0, 1.0);
      LAi_ActorGoToLocator(CharacterFromID("guard"), "goto", "goto9", "ex_dialog2_3", 3.0);
  break;
    
  case "ex_dialog2_3":
      //LAi_SetActorType(characterfromID("Jacinto Arcibaldo Barreto"));
      LAi_ActorWaitDialog(characterfromID("Jacinto Arcibaldo Barreto"), characterfromID("guard"));
      LAi_ActorDialog(characterfromID("guard"), characterfromID("Jacinto Arcibaldo Barreto"), "ex_dialog2_4", 1.0, 2.0);
  break;
    
  case "ex_dialog2_4":
      LAi_ActorGoToLocator(CharacterFromID("guard"), "goto", "goto1", "ex_dialog2_5", 3.0);
  break;
    
  case "ex_dialog2_5":
      LAi_ActorDialog(characterfromID("Jacinto Arcibaldo Barreto"), PChar, "acrcibaldo_back_to_hub_type", 1.0, 1.0);
      Pchar.quest.artois_captured.win_condition.l1 = "location";
      Pchar.quest.artois_captured.win_condition.l1.location = "Conceicao_town_exit";
      PChar.quest.artois_captured.win_condition = "artois_captured";
      
      PChar.quest.possible_for_resque_artois.win_condition.l1 = "Timer";
      PChar.quest.possible_for_resque_artois.win_condition.l1.date.day = GetAddingDataDay(0,0,4);
      PChar.quest.possible_for_resque_artois.win_condition.l1.date.month = GetAddingDataMonth(0,0,4);
      PChar.quest.possible_for_resque_artois.win_condition.l1.date.year = GetAddingDataYear(0,0,4);
      PChar.quest.possible_for_resque_artois.win_condition = "possible_for_resque_artois";
      AddQuestRecord("artois", "9");
  break;
  
  case "acrcibaldo_back_to_hub_type":
      Locations[FindLocation("Conceicao_townhall")].reload.l1.disable = 0;
      LAi_SetHuberType(characterfromID("Jacinto Arcibaldo Barreto"));
  break;
  
  case "prepare_shoot_in_artois":
      LAi_SetImmortal(characterFromID("Artois Voysey"), false);
      
      LAi_SetPlayerType(Pchar);
      SetOfficersIndex(Pchar, 3, GetCharacterIndex("Artois Voysey")); // NK was -1
      
      Officersreaction("good");
      pchar.quest.shoot_in_artois.win_condition.l1 = "location";
      pchar.quest.shoot_in_artois.win_condition.l1.location = "QC_port";
      pchar.quest.shoot_in_artois.win_condition = "shoot_in_artois";
      
      pchar.quest.shoot_in_artois1.win_condition.l1 = "location";
      pchar.quest.shoot_in_artois1.win_condition.l1.location = "Redmond_port";
      pchar.quest.shoot_in_artois1.win_condition = "shoot_in_artois";
      
      pchar.quest.shoot_in_artois2.win_condition.l1 = "location";
      pchar.quest.shoot_in_artois2.win_condition.l1.location = "Greenford_port";
      pchar.quest.shoot_in_artois2.win_condition = "shoot_in_artois";
      
      if (pchar.location != "Oxbay_port" && !CheckAttribute(PChar, "Quest.Story_OxbayCaptured"))
      {
    pchar.quest.shoot_in_artois3.win_condition.l1 = "location";
    pchar.quest.shoot_in_artois3.win_condition.l1.location = "Oxbay_port";
    pchar.quest.shoot_in_artois3.win_condition = "shoot_in_artois";
      }
      
      pchar.quest.shoot_in_artois4.win_condition.l1 = "location";
      pchar.quest.shoot_in_artois4.win_condition.l1.location = "Douwesen_port";
      pchar.quest.shoot_in_artois4.win_condition = "shoot_in_artois";
      
      pchar.quest.shoot_in_artois5.win_condition.l1 = "location";
      pchar.quest.shoot_in_artois5.win_condition.l1.location = "Muelle_port";
      pchar.quest.shoot_in_artois5.win_condition = "shoot_in_artois";
  break;
  
  case "shoot_in_artois":
      if (CheckQuestAttribute("generate_convoy_quest_progress", ""))
      {    
    for (int l=1; l<4; l++)
    {
        if (GetOfficersIndex(Pchar, l) > 0)
        {
      if (characters[GetOfficersIndex(Pchar, l)].id == "Artois Voysey")
      {
          pchar.quest.shoot_in_artois_complete = "complete";
      }
        }
    }
    if (CheckQuestAttribute("shoot_in_artois_complete", "complete"))
    {
        pchar.quest.shoot_in_artois.over = "yes";
        pchar.quest.shoot_in_artois1.over = "yes";
        pchar.quest.shoot_in_artois2.over = "yes";
        pchar.quest.shoot_in_artois3.over = "yes";
        pchar.quest.shoot_in_artois4.over = "yes";
        pchar.quest.shoot_in_artois5.over = "yes";
        
        GetCharacterPos(GetMainCharacter(), &locx, &locy, &locz);
        homelocator = LAi_FindFarLocator("goto", locx, locy, locz);
        /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "corsair1", "goto", homelocator);
        sld.id = "gunman";
        
        LAi_QuestDelay("shooting_in_artois_begin", 2.0);
        pchar.quest.location = pchar.location;
        pchar.quest.locator = pchar.location.locator;
    }
    else
    {
        pchar.quest.shoot_in_artois.win_condition.l1 = "location";
        pchar.quest.shoot_in_artois.win_condition.l1.location = "QC_port";
        pchar.quest.shoot_in_artois.win_condition = "shoot_in_artois";
        
        pchar.quest.shoot_in_artois1.win_condition.l1 = "location";
        pchar.quest.shoot_in_artois1.win_condition.l1.location = "Redmond_port";
        pchar.quest.shoot_in_artois1.win_condition = "shoot_in_artois";
        
        pchar.quest.shoot_in_artois2.win_condition.l1 = "location";
        pchar.quest.shoot_in_artois2.win_condition.l1.location = "Greenford_port";
        pchar.quest.shoot_in_artois2.win_condition = "shoot_in_artois";
        
        pchar.quest.shoot_in_artois3.win_condition.l1 = "location";
        pchar.quest.shoot_in_artois3.win_condition.l1.location = "Oxbay_port";
        pchar.quest.shoot_in_artois3.win_condition = "shoot_in_artois";
        
        pchar.quest.shoot_in_artois4.win_condition.l1 = "location";
        pchar.quest.shoot_in_artois4.win_condition.l1.location = "Douwesen_port";
        pchar.quest.shoot_in_artois4.win_condition = "shoot_in_artois";
        
        pchar.quest.shoot_in_artois5.win_condition.l1 = "location";
        pchar.quest.shoot_in_artois5.win_condition.l1.location = "Muelle_port";
        pchar.quest.shoot_in_artois5.win_condition = "shoot_in_artois";
    }
      }
      else
      {
    LAi_QuestDelay("shoot_in_artois", 3.0);
      }
  break;
  
  case "shooting_in_artois_begin":
      GetCharacterPos(GetMainCharacter(), &locx, &locy, &locz);
      homelocator = LAi_FindFarLocator("goto", locx, locy, locz);
      homelocation = pchar.location;
      CreateParticleSystemOnLocator(homelocation, homelocator, "gunfire");
      LAi_SetActorType(characterFromID("Artois Voysey"));
      LAi_ActorAnimation(characterFromID("Artois Voysey"), "death_1", "almost_killed_artois", 4.0);
      Play3DSound("objects\duel\pistol_shot1.wav", locx, locy, locz);
  break;
  
  case "almost_killed_artois":
      GetCharacterPos(GetMainCharacter(), &locx, &locy, &locz);
      homelocator = LAi_FindFarLocator("reload", locx, locy, locz);
      LAi_SetActorType(characterFromID("gunman"));
      LAi_ActorRunToLocation(characterFromID("gunman"), "reload", homelocator, "none", "", "", "", 10.0);
      LAi_ActorAnimation(characterFromID("Artois Voysey"), "lay_2", "", 4.0);
      LAi_SetActorType(Pchar);
      Pchar.Temp.self.dialog = Pchar.dialog.currentnode;
      Pchar.dialog.currentnode = "artois_shooted";
      LAi_ActorSelfDialog(Pchar, "player_back");
      AddQuestRecord("artois", "14");
  break;
  
  case "to_tavern_with_almost_dead_artois":
      RemoveOfficersIndex(pchar, GetCharacterIndex("Artois Voysey"));
      RemovePassenger(pchar, characterFromID("Artois Voysey"));
      ChangeCharacterAddress(characterFromID("Artois Voysey"), "none", "");
      DoQuestReloadToLocation("Muelle_tavern_upstairs", "goto", "goto2", "talk_with_doctor");
  break;
  
  case "talk_with_doctor":
      GetCharacterPos(GetMainCharacter(), &locx, &locy, &locz);
      homelocator = LAi_FindNearestFreeLocator("goto", locx, locy, locz);
      /*NK*/ sld = LAi_CreateFantomCharacter(0, true, true, 0.25, "fatman2", "goto", homelocator);
      sld.id = "doctor";
      sld.dialog.filename = "anacleto_dialog.c";
      sld.dialog.currentnode = "doctor";
      LAi_SetActorType(sld);
      LAi_ActorDialog(sld, pchar, "", 2.0, 1.0);
      LAi_SetStayType(pchar);
  break;
  
  case "exit_doctor_bad":
      AddQuestRecord("artois", "15");
      CloseQuestHeader("artois");
      homelocation = pchar.quest.location;
      homelocator = pchar.quest.locator;
      DoQuestReloadToLocation(homelocation, "reload", homelocator, "pchar_back_to_player");
      Officersreaction("bad");
      ChangeCharacterReputation(pchar, -2);
  break;
  
  case "exit_doctor_good":
      environment.date.day = GetAddingDataDay(0,0,14);
      environment.date.month = GetAddingDataMonth(0,0,14);
      environment.date.year = GetAddingDataYear(0,0,14);
      AddQuestRecord("artois", "16");
      homelocation = pchar.quest.location;
      homelocator = pchar.quest.locator;
      DoQuestReloadToLocation(homelocation, "reload", homelocator, "final_talk_with_artois");
      Officersreaction("good");
      ChangeCharacterReputation(pchar, 2);
  break;
  
  case "final_talk_with_artois":
      LAi_SetPlayerType(pchar);
      homelocation = pchar.location;
      PlaceCharacter(characterFromID("Artois Voysey"), "goto", homelocation);
      LAi_SetActorType(characterFromID("Artois Voysey"));
      LAi_type_actor_Reset(characterFromID("Artois Voysey"));
      Characters[GetCharacterIndex("Artois Voysey")].dialog.currentnode = "final_talk";
      LAi_ActorDialog(characterFromID("Artois Voysey"), pchar, "Voysey_listed_2", 3.0, 1.0);
      
      pchar.quest.treasure_found.win_condition.l1 = "locator";
      pchar.quest.treasure_found.win_condition.l1.location = "Douwesen_Shore_ship";
      pchar.quest.treasure_found.win_condition.l1.locator_group = "randitem";
      pchar.quest.treasure_found.win_condition.l1.locator = "randitem1";
      pchar.quest.treasure_found.win_condition = "treasure_found";
      AddQuestRecord("artois", "17");
      AddPartyExp(pchar, 5000);
      //AddPassenger(Pchar, characterFromID("Artois Voysey"), 0);
  break;
  
  case "treasure_found":
      AddMoneyToCharacter(PChar, 50000);
      Log_SetStringToLog(QUEST_MESSAGE4);
      AddQuestRecord("artois", "18");
      AddPartyExp(pchar, 15000);
      if (CheckQuestAttribute("artois_line", "completed"))
      {
    PChar.quest.Wait_For_donate.win_condition.l1 = "Timer";
    PChar.quest.Wait_For_donate.win_condition.l1.date.day = GetAddingDataDay(0,1,0);
    PChar.quest.Wait_For_donate.win_condition.l1.date.month = GetAddingDataMonth(0,1,0);
    PChar.quest.Wait_For_donate.win_condition.l1.date.year = GetAddingDataYear(0,1,0);
    PChar.quest.Wait_For_donate.win_condition = "Wait_For_donate";
    pchar.quest.artois_line = "found_gold";
      }
      else
      {
    CloseQuestHeader("artois");
      }  
  break;
  
  case "Wait_For_donate":
      OfficersReaction("bad");
      ChangeCharacterReputation(pchar, -2);
      pchar.quest.artois_line = "final_state";
      AddQuestRecord("artois", "20");
      CloseQuestHeader("artois");
  break;
  
  case "artois_donate_done":
      pchar.quest.Wait_For_donate.over = "yes";
      OfficersReaction("good");
      ChangeCharacterReputation(pchar, 4);
      AddMoneyToCharacter(PChar, -4000);
      AddQuestRecord("artois", "19");
      CloseQuestHeader("artois");
      DeleteQuestAttribute("artois_line"); // NK
      AddPArtyExp(pchar, 7000);
  break;<!--c2--></div><!--ec2-->

Artois Voysey_dialog.c

<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->#include "DIALOGS\Artois Voysey_dialog.h"

void ProcessDialogEvent()
{
    ref NPChar, PChar, d;
    PChar = GetMainCharacter();
    aref Link, Diag;
    string NPC_Meeting;
    
    DeleteAttribute(&Dialog,"Links");

    makeref(NPChar,CharacterRef);
    makearef(Link, Dialog.Links);
    makeref(d, Dialog);
    makearef(Diag, NPChar.Dialog);
    
    switch(Dialog.CurrentNode)
    {
  // -----------------------------------Äèàëîã ïåðâûé - ïåðâàÿ âñòðå÷à
  case "exit":
      Diag.CurrentNode = Diag.TempNode;
      NPChar.quest.meeting = NPC_Meeting;
      DialogExit();
  break;

  case "exit1":
      AddDialogExitQuest("Leave_Voysey");
      Diag.CurrentNode = "continue2";
      DialogExit();
      AddQuestRecord("artois", "3");
  break;

  case "First time":
      Dialog.defAni = "dialog_stay1";
      Dialog.defCam = "1";
      Dialog.defSnd = "dialogs\0\017";
      Dialog.defLinkAni = "dialog_1";
      Dialog.defLinkCam = "1";
      Dialog.defLinkSnd = "dialogs\woman\024";
      Dialog.ani = "dialog_stay2";
      Dialog.cam = "1";
      
      dialog.snd = "Voice\ARVO\ARVO001";
      d.Text = DLG_TEXT[0];
      if (PChar.sex == "man")
      {
    Link.l1 = DLG_TEXT[1];
      }
      else
      {
    Link.l1 = DLG_TEXT[2];
      }
      Link.l1.go = "continue";
  break;

  case "continue":
      dialog.snd = "Voice\ARVO\ARVO002";
      d.Text = DLG_TEXT[3];
      Link.l1 = PCharPhrase (DLG_TEXT[4], DLG_TEXT[5] + PChar.name + DLG_TEXT[6]);
      Link.l1.go = "continue2";
  break;

  case "continue2":
      dialog.snd = "Voice\ARVO\ARVO003";
      d.Text = DLG_TEXT[7];
      Link.l99 = DLG_TEXT[8];
      Link.l99.go = "exit1";
      Link.l2 = DLG_TEXT[9];
      Link.l2.go = "listed";
  break;

  case "listed":
      AddDialogExitQuest("Voysey_listed");
      AddQuestRecord("artois", "2");
      Diag.CurrentNode = "officer_Artois";
      NPChar.quest.meeting = NPC_Meeting;
      DialogExit();
  break;

  case "officer_Artois":
      dialog.snd1 = "Voice\ARVO\ARVO004";
      dialog.snd2 = "Voice\ARVO\ARVO005";
      dialog.snd3 = "Voice\ARVO\ARVO006";
      Diag.TempNode = "officer_Artois";
      d.Text = RandPhrase (DLG_TEXT[10], DLG_TEXT[11], DLG_TEXT[12], &dialog, dialog.snd1, dialog.snd2, dialog.snd3);
      Link.l1 = DLG_TEXT[13];
      Link.l1.go = "exit";
  break;

  case "Captured":
      dialog.snd = "Voice\ARVO\ARVO007";
      d.Text = DLG_TEXT[14];
      Link.l1 = DLG_TEXT[15];
      Link.l1.go = "continue4";
  break;

  case "continue4":
      dialog.snd = "Voice\ARVO\ARVO008";
      d.Text = DLG_TEXT[16];
      Link.l1 = DLG_TEXT[17];
      Link.l1.go = "continue5";
      Link.l2 = DLG_TEXT[18];
      Link.l2.go = "continue6";
  break;

  case "continue5":
      dialog.snd = "Voice\ARVO\ARVO009";
      pchar.quest.treasure_found.win_condition.l1 = "locator";
      pchar.quest.treasure_found.win_condition.l1.location = "Douwesen_shore_ship";
      pchar.quest.treasure_found.win_condition.l1.locator_group = "randitem";
      pchar.quest.treasure_found.win_condition.l1.locator = "randitem1";
      pchar.quest.treasure_found.win_condition = "treasure_found";
      NPChar.loyality = makeint(NPChar.loyality) - 5;
      d.Text = DLG_TEXT[19];
      Link.l1 = DLG_TEXT[20];
      Link.l1.go = "exit";
      OfficersReaction("bad");
      AddDialogExitQuest("Voysey_listed_2");
      AddQuestRecord("artois", "11");
  break;
  
  case "continue6":
      dialog.snd = "Voice\ARVO\ARVO010";
      dialog.text = DLG_TEXT[21];
      link.l1 = DLG_TEXT[22];
      if (GetNationRelation2MainCharacter(PORTUGAL) == RELATION_ENEMY)
      {
    link.l1.go = "continue7";
      }
      else
      {
    link.l1.go = "exit";
      }
      AddQuestRecord("artois", "12");
      AddDialogExitQuest("prepare_shoot_in_artois");
  break;
  
  case "continue7":
      dialog.snd = "Voice\ARVO\ARVO011";
      dialog.text = DLG_TEXT[23];
      link.l1 = DLG_TEXT[24];
      link.l1.go = "continue_8";
  break;
  
  case "continue_8":
      dialog.snd = "Voice\ARVO\ARVO012";
      dialog.text = DLG_TEXT[25];
      link.l1 = DLG_TEXT[26];
      link.l1.go = "exit";
      AddDialogExitQuest("portugal_becomes_neutral");
      AddQuestRecord("artois", "13");
  break;
  
  case "final_talk":
      dialog.snd = "Voice\ARVO\ARVO013";
      dialog.text = DLG_TEXT[27];
      link.l1 = DLG_TEXT[28];
      link.l1.go = "final_talk_2";
  break;
  
  case "final_talk_2":
      dialog.snd = "Voice\ARVO\ARVO014";
      dialog.text = DLG_TEXT[29];
      link.l1 = DLG_TEXT[30];
      link.l1.go = "exit";      
      pchar.quest.artois_line = "completed";
  break;
    }
}<!--c2--></div><!--ec2-->
 
Really, you don't need to post the code /twice/... <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" />
Or once, really, since you haven't modded the code, right?
I'd put a trace() in where it assigns all the location winconditions for shooting artois, to see if that's run when you don't press him.
 
I have the same problem in my current game. I posted about this problem <a href="http://forum.piratesahoy.net/index.php?showtopic=3957" target="_blank">here</a>.

Sorry I'm not much help, but at least we know it's not an isolated event.
 
<!--QuoteBegin-NathanKell+May 10 2005, 04:30 AM--><div class='quotetop'>QUOTE(NathanKell @ May 10 2005, 04:30 AM)</div><div class='quotemain'><!--QuoteEBegin-->Is Artois currently in your passengers list? Can you make him an officer?
(If not, the quest is broken).

If so, make him an officer.
Then go to QC's port. A fantom corsair should appear and shoot Artois.
<div align="right">[snapback]104691[/snapback]</div><!--QuoteEnd--></div><!--QuoteEEnd-->
<img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/hi.gif" style="vertical-align:middle" emoid=":gday" border="0" alt="hi.gif" />
I was just at this point so I did as suggested, it didn't work.

I have done the Voysey quest 8 or 9 times since original PotC and as I try to play nice, at first did not pressure him.

I've tried it 2 and now 3 times that way and have never gotten him shot.

Tha code may say one thing, but Voysey has a mind of his own and is not keen on some programmer's silly the idea of having him attacked again and this time being shot. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/dev.gif" style="vertical-align:middle" emoid=":d:" border="0" alt="dev.gif" />
 
<!--QuoteBegin-NathanKell+May 12 2005, 11:08 PM--><div class='quotetop'>QUOTE(NathanKell @ May 12 2005, 11:08 PM)</div><div class='quotemain'><!--QuoteEBegin-->Really, you don't need to post the code /twice/... <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/wink.gif" style="vertical-align:middle" emoid=";)" border="0" alt="wink.gif" />
Or once, really, since you haven't modded the code, right?
I'd put a trace() in where it assigns all the location winconditions for shooting artois, to see if that's run when you don't press him.
<div align="right">[snapback]105106[/snapback]</div><!--QuoteEnd--></div><!--QuoteEEnd-->
sorry bout that
I had put build mod on and thought it might be different

I put in your trace() But got an abnormal program termination
 
Did you put anything in the brackets ? - like

trace ("Hi I'm here");

(And did you think of the semicolon at the end of the line?)
 
<!--QuoteBegin-Inez Dias+May 13 2005, 02:49 PM--><div class='quotetop'>QUOTE(Inez Dias @ May 13 2005, 02:49 PM)</div><div class='quotemain'><!--QuoteEBegin-->Did you put anything in the brackets ? - like

trace ("Hi I'm here");

(And did you think of the semicolon at the end of the line?)
<div align="right">[snapback]105202[/snapback]</div><!--QuoteEnd--></div><!--QuoteEEnd-->

No, <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/no.gif" style="vertical-align:middle" emoid=":no" border="0" alt="no.gif" /> can you explain how to use trace please?
 
<!--QuoteBegin-fudge dragon+May 13 2005, 05:13 PM--><div class='quotetop'>QUOTE(fudge dragon @ May 13 2005, 05:13 PM)</div><div class='quotemain'><!--QuoteEBegin-->can you explain how to use trace please?<!--QuoteEnd--></div><!--QuoteEEnd-->
It's generally used to write messages into the log file (I think it's compile.log, but might be any other of the files that end with log.
The line
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->trace ("Hi I'm here");<!--c2--></div><!--ec2-->
would write "Hi I'm here" into the file (without the quotes). You can put whatever you like between the quotes.

The way Nathan suggested to use it is to find out if a particular part of the code is ever executed at all: you put the above trace line into that part of code, play the game, and afterwards look if the line is in the file. If it's there, you know that piece of code has been executed.

However what exactly is the piece of code you should watch out for I don't know,
"location win condition" probably means one of the lines that end with

.win_condition.l1 = "location";

I think maybe it is this one:

<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->pchar.quest.shoot_in_artois.win_condition.l1 = "location";<!--c2--></div><!--ec2-->

If you put a trace line before that line you'll be able to see if it is executed, and then someone with more knowledge than me will probably know why (or why not).
 
<!--QuoteBegin-fudge dragon+May 12 2005, 11:46 AM--><div class='quotetop'>QUOTE(fudge dragon @ May 12 2005, 11:46 AM)</div><div class='quotemain'><!--QuoteEBegin-->Who Me or Artois? <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" /> <div align="right">[snapback]105082[/snapback]</div><!--QuoteEnd--></div><!--QuoteEEnd--> Artois. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/icon_mrgreen1.gif" style="vertical-align:middle" emoid=":cheeky" border="0" alt="icon_mrgreen1.gif" />

<!--QuoteBegin-Petros+--><div class='quotetop'>QUOTE(Petros)</div><div class='quotemain'><!--QuoteEBegin-->Voysey has a mind of his own and is not keen on some programmer's silly the idea of having him attacked again and this time being shot.<!--QuoteEnd--></div><!--QuoteEEnd--> <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/w00t.gif" style="vertical-align:middle" emoid=":woot" border="0" alt="w00t.gif" /> You may have a point there, Petros! <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/diomed.gif" style="vertical-align:middle" emoid=":dio" border="0" alt="diomed.gif" /> <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/laugh.gif" style="vertical-align:middle" emoid="xD:" border="0" alt="laugh.gif" />

Since working on my Animists Quest fix, I've found I'm really good at tracking the scripting; I'll take a look later on to see if I can figure out why this part of the quest is "broken". <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/me.gif" style="vertical-align:middle" emoid=":onya" border="0" alt="me.gif" /> It may be one of those "dead ends" - fragments of script that got cut out of the original game but were left in due to lack of time to cull them before final release... <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/dunno.gif" style="vertical-align:middle" emoid=":shrug" border="0" alt="dunno.gif" /> I'll see what I can find. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/yes.gif" style="vertical-align:middle" emoid=":yes" border="0" alt="yes.gif" /> <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/par-ty.gif" style="vertical-align:middle" emoid=":cheers" border="0" alt="par-ty.gif" />
 
<!--quoteo--><div class='quotetop'>QUOTE</div><div class='quotemain'><!--quotec-->It's generally used to write messages into the log file (I think it's compile.log, but might be any other of the files that end with log.
The line<!--QuoteEnd--></div><!--QuoteEEnd-->

i cant find any log files in my POTC directory
 
Oh, sorry I should have said that - you need to open engine.ini and set
tracefilesoff = 0
and
tracefiles = 1

I also have
debuginfo = 1
codefiles = 1
runtimelog = 1

but I'm not sure that's really needed.

After changing these settings, run the game again and you'll have the logs.
 
From looking at the code I'd think next time you go to a port, one of the
shoot_in_artois_1, shoot_in_artois_2 etc. cases should run.
But then I see those nowhere in the code.
Cat ? Help!
 
<img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/icon_eek.gif" style="vertical-align:middle" emoid=":shock:" border="0" alt="icon_eek.gif" /> I'm getting a reputation for being a <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/modding.gif" style="vertical-align:middle" emoid=":modding" border="0" alt="modding.gif" /> "fixer" <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/wacko.gif" style="vertical-align:middle" emoid=":wacko:" border="0" alt="wacko.gif" /> around here! <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/laugh.gif" style="vertical-align:middle" emoid="xD:" border="0" alt="laugh.gif" />

I found out what's been blocking us from seeing the "second shooting"...

There is a part of the "escort" mission that coincides with this second shooting in the Artois quest line.

To get the quest to play to it's fullest, after you rescue Artois from the first attack, you must go to a tavern and ask the innkeeper whether there is anyone looking for an escort. They'll tell you that there has someone been asking, and hey look, here they come in through the door right now...

You agree to escort the merchant to wherever he's going, and then when you get there and he pays you, then Artois gets shot.

After you take him to the tavern room and watch over him - he heals and you get popped back out to the port where he thanks you for saving his life yet again and FINALLY tells you about his secret.

There's some problem with the dialog - it is long and broken up into separate lines that are supposed to show on separate dialog screens, but it does not... Same with the dialog when you bully him into talking after the first time he is shot (or is he beat up?)... You never see the whole dialog, but it IS in the questbook...

I'd like to see this dialog fixed. And if you haven't bullied him and gotten him to talk after the first attack, I think perhaps there might be some kind of talk from Artois to urge you to escort this merchant he'd been talking to - that will lead you to the shooting part of this quest. You have the option to refuse, and if you do, there can be a "win condition" set so that the next time you hit a different port, he will be shot and the quest can continue.

That's my suggestion. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/icon_mrgreen1.gif" style="vertical-align:middle" emoid=":cheeky" border="0" alt="icon_mrgreen1.gif" />

I could work on this... If you like... <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/type_1.gif" style="vertical-align:middle" emoid=":nk" border="0" alt="type_1.gif" />
 
yea that would be a good idea

but can i point out a second proplem i had

after i did not force him to tell me next time I talked to him it came up with the dialog from after you resque him from nigal
 
Okay, I'll check that, too. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/icon_mrgreen1.gif" style="vertical-align:middle" emoid=":cheeky" border="0" alt="icon_mrgreen1.gif" />
 
<!--quoteo--><div class='quotetop'>QUOTE</div><div class='quotemain'><!--quotec-->To get the quest to play to it's fullest, after you rescue Artois from the first attack, you must go to a tavern and ask the innkeeper whether there is anyone looking for an escort. They'll tell you that there has someone been asking, and hey look, here they come in through the door right now...

You agree to escort the merchant to wherever he's going, and then when you get there and he pays you, then Artois gets shot.<!--QuoteEnd--></div><!--QuoteEEnd-->


Thanks Cat <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/bow.gif" style="vertical-align:middle" emoid=":bow" border="0" alt="bow.gif" /> When I get off work I'll try this out and report back tomorrow.

Just wondering for the quest can I go to <i><b>any</b></i> tavern or is it a specific one. Thanks for help and keep up the excellent work. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/bow.gif" style="vertical-align:middle" emoid=":bow" border="0" alt="bow.gif" /> <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/bow.gif" style="vertical-align:middle" emoid=":bow" border="0" alt="bow.gif" /> <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/bow.gif" style="vertical-align:middle" emoid=":bow" border="0" alt="bow.gif" />
 
<!--QuoteBegin-Meethos+May 14 2005, 06:00 PM--><div class='quotetop'>QUOTE(Meethos @ May 14 2005, 06:00 PM)</div><div class='quotemain'><!--QuoteEBegin-->Just wondering for the quest can I go to <i><b>any</b></i> tavern or is it a specific one. <div align="right">[snapback]105368[/snapback]</div><!--QuoteEnd--></div><!--QuoteEEnd--> <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/unsure.gif" style="vertical-align:middle" emoid=":?" border="0" alt="unsure.gif" /> Not sure. I suppose you can check that. I believe you need to do it right after you "save him" from those thugs (on Conceicao) the first time, although the code seems to be for any island. If I have time to get to this tonight, I will check for myself. <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/doff.gif" style="vertical-align:middle" emoid=":doff" border="0" alt="doff.gif" /> Thanks for the input! <img src="http://www.piratesahoy.com/forum/style_emoticons/<#EMO_DIR#>/icon_mrgreen1.gif" style="vertical-align:middle" emoid=":cheeky" border="0" alt="icon_mrgreen1.gif" />
 
Back
Top