# Allow/Disallow Unit For Player
Grammar — inAllow|Allow/Disallow inUnit for player inPlayer
Flags —Native|Action
Allows or disallows a unit to be used by the specified player. This is only useful if tech restrictions have been enabled using “Enable/Disable Tech Tree Restrictions”. If the unit has a tech requirement, the requirement must still be met for the player to use the unit.
# Arguments
- int— Player
- string<gamelink::Unit> — Unit
- bool<preset::AllowDisallowOption> — Allow
Returns — void
native void TechTreeUnitAllow(
	int player,
	string unitType,
	bool allow,
);
# Related
Category: Tech Tree / Individual Restrictions
- Specific Requirements Are Enabled For Player — bool— TechTreeSpecificRequirementEnabled
- Enable/Disable SpecificTech Tree Requirements — void— TechTreeSpecificRequirementEnable
- Allow/Disallow Behavior For Player — void— TechTreeBehaviorAllow
- Allow/Disallow Ability For Player — void— TechTreeAbilityAllow
- Allow/Disallow Unit For Player — void— TechTreeUnitAllow
- Allow/Disallow Upgrade For Player — void— TechTreeUpgradeAllow
- Ability Is Allowed For Player — bool— TechTreeAbilityIsAllowed
- Behavior Is Allowed For Player — bool— TechTreeBehaviorIsAllowed
- Unit Is Allowed For Player — bool— TechTreeUnitIsAllowed
- Upgrade Is Allowed For Player — bool— TechTreeUpgradeIsAllowed
- Add Upgrade Level For Player — void— TechTreeUpgradeAddLevel
- Set Upgrade Level For Player — void— libNtve_gf_SetUpgradeLevelForPlayer
- Set Production Cap For Player — void— TechTreeSetProduceCap
- Production Cap For Player — int— TechTreeGetProduceCap
# Examples
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/traynor02.sc2map/MapScript.galaxy:376
    libCamp_gf_SetTechRestrictionsCallback(TriggerGetCurrent());
    TechTreeUnitAllow(gv_pLAYER_01_USER, "BarracksTechLab", true);
    libCamp_gf_EnableCampaignTechUnit(true, libCamp_ge_StoryTechGroup_StoryTechGroupInfantryMedic, gv_pLAYER_01_USER);
    return true;
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttosh03a.sc2map/MapScript.galaxy:532
    gf_UpgradeForAllies(1, "TerranInfantryArmorsLevel1");
    gf_UpgradeForAllies(1, "SiegeTech");
    TechTreeUnitAllow(gv_p2_RAYNOR_LIGHTBLUE, "Marauder", true);
    libCamp_gf_EnableCampaignTechUnit(true, libCamp_ge_StoryTechGroup_StoryTechGroupInfantryMarauder, gv_p2_RAYNOR_LIGHTBLUE);
    libCamp_gf_EnableCampaignTechUnit(true, libCamp_ge_StoryTechGroup_StoryTechGroupVehiclesDiamondback, gv_p11_ALLIED_CELLBLOCK_A);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttosh03a.sc2map/MapScript.galaxy:545
    TechTreeAbilityAllow(gv_p3_DOMINION_RED, AbilityCommand("AutoTurret", 0), false);
    TechTreeAbilityAllow(gv_p6_DOMINION_ORANGE, AbilityCommand("AutoTurret", 0), false);
    TechTreeUnitAllow(gv_p3_DOMINION_RED, "AutoTurret", false);
    TechTreeUnitAllow(gv_p6_DOMINION_ORANGE, "AutoTurret", false);
    TechTreeAbilityAllow(gv_p3_DOMINION_RED, AbilityCommand("D8Charge", 0), false);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttosh03a.sc2map/MapScript.galaxy:546
    TechTreeAbilityAllow(gv_p6_DOMINION_ORANGE, AbilityCommand("AutoTurret", 0), false);
    TechTreeUnitAllow(gv_p3_DOMINION_RED, "AutoTurret", false);
    TechTreeUnitAllow(gv_p6_DOMINION_ORANGE, "AutoTurret", false);
    TechTreeAbilityAllow(gv_p3_DOMINION_RED, AbilityCommand("D8Charge", 0), false);
    return true;
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:710
void gf_ResetMapTech () {
    // Implementation
    TechTreeUnitAllow(gv_p01_USER, "SCV", false);
    TechTreeUnitAllow(gv_p01_USER, "Marine", false);
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:711
    // Implementation
    TechTreeUnitAllow(gv_p01_USER, "SCV", false);
    TechTreeUnitAllow(gv_p01_USER, "Marine", false);
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:712
    TechTreeUnitAllow(gv_p01_USER, "SCV", false);
    TechTreeUnitAllow(gv_p01_USER, "Marine", false);
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:713
    TechTreeUnitAllow(gv_p01_USER, "Marine", false);
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:714
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:715
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:716
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
    TechTreeUnitAllow(gv_p01_USER, "Barracks", false);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:717
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
    TechTreeUnitAllow(gv_p01_USER, "Barracks", false);
    TechTreeUnitAllow(gv_p01_USER, "TechLab", false);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:718
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
    TechTreeUnitAllow(gv_p01_USER, "Barracks", false);
    TechTreeUnitAllow(gv_p01_USER, "TechLab", false);
    TechTreeAbilityAllow(gv_p01_USER, AbilityCommand("attack", 0), true);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/ttutorial01.sc2map/MapScript.galaxy:719
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
    TechTreeUnitAllow(gv_p01_USER, "Barracks", false);
    TechTreeUnitAllow(gv_p01_USER, "TechLab", false);
    TechTreeAbilityAllow(gv_p01_USER, AbilityCommand("attack", 0), true);
    TechTreeAbilityAllow(gv_p01_USER, AbilityCommand("RallyCommand", 0), true);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/tvalerian03.sc2map/MapScript.galaxy:4805
    PlayerModifyPropertyInt(gv_pLAYER_USER, c_playerPropMinerals, c_playerPropOperSetTo, 5000);
    PlayerModifyPropertyInt(gv_pLAYER_USER, c_playerPropVespene, c_playerPropOperSetTo, 5000);
    TechTreeUnitAllow(gv_pLAYER_USER, "Armory", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "FusionCore", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "MissileTurret", true);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/tvalerian03.sc2map/MapScript.galaxy:4806
    PlayerModifyPropertyInt(gv_pLAYER_USER, c_playerPropVespene, c_playerPropOperSetTo, 5000);
    TechTreeUnitAllow(gv_pLAYER_USER, "Armory", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "FusionCore", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "MissileTurret", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "Bunker", true);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/tvalerian03.sc2map/MapScript.galaxy:4807
    TechTreeUnitAllow(gv_pLAYER_USER, "Armory", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "FusionCore", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "MissileTurret", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "Bunker", true);
    UnitIssueOrder(UnitFromId(285), OrderTargetingPoint(AbilityCommand("attack", 0), PointFromId(1006)), c_orderQueueReplace);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/tvalerian03.sc2map/MapScript.galaxy:4808
    TechTreeUnitAllow(gv_pLAYER_USER, "FusionCore", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "MissileTurret", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "Bunker", true);
    UnitIssueOrder(UnitFromId(285), OrderTargetingPoint(AbilityCommand("attack", 0), PointFromId(1006)), c_orderQueueReplace);
    UnitIssueOrder(UnitFromId(282), OrderTargetingPoint(AbilityCommand("attack", 0), PointFromId(1008)), c_orderQueueReplace);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/tzeratul02.sc2map/MapScript.galaxy:3086
        TechTreeAbilityAllow(gv_p1_USER, AbilityCommand("ProtossBuild", 13), true);
        libNtve_gf_RescueUnit(UnitFromId(563), gv_p1_USER, true);
        TechTreeUnitAllow(gv_p1_USER, "Immortal", true);
        PingDestroy(gv_pingTwilightCouncil);
        libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectPowertheAbandonedStructure, UnitFromId(563), gv_p1_USER);
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/tzeratul02.sc2map/MapScript.galaxy:3539
    libCamp_gf_CreateTipFromConversationState("StoryTips|Zeratul02_DarkTemplar", libNtve_ge_TipType_NewUnit, PlayerGroupAll());
    TechTreeUnitAllow(gv_p1_USER, "DarkTemplar", true);
    Wait(libCamp_gv_campaignHintDelay, c_timeReal);
    TriggerQueueExit();
campaigns/liberty.sc2campaign — base.sc2maps/maps/campaign/tzeratul02.sc2map/MapScript.galaxy:3567
    libCamp_gf_CreateTipFromConversationState("StoryTips|Zeratul02_HighTemplar", libNtve_ge_TipType_NewUnit, PlayerGroupAll());
    TechTreeUnitAllow(gv_p1_USER, "HighTemplar", true);
    Wait(libCamp_gv_campaignHintDelay, c_timeReal);
    TriggerQueueExit();
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/traynor02.sc2map — MapScript.galaxy:376
    libCamp_gf_SetTechRestrictionsCallback(TriggerGetCurrent());
    TechTreeUnitAllow(gv_pLAYER_01_USER, "BarracksTechLab", true);
    libCamp_gf_EnableCampaignTechUnit(true, libCamp_ge_StoryTechGroup_StoryTechGroupInfantryMedic, gv_pLAYER_01_USER);
    return true;
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttosh03a.sc2map — MapScript.galaxy:532
    gf_UpgradeForAllies(1, "TerranInfantryArmorsLevel1");
    gf_UpgradeForAllies(1, "SiegeTech");
    TechTreeUnitAllow(gv_p2_RAYNOR_LIGHTBLUE, "Marauder", true);
    libCamp_gf_EnableCampaignTechUnit(true, libCamp_ge_StoryTechGroup_StoryTechGroupInfantryMarauder, gv_p2_RAYNOR_LIGHTBLUE);
    libCamp_gf_EnableCampaignTechUnit(true, libCamp_ge_StoryTechGroup_StoryTechGroupVehiclesDiamondback, gv_p11_ALLIED_CELLBLOCK_A);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttosh03a.sc2map — MapScript.galaxy:545
    TechTreeAbilityAllow(gv_p3_DOMINION_RED, AbilityCommand("AutoTurret", 0), false);
    TechTreeAbilityAllow(gv_p6_DOMINION_ORANGE, AbilityCommand("AutoTurret", 0), false);
    TechTreeUnitAllow(gv_p3_DOMINION_RED, "AutoTurret", false);
    TechTreeUnitAllow(gv_p6_DOMINION_ORANGE, "AutoTurret", false);
    TechTreeAbilityAllow(gv_p3_DOMINION_RED, AbilityCommand("D8Charge", 0), false);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttosh03a.sc2map — MapScript.galaxy:546
    TechTreeAbilityAllow(gv_p6_DOMINION_ORANGE, AbilityCommand("AutoTurret", 0), false);
    TechTreeUnitAllow(gv_p3_DOMINION_RED, "AutoTurret", false);
    TechTreeUnitAllow(gv_p6_DOMINION_ORANGE, "AutoTurret", false);
    TechTreeAbilityAllow(gv_p3_DOMINION_RED, AbilityCommand("D8Charge", 0), false);
    return true;
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:710
void gf_ResetMapTech () {
    // Implementation
    TechTreeUnitAllow(gv_p01_USER, "SCV", false);
    TechTreeUnitAllow(gv_p01_USER, "Marine", false);
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:711
    // Implementation
    TechTreeUnitAllow(gv_p01_USER, "SCV", false);
    TechTreeUnitAllow(gv_p01_USER, "Marine", false);
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:712
    TechTreeUnitAllow(gv_p01_USER, "SCV", false);
    TechTreeUnitAllow(gv_p01_USER, "Marine", false);
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:713
    TechTreeUnitAllow(gv_p01_USER, "Marine", false);
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:714
    TechTreeUnitAllow(gv_p01_USER, "Marauder", false);
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:715
    TechTreeUnitAllow(gv_p01_USER, "Reaper", false);
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:716
    TechTreeUnitAllow(gv_p01_USER, "Ghost", false);
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
    TechTreeUnitAllow(gv_p01_USER, "Barracks", false);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:717
    TechTreeUnitAllow(gv_p01_USER, "CommandCenter", false);
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
    TechTreeUnitAllow(gv_p01_USER, "Barracks", false);
    TechTreeUnitAllow(gv_p01_USER, "TechLab", false);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:718
    TechTreeUnitAllow(gv_p01_USER, "Refinery", true);
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
    TechTreeUnitAllow(gv_p01_USER, "Barracks", false);
    TechTreeUnitAllow(gv_p01_USER, "TechLab", false);
    TechTreeAbilityAllow(gv_p01_USER, AbilityCommand("attack", 0), true);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/ttutorial01.sc2map — MapScript.galaxy:719
    TechTreeUnitAllow(gv_p01_USER, "SupplyDepot", true);
    TechTreeUnitAllow(gv_p01_USER, "Barracks", false);
    TechTreeUnitAllow(gv_p01_USER, "TechLab", false);
    TechTreeAbilityAllow(gv_p01_USER, AbilityCommand("attack", 0), true);
    TechTreeAbilityAllow(gv_p01_USER, AbilityCommand("RallyCommand", 0), true);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/tvalerian03.sc2map — MapScript.galaxy:4805
    PlayerModifyPropertyInt(gv_pLAYER_USER, c_playerPropMinerals, c_playerPropOperSetTo, 5000);
    PlayerModifyPropertyInt(gv_pLAYER_USER, c_playerPropVespene, c_playerPropOperSetTo, 5000);
    TechTreeUnitAllow(gv_pLAYER_USER, "Armory", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "FusionCore", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "MissileTurret", true);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/tvalerian03.sc2map — MapScript.galaxy:4806
    PlayerModifyPropertyInt(gv_pLAYER_USER, c_playerPropVespene, c_playerPropOperSetTo, 5000);
    TechTreeUnitAllow(gv_pLAYER_USER, "Armory", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "FusionCore", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "MissileTurret", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "Bunker", true);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/tvalerian03.sc2map — MapScript.galaxy:4807
    TechTreeUnitAllow(gv_pLAYER_USER, "Armory", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "FusionCore", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "MissileTurret", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "Bunker", true);
    UnitIssueOrder(UnitFromId(285), OrderTargetingPoint(AbilityCommand("attack", 0), PointFromId(1006)), c_orderQueueReplace);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/tvalerian03.sc2map — MapScript.galaxy:4808
    TechTreeUnitAllow(gv_pLAYER_USER, "FusionCore", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "MissileTurret", true);
    TechTreeUnitAllow(gv_pLAYER_USER, "Bunker", true);
    UnitIssueOrder(UnitFromId(285), OrderTargetingPoint(AbilityCommand("attack", 0), PointFromId(1006)), c_orderQueueReplace);
    UnitIssueOrder(UnitFromId(282), OrderTargetingPoint(AbilityCommand("attack", 0), PointFromId(1008)), c_orderQueueReplace);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/tzeratul02.sc2map — MapScript.galaxy:3086
        TechTreeAbilityAllow(gv_p1_USER, AbilityCommand("ProtossBuild", 13), true);
        libNtve_gf_RescueUnit(UnitFromId(563), gv_p1_USER, true);
        TechTreeUnitAllow(gv_p1_USER, "Immortal", true);
        PingDestroy(gv_pingTwilightCouncil);
        libCamp_gf_DisplayResearchPointsGiventoPlayer(libCamp_ge_StoryResearchObject_ResearchObjectPowertheAbandonedStructure, UnitFromId(563), gv_p1_USER);
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/tzeratul02.sc2map — MapScript.galaxy:3539
    libCamp_gf_CreateTipFromConversationState("StoryTips|Zeratul02_DarkTemplar", libNtve_ge_TipType_NewUnit, PlayerGroupAll());
    TechTreeUnitAllow(gv_p1_USER, "DarkTemplar", true);
    Wait(libCamp_gv_campaignHintDelay, c_timeReal);
    TriggerQueueExit();
campaigns/liberty.sc2campaign/base.sc2maps/maps/campaign/tzeratul02.sc2map — MapScript.galaxy:3567
    libCamp_gf_CreateTipFromConversationState("StoryTips|Zeratul02_HighTemplar", libNtve_ge_TipType_NewUnit, PlayerGroupAll());
    TechTreeUnitAllow(gv_p1_USER, "HighTemplar", true);
    Wait(libCamp_gv_campaignHintDelay, c_timeReal);
    TriggerQueueExit();
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7082
    if (((libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul01) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul02) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul03) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul04))) {
        TechTreeAbilityAllow(lv_player, AbilityCommand("TimeWarp", 0), false);
        TechTreeUnitAllow(lv_player, "Probe", true);
        TechTreeUnitAllow(lv_player, "PhotonCannon", true);
        TechTreeUnitAllow(lv_player, "Assimilator", true);
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7083
        TechTreeAbilityAllow(lv_player, AbilityCommand("TimeWarp", 0), false);
        TechTreeUnitAllow(lv_player, "Probe", true);
        TechTreeUnitAllow(lv_player, "PhotonCannon", true);
        TechTreeUnitAllow(lv_player, "Assimilator", true);
        TechTreeUpgradeAllow(lv_player, "BlinkTech", true);
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7084
        TechTreeUnitAllow(lv_player, "Probe", true);
        TechTreeUnitAllow(lv_player, "PhotonCannon", true);
        TechTreeUnitAllow(lv_player, "Assimilator", true);
        TechTreeUpgradeAllow(lv_player, "BlinkTech", true);
    }
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7089
    if (((libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul02) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul03) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul04))) {
        TechTreeUnitAllow(lv_player, "Zealot", true);
        TechTreeUnitAllow(lv_player, "Stalker", true);
        TechTreeUnitAllow(lv_player, "Archon", true);
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7090
    if (((libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul02) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul03) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul04))) {
        TechTreeUnitAllow(lv_player, "Zealot", true);
        TechTreeUnitAllow(lv_player, "Stalker", true);
        TechTreeUnitAllow(lv_player, "Archon", true);
        TechTreeUpgradeAllow(lv_player, "ProtossGroundArmorsLevel1", true);
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7091
        TechTreeUnitAllow(lv_player, "Zealot", true);
        TechTreeUnitAllow(lv_player, "Stalker", true);
        TechTreeUnitAllow(lv_player, "Archon", true);
        TechTreeUpgradeAllow(lv_player, "ProtossGroundArmorsLevel1", true);
        TechTreeUpgradeAllow(lv_player, "ProtossGroundWeaponsLevel1", true);
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7103
    if (((libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul03) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul04))) {
        TechTreeUnitAllow(lv_player, "DarkTemplar", true);
        TechTreeUnitAllow(lv_player, "Immortal", true);
        TechTreeUnitAllow(lv_player, "HighTemplar", true);
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7104
    if (((libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul03) || (libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul04))) {
        TechTreeUnitAllow(lv_player, "DarkTemplar", true);
        TechTreeUnitAllow(lv_player, "Immortal", true);
        TechTreeUnitAllow(lv_player, "HighTemplar", true);
        TechTreeUpgradeAllow(lv_player, "ProtossGroundArmorsLevel2", true);
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7105
        TechTreeUnitAllow(lv_player, "DarkTemplar", true);
        TechTreeUnitAllow(lv_player, "Immortal", true);
        TechTreeUnitAllow(lv_player, "HighTemplar", true);
        TechTreeUpgradeAllow(lv_player, "ProtossGroundArmorsLevel2", true);
        TechTreeUpgradeAllow(lv_player, "ProtossGroundWeaponsLevel2", true);
campaigns/libertystory.sc2campaign — base.sc2data/TriggerLibs/CampaignLib.galaxy:7118
    if (((libCamp_gv_tS_CurrentMap == libCamp_ge_MapID_MapTZeratul04))) {
        TechTreeUnitAllow(lv_player, "Colossus", true);
        TechTreeUnitAllow(lv_player, "Observer", true);
        TechTreeUpgradeAllow(lv_player, "ProtossGroundArmorsLevel3", true);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/swarm/zkorhal03.sc2map/MapScript.galaxy:797
        PlayerModifyPropertyInt(auto2286982F_var, c_playerPropMinerals, c_playerPropOperSetTo, 10000);
        PlayerModifyPropertyInt(auto2286982F_var, c_playerPropVespene, c_playerPropOperSetTo, 10000);
        TechTreeUnitAllow(auto2286982F_var, "BarracksTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "FactoryTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "StarportTechReactor", true);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/swarm/zkorhal03.sc2map/MapScript.galaxy:798
        PlayerModifyPropertyInt(auto2286982F_var, c_playerPropVespene, c_playerPropOperSetTo, 10000);
        TechTreeUnitAllow(auto2286982F_var, "BarracksTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "FactoryTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "StarportTechReactor", true);
    }
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/swarm/zkorhal03.sc2map/MapScript.galaxy:799
        TechTreeUnitAllow(auto2286982F_var, "BarracksTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "FactoryTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "StarportTechReactor", true);
    }
    PlayerSetState(gv_PLAYER_02_DOMINION_RED, c_playerStateFoodIgnored, true);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:745
    lv_indexPlayer = 5;
    for ( ; ( (autoAD964694_ai >= 0 && lv_indexPlayer <= autoAD964694_ae) || (autoAD964694_ai < 0 && lv_indexPlayer >= autoAD964694_ae) ) ; lv_indexPlayer += autoAD964694_ai ) {
        TechTreeUnitAllow(lv_indexPlayer, "Zergling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSwarmling", false);
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:746
    for ( ; ( (autoAD964694_ai >= 0 && lv_indexPlayer <= autoAD964694_ae) || (autoAD964694_ai < 0 && lv_indexPlayer >= autoAD964694_ae) ) ; lv_indexPlayer += autoAD964694_ai ) {
        TechTreeUnitAllow(lv_indexPlayer, "Zergling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSwarmling", false);
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:747
        TechTreeUnitAllow(lv_indexPlayer, "Zergling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSwarmling", false);
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:748
        TechTreeUnitAllow(lv_indexPlayer, "HotSSwarmling", false);
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:749
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:750
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:751
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostMP", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:752
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostMP", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHost", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:753
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostMP", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHost", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostSplitA", false);
campaigns/swarm.sc2campaign — base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map/MapScript.galaxy:754
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostMP", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHost", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostSplitA", false);
        TechTreeUnitAllow(lv_indexPlayer, "Ultralisk", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/swarm/zkorhal03.sc2map — MapScript.galaxy:797
        PlayerModifyPropertyInt(auto2286982F_var, c_playerPropMinerals, c_playerPropOperSetTo, 10000);
        PlayerModifyPropertyInt(auto2286982F_var, c_playerPropVespene, c_playerPropOperSetTo, 10000);
        TechTreeUnitAllow(auto2286982F_var, "BarracksTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "FactoryTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "StarportTechReactor", true);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/swarm/zkorhal03.sc2map — MapScript.galaxy:798
        PlayerModifyPropertyInt(auto2286982F_var, c_playerPropVespene, c_playerPropOperSetTo, 10000);
        TechTreeUnitAllow(auto2286982F_var, "BarracksTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "FactoryTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "StarportTechReactor", true);
    }
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/swarm/zkorhal03.sc2map — MapScript.galaxy:799
        TechTreeUnitAllow(auto2286982F_var, "BarracksTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "FactoryTechReactor", true);
        TechTreeUnitAllow(auto2286982F_var, "StarportTechReactor", true);
    }
    PlayerSetState(gv_PLAYER_02_DOMINION_RED, c_playerStateFoodIgnored, true);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:745
    lv_indexPlayer = 5;
    for ( ; ( (autoAD964694_ai >= 0 && lv_indexPlayer <= autoAD964694_ae) || (autoAD964694_ai < 0 && lv_indexPlayer >= autoAD964694_ae) ) ; lv_indexPlayer += autoAD964694_ai ) {
        TechTreeUnitAllow(lv_indexPlayer, "Zergling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSwarmling", false);
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:746
    for ( ; ( (autoAD964694_ai >= 0 && lv_indexPlayer <= autoAD964694_ae) || (autoAD964694_ai < 0 && lv_indexPlayer >= autoAD964694_ae) ) ; lv_indexPlayer += autoAD964694_ai ) {
        TechTreeUnitAllow(lv_indexPlayer, "Zergling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSwarmling", false);
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:747
        TechTreeUnitAllow(lv_indexPlayer, "Zergling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSwarmling", false);
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:748
        TechTreeUnitAllow(lv_indexPlayer, "HotSSwarmling", false);
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:749
        TechTreeUnitAllow(lv_indexPlayer, "Baneling", false);
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:750
        TechTreeUnitAllow(lv_indexPlayer, "HotSSplitterlingBig", false);
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:751
        TechTreeUnitAllow(lv_indexPlayer, "Roach", false);
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostMP", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:752
        TechTreeUnitAllow(lv_indexPlayer, "RoachCorpser", false);
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostMP", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHost", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:753
        TechTreeUnitAllow(lv_indexPlayer, "HydraliskLurker", false);
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostMP", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHost", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostSplitA", false);
campaigns/swarm.sc2campaign/base.sc2maps/maps/campaign/voidprologue/voidprologue01.sc2map — MapScript.galaxy:754
        TechTreeUnitAllow(lv_indexPlayer, "Hydralisk", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostMP", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHost", false);
        TechTreeUnitAllow(lv_indexPlayer, "SwarmHostSplitA", false);
        TechTreeUnitAllow(lv_indexPlayer, "Ultralisk", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/paiur02.sc2map/MapScript.galaxy:708
    libVoiC_gf_SetTechRestrictionsCallback(TriggerGetCurrent());
    TechTreeUnitAllow(gv_pLAYER_01_USER, "CyberneticsCore", true);
    libVoiC_gf_EnableCampaignTechUnit(true, "Stalker", gv_pLAYER_01_USER);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Forge", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/paiur02.sc2map/MapScript.galaxy:710
    TechTreeUnitAllow(gv_pLAYER_01_USER, "CyberneticsCore", true);
    libVoiC_gf_EnableCampaignTechUnit(true, "Stalker", gv_pLAYER_01_USER);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Forge", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "PhotonCannon", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "SoACaster", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/paiur02.sc2map/MapScript.galaxy:711
    libVoiC_gf_EnableCampaignTechUnit(true, "Stalker", gv_pLAYER_01_USER);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Forge", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "PhotonCannon", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "SoACaster", false);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("UpgradeToWarpGate", 0), false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/paiur02.sc2map/MapScript.galaxy:712
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Forge", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "PhotonCannon", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "SoACaster", false);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("UpgradeToWarpGate", 0), false);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("ZeratulVoidPrisonAiur01", 0), false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/pshakuras02.sc2map/MapScript.galaxy:867
    libVoiC_gf_SetTechRestrictionsCallback(TriggerGetCurrent());
    libVCMI_gf_EnableDisableNeedPylonInfo(false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "KhaydarinMonolith", true);
    TechTreeAbilityAllow(1, AbilityCommand("ProtossBuild", 24), true);
    TechTreeUpgradeAllow(gv_pLAYER_02_DOMINION, "overlordtransport", true);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/pulnar02.sc2map/MapScript.galaxy:1351
    TechTreeUpgradeAddLevel(gv_pLAYER_02_DOMINION2, "DarkProtoss", 1);
    TechTreeUpgradeAddLevel(gv_pLAYER_02_DOMINION2, "StalkerExtraBlinkRange", 1);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "HotSHunter", true);
    TechTreeUpgradeAddLevel(gv_pLAYER_01_USER, "HotSHunter", 1);
    TechTreeUpgradeAddLevel(gv_pLAYER_01_USER, "HotsCentrifugalHooks", 1);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1763
    }
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Zergling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSwarmling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Baneling", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1764
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Zergling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSwarmling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Baneling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSplitterlingBig", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1765
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Zergling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSwarmling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Baneling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSplitterlingBig", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Roach", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1766
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSwarmling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Baneling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSplitterlingBig", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Roach", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "RoachCorpser", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1767
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Baneling", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSplitterlingBig", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Roach", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "RoachCorpser", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HydraliskLurker", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1768
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HotSSplitterlingBig", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Roach", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "RoachCorpser", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HydraliskLurker", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Hydralisk", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1769
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Roach", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "RoachCorpser", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HydraliskLurker", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Hydralisk", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHostMP", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1770
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "RoachCorpser", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HydraliskLurker", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Hydralisk", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHostMP", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHost", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1771
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "HydraliskLurker", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Hydralisk", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHostMP", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHost", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHostSplitA", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue01.sc2map/MapScript.galaxy:1772
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Hydralisk", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHostMP", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHost", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "SwarmHostSplitA", false);
    TechTreeUnitAllow(gv_pLAYER_03_KERRIGAN, "Ultralisk", false);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue03.sc2map/MapScript.galaxy:1771
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("GenerateCreep", 0), false);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("GenerateCreep", 1), false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Overseer", false);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("MorphToOverseer", 1), false);
    TechTreeUpgradeAddLevel(gv_pLAYER_01_USER, "zerglingattackspeed", 1);
campaigns/void.sc2campaign — base.sc2maps/maps/campaign/void/sc2epilogue03.sc2map/MapScript.galaxy:1797
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("SpireResearch", 4), true);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("SpireResearch", 5), true);
    TechTreeUnitAllow(gv_pLAYER_02_RAYNOR, "Bunker", true);
    TechTreeUpgradeAddLevel(gv_pLAYER_02_RAYNOR, "TechReactorAI", 1);
    TechTreeUpgradeAddLevel(gv_pLAYER_02_RAYNOR, "VanadiumPlating", 1);
campaigns/void.sc2campaign/base.sc2maps/maps/campaign/void/paiur02.sc2map — MapScript.galaxy:708
    libVoiC_gf_SetTechRestrictionsCallback(TriggerGetCurrent());
    TechTreeUnitAllow(gv_pLAYER_01_USER, "CyberneticsCore", true);
    libVoiC_gf_EnableCampaignTechUnit(true, "Stalker", gv_pLAYER_01_USER);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Forge", false);
campaigns/void.sc2campaign/base.sc2maps/maps/campaign/void/paiur02.sc2map — MapScript.galaxy:710
    TechTreeUnitAllow(gv_pLAYER_01_USER, "CyberneticsCore", true);
    libVoiC_gf_EnableCampaignTechUnit(true, "Stalker", gv_pLAYER_01_USER);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Forge", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "PhotonCannon", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "SoACaster", false);
campaigns/void.sc2campaign/base.sc2maps/maps/campaign/void/paiur02.sc2map — MapScript.galaxy:711
    libVoiC_gf_EnableCampaignTechUnit(true, "Stalker", gv_pLAYER_01_USER);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Forge", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "PhotonCannon", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "SoACaster", false);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("UpgradeToWarpGate", 0), false);
campaigns/void.sc2campaign/base.sc2maps/maps/campaign/void/paiur02.sc2map — MapScript.galaxy:712
    TechTreeUnitAllow(gv_pLAYER_01_USER, "Forge", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "PhotonCannon", false);
    TechTreeUnitAllow(gv_pLAYER_01_USER, "SoACaster", false);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("UpgradeToWarpGate", 0), false);
    TechTreeAbilityAllow(gv_pLAYER_01_USER, AbilityCommand("ZeratulVoidPrisonAiur01", 0), false);