diff --git a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/ComponentList.SC2Components b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/ComponentList.SC2Components index 010746340..e6bcfc267 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/ComponentList.SC2Components +++ b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/ComponentList.SC2Components @@ -1,5 +1,6 @@ + GameData DocumentInfo MapInfo diff --git a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/DocumentHeader b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/DocumentHeader index 69978a9ef..6ab6e556a 100644 Binary files a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/DocumentHeader and b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/DocumentHeader differ diff --git a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/MapScript.galaxy b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/MapScript.galaxy index 03ebc26b7..d43a221dd 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/MapScript.galaxy +++ b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/MapScript.galaxy @@ -29,6 +29,15 @@ void InitLibs () { //-------------------------------------------------------------------------------------------------- // Constants //-------------------------------------------------------------------------------------------------- +const int gv_LOCATION_ID_ROBOTICS_FACILITY = 1; +const int gv_LOCATION_ID_DARK_SHRINE = 2; +const int gv_LOCATION_ID_TEMPLAR_ARCHIVES = 3; +const int gv_LOCATION_ID_NORTHEAST_BASE = 4; +const int gv_LOCATION_ID_SOUTHWEST_BASE = 5; +const int gv_LOCATION_ID_MAAR = 6; +const int gv_LOCATION_ID_NORTHWEST_PRESERVER = 7; +const int gv_LOCATION_ID_SOUTHWEST_PRESERVER = 8; +const int gv_LOCATION_ID_EAST_PRESERVER = 9; const int gv_p1_USER = 1; const int gv_p2_PROTOSS_STALKER = 2; const int gv_p3_PROTOSS_ENEMY = 3; @@ -42,8 +51,9 @@ const int gv_p10_HYBRID_MANIFESTATIONS = 10; //-------------------------------------------------------------------------------------------------- // Global Variables //-------------------------------------------------------------------------------------------------- -int gv_objectiveDestroySupportBases; -int gv_supportBasesDestroyed; +int gv_objectiveDestroyNortheast; +int gv_objectiveDestroySouthwest; +int gv_objectiveDefeatMaar; bool gv_gameOver; bool gv_inCinematic; unit gv_superWarpGate_Neutral; @@ -166,7 +176,9 @@ unitgroup gv_victoryHiddenUnitGroup; unit gv_zeratul; void InitGlobals () { - gv_objectiveDestroySupportBases = c_invalidObjectiveId; + gv_objectiveDestroyNortheast = c_invalidObjectiveId; + gv_objectiveDestroySouthwest = c_invalidObjectiveId; + gv_objectiveDefeatMaar = c_invalidObjectiveId; gv_libraryHybrid = DoodadFromId(83); gv_prisonGroup = UnitGroupEmpty(); gv_achievementHardTimer = TimerCreate(); @@ -221,11 +233,14 @@ unitgroup gf_EnemiesWithinRange (unit lp_unit, fixed lp_range, unitfilter lp_fil //-------------------------------------------------------------------------------------------------- // Trigger Variables //-------------------------------------------------------------------------------------------------- -trigger gt_ObjectiveDestroySupportBasesCreateQ; -trigger gt_ObjectiveDestroySupportBasesComplete; -trigger gt_ObjectiveDestroySupportBasesUpdate; +trigger gt_ObjectiveDestroyNortheastCreateQ; +trigger gt_ObjectiveDestroyNortheastComplete; +trigger gt_ObjectiveDestroySouthwestCreateQ; +trigger gt_ObjectiveDestroySouthwestComplete; trigger gt_NortheastNexus; trigger gt_SouthwestNexus; +trigger gt_ObjectiveDefeatMaarCreateQ; +trigger gt_ObjectiveDefeatMaarComplete; trigger gt_Maardiesforfirsttime; trigger gt_MaargetsMindContolled; trigger gt_onDifficultyCasual; @@ -490,10 +505,16 @@ unitgroup gf_EnemiesWithinRange (unit lp_unit, fixed lp_range, unitfilter lp_fil } //-------------------------------------------------------------------------------------------------- -// Trigger: Objective Destroy Support Bases Create Q +// Trigger: Objective Destroy Northeast Create Q //-------------------------------------------------------------------------------------------------- -bool gt_ObjectiveDestroySupportBasesCreateQ_Func (bool testConds, bool runActions) { +bool gt_ObjectiveDestroyNortheastCreateQ_Func (bool testConds, bool runActions) { + // Variable Declarations + int lv_category; + // Automatic Variable Declarations + // Variable Initialization + lv_category = lib5BD4895D_ge_APObjectiveCategory_Extra; + // Conditions if (testConds) { if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { @@ -508,23 +529,25 @@ bool gt_ObjectiveDestroySupportBasesCreateQ_Func (bool testConds, bool runAction TriggerEnable(TriggerGetCurrent(), false); TriggerQueueEnter(); - ObjectiveCreate(StringExternal("Param/Value/ACA4539D"), StringExternal("Param/Value/3F1C3961"), c_objectiveStateActive, false); - lib5BD4895D_gf_AP_Core_addObjectiveWithCounter(ObjectiveLastCreated(), "checks", (2 - gv_supportBasesDestroyed), 0); - gv_objectiveDestroySupportBases = ObjectiveLastCreated(); + ObjectiveCreate(StringExternal("Param/Value/ACA4539D"), StringExternal("Param/Value/3F1C3961"), c_objectiveStateHidden, false); + gv_objectiveDestroyNortheast = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveDestroyNortheast, lv_category, true); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveDestroyNortheast, gv_LOCATION_ID_NORTHEAST_BASE); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveDestroyNortheast, true); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); TriggerQueueExit(); return true; } //-------------------------------------------------------------------------------------------------- -void gt_ObjectiveDestroySupportBasesCreateQ_Init () { - gt_ObjectiveDestroySupportBasesCreateQ = TriggerCreate("gt_ObjectiveDestroySupportBasesCreateQ_Func"); +void gt_ObjectiveDestroyNortheastCreateQ_Init () { + gt_ObjectiveDestroyNortheastCreateQ = TriggerCreate("gt_ObjectiveDestroyNortheastCreateQ_Func"); } //-------------------------------------------------------------------------------------------------- -// Trigger: Objective Destroy Support Bases Complete +// Trigger: Objective Destroy Northeast Complete //-------------------------------------------------------------------------------------------------- -bool gt_ObjectiveDestroySupportBasesComplete_Func (bool testConds, bool runActions) { +bool gt_ObjectiveDestroyNortheastComplete_Func (bool testConds, bool runActions) { // Automatic Variable Declarations // Conditions if (testConds) { @@ -539,27 +562,63 @@ bool gt_ObjectiveDestroySupportBasesComplete_Func (bool testConds, bool runActio } TriggerEnable(TriggerGetCurrent(), false); - TriggerExecute(gt_ObjectiveDestroySupportBasesCreateQ, true, false); - lib5BD4895D_gf_AP_Core_setObjectiveCompleted(gv_objectiveDestroySupportBases); + TriggerExecute(gt_ObjectiveDestroyNortheastCreateQ, true, false); + lib5BD4895D_gf_AP_Core_setObjectiveCompleted(gv_objectiveDestroyNortheast); return true; } //-------------------------------------------------------------------------------------------------- -void gt_ObjectiveDestroySupportBasesComplete_Init () { - gt_ObjectiveDestroySupportBasesComplete = TriggerCreate("gt_ObjectiveDestroySupportBasesComplete_Func"); +void gt_ObjectiveDestroyNortheastComplete_Init () { + gt_ObjectiveDestroyNortheastComplete = TriggerCreate("gt_ObjectiveDestroyNortheastComplete_Func"); } //-------------------------------------------------------------------------------------------------- -// Trigger: Objective Destroy Support Bases Update +// Trigger: Objective Destroy Southwest Create Q //-------------------------------------------------------------------------------------------------- -bool gt_ObjectiveDestroySupportBasesUpdate_Func (bool testConds, bool runActions) { +bool gt_ObjectiveDestroySouthwestCreateQ_Func (bool testConds, bool runActions) { + // Variable Declarations + int lv_category; + // Automatic Variable Declarations + // Variable Initialization + lv_category = lib5BD4895D_ge_APObjectiveCategory_Challenge; + // Conditions if (testConds) { - if (!((gv_gameOver == false))) { + if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { return false; } + } + + // Actions + if (!runActions) { + return true; + } + + TriggerEnable(TriggerGetCurrent(), false); + TriggerQueueEnter(); + ObjectiveCreate(StringExternal("Param/Value/D1BECFB0"), StringExternal("Param/Value/FA4823DA"), c_objectiveStateHidden, false); + gv_objectiveDestroySouthwest = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveDestroySouthwest, lv_category, true); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveDestroySouthwest, gv_LOCATION_ID_SOUTHWEST_BASE); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveDestroySouthwest, true); + Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); + TriggerQueueExit(); + return true; +} +//-------------------------------------------------------------------------------------------------- +void gt_ObjectiveDestroySouthwestCreateQ_Init () { + gt_ObjectiveDestroySouthwestCreateQ = TriggerCreate("gt_ObjectiveDestroySouthwestCreateQ_Func"); +} + +//-------------------------------------------------------------------------------------------------- +// Trigger: Objective Destroy Southwest Complete +//-------------------------------------------------------------------------------------------------- +bool gt_ObjectiveDestroySouthwestComplete_Func (bool testConds, bool runActions) { + // Automatic Variable Declarations + // Conditions + if (testConds) { if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { return false; } @@ -570,20 +629,15 @@ bool gt_ObjectiveDestroySupportBasesUpdate_Func (bool testConds, bool runActions return true; } - TriggerExecute(gt_ObjectiveDestroySupportBasesCreateQ, true, false); - gv_supportBasesDestroyed += 1; - lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectiveDestroySupportBases, (2 - gv_supportBasesDestroyed)); - if ((gv_supportBasesDestroyed == 2)) { - TriggerEnable(TriggerGetCurrent(), false); - TriggerExecute(gt_ObjectiveDestroySupportBasesComplete, true, false); - } - + TriggerEnable(TriggerGetCurrent(), false); + TriggerExecute(gt_ObjectiveDestroySouthwestCreateQ, true, false); + lib5BD4895D_gf_AP_Core_setObjectiveCompleted(gv_objectiveDestroySouthwest); return true; } //-------------------------------------------------------------------------------------------------- -void gt_ObjectiveDestroySupportBasesUpdate_Init () { - gt_ObjectiveDestroySupportBasesUpdate = TriggerCreate("gt_ObjectiveDestroySupportBasesUpdate_Func"); +void gt_ObjectiveDestroySouthwestComplete_Init () { + gt_ObjectiveDestroySouthwestComplete = TriggerCreate("gt_ObjectiveDestroySouthwestComplete_Func"); } //-------------------------------------------------------------------------------------------------- @@ -596,8 +650,9 @@ bool gt_NortheastNexus_Func (bool testConds, bool runActions) { return true; } - lib5BD4895D_gf_AP_Core_sendLocationLocal(4); - TriggerExecute(gt_ObjectiveDestroySupportBasesUpdate, true, false); + TriggerEnable(TriggerGetCurrent(), false); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_NORTHEAST_BASE); + TriggerExecute(gt_ObjectiveDestroyNortheastComplete, true, false); return true; } @@ -617,8 +672,9 @@ bool gt_SouthwestNexus_Func (bool testConds, bool runActions) { return true; } - lib5BD4895D_gf_AP_Core_sendLocationLocal(5); - TriggerExecute(gt_ObjectiveDestroySupportBasesUpdate, true, false); + TriggerEnable(TriggerGetCurrent(), false); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_SOUTHWEST_BASE); + TriggerExecute(gt_ObjectiveDestroySouthwestComplete, true, false); return true; } @@ -628,6 +684,74 @@ void gt_SouthwestNexus_Init () { TriggerAddEventUnitDied(gt_SouthwestNexus, UnitRefFromUnit(UnitFromId(165))); } +//-------------------------------------------------------------------------------------------------- +// Trigger: Objective DefeatMaar Create Q +//-------------------------------------------------------------------------------------------------- +bool gt_ObjectiveDefeatMaarCreateQ_Func (bool testConds, bool runActions) { + // Variable Declarations + int lv_category; + + // Automatic Variable Declarations + // Variable Initialization + lv_category = lib5BD4895D_ge_APObjectiveCategory_Extra; + + // Conditions + if (testConds) { + if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { + return false; + } + } + + // Actions + if (!runActions) { + return true; + } + + TriggerEnable(TriggerGetCurrent(), false); + TriggerQueueEnter(); + ObjectiveCreate(StringExternal("Param/Value/BB1448D3"), StringToText(""), c_objectiveStateHidden, false); + gv_objectiveDefeatMaar = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveDefeatMaar, lv_category, true); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveDefeatMaar, gv_LOCATION_ID_MAAR); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveDefeatMaar, true); + Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); + TriggerQueueExit(); + return true; +} + +//-------------------------------------------------------------------------------------------------- +void gt_ObjectiveDefeatMaarCreateQ_Init () { + gt_ObjectiveDefeatMaarCreateQ = TriggerCreate("gt_ObjectiveDefeatMaarCreateQ_Func"); +} + +//-------------------------------------------------------------------------------------------------- +// Trigger: Objective DefeatMaar Complete +//-------------------------------------------------------------------------------------------------- +bool gt_ObjectiveDefeatMaarComplete_Func (bool testConds, bool runActions) { + // Automatic Variable Declarations + // Conditions + if (testConds) { + if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { + return false; + } + } + + // Actions + if (!runActions) { + return true; + } + + TriggerEnable(TriggerGetCurrent(), false); + TriggerExecute(gt_ObjectiveDefeatMaarCreateQ, true, false); + lib5BD4895D_gf_AP_Core_setObjectiveCompleted(gv_objectiveDefeatMaar); + return true; +} + +//-------------------------------------------------------------------------------------------------- +void gt_ObjectiveDefeatMaarComplete_Init () { + gt_ObjectiveDefeatMaarComplete = TriggerCreate("gt_ObjectiveDefeatMaarComplete_Func"); +} + //-------------------------------------------------------------------------------------------------- // Trigger: Maar dies for first time //-------------------------------------------------------------------------------------------------- @@ -646,7 +770,8 @@ bool gt_Maardiesforfirsttime_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(6); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_MAAR); + TriggerExecute(gt_ObjectiveDefeatMaarComplete, true, false); return true; } @@ -3378,7 +3503,7 @@ bool gt_TemplarArchivesPowered_Func (bool testConds, bool runActions) { if ((PowerLevel(gv_p1_USER, UnitGetPosition(UnitFromId(43)), "PowerSource") > 0)) { TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(3); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_TEMPLAR_ARCHIVES); UnitSetState(UnitFromId(43), c_unitStateTargetable, true); gv_pylonPlayerCreatedHighTemplar = EventUnitProgressUnit(); libNtve_gf_RescueUnit(UnitFromId(43), gv_p1_USER, true); @@ -3421,7 +3546,7 @@ bool gt_RoboticsFacilityPowered_Func (bool testConds, bool runActions) { if ((PowerLevel(gv_p1_USER, UnitGetPosition(UnitFromId(563)), "PowerSource") > 0)) { TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(1); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_ROBOTICS_FACILITY); UnitSetState(UnitFromId(563), c_unitStateTargetable, true); gv_pylonPlayerCreatedRobotics = EventUnitProgressUnit(); libNtve_gf_RescueUnit(UnitFromId(563), gv_p1_USER, true); @@ -3464,7 +3589,7 @@ bool gt_DarkShrinePowered_Func (bool testConds, bool runActions) { if ((PowerLevel(gv_p1_USER, UnitGetPosition(UnitFromId(179)), "PowerSource") > 0)) { TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(2); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_DARK_SHRINE); UnitSetState(UnitFromId(179), c_unitStateTargetable, true); gv_pylonPlayerCreatedDT = EventUnitProgressUnit(); libNtve_gf_RescueUnit(UnitFromId(179), gv_p1_USER, true); @@ -4569,7 +4694,9 @@ bool gt_StalkerBecomesEnemyNearBase_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); libNtve_gf_SetAlliance(gv_p1_USER, gv_p2_PROTOSS_STALKER, libNtve_ge_AllianceSetting_Enemy); - TriggerExecute(gt_ObjectiveDestroySupportBasesCreateQ, true, false); + TriggerExecute(gt_ObjectiveDestroyNortheastCreateQ, true, false); + Wait(3.0, c_timeGame); + TriggerExecute(gt_ObjectiveDestroySouthwestCreateQ, true, false); return true; } @@ -5690,7 +5817,7 @@ bool gt_VictoryPrisonObjectiveComplete_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(lib5BD4895D_gv_aP_Core_locationVictory); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(lib5BD4895D_gv_aP_Core_locationVictory); gv_gameOver = true; TriggerEnable(gt_HybridPingandSound, false); auto6BC92896_g = UnitGroup(null, gv_p3_PROTOSS_ENEMY, RegionEntireMap(), UnitFilter(0, 0, (1 << c_targetFilterMissile), (1 << (c_targetFilterDead - 32)) | (1 << (c_targetFilterHidden - 32))), 0); @@ -5886,9 +6013,10 @@ bool gt_ObjectivePowerBaseCreateQ_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); TriggerQueueEnter(); - ObjectiveCreate(StringExternal("Param/Value/0529E638"), StringExternal("Param/Value/A20EA9E8"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveWithCounter(ObjectiveLastCreated(), "", gv_obejctivePowerBaseUpdate, gv_obejctivePowerBaseTotal); + ObjectiveCreate(StringExternal("Param/Value/0529E638"), StringExternal("Param/Value/A20EA9E8"), c_objectiveStateHidden, true); gv_objectivePowerBase = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveWithCounter(gv_objectivePowerBase, lib5BD4895D_ge_APObjectiveCategory_Primary, "", gv_obejctivePowerBaseUpdate, gv_obejctivePowerBaseTotal, false); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectivePowerBase, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul02Objective1, ObjectiveLastCreated(), StringExternal("Param/Value/F78FFBD4")); TriggerExecute(gt_PylonPlaceStartQ, true, false); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); @@ -5989,9 +6117,14 @@ bool gt_ObjectiveDestroyPrisonsCreateQ_Func (bool testConds, bool runActions) { return true; } - ObjectiveCreate(StringExternal("Param/Value/3EB10506"), StringExternal("Param/Value/BF6654F6"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveWithCounter(ObjectiveLastCreated(), "", gv_objectivesAllPrisonsDestroyedUpdate, gv_obejctivePrisonsTotal); + ObjectiveCreate(StringExternal("Param/Value/3EB10506"), StringExternal("Param/Value/BF6654F6"), c_objectiveStateHidden, true); gv_objectiveDestroyPrisons = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveWithCounter(gv_objectiveDestroyPrisons, lib5BD4895D_ge_APObjectiveCategory_Primary, "", gv_objectivesAllPrisonsDestroyedUpdate, gv_obejctivePrisonsTotal, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveDestroyPrisons, lib5BD4895D_gv_aP_Core_locationVictory); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveDestroyPrisons, gv_LOCATION_ID_NORTHWEST_PRESERVER); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveDestroyPrisons, gv_LOCATION_ID_SOUTHWEST_PRESERVER); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveDestroyPrisons, gv_LOCATION_ID_EAST_PRESERVER); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveDestroyPrisons, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul02Objective2, ObjectiveLastCreated(), StringExternal("Param/Value/FC23C1AF")); TriggerExecute(gt_ObjectiveDestroyPrisonsCreateQ, true, false); Wait(3.0, c_timeReal); @@ -6120,7 +6253,7 @@ bool gt_Prison01Destroyed_Func (bool testConds, bool runActions) { UnitSetState(gv_archTemplar01, c_unitStateTargetable, false); libNtve_gf_MakeUnitInvulnerable(gv_archTemplar01, true); PingDestroy(gv_pingPrison01); - lib5BD4895D_gf_AP_Core_sendLocationLocal(7); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_NORTHWEST_PRESERVER); UnitSetScale(gv_archTemplar01, 120.0, 120.0, 120.0); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectDestroythePreserverPrisons, gv_archTemplar01, gv_p1_USER); return true; @@ -6156,7 +6289,7 @@ bool gt_Prison02Destroyed_Func (bool testConds, bool runActions) { UnitSetState(gv_archTemplar02, c_unitStateTargetable, false); libNtve_gf_MakeUnitInvulnerable(gv_archTemplar02, true); PingDestroy(gv_pingPrison02); - lib5BD4895D_gf_AP_Core_sendLocationLocal(9); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_EAST_PRESERVER); UnitSetScale(gv_archTemplar02, 120.0, 120.0, 120.0); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectDestroythePreserverPrisons, gv_archTemplar02, gv_p1_USER); return true; @@ -6192,7 +6325,7 @@ bool gt_Prison03Destroyed_Func (bool testConds, bool runActions) { UnitSetState(gv_archTemplar03, c_unitStateTargetable, false); libNtve_gf_MakeUnitInvulnerable(gv_archTemplar03, true); PingDestroy(gv_pingPrison03); - lib5BD4895D_gf_AP_Core_sendLocationLocal(8); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_SOUTHWEST_PRESERVER); UnitSetScale(gv_archTemplar03, 120.0, 120.0, 120.0); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectDestroythePreserverPrisons, gv_archTemplar03, gv_p1_USER); return true; @@ -6208,7 +6341,13 @@ void gt_Prison03Destroyed_Init () { // Trigger: Objective Power Secondary Create Q //-------------------------------------------------------------------------------------------------- bool gt_ObjectivePowerSecondaryCreateQ_Func (bool testConds, bool runActions) { + // Variable Declarations + int lv_category; + // Automatic Variable Declarations + // Variable Initialization + lv_category = lib5BD4895D_ge_APObjectiveCategory_Secondary; + // Conditions if (testConds) { if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { @@ -6223,9 +6362,13 @@ bool gt_ObjectivePowerSecondaryCreateQ_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); TriggerQueueEnter(); - ObjectiveCreate(StringExternal("Param/Value/693D0B04"), StringExternal("Param/Value/F974BE83"), c_objectiveStateActive, false); - lib5BD4895D_gf_AP_Core_addObjectiveWithCounter(ObjectiveLastCreated(), "checks", (gv_obejctivePrisonsTotal - gv_obejctivePowerSecondaryBaseUpdate), 0); + ObjectiveCreate(StringExternal("Param/Value/693D0B04"), StringExternal("Param/Value/F974BE83"), c_objectiveStateHidden, false); gv_objectivePowerSecondaryBase = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveWithCounter(gv_objectivePowerSecondaryBase, lv_category, "", gv_obejctivePowerSecondaryBaseUpdate, gv_obejctivePowerSecondaryBaseTotal, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectivePowerSecondaryBase, gv_LOCATION_ID_ROBOTICS_FACILITY); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectivePowerSecondaryBase, gv_LOCATION_ID_DARK_SHRINE); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectivePowerSecondaryBase, gv_LOCATION_ID_TEMPLAR_ARCHIVES); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectivePowerSecondaryBase, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul02Objective1, ObjectiveLastCreated(), StringExternal("Param/Value/79D9949C")); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); TriggerExecute(gt_ObjectivePings, true, false); @@ -6348,7 +6491,7 @@ bool gt_ObjectivePowerupSecondaryUpdate_Func (bool testConds, bool runActions) { TriggerExecute(gt_ObjectivePowerSecondaryCreateQ, true, false); gv_obejctivePowerSecondaryBaseUpdate += 1; - lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectivePowerSecondaryBase, (gv_obejctivePrisonsTotal - gv_obejctivePowerSecondaryBaseUpdate)); + lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectivePowerSecondaryBase, gv_obejctivePowerSecondaryBaseUpdate); if ((gv_obejctivePowerSecondaryBaseUpdate == gv_obejctivePowerSecondaryBaseTotal)) { TriggerEnable(TriggerGetCurrent(), false); TriggerExecute(gt_ObjectivePowerSecondaryComplete, true, false); @@ -7288,6 +7431,7 @@ bool gt_MidPrisonCleanup_Func (bool testConds, bool runActions) { UnitIssueOrder(gv_libraryAtBridge04, Order(AbilityCommand("LibraryDown", 0)), c_orderQueueReplace); UnitIssueOrder(gv_libraryAtBridge05, Order(AbilityCommand("LibraryDown", 0)), c_orderQueueReplace); libNtve_gf_CreateUnitsAtPoint2(1, "Maar", 0, gv_p8_PRISON_STRUCTURE, PointFromId(181)); + TriggerExecute(gt_ObjectiveDefeatMaarCreateQ, true, false); gv_hybridNeutral = UnitLastCreated(); UnitIssueOrder(gv_hybridNeutral, Order(AbilityCommand("move", 2)), c_orderQueueReplace); UnitSetState(gv_hybridNeutral, c_unitStateInvulnerable, true); @@ -7615,11 +7759,14 @@ void gt_VictoryCleanup_Init () { // Trigger Initialization //-------------------------------------------------------------------------------------------------- void InitTriggers () { - gt_ObjectiveDestroySupportBasesCreateQ_Init(); - gt_ObjectiveDestroySupportBasesComplete_Init(); - gt_ObjectiveDestroySupportBasesUpdate_Init(); + gt_ObjectiveDestroyNortheastCreateQ_Init(); + gt_ObjectiveDestroyNortheastComplete_Init(); + gt_ObjectiveDestroySouthwestCreateQ_Init(); + gt_ObjectiveDestroySouthwestComplete_Init(); gt_NortheastNexus_Init(); gt_SouthwestNexus_Init(); + gt_ObjectiveDefeatMaarCreateQ_Init(); + gt_ObjectiveDefeatMaarComplete_Init(); gt_Maardiesforfirsttime_Init(); gt_MaargetsMindContolled_Init(); gt_onDifficultyCasual_Init(); diff --git a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/Triggers b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/Triggers index 3a1f7bf80..5bce636ab 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/Triggers +++ b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/Triggers @@ -13,18 +13,142 @@ + + + + + + + + + + + + + + LOCATION_ID_ROBOTICS_FACILITY + + + + + + + + 1 + + + + LOCATION_ID_DARK_SHRINE + + + + + + + + 2 + + + + LOCATION_ID_TEMPLAR_ARCHIVES + + + + + + + + 3 + + + + LOCATION_ID_NORTHEAST_BASE + + + + + + + + 4 + + + + LOCATION_ID_SOUTHWEST_BASE + + + + + + + + 5 + + + + LOCATION_ID_MAAR + + + + + + + + 6 + + + + LOCATION_ID_NORTHWEST_PRESERVER + + + + + + + + 7 + + + + LOCATION_ID_SOUTHWEST_PRESERVER + + + + + + + + 8 + + + + LOCATION_ID_EAST_PRESERVER + + + + + + + + 9 + + - - + + + + + + @@ -37,22 +161,23 @@ - - - - - - - - 0 - - + + + + + + + + + + + @@ -107,8 +232,10 @@ - + + + @@ -125,7 +252,7 @@ - + @@ -135,54 +262,6 @@ - - - - - - - - - - - - - - - - - - checks - - - - - - - - - - - - - - - - - - - - - - - 2 - - - - - 0 - - @@ -200,6 +279,54 @@ + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -305,199 +432,290 @@ - - - - - - - + + + + + - - - - - + + - - - + + + + + + - - - + + + + + + - - - false - + + - + - - - + + + - + - + - + - + - + - + - + - + - + true - - - - - + + + + - - - + + + - - - + + - - - - + + + - - - - - + + + Create the objective + - - - + + + + + + + + + + + + + + + + - - - 1 - + + + - - - + + + - - - - + + + - - - + + + - - - + + + + + - - - - - + + + - - - + + + - - - + + - - - 2 - + + + + + + - - - - - + + + + + + + true + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + - - - + + - + - + - + - + - + + + Ensure that the objective exists + + + - - - - + + + - + - + - + - - - - - - - - + - - - + + + Update the objective + - - - + + + - - - 2 - + + + - + + @@ -509,14 +727,29 @@ - - - + + + + - - - 4 - + + + + + + + + + + + + + + + + + + @@ -535,12 +768,13 @@ - + - - + + + @@ -551,38 +785,334 @@ - - - + + + + - - - 5 - + + + + + + + + + + - + + + + + + + + + - - - + + + - + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + Create the objective + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + Ensure that the objective exists + + + + + + + + + + + + + + + + + + + + + + + + Update the objective + + + + + + + + + - + + @@ -630,14 +1160,32 @@ - - - + + + - - - 6 - + + + + + + + + + + + + + + + + + + + + + + @@ -23941,7 +24489,7 @@ - + @@ -23969,15 +24517,14 @@ - - + + - + - - - 3 - + + + @@ -24249,7 +24796,7 @@ - + @@ -24279,15 +24826,14 @@ - - + + - + - - - 1 - + + + @@ -24571,7 +25117,7 @@ - + @@ -24600,15 +25146,14 @@ - - + + - + - - - 2 - + + + @@ -31584,6 +32129,8 @@ + + @@ -31768,6 +32315,39 @@ + + + + + + + + 3.0 + + + + + + + + + + + + + + + + + + + + + + + + + Rescuable Structures @@ -38070,7 +38650,7 @@ - + @@ -38155,12 +38735,12 @@ - - - + + + - - + + @@ -39406,8 +39986,9 @@ - + + @@ -39426,7 +40007,7 @@ - + @@ -39436,33 +40017,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -39480,6 +40034,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + @@ -39935,8 +40538,13 @@ - + + + + + + @@ -39993,7 +40601,7 @@ - + @@ -40003,33 +40611,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -40047,6 +40628,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -40974,7 +41660,7 @@ - + @@ -41127,14 +41813,13 @@ - - - + + + - - - 7 - + + + @@ -41195,7 +41880,7 @@ - + @@ -41348,14 +42033,13 @@ - - - + + + - - - 9 - + + + @@ -41416,7 +42100,7 @@ - + @@ -41569,14 +42253,13 @@ - - - + + + - - - 8 - + + + @@ -41667,11 +42350,22 @@ + + + + + + + + + + + @@ -41726,8 +42420,12 @@ - + + + + + @@ -41748,7 +42446,7 @@ - + @@ -41758,69 +42456,113 @@ - - + + - - - - + + + + + + - - - + + + - + - - - checks + + + + + + + + + + + + + + + + - - - + + + - - - - - + + + - - - + + + false + - - - + + + - - - + + + + + - - - 0 - + + + - - + + + + + + - - + + - - + + - - - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -42819,26 +43561,8 @@ - - - - - - - - - - - - - - - - - - @@ -50712,6 +51436,7 @@ + @@ -51196,6 +51921,25 @@ + + + + + + + + + + + + + + + + + + + diff --git a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/Triggers.version b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/Triggers.version index c8dde5d4d..f7b668b6c 100644 Binary files a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/Triggers.version and b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/Triggers.version differ diff --git a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/enUS.SC2Data/LocalizedData/GameStrings.txt b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/enUS.SC2Data/LocalizedData/GameStrings.txt index 05f59455c..94c0808fd 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/enUS.SC2Data/LocalizedData/GameStrings.txt +++ b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/enUS.SC2Data/LocalizedData/GameStrings.txt @@ -38,6 +38,7 @@ Param/Value/558C3EE5=Power-up Abandoned Struct Param/Value/560D13C5=Hybrid Wave Set to Param/Value/59DEBB2A=Preserver Prison Param/Value/5ADEAA3E=Mission start +Param/Value/603F8E8E= Param/Value/627CD3C4=Hybrid Wave = Param/Value/693D0B04=Power-up Abandoned Structures Param/Value/7489F48B= @@ -51,16 +52,19 @@ Param/Value/9860ACE5=Immortal ally Param/Value/A20EA9E8=Pylons must be warped in to provide power to the abandoned protoss base. Use the marked locations. Param/Value/A425FBF3=Hybrid unleashed. Param/Value/A7E49313= -Param/Value/ACA4539D=Destroy Enemy Support Bases +Param/Value/ACA4539D=Destroy Northeast Nexus Param/Value/B16AD9F3=Dark Templar allies +Param/Value/BB1448D3=Defeat Maar Param/Value/BF6654F6=The preservers have vital information about the Overmind and the origin of the zerg. Free them from their prisons before the knowledge is lost forever. Param/Value/CB554689=Hybrid Wave Set to 4 Param/Value/D0E36002=checks left +Param/Value/D1BECFB0=Destroy Southwest Nexus Param/Value/D46EC28D=Abandoned Structures Powered Param/Value/DFFB989D=Dark Shrine Param/Value/F2B82ED1=3 Param/Value/F78FFBD4=Power-up the Abandoned Base Param/Value/F974BE83=Power-up the abandoned protoss structures by warping in pylons near them. This will reveal lost technologies. +Param/Value/FA4823DA=Destroy the enemy support bases in order to provide more resources for our cause Param/Value/FA59974F=Hybrid Param/Value/FC23C1AF=Destroy the Three Preserver Prisons Unit/Name/ShieldBattery=PH - Psi Dominator diff --git a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt index cbaa7d2cb..6ff353e80 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt +++ b/Maps/ArchipelagoCampaign/WoL/ap_a_sinister_turn.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt @@ -1,4 +1,5 @@ Category/Name/09801232=Utility +Category/Name/121282A3=Location IDs Category/Name/14EB4AEF=Victory/Defeat Category/Name/2195D0B8=Leaderboard Category/Name/24412C6D=Briefing Cinematic @@ -69,7 +70,7 @@ ParamDef/Name/9E4CB16B=Player ParamDef/Name/B5C55A5C=Player ParamDef/Name/CA992992=Player ParamDef/Name/D79F5184=MaxLife -Trigger/Name/00D296DE=Objective Destroy Support Bases Create Q +Trigger/Name/00D296DE=Objective Destroy Northeast Create Q Trigger/Name/01EDF8BF=Intro Setup Trigger/Name/03626603=Tip Gateway Q Trigger/Name/03BE333C=Init 05 Environment @@ -107,6 +108,7 @@ Trigger/Name/3949B97F=Defeat Base Dead Trigger/Name/39AB2975=Pylon Place 02 Trigger/Name/3C956BD7=Dialogue Robotics Facility Q Trigger/Name/3D2CFCA5=Initialization +Trigger/Name/3DBE0A13=Objective Destroy Southwest Create Q Trigger/Name/41659D08=Mid Prison Cinematic End Trigger/Name/4395ED54=Init 06 Difficulties Trigger/Name/43BDBF59=Hybrid Leaves his area @@ -114,8 +116,10 @@ Trigger/Name/4463547E=Dialogue Templar Archives Found Q Trigger/Name/459CE088=Hybrid Prep for Wave Trigger/Name/45D0B256=Manifestation01 Resume Wave Trigger/Name/46381BAF=Dialogue Templar Archives Q +Trigger/Name/4697719E=Objective DefeatMaar Create Q Trigger/Name/46B8B4BE=Victory Prison Objective Complete Trigger/Name/4874614C=Dialogue Hybrid Pissed Manifestation Dead 01 Q +Trigger/Name/49993E50=Objective DefeatMaar Complete Trigger/Name/4B965950=Intro Cinematic Trigger/Name/4BD11B5A=Dialogue at Archivist Q Trigger/Name/4C28AEB3=Hybrid Waves @@ -132,7 +136,7 @@ Trigger/Name/6185EAA6=Hybrid Enters his area Trigger/Name/61ED402F=Player Building Unit Activates Activates Stalker Hard/Brutal Trigger/Name/62D599D2=Dialogue Halt at Player Base 01 Q Trigger/Name/6335A8D7=Player Gathering Cash Activates Stalker -Trigger/Name/66E5E003=Objective Destroy Support Bases Complete +Trigger/Name/66E5E003=Objective Destroy Northeast Complete Trigger/Name/67AEE987=Flash Button Pylon On Trigger/Name/68AD0AC2=Library06 Trigger/Name/699E46A3=Hybrid Attacks @@ -187,6 +191,7 @@ Trigger/Name/AE842887=P4 Right Base Attack Waves Trigger/Name/AE901476=Psionic Shockwave - Third (Insane) Trigger/Name/B0BEF1CD=onDifficultyHard Trigger/Name/B0D2BD09=New Unit: Immortal Tip Q +Trigger/Name/B1B953D1=Objective Destroy Southwest Complete Trigger/Name/B3DD1D4B=Hybrid Dies from player Trigger/Name/B40A45E4=Player selects pylon button Trigger/Name/B463E5C7=Library07 @@ -227,7 +232,6 @@ Trigger/Name/E3F771DA=Dialogue Hybrid Pissed 06 Q Trigger/Name/E4F77BDE=Energy Timer Trigger/Name/E57719B7=DEBUG - P6 Attack Wave Trigger/Name/E654196A=Northeast Nexus -Trigger/Name/E832E09F=Objective Destroy Support Bases Update Trigger/Name/EA223C85=HI Upgrades Trigger/Name/EA291DF3=Hybrid Dies Trigger/Name/EA8F4A16=Dark Templar Attackers @@ -261,7 +265,7 @@ Variable/Name/14290977=PylonPlayerCreatedHighTemplar Variable/Name/14429422=ActorVault01Spawn Variable/Name/1A34AE87=PylonInvisibleHighTemplar Variable/Name/1B8E0026=ArchTemplar03 -Variable/Name/1CE84C85=SupportBasesDestroyed +Variable/Name/1C0DE31D=LOCATION_ID_TEMPLAR_ARCHIVES Variable/Name/1E206364=PingPrison02 Variable/Name/1EAAC5F8=Zeratul Variable/Name/1F154E94=MineralsCollectedToActivateStalker @@ -283,9 +287,11 @@ Variable/Name/3AF23B60=PingTwilightCouncil Variable/Name/3CB4FE9E=HealthPercent Variable/Name/3E32FA0F=Gateway01Placed Variable/Name/3EFCE279=LibraryDown02 +Variable/Name/420A1BD0=category Variable/Name/433F0AD2=ActorHybridDeathEffect Variable/Name/44D8E8D0=ForceStartHybridCinTimer Variable/Name/44EBDD59=P8_PRISON_STRUCTURE +Variable/Name/44F779F0=LOCATION_ID_SOUTHWEST_BASE Variable/Name/45775EFE=LibraryAtBridge04 Variable/Name/47700224=ObejctivePowerSecondaryBaseUpdate Variable/Name/4D321626=PickedUnit @@ -303,7 +309,7 @@ Variable/Name/5E003F11=HybridReturnsToPrisons Variable/Name/5FB72573=HybridBossPing Variable/Name/603782E4=LibraryHybrid Variable/Name/60A3452B=HybridSoulAlive -Variable/Name/6133E5F9=ObjectiveDestroySupportBases +Variable/Name/6133E5F9=ObjectiveDestroyNortheast Variable/Name/6138E8F5=PylonPlayerCreatedDT Variable/Name/61DC76BB=LibraryDown01 Variable/Name/620A41B4=GameOver @@ -316,6 +322,7 @@ Variable/Name/694099A5=IntroHiddenUnitGroup Variable/Name/6969871F=HybridBusy Variable/Name/69857C28=PingPrison03 Variable/Name/6A8E22B6=PingHybridBoss +Variable/Name/6D75897A=category Variable/Name/70908557=LibraryAtBridge03 Variable/Name/70FE9100=VisbilityPrisonWholeArea Variable/Name/74F03363=ActorAssimilator @@ -329,12 +336,15 @@ Variable/Name/7F7DBD7B=ObjectivesAllPrisonsDestroyedUpdate Variable/Name/806F6F61=ActorPlace01 Variable/Name/81922872=StalkerDialogue Variable/Name/82FAE156=IntroProbe01 +Variable/Name/871ECEAA=category Variable/Name/87DD3574=ActorGatewayPlace01 Variable/Name/8985787B=currentUnit Variable/Name/8C180709=ObejctivePowerSecondaryBaseTotal +Variable/Name/8CC31466=LOCATION_ID_DARK_SHRINE Variable/Name/8D919C85=IntroVoidSeeker Variable/Name/8F1E45DE=TimerTip Variable/Name/9001B905=TargetCount +Variable/Name/90DAA02A=ObjectiveDestroySouthwest Variable/Name/9115686C=Target Variable/Name/93FA6C04=P1_USER Variable/Name/9451E465=HybridDeathsTracking @@ -343,7 +353,9 @@ Variable/Name/95DDF03D=TargetCount Variable/Name/972C3F17=PylonPlayerCreatedRobotics Variable/Name/9844CABA=ActorVortexEffect Variable/Name/9D3BF5C6=FadeDuration +Variable/Name/9D8967B7=ObjectiveDefeatMaar Variable/Name/9E9BDFA0=ActorVault02Spawn +Variable/Name/9EFA7F7C=LOCATION_ID_MAAR Variable/Name/A0BB99FC=HybridMaxShields Variable/Name/A1DD4E00=ObejctivePowerBaseUpdate Variable/Name/A2BD8C2C=InCinematic @@ -352,6 +364,7 @@ Variable/Name/A3DE3382=FadeDuration Variable/Name/A658885D=AttackTimer Variable/Name/A9BE4D72=ObejctivePowerBaseTotal Variable/Name/AC350C55=PrisonsObjStarted +Variable/Name/AD278473=LOCATION_ID_NORTHWEST_PRESERVER Variable/Name/B2319966=MidPrisonCinematicCompleted Variable/Name/B2A1355E=ActorPlace02 Variable/Name/B343912D=FadeDuration @@ -371,6 +384,7 @@ Variable/Name/D261E0B2=FadeDuration Variable/Name/D36CA002=GravitonTargets Variable/Name/D4370CAB=IntroCinematicCompleted Variable/Name/D4A90F5C=Gateway01Done +Variable/Name/D4BE5E1C=LOCATION_ID_SOUTHWEST_PRESERVER Variable/Name/D61A1E34=currentUnit Variable/Name/D6653D11=LibraryAtBridge01 Variable/Name/D8AA51AA=ActorGateway @@ -384,12 +398,15 @@ Variable/Name/E29DE2CA=LibraryDown03 Variable/Name/E31DAB40=HybridPrisonsAllAlive Variable/Name/E3588114=Achievement-HardTimer Variable/Name/E8933673=IntroShuttleProbes +Variable/Name/E9DE0BAA=LOCATION_ID_EAST_PRESERVER Variable/Name/EA7D856A=currentUnit Variable/Name/EAD8C0EB=PingTemplarArchives +Variable/Name/EAE103F4=category Variable/Name/EB0F32F8=PrisonGroup Variable/Name/EBC088E4=InCombatIndicator Variable/Name/EC1433B2=currentUnit Variable/Name/EF880BA7=HybridKillsTracking +Variable/Name/F143006D=LOCATION_ID_ROBOTICS_FACILITY Variable/Name/F160FF72=ActorHybridSpawn Variable/Name/F1CF3317=Plasma Targets Variable/Name/F1DCAAC4=HybridDeathsForDialogue @@ -401,4 +418,5 @@ Variable/Name/FB4C542C=Target Variable/Name/FBD99B22=RevealerDTArea Variable/Name/FCB9B589=ArchTemplar02 Variable/Name/FD098D9E=VictoryHiddenUnitGroup +Variable/Name/FE003A42=LOCATION_ID_NORTHEAST_BASE Variable/Name/FEDD3E4B=SuperWarpGate_Neutral diff --git a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/ComponentList.SC2Components b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/ComponentList.SC2Components index 1943363eb..83f8457b5 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/ComponentList.SC2Components +++ b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/ComponentList.SC2Components @@ -1,5 +1,6 @@ + GameData DocumentInfo MapInfo diff --git a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/DocumentHeader b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/DocumentHeader index 98e3fcc29..5973d43f6 100644 Binary files a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/DocumentHeader and b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/DocumentHeader differ diff --git a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/MapScript.galaxy b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/MapScript.galaxy index 0fc7ecf03..4087bd32a 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/MapScript.galaxy +++ b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/MapScript.galaxy @@ -29,6 +29,13 @@ void InitLibs () { //-------------------------------------------------------------------------------------------------- // Constants //-------------------------------------------------------------------------------------------------- +const int gv_LOCATION_ID_CLOSE_OBELISK = 1; +const int gv_LOCATION_ID_WEST_OBELISK = 2; +const int gv_LOCATION_ID_BASE = 3; +const int gv_LOCATION_ID_SOUTHWEST_TENDRIL = 4; +const int gv_LOCATION_ID_SOUTHEAST_TENDRIL = 5; +const int gv_LOCATION_ID_NORTHEAST_TENDRIL = 6; +const int gv_LOCATION_ID_NORTHWEST_TENDRIL = 7; const int gv_p01_USER = 1; const int gv_p02_ZERG_LOW_GROUND_AI = 2; const int gv_p03_ZERG_NORTH = 3; @@ -1159,7 +1166,7 @@ bool gt_ZeratulReachesNexus_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); PingDestroy(gv_beaconPingNexus); - lib5BD4895D_gf_AP_Core_sendLocationLocal(3); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_BASE); TriggerExecute(gt_ObjectiveReachtheNexusComplete, true, false); if ((libABFE498B_gv_aP_Triggers_disableForcedCamera == false)) { CameraLockInput(gv_p01_USER, true); @@ -1482,7 +1489,7 @@ bool gt_ObeliskNorthPowered_Func (bool testConds, bool runActions) { if ((PowerLevel(gv_p01_USER, UnitGetPosition(UnitFromId(287)), "PowerSource") > 0)) { TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(2); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_WEST_OBELISK); gv_obelisksPowered += 1; lv_obelisk = UnitFromId(287); libNtve_gf_RescueUnit(lv_obelisk, gv_p01_USER, true); @@ -1532,7 +1539,7 @@ bool gt_ObeliskSouthPowered_Func (bool testConds, bool runActions) { if ((PowerLevel(gv_p01_USER, UnitGetPosition(UnitFromId(285)), "PowerSource") > 0)) { TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(1); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_CLOSE_OBELISK); gv_obelisksPowered += 1; lv_obelisk = UnitFromId(285); libNtve_gf_RescueUnit(lv_obelisk, gv_p01_USER, true); @@ -3003,7 +3010,7 @@ bool gt_OvermindTendrilBeaconZerglingsSW_Func (bool testConds, bool runActions) TriggerEnable(TriggerGetCurrent(), false); lv_beacon = UnitFromId(36); UIAlertUnit("Trigger", gv_p01_USER, StringExternal("Param/Value/24EE165C"), null, gv_zeratul); - lib5BD4895D_gf_AP_Core_sendLocationLocal(4); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_SOUTHWEST_TENDRIL); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectOvermindTendrils, lv_beacon, gv_p01_USER); TriggerExecute(gt_TransmissionZeratulReachesTendrilsQ, true, false); UnitBehaviorAdd(gv_zeratul, "SuppressCloak", gv_zeratul, 1); @@ -3074,7 +3081,7 @@ bool gt_OvermindTendrilBeaconMutalisksNW_Func (bool testConds, bool runActions) TriggerEnable(TriggerGetCurrent(), false); lv_beacon = UnitFromId(929); UIAlertUnit("Trigger", gv_p01_USER, StringExternal("Param/Value/40839C6C"), null, gv_zeratul); - lib5BD4895D_gf_AP_Core_sendLocationLocal(7); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_NORTHWEST_TENDRIL); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectOvermindTendrils, lv_beacon, gv_p01_USER); TriggerExecute(gt_TransmissionZeratulReachesTendrilsQ, true, false); UnitBehaviorAdd(gv_zeratul, "SuppressCloak", gv_zeratul, 1); @@ -3145,7 +3152,7 @@ bool gt_OvermindTendrilBeaconLurkersSE_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); lv_beacon = UnitFromId(46); UIAlertUnit("Trigger", gv_p01_USER, StringExternal("Param/Value/57A961AD"), null, gv_zeratul); - lib5BD4895D_gf_AP_Core_sendLocationLocal(5); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_SOUTHEAST_TENDRIL); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectOvermindTendrils, lv_beacon, gv_p01_USER); TriggerExecute(gt_TransmissionZeratulReachesTendrilsQ, true, false); UnitBehaviorAdd(gv_zeratul, "SuppressCloak", gv_zeratul, 1); @@ -3216,7 +3223,7 @@ bool gt_OvermindTendrilBeaconBanelingsNE_Func (bool testConds, bool runActions) TriggerEnable(TriggerGetCurrent(), false); lv_beacon = UnitFromId(38); UIAlertUnit("Trigger", gv_p01_USER, StringExternal("Param/Value/0FA47BA1"), null, gv_zeratul); - lib5BD4895D_gf_AP_Core_sendLocationLocal(6); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_NORTHEAST_TENDRIL); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectOvermindTendrils, lv_beacon, gv_p01_USER); TriggerExecute(gt_TransmissionZeratulReachesTendrilsQ, true, false); UnitBehaviorAdd(gv_zeratul, "SuppressCloak", gv_zeratul, 1); @@ -3792,7 +3799,7 @@ bool gt_VictoryOvermindTendrilsCompleted_Func (bool testConds, bool runActions) } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(lib5BD4895D_gv_aP_Core_locationVictory); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(lib5BD4895D_gv_aP_Core_locationVictory); gv_gameOver = true; Wait(2.0, c_timeGame); TriggerExecute(gt_ObjectiveOvermindTendrilsComplete, true, false); @@ -4138,9 +4145,11 @@ bool gt_ObjectiveReachtheNexusCreateQ_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); TriggerQueueEnter(); - ObjectiveCreate(StringExternal("Param/Value/23EF9A8D"), StringExternal("Param/Value/FF2D6A5A"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveSimple(ObjectiveLastCreated()); + ObjectiveCreate(StringExternal("Param/Value/23EF9A8D"), StringExternal("Param/Value/FF2D6A5A"), c_objectiveStateHidden, true); gv_objectiveReachNexus = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveReachNexus, lib5BD4895D_ge_APObjectiveCategory_Primary, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveReachNexus, gv_LOCATION_ID_BASE); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveReachNexus, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul03Objective1, ObjectiveLastCreated(), StringExternal("Param/Value/87592C22")); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); TriggerQueueExit(); @@ -4228,12 +4237,18 @@ bool gt_ObjectiveOvermindTendrilsCreateHidden_Func (bool testConds, bool runActi TriggerEnable(TriggerGetCurrent(), false); ObjectiveCreate(StringExternal("Param/Value/99827D41"), StringExternal("Param/Value/A28B7D22"), c_objectiveStateHidden, true); - lib5BD4895D_gf_AP_Core_addObjectiveWithCounter(ObjectiveLastCreated(), "", gv_overmindTendrilsVisited, 4); gv_objectiveOvermindTendrils = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveWithCounter(gv_objectiveOvermindTendrils, lib5BD4895D_ge_APObjectiveCategory_Primary, "", gv_overmindTendrilsVisited, 4, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveOvermindTendrils, gv_LOCATION_ID_NORTHEAST_TENDRIL); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveOvermindTendrils, gv_LOCATION_ID_NORTHWEST_TENDRIL); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveOvermindTendrils, gv_LOCATION_ID_SOUTHEAST_TENDRIL); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveOvermindTendrils, gv_LOCATION_ID_SOUTHWEST_TENDRIL); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveOvermindTendrils, lib5BD4895D_gv_aP_Core_locationVictory); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul03Objective2, ObjectiveLastCreated(), StringExternal("Param/Value/51A16B0B")); - ObjectiveCreate(StringExternal("Param/Value/062D6BA5"), StringExternal("Param/Value/873AE416"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveSimple(ObjectiveLastCreated()); + ObjectiveCreate(StringExternal("Param/Value/062D6BA5"), StringExternal("Param/Value/873AE416"), c_objectiveStateHidden, true); gv_objectiveZeratulMustSurvive = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveZeratulMustSurvive, lib5BD4895D_ge_APObjectiveCategory_Primary, false); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveZeratulMustSurvive, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul03Objective4, ObjectiveLastCreated(), StringExternal("Param/Value/383549AC")); return true; } @@ -4262,8 +4277,7 @@ bool gt_ObjectiveOvermindTendrilsShowQ_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); TriggerQueueEnter(); - ObjectiveShow(gv_objectiveOvermindTendrils, PlayerGroupAll(), true); - lib5BD4895D_gf_AP_Core_showObjective(gv_objectiveOvermindTendrils); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveOvermindTendrils, true); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); TriggerQueueExit(); VisRevealArea(gv_p01_USER, RegionCircle(UnitGetPosition(UnitFromId(46)), 5.0), 6.0, false); @@ -4319,10 +4333,10 @@ bool gt_ObjectiveOvermindTendrilsUpdateQ_Func (bool testConds, bool runActions) TriggerQueueExit(); } + lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectiveOvermindTendrils, gv_overmindTendrilsVisited); if ((gv_overmindTendrilsVisited < 4)) { TriggerQueueEnter(); SoundPlay(SoundLink("UI_TerranRescueUnit", 0), PlayerGroupAll(), 100.0, 0.0); - lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectiveOvermindTendrils, gv_overmindTendrilsVisited); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); if ((libABFE498B_gv_aP_Triggers_skipCutscenes == false)) { TriggerExecute(gt_ReleaseControlofZeratul, true, true); @@ -4334,7 +4348,6 @@ bool gt_ObjectiveOvermindTendrilsUpdateQ_Func (bool testConds, bool runActions) else { TriggerEnable(TriggerGetCurrent(), false); libNtve_gf_MakeUnitInvulnerable(gv_zeratul, true); - lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectiveOvermindTendrils, gv_overmindTendrilsVisited); TriggerExecute(gt_VictoryOvermindTendrilsCompleted, true, true); } return true; @@ -4408,7 +4421,13 @@ void gt_ObjectiveOvermindTendrilsFailed_Init () { // Trigger: Objective Power The Obelisks Create Q //-------------------------------------------------------------------------------------------------- bool gt_ObjectivePowerTheObelisksCreateQ_Func (bool testConds, bool runActions) { + // Variable Declarations + int lv_category; + // Automatic Variable Declarations + // Variable Initialization + lv_category = lib5BD4895D_ge_APObjectiveCategory_Secondary; + // Conditions if (testConds) { if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { @@ -4423,9 +4442,12 @@ bool gt_ObjectivePowerTheObelisksCreateQ_Func (bool testConds, bool runActions) TriggerEnable(TriggerGetCurrent(), false); TriggerQueueEnter(); - ObjectiveCreate(StringExternal("Param/Value/F9857D86"), StringExternal("Param/Value/24C2D047"), c_objectiveStateActive, false); - lib5BD4895D_gf_AP_Core_addObjectiveWithCounter(ObjectiveLastCreated(), "", gv_obelisksPowered, 2); + ObjectiveCreate(StringExternal("Param/Value/F9857D86"), StringExternal("Param/Value/24C2D047"), c_objectiveStateHidden, false); gv_objectivePowerTheObelisks = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveWithCounter(gv_objectivePowerTheObelisks, lv_category, "", gv_obelisksPowered, 2, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectivePowerTheObelisks, gv_LOCATION_ID_CLOSE_OBELISK); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectivePowerTheObelisks, gv_LOCATION_ID_WEST_OBELISK); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectivePowerTheObelisks, true); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); TriggerQueueExit(); return true; @@ -4441,8 +4463,6 @@ void gt_ObjectivePowerTheObelisksCreateQ_Init () { //-------------------------------------------------------------------------------------------------- bool gt_ObjectivePowerTheObelisksUpdateQ_Func (bool testConds, bool runActions) { // Automatic Variable Declarations - int auto746D6D18_val; - // Conditions if (testConds) { if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { @@ -4459,20 +4479,13 @@ bool gt_ObjectivePowerTheObelisksUpdateQ_Func (bool testConds, bool runActions) return true; } - auto746D6D18_val = gv_obelisksPowered; - if (auto746D6D18_val == 1) { - TriggerQueueEnter(); - lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectivePowerTheObelisks, gv_obelisksPowered); - Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); - TriggerQueueExit(); - } - else if (auto746D6D18_val == 2) { + lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectivePowerTheObelisks, gv_obelisksPowered); + if ((gv_obelisksPowered == 2)) { TriggerEnable(TriggerGetCurrent(), false); TriggerExecute(gt_ObjectivePowerTheObelisksComplete, true, false); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); } - else { - } + return true; } diff --git a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/Triggers b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/Triggers index f352e57f2..af0f5a3df 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/Triggers +++ b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/Triggers @@ -12,9 +12,103 @@ + + + + + + + + + + + + LOCATION_ID_CLOSE_OBELISK + + + + + + + + 1 + + + + LOCATION_ID_WEST_OBELISK + + + + + + + + 2 + + + + LOCATION_ID_BASE + + + + + + + + 3 + + + + LOCATION_ID_SOUTHWEST_TENDRIL + + + + + + + + 4 + + + + LOCATION_ID_SOUTHEAST_TENDRIL + + + + + + + + 5 + + + + LOCATION_ID_NORTHEAST_TENDRIL + + + + + + + + 6 + + + + LOCATION_ID_NORTHWEST_TENDRIL + + + + + + + + 7 + + @@ -7003,7 +7097,7 @@ - + @@ -7162,14 +7256,13 @@ - - - + + + - - - 3 - + + + @@ -9115,7 +9208,7 @@ - + @@ -9143,15 +9236,14 @@ - - + + - + - - - 2 - + + + @@ -9422,7 +9514,7 @@ - + @@ -9450,15 +9542,14 @@ - - + + - + - - - 1 - + + + @@ -25273,7 +25364,7 @@ - + @@ -25512,14 +25603,13 @@ Update Lab Research Points - - - + + + - - - 4 - + + + @@ -25923,7 +26013,7 @@ - + @@ -26162,14 +26252,13 @@ Update Lab Research Points - - - + + + - - - 7 - + + + @@ -26573,7 +26662,7 @@ - + @@ -26812,14 +26901,13 @@ Update Lab Research Points - - - + + + - - - 5 - + + + @@ -27223,7 +27311,7 @@ - + @@ -27462,14 +27550,13 @@ Update Lab Research Points - - - + + + - - - 6 - + + + @@ -30918,7 +31005,7 @@ - + @@ -30959,12 +31046,12 @@ - - - + + + - - + + @@ -32589,8 +32676,10 @@ - + + + @@ -32608,7 +32697,7 @@ - + @@ -32618,18 +32707,6 @@ - - - - - - - - - - - - @@ -32647,6 +32724,54 @@ + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -32917,12 +33042,18 @@ - + + + + + + - + + @@ -32999,33 +33130,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - 4 - - @@ -33042,6 +33146,106 @@ + + + + + + + + + + + + + + + + + + + + + + + + 4 + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -33076,7 +33280,7 @@ - + @@ -33086,17 +33290,6 @@ - - - - - - - - - - - @@ -33113,6 +33306,38 @@ + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + @@ -33213,40 +33438,22 @@ - - + - - + + - - - - - - - - - - + + - - - - - - + + - - - - - - - - + + + @@ -33788,6 +33995,7 @@ + @@ -34001,11 +34209,23 @@ Display an objective message + + + + + + + + + + + + + - @@ -34041,20 +34261,6 @@ - - - - - - - - - - - - - - @@ -34079,7 +34285,6 @@ - @@ -34116,20 +34321,6 @@ - - - - - - - - - - - - - - @@ -34477,11 +34668,22 @@ + + + + + + + + + + + @@ -34536,8 +34738,11 @@ - + + + + @@ -34554,7 +34759,7 @@ - + @@ -34564,50 +34769,100 @@ - - + + - - - - + + + + + + - - - + + + - + - - + + + + + + + + + + + + + + + + - - + + - - + + 2 - - + + + false + + + + + + + + - - + + - - + + - - - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -34627,7 +34882,8 @@ - + + @@ -34683,36 +34939,8 @@ Display an objective message - - - - - - - - - - - - - - - - - - - 1 - - - - - - - - - @@ -34724,36 +34952,16 @@ - - - - - - - - - - - - - - - - - - + + - - - - 2 - + - + @@ -34770,7 +34978,7 @@ - + @@ -34790,7 +34998,7 @@ - + @@ -34802,6 +35010,26 @@ + + + + + + + + + + + + + + + + + + 2 + + diff --git a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/Triggers.version b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/Triggers.version index 983ffbb32..e24933313 100644 Binary files a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/Triggers.version and b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/Triggers.version differ diff --git a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt index f2dfce639..93026fbb5 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt +++ b/Maps/ArchipelagoCampaign/WoL/ap_echoes_of_the_future.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt @@ -1,5 +1,6 @@ Category/Name/0FCD41E7=Lab Research - Power the Obelisks Category/Name/2694D44C======== CINEMATIC ======= +Category/Name/27848076=Location IDs Category/Name/2EF94A07=Primary Objective - Reach the Nexus Category/Name/3252609C======== MAIN ======= Category/Name/383EBD9E=Victory Cinematic - Final Tendril @@ -177,6 +178,7 @@ Variable/Name/08AF1674=FadeDuration Variable/Name/0A1CE249=FadeDuration Variable/Name/0A20CA72=Beacon Variable/Name/0F043721=Egg +Variable/Name/15E8C073=LOCATION_ID_BASE Variable/Name/1695FFC7=Obelisk Variable/Name/176B1962=Overlord 2 Variable/Name/17F0C795=BeaconPingBanelings @@ -184,6 +186,7 @@ Variable/Name/1A696844=Larva Variable/Name/1FC387FB=SouthGatePingModel Variable/Name/1FF520DA=Overlord 5 Variable/Name/20843CBD=Overlord 3 +Variable/Name/21DCD285=LOCATION_ID_SOUTHWEST_TENDRIL Variable/Name/21FC2A64=NydusWormP04 Variable/Name/223B779F=VictoryLarvaS2 Variable/Name/2559BCBD=VictoryCurrentTransmission @@ -198,10 +201,13 @@ Variable/Name/39E67D98=ProtossProbeGroup Variable/Name/3F20EDC0=ObjectiveOvermindTendrils Variable/Name/403C0C60=HardInsaneIgnoreWaypoints Variable/Name/41EBDCA0=PingNydusWormP04 +Variable/Name/45BC3BE2=LOCATION_ID_CLOSE_OBELISK Variable/Name/47EB0687=PathingBlockerGroup +Variable/Name/48BE1E30=category Variable/Name/498A6094=NydusWormP03 Variable/Name/4B90F480=P10_ABANDONED_STRUCTURES Variable/Name/4BC0194D=MidColossusCinematicCompleted +Variable/Name/5238367C=LOCATION_ID_WEST_OBELISK Variable/Name/53FB76A3=ObserverPingModel Variable/Name/5C63BD63=Achievement-HardTimer Variable/Name/5F79B5A6=Obelisk @@ -228,11 +234,14 @@ Variable/Name/9D0F8A57=InvisiblePylon Variable/Name/A0CBC4A6=BriefingUltra1 Variable/Name/A1195E8F=ZergFrenzyWarningTimer Variable/Name/A16DDC10=Music +Variable/Name/A24BCD26=LOCATION_ID_SOUTHEAST_TENDRIL Variable/Name/A2D0C5A4=P08_OVERMIND_REMAINS Variable/Name/A7B7646B=Kerrigan Variable/Name/A8F46110=P05_ZERG_LOW_GROUND_NOAI +Variable/Name/AC2F6A81=LOCATION_ID_NORTHWEST_TENDRIL Variable/Name/AEA409DF=NydusWormHP Variable/Name/AEB689E7=ZerglingRush +Variable/Name/B11CAE6B=LOCATION_ID_NORTHEAST_TENDRIL Variable/Name/B2388A63=ObjectiveReachNexus Variable/Name/B30C5177=currentUnit Variable/Name/B5E673DC=OvermindTendrilsVisited diff --git a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/ComponentList.SC2Components b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/ComponentList.SC2Components index 786240269..8fbed77a5 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/ComponentList.SC2Components +++ b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/ComponentList.SC2Components @@ -1,5 +1,6 @@ + GameData DocumentInfo MapInfo diff --git a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/DocumentHeader b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/DocumentHeader index d39150074..ba489aa9f 100644 Binary files a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/DocumentHeader and b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/DocumentHeader differ diff --git a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/MapScript.galaxy b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/MapScript.galaxy index 1b057bf31..a24aff02d 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/MapScript.galaxy +++ b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/MapScript.galaxy @@ -29,6 +29,12 @@ void InitLibs () { //-------------------------------------------------------------------------------------------------- // Constants //-------------------------------------------------------------------------------------------------- +const int gv_LOCATION_ID_PROTOSS_ARCHIVE = 1; +const int gv_LOCATION_ID_KILLS = 2; +const int gv_LOCATION_ID_URUN = 3; +const int gv_LOCATION_ID_MOHANDAR = 4; +const int gv_LOCATION_ID_SELENDIS = 5; +const int gv_LOCATION_ID_ARTANIS = 6; const int gv_p01_PLAYER = 1; const int gv_p02_ALLIED_PROTOSS = 2; const int gv_p04_ZERG_NW = 4; @@ -230,6 +236,7 @@ trigger gt_ObjectiveProtectArchiveCreateQ; trigger gt_ObjectiveProtectArchiveUpdate; trigger gt_ObjectiveProtectArchiveComplete; trigger gt_ObjectiveProtectArchiveFailed; +trigger gt_ObjectiveProtectArchiveDisable; trigger gt_BriefingQ; trigger gt_BriefingScene00; trigger gt_BriefingScene01; @@ -1248,7 +1255,7 @@ bool gt_NewTech01PhoenixQ_Func (bool testConds, bool runActions) { UIAlertPoint("Trigger", gv_p01_PLAYER, StringExternal("Param/Value/8403F3B6"), null, UnitGetPosition(UnitFromId(639))); // Transmission - SoundLink("TZeratul04Urun00002", -1) libCamp_gf_SendTransmissionCampaign(gv_heroPhoenix, SoundLink("TZeratul04Urun00002", 0), c_transmissionDurationAdd, 1.0, true); - lib5BD4895D_gf_AP_Core_sendLocationLocal(3); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_URUN); if ((UnitIsAlive(gv_zeratul) == true)) { // Transmission - SoundLink("TZeratul04Zeratul00003", -1) libCamp_gf_SendTransmissionCampaign(gv_zeratul, SoundLink("TZeratul04Zeratul00003", 0), c_transmissionDurationAdd, 1.0, true); @@ -1309,7 +1316,7 @@ bool gt_NewTech02VoidRayQ_Func (bool testConds, bool runActions) { UIAlertPoint("Trigger", gv_p01_PLAYER, StringExternal("Param/Value/5DAFE246"), null, UnitGetPosition(UnitFromId(639))); // Transmission - SoundLink("TZeratul04Mohandar00004", -1) libCamp_gf_SendTransmissionCampaign(gv_heroVoidRay, SoundLink("TZeratul04Mohandar00004", 0), c_transmissionDurationAdd, 1.0, true); - lib5BD4895D_gf_AP_Core_sendLocationLocal(4); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_MOHANDAR); if ((UnitIsAlive(gv_zeratul) == true)) { // Transmission - SoundLink("TZeratul04Zeratul00005", -1) libCamp_gf_SendTransmissionCampaign(gv_zeratul, SoundLink("TZeratul04Zeratul00005", 0), c_transmissionDurationAdd, 1.0, true); @@ -1371,7 +1378,7 @@ bool gt_NewTech03CarriersQ_Func (bool testConds, bool runActions) { UIAlertPoint("Trigger", gv_p01_PLAYER, StringExternal("Param/Value/7D557C0A"), null, UnitGetPosition(UnitFromId(639))); // Transmission - SoundLink("TZeratul04Selendis00006", -1) libCamp_gf_SendTransmissionCampaign(gv_heroCarrier, SoundLink("TZeratul04Selendis00006", 0), c_transmissionDurationAdd, 1.0, true); - lib5BD4895D_gf_AP_Core_sendLocationLocal(5); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_SELENDIS); if ((UnitIsAlive(gv_zeratul) == true)) { // Transmission - SoundLink("TZeratul04Zeratul00007", -1) libCamp_gf_SendTransmissionCampaign(gv_zeratul, SoundLink("TZeratul04Zeratul00007", 0), c_transmissionDurationAdd, 1.0, true); @@ -1440,7 +1447,7 @@ bool gt_NewTech04MothershipQ_Func (bool testConds, bool runActions) { UIAlertPoint("Trigger", gv_p01_PLAYER, StringExternal("Param/Value/718CB62A"), null, UnitGetPosition(UnitFromId(639))); // Transmission - SoundLink("TZeratul04Artanis00009", -1) libCamp_gf_SendTransmissionCampaign(gv_heroMothership, SoundLink("TZeratul04Artanis00009", 0), c_transmissionDurationAdd, 1.0, true); - lib5BD4895D_gf_AP_Core_sendLocationLocal(6); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_ARTANIS); gv_mothershipHeroBorn = true; libCamp_gf_SetAllSoundChannelVolumesCampaign(libNtve_ge_VolumeChannelMode_Game); ActorSend(ActorFromDoodad(DoodadFromId(482)), "AnimGroupRemove Work"); @@ -4802,6 +4809,10 @@ bool gt_TransmissionTemplarsStoreKnowledgeQ_Func (bool testConds, bool runAction if (!((gv_inCinematic == false))) { return false; } + + if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { + return false; + } } // Actions @@ -5277,13 +5288,13 @@ bool gt_VictoryDefeatforPlayer_Func (bool testConds, bool runActions) { UnitGroupRemoveUnitGroup(lv_unitGroup, UnitGroup("AP_ZerglingRespawnControllerUnit", gv_p01_PLAYER, RegionEntireMap(), UnitFilter(0, 0, (1 << c_targetFilterMissile), (1 << (c_targetFilterDead - 32)) | (1 << (c_targetFilterHidden - 32))), 0)); if (((UnitGroupCount(lv_unitGroup, c_unitCountAlive) == 0) || (gv_pretendPlayerIsDead == true))) { TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(lib5BD4895D_gv_aP_Core_locationVictory); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(lib5BD4895D_gv_aP_Core_locationVictory); gv_gameOver = true; lib5BD4895D_gf_AP_Core_setObjectiveCompleted(gv_objectiveSurviveUntilYouDie); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); if ((gv_killCount >= gv_sTAGE_01_KILL_QUOTA)) { - if ((lib5BD4895D_gf_AP_Core_isLocationSent(6) == false)) { - lib5BD4895D_gf_AP_Core_sendLocationLocal(6); + if ((lib5BD4895D_gf_AP_Core_isLocationSent(gv_LOCATION_ID_ARTANIS) == false)) { + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_ARTANIS); } libCamp_gf_RunMissionVictorySequence(gt_VictoryQ); @@ -5465,13 +5476,21 @@ bool gt_ObjectiveSurviveCreateQ_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); TriggerQueueEnter(); - ObjectiveCreate(TextReplaceWord(StringExternal("Param/Value/127508A0"), StringExternal("Param/Value/65D79CE4"), IntToText(gv_sTAGE_01_KILL_QUOTA), c_stringReplaceAll, c_stringCase), StringExternal("Param/Value/1F2F72F6"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveSimple(ObjectiveLastCreated()); + ObjectiveCreate(TextReplaceWord(StringExternal("Param/Value/127508A0"), StringExternal("Param/Value/65D79CE4"), IntToText(gv_sTAGE_01_KILL_QUOTA), c_stringReplaceAll, c_stringCase), StringExternal("Param/Value/1F2F72F6"), c_objectiveStateHidden, true); gv_objectiveKillPrimary = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveKillPrimary, lib5BD4895D_ge_APObjectiveCategory_Primary, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveKillPrimary, gv_LOCATION_ID_KILLS); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveKillPrimary, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul04Objective1, ObjectiveLastCreated(), StringExternal("Param/Value/09C0A593")); - ObjectiveCreate(StringExternal("Param/Value/D6B7F35F"), StringExternal("Param/Value/97923284"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveSimple(ObjectiveLastCreated()); + ObjectiveCreate(StringExternal("Param/Value/D6B7F35F"), StringExternal("Param/Value/97923284"), c_objectiveStateHidden, true); gv_objectiveSurviveUntilYouDie = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveSurviveUntilYouDie, lib5BD4895D_ge_APObjectiveCategory_Primary, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveSurviveUntilYouDie, gv_LOCATION_ID_URUN); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveSurviveUntilYouDie, gv_LOCATION_ID_MOHANDAR); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveSurviveUntilYouDie, gv_LOCATION_ID_SELENDIS); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveSurviveUntilYouDie, gv_LOCATION_ID_ARTANIS); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveSurviveUntilYouDie, lib5BD4895D_gv_aP_Core_locationVictory); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveSurviveUntilYouDie, true); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); TriggerQueueExit(); return true; @@ -5500,7 +5519,7 @@ bool gt_ObjectiveSurvivePrimaryComplete_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(2); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_KILLS); TriggerExecute(gt_ObjectiveSurviveCreateQ, true, false); lib5BD4895D_gf_AP_Core_setObjectiveCompleted(gv_objectiveKillPrimary); Wait(libCamp_gv_campaignObjectiveDelay, c_timeReal); @@ -5516,7 +5535,13 @@ void gt_ObjectiveSurvivePrimaryComplete_Init () { // Trigger: Objective Protect Archive Create Q //-------------------------------------------------------------------------------------------------- bool gt_ObjectiveProtectArchiveCreateQ_Func (bool testConds, bool runActions) { + // Variable Declarations + int lv_category; + // Automatic Variable Declarations + // Variable Initialization + lv_category = lib5BD4895D_ge_APObjectiveCategory_Secondary; + // Conditions if (testConds) { if (!((TriggerIsEnabled(TriggerGetCurrent()) == true))) { @@ -5531,9 +5556,11 @@ bool gt_ObjectiveProtectArchiveCreateQ_Func (bool testConds, bool runActions) { TriggerEnable(TriggerGetCurrent(), false); TriggerQueueEnter(); - ObjectiveCreate(StringExternal("Param/Value/4DA1EAE9"), StringExternal("Param/Value/6FBB3F20"), c_objectiveStateActive, false); - lib5BD4895D_gf_AP_Core_addObjectiveWithTimer(ObjectiveLastCreated(), gv_protectArchiveTimer); + ObjectiveCreate(StringExternal("Param/Value/4DA1EAE9"), StringExternal("Param/Value/6FBB3F20"), c_objectiveStateHidden, false); gv_objectiveProtectArchive = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveWithTimer(gv_objectiveProtectArchive, lv_category, gv_protectArchiveTimer, true); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveProtectArchive, gv_LOCATION_ID_PROTOSS_ARCHIVE); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveProtectArchive, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul04Objective3, ObjectiveLastCreated(), StringExternal("Param/Value/691FF230")); Wait(4.0, c_timeReal); TriggerEnable(gt_ObjectiveProtectArchiveUpdate, true); @@ -5613,7 +5640,7 @@ bool gt_ObjectiveProtectArchiveComplete_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(1); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_PROTOSS_ARCHIVE); if ((UnitIsAlive(UnitFromId(716)) == true)) { gv_statArchiveResearchPoints = libCamp_gf_StoryResearchObjectReward(libCamp_ge_StoryResearchObject_ResearchObjectProtecttheArchive, libCamp_ge_StoryResearchCategory_ResearchCategoryProtoss); libNtve_gf_MakeUnitInvulnerable(UnitFromId(716), true); @@ -5680,6 +5707,41 @@ void gt_ObjectiveProtectArchiveFailed_Init () { TriggerAddEventUnitDied(gt_ObjectiveProtectArchiveFailed, null); } +//-------------------------------------------------------------------------------------------------- +// Trigger: Objective Protect Archive Disable +//-------------------------------------------------------------------------------------------------- +bool gt_ObjectiveProtectArchiveDisable_Func (bool testConds, bool runActions) { + // Automatic Variable Declarations + // Conditions + if (testConds) { + if (!((lib5BD4895D_gv_aP_Core_locationCollectable[gv_LOCATION_ID_PROTOSS_ARCHIVE] == false))) { + return false; + } + } + + // Actions + if (!runActions) { + return true; + } + + TriggerEnable(gt_ObjectiveProtectArchiveCreateQ, false); + TriggerEnable(gt_TransmissionTemplarsStoreKnowledgeQ, false); + TriggerEnable(gt_ObjectiveProtectArchiveFailed, false); + TriggerEnable(gt_ObjectiveProtectArchiveUpdate, false); + if ((UnitIsAlive(UnitFromId(716)) == true)) { + libNtve_gf_MakeUnitInvulnerable(UnitFromId(716), true); + libNtve_gf_PlayAnimation(libNtve_gf_MainActorofUnit(UnitFromId(716)), c_animNameDefault, "Stand Work Start", c_animFlagPlayForever | c_animFlagNonLooping, c_animTimeDefault); + } + + return true; +} + +//-------------------------------------------------------------------------------------------------- +void gt_ObjectiveProtectArchiveDisable_Init () { + gt_ObjectiveProtectArchiveDisable = TriggerCreate("gt_ObjectiveProtectArchiveDisable_Func"); + TriggerAddEventTimeElapsed(gt_ObjectiveProtectArchiveDisable, 2.0, c_timeGame); +} + //-------------------------------------------------------------------------------------------------- // Trigger: Briefing Q //-------------------------------------------------------------------------------------------------- @@ -7205,6 +7267,7 @@ void InitTriggers () { gt_ObjectiveProtectArchiveUpdate_Init(); gt_ObjectiveProtectArchiveComplete_Init(); gt_ObjectiveProtectArchiveFailed_Init(); + gt_ObjectiveProtectArchiveDisable_Init(); gt_BriefingQ_Init(); gt_BriefingScene00_Init(); gt_BriefingScene01_Init(); diff --git a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/Triggers b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/Triggers index 49303f948..0c1318aad 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/Triggers +++ b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/Triggers @@ -12,9 +12,90 @@ + + + + + + + + + + + LOCATION_ID_PROTOSS_ARCHIVE + + + + + + + + 1 + + + + LOCATION_ID_KILLS + + + + + + + + 2 + + + + LOCATION_ID_URUN + + + + + + + + 3 + + + + LOCATION_ID_MOHANDAR + + + + + + + + 4 + + + + LOCATION_ID_SELENDIS + + + + + + + + 5 + + + + LOCATION_ID_ARTANIS + + + + + + + + 6 + + @@ -9855,7 +9936,7 @@ - + @@ -10387,15 +10468,14 @@ - - + + - + - - - 3 - + + + @@ -10682,7 +10762,7 @@ - + @@ -11161,15 +11241,14 @@ - - + + - + - - - 4 - + + + @@ -11457,7 +11536,7 @@ - + @@ -11973,15 +12052,14 @@ - - + + - + - - - 5 - + + + @@ -12316,7 +12394,7 @@ - + @@ -12983,15 +13061,14 @@ - - + + - + - - - 6 - + + + @@ -61617,6 +61694,7 @@ + @@ -61666,6 +61744,36 @@ false + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + @@ -64188,7 +64296,7 @@ - + @@ -64272,13 +64380,13 @@ - - + + - + - - + + @@ -64348,19 +64456,18 @@ - + - - + + - + - - - 6 - + + + @@ -64385,8 +64492,7 @@ - 6 - + @@ -65507,12 +65613,20 @@ - + + + - + + + + + + + @@ -65529,7 +65643,7 @@ - + @@ -65575,18 +65689,6 @@ - - - - - - - - - - - - @@ -65604,6 +65706,54 @@ + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -65640,7 +65790,7 @@ - + @@ -65650,18 +65800,6 @@ - - - - - - - - - - - - @@ -65679,6 +65817,110 @@ + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -65696,7 +65938,7 @@ - + @@ -65749,14 +65991,13 @@ - - - + + + - - - 2 - + + + @@ -65814,6 +66055,7 @@ + @@ -65825,11 +66067,22 @@ + + + + + + + + + + + @@ -65884,8 +66137,10 @@ - + + + @@ -65905,7 +66160,7 @@ - + @@ -65915,23 +66170,6 @@ - - - - - - - - - - - - - - - - - @@ -65949,6 +66187,59 @@ + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -66214,7 +66505,7 @@ - + @@ -66316,14 +66607,13 @@ - - - + + + - - - 1 - + + + @@ -66780,6 +67070,199 @@ + + + + + + + + + + + + + + + + + 2.0 + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + "Stand Work Start" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + diff --git a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/Triggers.version b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/Triggers.version index 4e58eb6fd..1ef382017 100644 Binary files a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/Triggers.version and b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/Triggers.version differ diff --git a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt index 5a982f2ea..efc841056 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt +++ b/Maps/ArchipelagoCampaign/WoL/ap_in_utter_darkness.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt @@ -22,6 +22,7 @@ Category/Name/C1B081FB=Scripted Events Category/Name/CD498FC3=Create Leaderboard Category/Name/DB4A60E5=AI Category/Name/E06A382B=Stats and Achievements +Category/Name/E55B8282=Location IDs Category/Name/FC550856=Midgame Cinematic FunctionDef/Grammar/A4C18A21=~a~ or ~b~ FunctionDef/Hint/A4C18A21=Returns the first value if player's kill count is not greater than the tier 2 achievement. Returns the second value if he has. Works on Casual difficulty even if player does not get achievement credit. @@ -138,6 +139,7 @@ Trigger/Name/C01527FA=Briefing Q Trigger/Name/C13958E3=Mid Cinematic Trigger/Name/C558413C=Stat -Stargate Unit Built Trigger/Name/C70FBE79=Swarm Wave B3 P05 NE +Trigger/Name/CAB9134C=Objective Protect Archive Disable Trigger/Name/CB1B9D3F=DEBUG - Set Protect Archive Timer Trigger/Name/CBC73627=Nydus Worm Attack 1 Trigger/Name/CDFE80B9=Attack Waves - Stage 2 - P05 NE @@ -181,6 +183,7 @@ Variable/Name/294BA441=ObjectiveKillPrimary Variable/Name/2C87B564=ThisAIPlayer Variable/Name/2E8CB9A5=ArtanisKills Variable/Name/33ED08EE=VictoryPortrait +Variable/Name/365E6404=LOCATION_ID_URUN Variable/Name/3823DE13=ReinforcementAutoMove Variable/Name/3A41F758=SPAWN Variable/Name/3C9515DB=ThisAIPlayer @@ -188,6 +191,7 @@ Variable/Name/3DCBA75C=ObjectiveProtectArchive Variable/Name/3DD12039=IntroCinematicCompleted Variable/Name/43A9E0F0=WAIT Time Variable/Name/453A5F6D=ThisAISpawn +Variable/Name/47313365=LOCATION_ID_SELENDIS Variable/Name/47FA6AF7=Colossus_East Variable/Name/48A556C8=Leaderboard Variable/Name/49F0B465=ZergPlayers @@ -226,6 +230,8 @@ Variable/Name/95B9DC7F=unitGroup Variable/Name/975005FF=Achievement Tier 2 kills Variable/Name/98995F46=ThisAISpawn Variable/Name/9BEA823B=HeroCarrier +Variable/Name/9C253C99=category +Variable/Name/9C294372=LOCATION_ID_MOHANDAR Variable/Name/9F04A2E0=ThisAIPlayer Variable/Name/A3054C1D=ThisAIPlayer Variable/Name/A314CCF3=MothershipHeroBorn @@ -242,6 +248,7 @@ Variable/Name/B6CF6BCA=ThisAIPlayer Variable/Name/B7A4544C=Omegalisk3 Variable/Name/B8F51421=STAGE_01_KILL_QUOTA Variable/Name/BAE36384=SuperWarpGate_P08 +Variable/Name/BB52609B=LOCATION_ID_PROTOSS_ARCHIVE Variable/Name/BCC1202D=FadeDuration Variable/Name/BD6C6D7A=Hybrid 3 Variable/Name/BDE3951B=ThisAISpawn @@ -250,6 +257,7 @@ Variable/Name/BF62429C=GameOver Variable/Name/BFA3AC53=NydusSpawnRegion Variable/Name/C0031B73=Pylon Variable/Name/C089D077=WAIT Time +Variable/Name/C318E4AD=LOCATION_ID_ARTANIS Variable/Name/C43928C8=LOC Variable/Name/C48E2E34=WAIT Time Variable/Name/C5D477B8=P05_ZERG_NE @@ -266,6 +274,7 @@ Variable/Name/E10DD4AC=Confirm Text Variable/Name/E2CA1196=P02_ALLIED_PROTOSS Variable/Name/E333726F=ThisAIPlayer Variable/Name/E37B6258=ThisAIPlayer +Variable/Name/E3B3107B=LOCATION_ID_KILLS Variable/Name/E5E97FCA=Region Variable/Name/E6E6F022=IntroCinematicColossusEast Variable/Name/E8858A25=VictoryCinematicCompleted diff --git a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/ComponentList.SC2Components b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/ComponentList.SC2Components index 12eb423e3..d38560b98 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/ComponentList.SC2Components +++ b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/ComponentList.SC2Components @@ -1,5 +1,6 @@ + GameData DocumentInfo MapInfo diff --git a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/DocumentHeader b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/DocumentHeader index d3fd5e4aa..6c06339df 100644 Binary files a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/DocumentHeader and b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/DocumentHeader differ diff --git a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/MapScript.galaxy b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/MapScript.galaxy index 4726b5912..b13dd4dac 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/MapScript.galaxy +++ b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/MapScript.galaxy @@ -27,6 +27,12 @@ void InitLibs () { //-------------------------------------------------------------------------------------------------- // Constants //-------------------------------------------------------------------------------------------------- +const int gv_LOCATION_ID_FIRST_HATCHERY = 1; +const int gv_LOCATION_ID_SECOND_HATCHERY = 2; +const int gv_LOCATION_ID_THIRD_HATCHERY = 3; +const int gv_LOCATION_ID_FIRST_PROPHECY_FRAGMENT = 4; +const int gv_LOCATION_ID_SECOND_PROPHECY_FRAGMENT = 5; +const int gv_LOCATION_ID_THIRD_PROPHECY_FRAGMENT = 6; const int gv_p1_USER = 1; const int gv_p2_ALLIED = 2; const int gv_p3_ZERG = 3; @@ -8000,7 +8006,7 @@ bool gt_VictoryVoidSeekerRescue_Func (bool testConds, bool runActions) { } if ((UnitGetType(EventUnit()) == "Zeratul")) { - lib5BD4895D_gf_AP_Core_sendLocationLocal(lib5BD4895D_gv_aP_Core_locationVictory); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(lib5BD4895D_gv_aP_Core_locationVictory); libNtve_gf_ShareVisionofUnit(gv_tHEONEVOIDSEEKER, true, gv_p1_USER); gv_statZeratulLifeRemaining += (UnitGetPropertyFixed(gv_tHEONEZERATUL, c_unitPropLife, c_unitPropNormal) - UnitGetPropertyFixed(gv_tHEONEZERATUL, c_unitPropLife, c_unitPropCurrent)); libNtve_gf_ShowHideUnit(EventUnit(), false); @@ -8298,7 +8304,7 @@ bool gt_Hatchery01Dies_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(1); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_FIRST_HATCHERY); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectDestroyHatcheries, EventUnit(), gv_p1_USER); return true; } @@ -8331,7 +8337,7 @@ bool gt_Hatchery02Dies_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(2); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_SECOND_HATCHERY); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectDestroyHatcheries, EventUnit(), gv_p1_USER); return true; } @@ -8364,7 +8370,7 @@ bool gt_Hatchery03Dies_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(3); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_THIRD_HATCHERY); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectDestroyHatcheries, EventUnit(), gv_p1_USER); return true; } @@ -8393,7 +8399,7 @@ bool gt_Shrine01_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(4); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_FIRST_PROPHECY_FRAGMENT); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectVisittheShrines, UnitFromId(1561), gv_p1_USER); return true; } @@ -8421,7 +8427,7 @@ bool gt_Shrine02_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(5); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_SECOND_PROPHECY_FRAGMENT); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectVisittheShrines, UnitFromId(1406), gv_p1_USER); return true; } @@ -8449,7 +8455,7 @@ bool gt_Shrine03_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - lib5BD4895D_gf_AP_Core_sendLocationLocal(6); + lib5BD4895D_gf_AP_Core_collectLocationUpdateObjective(gv_LOCATION_ID_THIRD_PROPHECY_FRAGMENT); libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectVisittheShrines, UnitFromId(1563), gv_p1_USER); return true; } @@ -8477,10 +8483,14 @@ bool gt_ObjectiveShrinesCreate_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - ObjectiveCreate(StringExternal("Param/Value/AC0671BC"), StringExternal("Param/Value/31F725B7"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveWithCounter(ObjectiveLastCreated(), "", gv_obejctiveShrinesUpdate, gv_obejctiveShrinesTotal); - libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul01Objective1, ObjectiveLastCreated(), StringExternal("Param/Value/715FB01E")); + ObjectiveCreate(StringExternal("Param/Value/AC0671BC"), StringExternal("Param/Value/31F725B7"), c_objectiveStateHidden, true); gv_objectiveShrinesGetToShrines = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveWithCounter(gv_objectiveShrinesGetToShrines, lib5BD4895D_ge_APObjectiveCategory_Primary, "", gv_obejctiveShrinesUpdate, gv_obejctiveShrinesTotal, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveShrinesGetToShrines, gv_LOCATION_ID_FIRST_PROPHECY_FRAGMENT); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveShrinesGetToShrines, gv_LOCATION_ID_SECOND_PROPHECY_FRAGMENT); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveShrinesGetToShrines, gv_LOCATION_ID_THIRD_PROPHECY_FRAGMENT); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveShrinesGetToShrines, true); + libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul01Objective1, ObjectiveLastCreated(), StringExternal("Param/Value/715FB01E")); return true; } @@ -8647,9 +8657,10 @@ bool gt_ObjectiveZeratulCreate_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - ObjectiveCreate(StringExternal("Param/Value/2BCA340D"), StringExternal("Param/Value/F232EEE4"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveSimple(ObjectiveLastCreated()); + ObjectiveCreate(StringExternal("Param/Value/2BCA340D"), StringExternal("Param/Value/F232EEE4"), c_objectiveStateHidden, true); gv_objectiveShrinesZeratulMustSurvive = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveShrinesZeratulMustSurvive, lib5BD4895D_ge_APObjectiveCategory_Primary, false); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveShrinesZeratulMustSurvive, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul01Objective2, ObjectiveLastCreated(), StringExternal("Param/Value/230D7A69")); return true; } @@ -8705,7 +8716,13 @@ void gt_ObjectiveZeratulComplete_Init () { // Trigger: Objective Hatcheries Create //-------------------------------------------------------------------------------------------------- bool gt_ObjectiveHatcheriesCreate_Func (bool testConds, bool runActions) { + // Variable Declarations + int lv_category; + // Automatic Variable Declarations + // Variable Initialization + lv_category = lib5BD4895D_ge_APObjectiveCategory_Secondary; + // Conditions if (testConds) { if (!((UnitTypeTestFlag(UnitGetType(EventUnit()), c_unitFlagMissile) == false))) { @@ -8727,9 +8744,13 @@ bool gt_ObjectiveHatcheriesCreate_Func (bool testConds, bool runActions) { } TriggerEnable(TriggerGetCurrent(), false); - ObjectiveCreate(StringExternal("Param/Value/BC19B4F5"), StringExternal("Param/Value/7980C88D"), c_objectiveStateActive, false); - lib5BD4895D_gf_AP_Core_addObjectiveWithCounter(ObjectiveLastCreated(), "checks", (gv_objectiveHatcheriesQuota - gv_objectiveHatcheriesKilled), 0); + ObjectiveCreate(StringExternal("Param/Value/BC19B4F5"), StringExternal("Param/Value/7980C88D"), c_objectiveStateHidden, false); gv_objectiveHatcheries = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveWithCounter(gv_objectiveHatcheries, lv_category, "", gv_objectiveHatcheriesKilled, gv_objectiveHatcheriesQuota, true); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveHatcheries, gv_LOCATION_ID_FIRST_HATCHERY); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveHatcheries, gv_LOCATION_ID_SECOND_HATCHERY); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveHatcheries, gv_LOCATION_ID_THIRD_HATCHERY); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveHatcheries, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul01Objective3, ObjectiveLastCreated(), StringExternal("Param/Value/886B196A")); return true; } @@ -8786,7 +8807,7 @@ bool gt_ObjectiveHatcheriesDestroyedQ_Func (bool testConds, bool runActions) { } gv_objectiveHatcheriesKilled += 1; - lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectiveHatcheries, (gv_objectiveHatcheriesQuota - gv_objectiveHatcheriesKilled)); + lib5BD4895D_gf_AP_Core_setObjectiveCounter(gv_objectiveHatcheries, gv_objectiveHatcheriesKilled); if ((gv_objectiveHatcheriesKilled == gv_objectiveHatcheriesQuota)) { TriggerEnable(TriggerGetCurrent(), false); TriggerExecute(gt_ObjectiveHatcheriesCompleteQ, true, false); @@ -8831,9 +8852,11 @@ bool gt_ObjectiveVoidSeekerObjectivesQ_Func (bool testConds, bool runActions) { } TriggerQueueEnter(); - ObjectiveCreate(StringExternal("Param/Value/1B29F485"), StringExternal("Param/Value/231814B5"), c_objectiveStateActive, true); - lib5BD4895D_gf_AP_Core_addObjectiveSimple(ObjectiveLastCreated()); + ObjectiveCreate(StringExternal("Param/Value/1B29F485"), StringExternal("Param/Value/231814B5"), c_objectiveStateHidden, true); gv_objectiveShrinesZeratulPlusVoidseekerEqualsWin = ObjectiveLastCreated(); + lib5BD4895D_gf_AP_Core_addCategoryObjectiveSimple(gv_objectiveShrinesZeratulPlusVoidseekerEqualsWin, lib5BD4895D_ge_APObjectiveCategory_Primary, false); + lib5BD4895D_gf_AP_Core_associateObjectiveWithLocation(gv_objectiveShrinesZeratulPlusVoidseekerEqualsWin, lib5BD4895D_gv_aP_Core_locationVictory); + lib5BD4895D_gf_AP_Core_setObjectiveVisibility(gv_objectiveShrinesZeratulPlusVoidseekerEqualsWin, true); libCamp_gf_RegisterMissionObjective(libCamp_ge_MissionObjective_TZeratul01EscapetotheVoidSeeker, ObjectiveLastCreated(), StringExternal("Param/Value/2704B23B")); Wait(1.0, c_timeReal); TriggerExecute(gt_DialogueGetToVoidSeeker, true, false); diff --git a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/Triggers b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/Triggers index eff57041e..18f923c8b 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/Triggers +++ b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/Triggers @@ -13,6 +13,7 @@ + @@ -28,6 +29,86 @@ + + + + + + + + + + LOCATION_ID_FIRST_HATCHERY + + + + + + + + 1 + + + + LOCATION_ID_SECOND_HATCHERY + + + + + + + + 2 + + + + LOCATION_ID_THIRD_HATCHERY + + + + + + + + 3 + + + + LOCATION_ID_FIRST_PROPHECY_FRAGMENT + + + + + + + + 4 + + + + LOCATION_ID_SECOND_PROPHECY_FRAGMENT + + + + + + + + 5 + + + + LOCATION_ID_THIRD_PROPHECY_FRAGMENT + + + + + + + + 6 + + @@ -66856,7 +66937,7 @@ - + @@ -66880,13 +66961,13 @@ - - + + - + - - + + @@ -69042,7 +69123,7 @@ - + @@ -69121,14 +69202,13 @@ - - - + + + - - - 1 - + + + @@ -69156,7 +69236,7 @@ - + @@ -69235,14 +69315,13 @@ - - - + + + - - - 2 - + + + @@ -69270,7 +69349,7 @@ - + @@ -69349,14 +69428,13 @@ - - - + + + - - - 3 - + + + @@ -69382,7 +69460,7 @@ - + @@ -69431,14 +69509,13 @@ - - - + + + - - - 4 - + + + @@ -69462,7 +69539,7 @@ - + @@ -69511,14 +69588,13 @@ - - - + + + - - - 5 - + + + @@ -69542,7 +69618,7 @@ - + @@ -69591,14 +69667,13 @@ - - - + + + - - - 6 - + + + @@ -69679,9 +69754,13 @@ - - + + + + + + @@ -69742,7 +69821,7 @@ - + @@ -69752,32 +69831,108 @@ - - - - - - + + + + - - - + + + - + + + + + - - + + + + + + + + + + + + + + + - - + + - - + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -69799,22 +69954,6 @@ - - - - - - - - - - - - - - - - @@ -70644,8 +70783,9 @@ - + + @@ -70707,7 +70847,7 @@ - + @@ -70717,17 +70857,6 @@ - - - - - - - - - - - @@ -70744,6 +70873,38 @@ + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + @@ -70928,16 +71089,31 @@ + - + + + + + + + + + + + + + + + @@ -71088,7 +71264,7 @@ - + @@ -71098,67 +71274,107 @@ - - - - - - + + + + + + + + - - - + + + - + - - - checks + + + + + + + + + + + + + + + - - - + + + - - - - - + + + - - - + + + true + - - - + + + - - - + + + + - - - 0 - + + + - - - - + + + - - + + + + + + + - - - + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + @@ -71419,26 +71635,8 @@ - - - - - - - - - - - - - - - - - - @@ -71576,8 +71774,10 @@ - + + + @@ -71596,7 +71796,7 @@ - + @@ -71606,18 +71806,6 @@ - - - - - - - - - - - - @@ -71635,6 +71823,54 @@ + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/Triggers.version b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/Triggers.version index 129497e6d..af37ff28d 100644 Binary files a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/Triggers.version and b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/Triggers.version differ diff --git a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt index 838c5cd69..3987ed76b 100644 --- a/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt +++ b/Maps/ArchipelagoCampaign/WoL/ap_whispers_of_doom.SC2Map/enUS.SC2Data/LocalizedData/TriggerStrings.txt @@ -24,6 +24,7 @@ Category/Name/BB16361B=Debug Category/Name/C2139EF5=Section 1 - Zeratul Solo Category/Name/C91FFD71=Storymode Tip Category/Name/CDA070D9=Stats and Achievements +Category/Name/DC316AE9=Location IDs Category/Name/E45862F3=Research Points Category/Name/E6C090E9=Victory Cinematic Category/Name/ED3CA623======== CINEMATIC ======= @@ -284,6 +285,7 @@ Variable/Name/0DA635E4=NydusWormFlee Variable/Name/0E8A910E=ObjectiveShrinesZeratulMustSurvive Variable/Name/1162F45E=ScourgeAmbience3 Variable/Name/13C3F727=StalkerIntroOverseer2 +Variable/Name/14CFB6B8=LOCATION_ID_SECOND_HATCHERY Variable/Name/159877D6=THEONEKERRIGAN Variable/Name/1622CEC9=rockactor Variable/Name/167411BF=VictoryCinematicCompleted @@ -307,6 +309,7 @@ Variable/Name/21E6BE4C=FadeDuration Variable/Name/28A05303=CinematicKarassPrism2 Variable/Name/298DD350=NydusSpawnRumble Variable/Name/2A1F5BA1=currentUnit +Variable/Name/2A204C14=LOCATION_ID_FIRST_PROPHECY_FRAGMENT Variable/Name/2A3EC4B9=Unit Variable/Name/2F05E62B=InterruptableTransmission Variable/Name/2F1B5E58=NydusUnit @@ -347,6 +350,8 @@ Variable/Name/56EFA634=GameOver Variable/Name/5B62E02F=StalkerIntroOverseer1 Variable/Name/5B828B0A=MinSpeed Variable/Name/5BC6FB70=KarassZealots +Variable/Name/6207B41F=LOCATION_ID_FIRST_HATCHERY +Variable/Name/6279DF86=LOCATION_ID_SECOND_PROPHECY_FRAGMENT Variable/Name/648A72CF=P1_USER Variable/Name/6538CB9E=Region Variable/Name/68117068=THEONEPING @@ -383,10 +388,12 @@ Variable/Name/8C217DD1=AirAssaultEncircleRally Variable/Name/8EE9B42C=CinematicKarassMidHiddenUnitGroup Variable/Name/8F5844BF=CinematicKerriganIntroHiddenPlayerUnits Variable/Name/924093D8=ScourgeAmbience2 +Variable/Name/96824F7D=LOCATION_ID_THIRD_HATCHERY Variable/Name/9684C529=BlinkTeach2 Variable/Name/98D8FE41=angle Variable/Name/99967F6F=InCinematic Variable/Name/9AB75373=ObejctiveShrinesUpdate +Variable/Name/9B54D717=LOCATION_ID_THIRD_PROPHECY_FRAGMENT Variable/Name/9D68DFE6=CinematicKarassMidCinematicCompleted Variable/Name/A014B530=MinSpeed Variable/Name/A53E8521=MaxSpeed @@ -419,6 +426,7 @@ Variable/Name/C69E51C8=UnitGroup Variable/Name/CB00379C=RunoutRespawnThreat Variable/Name/CB632A65=PanickedUnit Variable/Name/CE085219=ActorImpactShield +Variable/Name/CE0AC2C0=category Variable/Name/CEF1B99B=Timer Variable/Name/CFF2DA07=CinematicKerriganIntroActors Variable/Name/D1BE1DF0=MinWrap