# Catalog Link Replace

Grammar — Replace catalog links set to value with replacement for player player
FlagsNative | Action

Most game functionality will switch to using the replacement value when possible instead of the original value.

# Arguments

  • int — Player
  • int<preset::CatalogType> — Catalog
  • string — Value
  • string — Replacement

Returns — void

native void CatalogLinkReplace(
	int player,
	int catalog,
	string idA,
	string idB,
);

Category: Catalog / Support

# Examples

campaigns/swarmstory.sc2campaignbase.sc2data/TriggerLibs/SwarmCampaignLib.galaxy:22471

        }
        lv_unitType = libSwaC_gf_ZS_StoryArmyCategoryUnitType(lv_indexCategory);
        CatalogLinkReplace(1, c_gameCatalogUnit, (lv_unitType), (lv_unitUsed));
        TextExpressionSetToken("Param/Expression/lib_SwaC_9115409F", "C", libSwaC_gf_StoryArmyCategoryName(lv_indexCategory));
        TextExpressionSetToken("Param/Expression/lib_SwaC_9115409F", "A", StringToText((lv_unitType)));

campaigns/voidstory.sc2campaignbase.sc2data/TriggerLibs/VoidCampaignLib.galaxy:6157

    if ((lv_armyCategory != null)) {
        libVoiC_gf_PC_EnableUpgradeAndAbilityCommandForTech(lp_enableDisable, c_gameCatalogArmyCategory, (lv_armyCategory), null, null, lp_player);
        CatalogLinkReplace(lp_player, c_gameCatalogUnit, (libVoiC_gf_PC_ArmyCategoryUnitType(lv_armyCategory)), (libVoiC_gf_PC_ArmyCategoryUnitType(lv_armyCategory)));
        TextExpressionSetToken("Param/Expression/lib_VoiC_5D41FBB9", "A", lv_debugMessage);
        TextExpressionSetToken("Param/Expression/lib_VoiC_5D41FBB9", "B", StringToText((lv_armyCategory)));

campaigns/voidstory.sc2campaignbase.sc2data/TriggerLibs/VoidCampaignLib.galaxy:6170

        TriggerDebugOutput(1, TextExpressionAssemble("Param/Expression/lib_VoiC_66073AC7"), false);
        if ((lp_enableDisable == true)) {
            CatalogLinkReplace(lp_player, c_gameCatalogUnit, (libVoiC_gf_PC_ArmyCategoryUnitType(libVoiC_gf_PC_ArmyCategoryOfArmyUnit(lv_armyCategory2))), (libVoiC_gf_PC_StoryArmyUnitUnitType(lv_armyCategory2)));
            PlayerApplySkin(1, libVoiC_gf_PC_ArmyUnitSkin(lv_armyCategory2), true);
        }

mods/heroesbrawlmods/brawlmapmods/coop/deadmansstand.stormmodbase.stormdata/LibPEB1.galaxy:723

        CatalogFieldValueModifyFixed(c_gameCatalogActor, "DiabloLightningBreathChargeBreatheOutModel", "Scale", lp_playerIndex, 0.5, c_upgradeOperationAdd);
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "DiabloLightningBreathGuide", "Height", lp_playerIndex, 4.5, c_upgradeOperationAdd);
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Diablo_LightningBreath_Launch", "Diablo_LightningEndless_Launch");
    }

mods/heroesbrawlmods/brawlmapmods/coop/deadmansstand.stormmodbase.stormdata/LibPEB1.galaxy:734

        CatalogFieldValueModifyFixed(c_gameCatalogEffect, "MaelstromSearch", "AreaArray[" + IntToString(0) + "].Radius", lp_playerIndex, 1.0, c_upgradeOperationAdd);
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "KerriganMaelstromBuff", "Scale", lp_playerIndex, 0.4, c_upgradeOperationAdd);
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Cast", "Kerrigan_Omegastorm_Cast");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Loop", "Kerrigan_Omegastorm_Loop");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Impact", "Kerrigan_Omegastorm_Impact");

mods/heroesbrawlmods/brawlmapmods/coop/deadmansstand.stormmodbase.stormdata/LibPEB1.galaxy:735

        CatalogFieldValueModifyFixed(c_gameCatalogActor, "KerriganMaelstromBuff", "Scale", lp_playerIndex, 0.4, c_upgradeOperationAdd);
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Cast", "Kerrigan_Omegastorm_Cast");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Loop", "Kerrigan_Omegastorm_Loop");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Impact", "Kerrigan_Omegastorm_Impact");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_End", "Kerrigan_Omegastorm_End");

mods/heroesbrawlmods/brawlmapmods/coop/deadmansstand.stormmodbase.stormdata/LibPEB1.galaxy:736

        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Cast", "Kerrigan_Omegastorm_Cast");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Loop", "Kerrigan_Omegastorm_Loop");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Impact", "Kerrigan_Omegastorm_Impact");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_End", "Kerrigan_Omegastorm_End");
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "KerriganMaelstromRangeSplat", "Scale", lp_playerIndex, 1.0, c_upgradeOperationAdd);

mods/heroesbrawlmods/brawlmapmods/coop/deadmansstand.stormmodbase.stormdata/LibPEB1.galaxy:737

        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Loop", "Kerrigan_Omegastorm_Loop");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Impact", "Kerrigan_Omegastorm_Impact");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_End", "Kerrigan_Omegastorm_End");
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "KerriganMaelstromRangeSplat", "Scale", lp_playerIndex, 1.0, c_upgradeOperationAdd);
        UnitBehaviorAdd(libGame_gv_players[lp_playerIndex].lv_heroUnit, "KerriganMaelstromMasteryCarryBehavior", libGame_gv_players[lp_playerIndex].lv_heroUnit, 1);

mods/heroesbrawlmods/brawlmapmods/coop/deadmansstand.stormmodbase.stormdata/LibPEB1.galaxy:761

    CatalogFieldValueSet(c_gameCatalogEffect, "SlamSearch", "AreaArray[" + IntToString(0) + "].Radius", lp_playerIndex, "10");
    CatalogFieldValueSet(c_gameCatalogEffect, "SlamSearch", "AreaArray[" + IntToString(0) + "].Arc", lp_playerIndex, "87.5");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogModel, "StitchesSlamModel", "StitchesSlamSmashModel");
    CatalogFieldValueSet(c_gameCatalogEffect, "SlamApplyStunBehavior", "Chance", lp_playerIndex, "1");
    CatalogFieldValueSet(c_gameCatalogAbil, "StitchesSlam", "Cost.Cooldown.TimeUse", lp_playerIndex, "6");

mods/heroesbrawlmods/brawlmapmods/coop/deadmansstand.stormmodbase.stormdata/LibPEB1.galaxy:764

    CatalogFieldValueSet(c_gameCatalogEffect, "SlamApplyStunBehavior", "Chance", lp_playerIndex, "1");
    CatalogFieldValueSet(c_gameCatalogAbil, "StitchesSlam", "Cost.Cooldown.TimeUse", lp_playerIndex, "6");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_Cast", "Stitches_Slam_Pulverize_Cast");
}

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:709

        CatalogFieldValueModifyFixed(c_gameCatalogActor, "DiabloLightningBreathChargeBreatheOutModel", "Scale", lp_playerIndex, 0.5, c_upgradeOperationAdd);
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "DiabloLightningBreathGuide", "Height", lp_playerIndex, 4.5, c_upgradeOperationAdd);
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Diablo_LightningBreath_Launch", "Diablo_LightningEndless_Launch");
    }

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:720

        CatalogFieldValueModifyFixed(c_gameCatalogEffect, "MaelstromSearch", "AreaArray[" + IntToString(0) + "].Radius", lp_playerIndex, 1.0, c_upgradeOperationAdd);
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "KerriganMaelstromBuff", "Scale", lp_playerIndex, 0.4, c_upgradeOperationAdd);
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Cast", "Kerrigan_Omegastorm_Cast");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Loop", "Kerrigan_Omegastorm_Loop");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Impact", "Kerrigan_Omegastorm_Impact");

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:721

        CatalogFieldValueModifyFixed(c_gameCatalogActor, "KerriganMaelstromBuff", "Scale", lp_playerIndex, 0.4, c_upgradeOperationAdd);
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Cast", "Kerrigan_Omegastorm_Cast");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Loop", "Kerrigan_Omegastorm_Loop");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Impact", "Kerrigan_Omegastorm_Impact");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_End", "Kerrigan_Omegastorm_End");

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:722

        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Cast", "Kerrigan_Omegastorm_Cast");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Loop", "Kerrigan_Omegastorm_Loop");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Impact", "Kerrigan_Omegastorm_Impact");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_End", "Kerrigan_Omegastorm_End");
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "KerriganMaelstromRangeSplat", "Scale", lp_playerIndex, 1.0, c_upgradeOperationAdd);

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:723

        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Loop", "Kerrigan_Omegastorm_Loop");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_Impact", "Kerrigan_Omegastorm_Impact");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Kerrigan_Maelstrom_End", "Kerrigan_Omegastorm_End");
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "KerriganMaelstromRangeSplat", "Scale", lp_playerIndex, 1.0, c_upgradeOperationAdd);
        UnitBehaviorAdd(libGame_gv_players[lp_playerIndex].lv_heroUnit, "KerriganMaelstromMasteryCarryBehavior", libGame_gv_players[lp_playerIndex].lv_heroUnit, 1);

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:747

    CatalogFieldValueSet(c_gameCatalogEffect, "StitchesSlamSearch", "AreaArray[" + IntToString(0) + "].Radius", lp_playerIndex, "12");
    CatalogFieldValueSet(c_gameCatalogEffect, "StitchesSlamSearch", "AreaArray[" + IntToString(0) + "].Arc", lp_playerIndex, "87.5");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogModel, "StitchesSlamModel", "StitchesSlamSmashModel");
    CatalogFieldValueSet(c_gameCatalogAbil, "StitchesSlam", "Cost.Cooldown.TimeUse", lp_playerIndex, "6.0");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_Cast", "Stitches_Slam_Pulverize_Cast");

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:749

    CatalogLinkReplace(lp_playerIndex, c_gameCatalogModel, "StitchesSlamModel", "StitchesSlamSmashModel");
    CatalogFieldValueSet(c_gameCatalogAbil, "StitchesSlam", "Cost.Cooldown.TimeUse", lp_playerIndex, "6.0");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_Cast", "Stitches_Slam_Pulverize_Cast");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_WideSlam_Cast", "Stitches_Slam_Pulverize_Cast");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_MegaSmash_Cast", "Stitches_Slam_Pulverize_Cast");

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:750

    CatalogFieldValueSet(c_gameCatalogAbil, "StitchesSlam", "Cost.Cooldown.TimeUse", lp_playerIndex, "6.0");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_Cast", "Stitches_Slam_Pulverize_Cast");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_WideSlam_Cast", "Stitches_Slam_Pulverize_Cast");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_MegaSmash_Cast", "Stitches_Slam_Pulverize_Cast");
    if ((libPVEB_gf_PVEDifficultyValueInt(0, 1) == 1)) {

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:751

    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_Cast", "Stitches_Slam_Pulverize_Cast");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_WideSlam_Cast", "Stitches_Slam_Pulverize_Cast");
    CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Slam_MegaSmash_Cast", "Stitches_Slam_Pulverize_Cast");
    if ((libPVEB_gf_PVEDifficultyValueInt(0, 1) == 1)) {
        CatalogFieldValueModifyFixed(c_gameCatalogEffect, "StitchesCannibalize", "Chance", lp_playerIndex, 1.0, c_upgradeOperationSet);

mods/heroesbrawlmods/brawlmapmods/coop/escapefrombraxis.stormmodbase.stormdata/LibPEB1.galaxy:763

        CatalogFieldValueModifyFixed(c_gameCatalogEffect, "StitchesHookLaunchCreatePersistent", "PeriodicOffsetArray[" + IntToString(0) + "]", lp_playerIndex, 5.0, c_upgradeOperationSubtract);
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "StitchesHookGuide", "Height", lp_playerIndex, 5.0, c_upgradeOperationAdd);
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_MeatHook_AttackLaunch", "Stitches_FishingHook_AttackLaunch");
        CatalogLinkReplace(lp_playerIndex, c_gameCatalogSound, "Stitches_Chain_Retract", "Stitches_FishingHook_Retract");
        CatalogFieldValueModifyFixed(c_gameCatalogActor, "StitchesHookHelpingHandGuide", "Height", lp_playerIndex, 5.0, c_upgradeOperationAdd);

mods/heroesdata.stormmodbase.stormdata/TriggerLibs/GameLib.galaxy:5875

            lv_replaceFrom = libGame_gv_talents_TalentChoices[lp_player][lp_tierIndex].lv_talentData[lp_buttonIndex].lv_abilityModificationData[lv_itAbilityMod].lv_catalogReplaceFrom;
            lv_changeTo = libGame_gv_talents_TalentChoices[lp_player][lp_tierIndex].lv_talentData[lp_buttonIndex].lv_abilityModificationData[lv_itAbilityMod].lv_catalogChangeTo;
            CatalogLinkReplace(lp_player, lv_catalog, lv_replaceFrom, lv_changeTo);
        }

mods/heroesdata.stormmodbase.stormdata/TriggerLibs/GameLib.galaxy:5912

        if ((libGame_gv_talents_TalentChoices[lp_player][lp_tierIndex].lv_talentData[lp_buttonIndex].lv_abilityModificationData[lv_itAbilityMod].lv_changeType == c_talentModificationCatalogReplacement)) {
            lv_replaceFrom = libGame_gv_talents_TalentChoices[lp_player][lp_tierIndex].lv_talentData[lp_buttonIndex].lv_abilityModificationData[lv_itAbilityMod].lv_catalogReplaceFrom;
            CatalogLinkReplace(lp_player, lv_catalog, lv_replaceFrom, lv_replaceFrom);
        }

mods/heroesdata.stormmodbase.stormdata/TriggerLibs/GameLib.galaxy:18639


    if ((libGame_gv_players[lv_mountIndex].lv_mountData.lv_moveStartSound != "")) {
        CatalogLinkReplace(lv_mountingPlayer, c_gameCatalogSound, "GenericMountMoveStartSound", (libGame_gv_players[lv_mountIndex].lv_mountData.lv_moveStartSound));
    }

mods/heroesdata.stormmodbase.stormdata/TriggerLibs/GameLib.galaxy:18643


    if ((libGame_gv_players[lv_mountIndex].lv_mountData.lv_moveStopSound != "")) {
        CatalogLinkReplace(lv_mountingPlayer, c_gameCatalogSound, "GenericMountMoveStopSound", (libGame_gv_players[lv_mountIndex].lv_mountData.lv_moveStopSound));
    }

mods/heroesdata.stormmodbase.stormdata/TriggerLibs/GameLib.galaxy:18647


    if ((libGame_gv_players[lv_mountIndex].lv_mountData.lv_turboSound != "")) {
        CatalogLinkReplace(lv_mountingPlayer, c_gameCatalogSound, "GenericMountTurboSound", (libGame_gv_players[lv_mountIndex].lv_mountData.lv_turboSound));
    }

mods/heroesmapmods/battlegroundmapmods/hauntedmines.stormmodbase.stormdata/LibMHtM.galaxy:93

        CatalogFieldValueSet(c_gameCatalogAbil, "CaptureMacGuffin", "Range[" + IntToString(0) + "]", lv_itPlayer, "2.5");
        CatalogFieldValueSet(c_gameCatalogAbil, "HeroGenericSummonedUnitSpecialCaseInteraction", "Range[" + IntToString(0) + "]", lv_itPlayer, "2.5");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogModel, "CaptureMacGuffinBeamRavenCourt", "CaptureMacGuffinBeamUnderground");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeStart", "Event_Mines_EnterMinesStart");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeLoop", "Event_Mines_EnterMinesLoop");

mods/heroesmapmods/battlegroundmapmods/hauntedmines.stormmodbase.stormdata/LibMHtM.galaxy:94

        CatalogFieldValueSet(c_gameCatalogAbil, "HeroGenericSummonedUnitSpecialCaseInteraction", "Range[" + IntToString(0) + "]", lv_itPlayer, "2.5");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogModel, "CaptureMacGuffinBeamRavenCourt", "CaptureMacGuffinBeamUnderground");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeStart", "Event_Mines_EnterMinesStart");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeLoop", "Event_Mines_EnterMinesLoop");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeEnd", "StormNoSound");

mods/heroesmapmods/battlegroundmapmods/hauntedmines.stormmodbase.stormdata/LibMHtM.galaxy:95

        CatalogLinkReplace(lv_itPlayer, c_gameCatalogModel, "CaptureMacGuffinBeamRavenCourt", "CaptureMacGuffinBeamUnderground");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeStart", "Event_Mines_EnterMinesStart");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeLoop", "Event_Mines_EnterMinesLoop");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeEnd", "StormNoSound");
    }

mods/heroesmapmods/battlegroundmapmods/hauntedmines.stormmodbase.stormdata/LibMHtM.galaxy:96

        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeStart", "Event_Mines_EnterMinesStart");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeLoop", "Event_Mines_EnterMinesLoop");
        CatalogLinkReplace(lv_itPlayer, c_gameCatalogSound, "Event_RavenCurse_CollectTributeEnd", "StormNoSound");
    }
    autoAA661B28_g = libMHtM_gv_mMUnderworldGatesAbove;

mods/missionpacks/campaigncommon.sc2modbase.sc2data/LibComC.galaxy:1873

    if ((lv_armyCategory != null)) {
        libComC_gf_CC_EnableUpgradeAndAbilityCommandForTech(lp_enableDisable, c_gameCatalogArmyCategory, (lv_armyCategory), null, null, lp_player);
        CatalogLinkReplace(lp_player, c_gameCatalogUnit, (libComC_gf_CC_ArmyCategoryUnitType(lv_armyCategory)), (libComC_gf_CC_ArmyCategoryUnitType(lv_armyCategory)));
        TextExpressionSetToken("Param/Expression/lib_ComC_5E578D12", "A", lv_debugMessage);
        TextExpressionSetToken("Param/Expression/lib_ComC_5E578D12", "B", StringToText((lv_armyCategory)));

mods/missionpacks/campaigncommon.sc2modbase.sc2data/LibComC.galaxy:1886

        TriggerDebugOutput(1, TextExpressionAssemble("Param/Expression/lib_ComC_BEFF0CCA"), false);
        if ((lp_enableDisable == true)) {
            CatalogLinkReplace(lp_player, c_gameCatalogUnit, (libComC_gf_CC_ArmyCategoryUnitType(lv_armyCategory)), (libComC_gf_NC_StoryArmyUnitUnitType(lv_armyCategory2)));
            PlayerApplySkin(lp_player, libComC_gf_NC_ArmyUnitSkin(lv_armyCategory2), true);
        }

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5492

            auto23CADF1A_val = lv_moraleindex;
            if (auto23CADF1A_val == 1) {
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack_MoraleLow");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What_MoraleLow");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes_MoraleLow");

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5493

            if (auto23CADF1A_val == 1) {
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack_MoraleLow");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What_MoraleLow");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes_MoraleLow");
            }

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5494

                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack_MoraleLow");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What_MoraleLow");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes_MoraleLow");
            }
            else if (auto23CADF1A_val == 2) {

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5497

            }
            else if (auto23CADF1A_val == 2) {
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes");

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5498

            else if (auto23CADF1A_val == 2) {
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes");
            }

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5499

                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes");
            }
            else if (auto23CADF1A_val == 3) {

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5502

            }
            else if (auto23CADF1A_val == 3) {
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack_MoraleHigh");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What_MoraleHigh");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes_MoraleHigh");

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5503

            else if (auto23CADF1A_val == 3) {
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack_MoraleHigh");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What_MoraleHigh");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes_MoraleHigh");
            }

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:5504

                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Attack", "TrooperMengsk_Attack_MoraleHigh");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_What", "TrooperMengsk_What_MoraleHigh");
                CatalogLinkReplace(lv_mengskplayer, c_gameCatalogSound, "TrooperMengsk_Yes", "TrooperMengsk_Yes_MoraleHigh");
            }
            else {

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOMI.galaxy:26476


    TriggerEnable(TriggerGetCurrent(), false);
    CatalogLinkReplace(UnitGetOwner(libCOMI_gf_EventTychusHero()), c_gameCatalogUnit, "TychusResearchCenter", "TychusResearchCenterUnlocked");
    libCOMI_gv_cM_HeroUnit[lv_p] = libCOMI_gf_EventTychusHero();
    libCOUI_gv_cU_HeroUnit[0][lv_p] = lv_unit;

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOOC.galaxy:4015

    if ((lv_armyCategory != null)) {
        libCOOC_gf_CC_EnableUpgradeAndAbilityCommandForTech(lp_enableDisable, c_gameCatalogArmyCategory, (lv_armyCategory), null, null, lp_player);
        CatalogLinkReplace(lp_player, c_gameCatalogUnit, (libCOOC_gf_CC_ArmyCategoryUnitType(lv_armyCategory)), (libCOOC_gf_CC_ArmyCategoryUnitType(lv_armyCategory)));
    }

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOOC.galaxy:4022

        libCOOC_gf_CC_EnableUpgradeAndAbilityCommandForTech(lp_enableDisable, c_gameCatalogArmyUnit, (lv_armyCategory2), null, null, lp_player);
        if ((lp_enableDisable == true)) {
            CatalogLinkReplace(lp_player, c_gameCatalogUnit, (libCOOC_gf_CC_ArmyCategoryUnitType(libCOOC_gf_CC_ArmyCategoryOfArmyUnit(lv_armyCategory2))), (libCOOC_gf_CC_StoryArmyUnitUnitType(lv_armyCategory2)));
            PlayerApplySkin(lp_player, libCOOC_gf_CC_ArmyUnitSkin(lv_armyCategory2), true);
        }

mods/starcoop/starcoop.sc2modbase.sc2data/LibCOUI.galaxy:5400

    }
    libCOMI_gf_ButtonReplacement(lv_replacePlayer, (lv_replaceTarget), lv_button);
    CatalogLinkReplace(lv_replacePlayer, c_gameCatalogAbil, lv_replaceTarget, (lv_abil));
    UserDataSetInt("CoopTechTychusSquad", lp_squadInstance, "Squad Slot", 1, lp_squadIndex);
    libNtve_gf_SetDialogItemUnit(libCOUI_gv_cU_TychusSquadUnitFrames[lp_squadIndex], lp_unit, PlayerGroupAll());

mods/warcoop/warclassicsystem.sc2modbase.sc2data/TriggerLibs/WarClassicSystem.galaxy:127

            lv_oldLink = CatalogFieldValueGet(c_gameCatalogDataCollection, lv_itEntry, "TechInfoAbilReplaced", lp_player);
            if ((CatalogEntryIsValid(c_gameCatalogAbil, lv_oldLink) == true)) {
                CatalogLinkReplace(lp_player, c_gameCatalogAbil, lv_oldLink, lv_newLink);
            }

mods/warcoop/warcoopdata.sc2modbase.sc2data/TriggerLibs/WarCoopData.galaxy:2043

        }
        else if ((UserDataGetUserInstance("LegendAbilityReplacements", lv_abilityReplacementInstance, "Legend", 1) == libWCdr_gf_GetLegendInstanceForPlayer(lp_legendPlayer))) {
            CatalogLinkReplace(lp_legendPlayer, c_gameCatalogAbil, (UserDataGetGameLink("LegendAbilityReplacements", lv_abilityReplacementInstance, "AbilityToReplace", 1)), (UserDataGetGameLink("LegendAbilityReplacements", lv_abilityReplacementInstance, "AbilityReplacement", 1)));
        }
    }

mods/warcoop/warcoopdata.sc2modbase.sc2data/TriggerLibs/WarCoopData.galaxy:2109

            lv_oldLink = StringReplaceWord(lv_newLink, lv_raceToken, "", c_stringReplaceAll, c_stringCase);
            if ((CatalogEntryIsValid(c_gameCatalogAbil, lv_oldLink) == true)) {
                CatalogLinkReplace(lp_player, c_gameCatalogAbil, lv_oldLink, lv_newLink);
            }

mods/warcoop/warcoopdata.sc2modbase.sc2data/TriggerLibs/WarCoopData.galaxy:2371

        if ((CatalogEntryIsValid(c_gameCatalogUnit, lv_from) == true)) {
            TechTreeUnitAllow(lp_player, (lv_from), true);
            CatalogLinkReplace(lp_player, c_gameCatalogUnit, lv_from, lv_to);
        }
        else {

mods/warcoop/warcoopdata.sc2modbase.sc2data/TriggerLibs/WarCoopData.galaxy:2387

        lv_to = CatalogFieldValueGet(c_gameCatalogDataCollection, lp_dataCollection, "TechInfoUpgrade", lp_player);
        if ((CatalogEntryIsValid(c_gameCatalogUpgrade, lv_from) == true)) {
            CatalogLinkReplace(lp_player, c_gameCatalogAbil, lv_from, lv_to);
            auto50853CB1_ae = (CatalogFieldValueGetAsInt(c_gameCatalogUpgrade, lp_dataCollection, "MaxLevel", c_playerAny)-1);
            lv_itIndex = 0;

mods/warcoop/warcoopdata.sc2modbase.sc2data/TriggerLibs/WarCoopData.galaxy:2402

        lv_to = CatalogFieldValueGet(c_gameCatalogDataCollection, lp_dataCollection, "TechInfoAbil", lp_player);
        if ((CatalogEntryIsValid(c_gameCatalogAbil, lv_from) == true)) {
            CatalogLinkReplace(lp_player, c_gameCatalogAbil, lv_from, lv_to);
        }

mods/warcoop/warcoopdata.sc2modbase.sc2data/TriggerLibs/WarCoopData.galaxy:2410

    }
    if ((lp_replaceButton == true) && (CatalogEntryIsValid(c_gameCatalogButton, lv_from) == true)) {
        CatalogLinkReplace(lp_player, c_gameCatalogButton, lv_from, lv_to);
    }

mods/warcoop/warmeleeai.sc2modbase.sc2data/LibW3AI.galaxy:75

            CatalogReferenceSet("Abil,Rosp,InfoArray[Research1].Button.Requirements", lv_p, "");
            libNtve_gf_SetUpgradeLevelForPlayer(lv_p, "Thrall", 1);
            CatalogLinkReplace(lv_p, c_gameCatalogModel, "Ofar", "Othr");
        }