Add Harkonnen 5
This commit is contained in:
committed by
reaperrr
parent
b898b5001a
commit
15b77f8d91
@@ -127,6 +127,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Dune 2000 Lua scripts", "Du
|
|||||||
mods\d2k\maps\harkonnen-03b\harkonnen03b.lua = mods\d2k\maps\harkonnen-03b\harkonnen03b.lua
|
mods\d2k\maps\harkonnen-03b\harkonnen03b.lua = mods\d2k\maps\harkonnen-03b\harkonnen03b.lua
|
||||||
mods\d2k\maps\harkonnen-04\harkonnen04-AI.lua = mods\d2k\maps\harkonnen-04\harkonnen04-AI.lua
|
mods\d2k\maps\harkonnen-04\harkonnen04-AI.lua = mods\d2k\maps\harkonnen-04\harkonnen04-AI.lua
|
||||||
mods\d2k\maps\harkonnen-04\harkonnen04.lua = mods\d2k\maps\harkonnen-04\harkonnen04.lua
|
mods\d2k\maps\harkonnen-04\harkonnen04.lua = mods\d2k\maps\harkonnen-04\harkonnen04.lua
|
||||||
|
mods\d2k\maps\harkonnen-05\harkonnen05-AI.lua = mods\d2k\maps\harkonnen-05\harkonnen05-AI.lua
|
||||||
|
mods\d2k\maps\harkonnen-05\harkonnen05.lua = mods\d2k\maps\harkonnen-05\harkonnen05.lua
|
||||||
mods\d2k\maps\harkonnen-06a\harkonnen06a-AI.lua = mods\d2k\maps\harkonnen-06a\harkonnen06a-AI.lua
|
mods\d2k\maps\harkonnen-06a\harkonnen06a-AI.lua = mods\d2k\maps\harkonnen-06a\harkonnen06a-AI.lua
|
||||||
mods\d2k\maps\harkonnen-06a\harkonnen06a.lua = mods\d2k\maps\harkonnen-06a\harkonnen06a.lua
|
mods\d2k\maps\harkonnen-06a\harkonnen06a.lua = mods\d2k\maps\harkonnen-06a\harkonnen06a.lua
|
||||||
mods\d2k\maps\harkonnen-06b\harkonnen06b-AI.lua = mods\d2k\maps\harkonnen-06b\harkonnen06b-AI.lua
|
mods\d2k\maps\harkonnen-06b\harkonnen06b-AI.lua = mods\d2k\maps\harkonnen-06b\harkonnen06b-AI.lua
|
||||||
|
|||||||
49
mods/d2k/maps/harkonnen-05/harkonnen05-AI.lua
Normal file
49
mods/d2k/maps/harkonnen-05/harkonnen05-AI.lua
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
--[[
|
||||||
|
Copyright 2007-2017 The OpenRA Developers (see AUTHORS)
|
||||||
|
This file is part of OpenRA, which is free software. It is made
|
||||||
|
available to you under the terms of the GNU General Public License
|
||||||
|
as published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version. For more
|
||||||
|
information, see COPYING.
|
||||||
|
]]
|
||||||
|
|
||||||
|
AttackGroupSize =
|
||||||
|
{
|
||||||
|
easy = 6,
|
||||||
|
normal = 8,
|
||||||
|
hard = 10
|
||||||
|
}
|
||||||
|
|
||||||
|
AttackDelays =
|
||||||
|
{
|
||||||
|
easy = { DateTime.Seconds(4), DateTime.Seconds(7) },
|
||||||
|
normal = { DateTime.Seconds(2), DateTime.Seconds(5) },
|
||||||
|
hard = { DateTime.Seconds(1), DateTime.Seconds(3) }
|
||||||
|
}
|
||||||
|
|
||||||
|
OrdosInfantryTypes = { "light_inf", "light_inf", "light_inf", "trooper", "trooper" }
|
||||||
|
OrdosVehicleTypes = { "raider", "raider", "quad" }
|
||||||
|
OrdosTankType = { "combat_tank_o" }
|
||||||
|
|
||||||
|
ActivateAI = function()
|
||||||
|
IdlingUnits[ordos_main] = Reinforcements.Reinforce(ordos_main, InitialOrdosReinforcements[1], InitialOrdosPaths[1]), Reinforcements.Reinforce(ordos_main, InitialOrdosReinforcements[2], InitialOrdosPaths[2])
|
||||||
|
IdlingUnits[ordos_small] = Reinforcements.Reinforce(ordos_small, InitialOrdosReinforcements[1], InitialOrdosPaths[3])
|
||||||
|
IdlingUnits[corrino] = { CSaraukar1, CSaraukar2, CSaraukar3, CSaraukar4, CSaraukar5 }
|
||||||
|
|
||||||
|
DefendAndRepairBase(ordos_main, OrdosMainBase, 0.75, AttackGroupSize[Difficulty])
|
||||||
|
DefendAndRepairBase(ordos_small, OrdosSmallBase, 0.75, AttackGroupSize[Difficulty])
|
||||||
|
DefendAndRepairBase(corrino, CorrinoBase, 0.75, AttackGroupSize[Difficulty])
|
||||||
|
|
||||||
|
local delay = function() return Utils.RandomInteger(AttackDelays[Difficulty][1], AttackDelays[Difficulty][2] + 1) end
|
||||||
|
local infantryToBuild = function() return { Utils.Random(OrdosInfantryTypes) } end
|
||||||
|
local vehilcesToBuild = function() return { Utils.Random(OrdosVehicleTypes) } end
|
||||||
|
local tanksToBuild = function() return OrdosTankType end
|
||||||
|
local attackThresholdSize = AttackGroupSize[Difficulty] * 2.5
|
||||||
|
|
||||||
|
ProduceUnits(ordos_main, OBarracks1, delay, infantryToBuild, AttackGroupSize[Difficulty], attackThresholdSize)
|
||||||
|
ProduceUnits(ordos_main, OLightFactory1, delay, vehilcesToBuild, AttackGroupSize[Difficulty], attackThresholdSize)
|
||||||
|
ProduceUnits(ordos_main, OHeavyFactory, delay, tanksToBuild, AttackGroupSize[Difficulty], attackThresholdSize)
|
||||||
|
|
||||||
|
ProduceUnits(ordos_small, OBarracks3, delay, infantryToBuild, AttackGroupSize[Difficulty], attackThresholdSize)
|
||||||
|
ProduceUnits(ordos_small, OLightFactory2, delay, vehilcesToBuild, AttackGroupSize[Difficulty], attackThresholdSize)
|
||||||
|
end
|
||||||
285
mods/d2k/maps/harkonnen-05/harkonnen05.lua
Normal file
285
mods/d2k/maps/harkonnen-05/harkonnen05.lua
Normal file
@@ -0,0 +1,285 @@
|
|||||||
|
--[[
|
||||||
|
Copyright 2007-2017 The OpenRA Developers (see AUTHORS)
|
||||||
|
This file is part of OpenRA, which is free software. It is made
|
||||||
|
available to you under the terms of the GNU General Public License
|
||||||
|
as published by the Free Software Foundation, either version 3 of
|
||||||
|
the License, or (at your option) any later version. For more
|
||||||
|
information, see COPYING.
|
||||||
|
]]
|
||||||
|
|
||||||
|
OrdosMainBase = { OConYard, OOutpost, ORefinery1, ORefinery2, OHeavyFactory, OLightFactory1, OHiTechFactory, OGunt1, OGunt2, OGunt3, OGunt4, OBarracks1, OBarracks2, OPower1, OPower2, OPower3, OPower4, OPower5, OPower6, OPower7, OPower8, OPower9 }
|
||||||
|
OrdosSmallBase = { ORefinery3, OBarracks3, OLightFactory2, OGunt5, OGunt6, OPower10, OPower11, OPower12, OPower13, OSilo }
|
||||||
|
CorrinoBase = { CStarport, CPower1, CPower2 }
|
||||||
|
|
||||||
|
BaseAreaTriggers =
|
||||||
|
{
|
||||||
|
{ CPos.New(68, 70), CPos.New(69, 70), CPos.New(70, 70), CPos.New(71, 70) },
|
||||||
|
{ CPos.New(39, 78), CPos.New(39, 79), CPos.New(39, 80), CPos.New(39, 81), CPos.New(43, 68), CPos.New(44, 68), CPos.New(45, 68), CPos.New(46, 68), CPos.New(47, 68), CPos.New(48, 68), CPos.New(49, 68), CPos.New(50, 68), CPos.New(51, 68), CPos.New(52, 68), CPos.New(53, 68), CPos.New(54, 68), CPos.New(55, 68), CPos.New(56, 68), CPos.New(57, 68), CPos.New(58, 68), CPos.New(59, 68), CPos.New(60, 68) }
|
||||||
|
}
|
||||||
|
|
||||||
|
OrdosReinforcements =
|
||||||
|
{
|
||||||
|
easy =
|
||||||
|
{
|
||||||
|
{ "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper" },
|
||||||
|
{ "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf" },
|
||||||
|
{ "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf" },
|
||||||
|
{ "combat_tank_o", "quad" },
|
||||||
|
{ "combat_tank_o", "raider", "light_inf", "light_inf" },
|
||||||
|
{ "siege_tank", "combat_tank_o", "quad" }
|
||||||
|
},
|
||||||
|
|
||||||
|
normal =
|
||||||
|
{
|
||||||
|
{ "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper" },
|
||||||
|
{ "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf" },
|
||||||
|
{ "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf" },
|
||||||
|
{ "combat_tank_o", "combat_tank_o" },
|
||||||
|
{ "combat_tank_o", "raider", "raider", "light_inf" },
|
||||||
|
{ "siege_tank", "combat_tank_o", "quad", "quad" },
|
||||||
|
{ "combat_tank_o", "combat_tank_o", "combat_tank_o", "combat_tank_o" }
|
||||||
|
},
|
||||||
|
|
||||||
|
hard =
|
||||||
|
{
|
||||||
|
{ "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "trooper" },
|
||||||
|
{ "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf" },
|
||||||
|
{ "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf" },
|
||||||
|
{ "combat_tank_o", "combat_tank_o", "quad" },
|
||||||
|
{ "combat_tank_o", "raider", "raider", "raider" },
|
||||||
|
{ "siege_tank", "combat_tank_o", "combat_tank_o", "quad" },
|
||||||
|
{ "combat_tank_o", "combat_tank_o", "combat_tank_o", "combat_tank_o", "combat_tank_o" },
|
||||||
|
{ "trooper", "trooper", "trooper", "trooper", "trooper", "trooper", "quad", "quad", "raider" }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
CorrinoStarportReinforcements =
|
||||||
|
{
|
||||||
|
easy = { "trooper", "trooper", "quad", "quad", "trike", "trike", "missile_tank", "missile_tank" },
|
||||||
|
normal = { "trooper", "trooper", "trooper", "quad", "quad", "trike", "trike", "missile_tank", "missile_tank" },
|
||||||
|
hard = { "trooper", "trooper", "trooper", "quad", "quad", "quad", "trike", "trike", "trike", "missile_tank", "missile_tank" }
|
||||||
|
}
|
||||||
|
|
||||||
|
OrdosAttackDelay =
|
||||||
|
{
|
||||||
|
easy = DateTime.Minutes(3),
|
||||||
|
normal = DateTime.Minutes(2) + DateTime.Seconds(20),
|
||||||
|
hard = DateTime.Minutes(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
CorrinoStarportDelay =
|
||||||
|
{
|
||||||
|
easy = DateTime.Minutes(3),
|
||||||
|
normal = DateTime.Minutes(2) + DateTime.Seconds(30),
|
||||||
|
hard = DateTime.Minutes(2)
|
||||||
|
}
|
||||||
|
|
||||||
|
OrdosAttackWaves =
|
||||||
|
{
|
||||||
|
easy = 6,
|
||||||
|
normal = 7,
|
||||||
|
hard = 8
|
||||||
|
}
|
||||||
|
|
||||||
|
OrdosHunters =
|
||||||
|
{
|
||||||
|
{ "combat_tank_o", "combat_tank_o" },
|
||||||
|
{ "missile_tank" }
|
||||||
|
}
|
||||||
|
|
||||||
|
InitialOrdosReinforcements =
|
||||||
|
{
|
||||||
|
{ "trooper", "trooper", "trooper", "trooper", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf", "light_inf" },
|
||||||
|
{ "combat_tank_o", "combat_tank_o", "quad", "quad", "raider", "raider" }
|
||||||
|
}
|
||||||
|
|
||||||
|
OrdosPaths =
|
||||||
|
{
|
||||||
|
{ OrdosEntry1.Location, OrdosRally1.Location },
|
||||||
|
{ OrdosEntry2.Location, OrdosRally2.Location },
|
||||||
|
{ OrdosEntry3.Location, OrdosRally3.Location },
|
||||||
|
{ OrdosEntry4.Location, OrdosRally4.Location },
|
||||||
|
{ OrdosEntry5.Location, OrdosRally5.Location },
|
||||||
|
{ OrdosEntry6.Location, OrdosRally6.Location },
|
||||||
|
{ OrdosEntry7.Location, OrdosRally7.Location }
|
||||||
|
}
|
||||||
|
|
||||||
|
InitialOrdosPaths =
|
||||||
|
{
|
||||||
|
{ OrdosEntry8.Location, OrdosRally8.Location },
|
||||||
|
{ OrdosEntry9.Location, OrdosRally9.Location },
|
||||||
|
{ OrdosEntry10.Location, OrdosRally10.Location }
|
||||||
|
}
|
||||||
|
|
||||||
|
OrdosHunterPaths =
|
||||||
|
{
|
||||||
|
{ OrdosEntry11.Location, OrdosEntry11.Location },
|
||||||
|
{ OrdosEntry12.Location, OrdosEntry12.Location },
|
||||||
|
}
|
||||||
|
|
||||||
|
HarkonnenReinforcements =
|
||||||
|
{
|
||||||
|
{ "trooper", "trooper", "trooper", "trooper" },
|
||||||
|
{ "combat_tank_h", "combat_tank_h", "combat_tank_h", "combat_tank_h" }
|
||||||
|
}
|
||||||
|
|
||||||
|
HarkonnenPaths =
|
||||||
|
{
|
||||||
|
{ HarkonnenEntry1.Location, HarkonnenRally1.Location },
|
||||||
|
{ HarkonnenEntry2.Location, HarkonnenRally2.Location }
|
||||||
|
}
|
||||||
|
|
||||||
|
SendStarportReinforcements = function()
|
||||||
|
Trigger.AfterDelay(CorrinoStarportDelay[Difficulty], function()
|
||||||
|
if CStarport.IsDead or CStarport.Owner ~= corrino then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
local units = Reinforcements.ReinforceWithTransport(corrino, "frigate", CorrinoStarportReinforcements[Difficulty], { CorrinoStarportEntry.Location, CStarport.Location + CVec.New(1, 1) }, { CorrinoStarportExit.Location })[2]
|
||||||
|
Utils.Do(units, function(unit)
|
||||||
|
unit.AttackMove(OrdosAttackLocation)
|
||||||
|
IdleHunt(unit)
|
||||||
|
end)
|
||||||
|
|
||||||
|
SendStarportReinforcements()
|
||||||
|
|
||||||
|
if player.IsObjectiveFailed(GuardOutpost) then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
Media.DisplayMessage("Imperial ships penetrating defense grid!", "Mentat")
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
SendHarkonnenReinforcements = function(delay, number)
|
||||||
|
Trigger.AfterDelay(delay, function()
|
||||||
|
Reinforcements.ReinforceWithTransport(player, "carryall.reinforce", HarkonnenReinforcements[number], HarkonnenPaths[number], { HarkonnenPaths[number][1] })
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(5), function()
|
||||||
|
Media.PlaySpeechNotification(player, "Reinforce")
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
OrdosReinforcementNotification = function(currentWave, totalWaves)
|
||||||
|
Trigger.AfterDelay(OrdosAttackDelay[Difficulty], function()
|
||||||
|
if player.IsObjectiveFailed(GuardOutpost) or player.IsObjectiveCompleted(KillOrdos) then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
currentWave = currentWave + 1
|
||||||
|
if currentWave > totalWaves then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
Media.DisplayMessage("Enemy carryall drop detected!", "Mentat")
|
||||||
|
|
||||||
|
OrdosReinforcementNotification(currentWave, totalWaves)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
Tick = function()
|
||||||
|
if player.HasNoRequiredUnits() then
|
||||||
|
ordos_main.MarkCompletedObjective(KillHarkonnen1)
|
||||||
|
ordos_small.MarkCompletedObjective(KillHarkonnen2)
|
||||||
|
corrino.MarkCompletedObjective(KillHarkonnen3)
|
||||||
|
end
|
||||||
|
|
||||||
|
if ordos_main.HasNoRequiredUnits() and ordos_small.HasNoRequiredUnits() and not player.IsObjectiveCompleted(KillOrdos) then
|
||||||
|
Media.DisplayMessage("The Ordos have been annihilated!", "Mentat")
|
||||||
|
player.MarkCompletedObjective(KillOrdos)
|
||||||
|
end
|
||||||
|
|
||||||
|
if corrino.HasNoRequiredUnits() and not player.IsObjectiveCompleted(KillCorrino) then
|
||||||
|
Media.DisplayMessage("The Emperor has been annihilated!", "Mentat")
|
||||||
|
player.MarkCompletedObjective(KillCorrino)
|
||||||
|
end
|
||||||
|
|
||||||
|
if player.IsObjectiveCompleted(KillOrdos) and player.IsObjectiveCompleted(KillCorrino) and not player.IsObjectiveCompleted(GuardOutpost) then
|
||||||
|
player.MarkCompletedObjective(GuardOutpost)
|
||||||
|
end
|
||||||
|
|
||||||
|
if (HOutpost.IsDead or HOutpost.Owner ~= player) and not player.IsObjectiveFailed(GuardOutpost) then
|
||||||
|
player.MarkFailedObjective(GuardOutpost)
|
||||||
|
end
|
||||||
|
|
||||||
|
if DateTime.GameTime % DateTime.Seconds(10) == 0 and LastHarvesterEaten[ordos_main] then
|
||||||
|
local units = ordos_main.GetActorsByType("harvester")
|
||||||
|
|
||||||
|
if #units > 0 then
|
||||||
|
LastHarvesterEaten[ordos_main] = false
|
||||||
|
ProtectHarvester(units[1], ordos_main, AttackGroupSize[Difficulty])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if DateTime.GameTime % DateTime.Seconds(10) == 0 and LastHarvesterEaten[ordos_small] then
|
||||||
|
local units = ordos_small.GetActorsByType("harvester")
|
||||||
|
|
||||||
|
if #units > 0 then
|
||||||
|
LastHarvesterEaten[ordos_small] = false
|
||||||
|
ProtectHarvester(units[1], ordos_small, AttackGroupSize[Difficulty])
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
WorldLoaded = function()
|
||||||
|
ordos_main = Player.GetPlayer("Ordos Main Base")
|
||||||
|
ordos_small = Player.GetPlayer("Ordos Small Base")
|
||||||
|
corrino = Player.GetPlayer("Corrino")
|
||||||
|
player = Player.GetPlayer("Harkonnen")
|
||||||
|
|
||||||
|
InitObjectives(player)
|
||||||
|
KillOrdos = player.AddPrimaryObjective("Destroy the Ordos.")
|
||||||
|
KillCorrino = player.AddPrimaryObjective("Destroy the Imperial Forces.")
|
||||||
|
GuardOutpost = player.AddSecondaryObjective("Keep the Modified Outpost intact.")
|
||||||
|
KillHarkonnen1 = ordos_main.AddPrimaryObjective("Kill all Harkonnen units.")
|
||||||
|
KillHarkonnen2 = ordos_small.AddPrimaryObjective("Kill all Harkonnen units.")
|
||||||
|
KillHarkonnen3 = corrino.AddPrimaryObjective("Kill all Harkonnen units.")
|
||||||
|
|
||||||
|
HOutpost.GrantCondition("modified")
|
||||||
|
|
||||||
|
Camera.Position = HConYard.CenterPosition
|
||||||
|
OrdosAttackLocation = HConYard.Location
|
||||||
|
|
||||||
|
Trigger.OnAllKilledOrCaptured(OrdosMainBase, function()
|
||||||
|
Utils.Do(ordos_main.GetGroundAttackers(), IdleHunt)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.OnAllKilledOrCaptured(OrdosSmallBase, function()
|
||||||
|
Utils.Do(ordos_small.GetGroundAttackers(), IdleHunt)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.OnAllKilledOrCaptured(CorrinoBase, function()
|
||||||
|
Utils.Do(corrino.GetGroundAttackers(), IdleHunt)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(5), function()
|
||||||
|
Media.DisplayMessage("Protect the Outpost from attack.", "Mentat")
|
||||||
|
end)
|
||||||
|
|
||||||
|
local path = function() return Utils.Random(OrdosPaths) end
|
||||||
|
local waveCondition = function() return player.IsObjectiveCompleted(KillOrdos) end
|
||||||
|
local huntFunction = function(unit)
|
||||||
|
unit.AttackMove(OrdosAttackLocation)
|
||||||
|
IdleHunt(unit)
|
||||||
|
end
|
||||||
|
SendCarryallReinforcements(ordos_main, 0, OrdosAttackWaves[Difficulty], OrdosAttackDelay[Difficulty], path, OrdosReinforcements[Difficulty], waveCondition, huntFunction)
|
||||||
|
OrdosReinforcementNotification(0, OrdosAttackWaves[Difficulty])
|
||||||
|
|
||||||
|
SendStarportReinforcements()
|
||||||
|
|
||||||
|
Actor.Create("upgrade.barracks", true, { Owner = ordos_main })
|
||||||
|
Actor.Create("upgrade.light", true, { Owner = ordos_main })
|
||||||
|
Actor.Create("upgrade.heavy", true, { Owner = ordos_main })
|
||||||
|
Actor.Create("upgrade.barracks", true, { Owner = ordos_small })
|
||||||
|
Actor.Create("upgrade.light", true, { Owner = ordos_small })
|
||||||
|
Trigger.AfterDelay(0, ActivateAI)
|
||||||
|
|
||||||
|
SendHarkonnenReinforcements(DateTime.Seconds(15), 1)
|
||||||
|
SendHarkonnenReinforcements(DateTime.Seconds(30), 1)
|
||||||
|
SendHarkonnenReinforcements(DateTime.Seconds(35), 2)
|
||||||
|
|
||||||
|
local ordosCondition = function() return player.IsObjectiveCompleted(KillOrdos) end
|
||||||
|
TriggerCarryallReinforcements(player, ordos_main, BaseAreaTriggers[1], OrdosHunters[1], OrdosHunterPaths[3], ordosCondition)
|
||||||
|
TriggerCarryallReinforcements(player, ordos_main, BaseAreaTriggers[2], OrdosHunters[2], OrdosHunterPaths[2], ordosCondition)
|
||||||
|
end
|
||||||
BIN
mods/d2k/maps/harkonnen-05/map.bin
Normal file
BIN
mods/d2k/maps/harkonnen-05/map.bin
Normal file
Binary file not shown.
BIN
mods/d2k/maps/harkonnen-05/map.png
Normal file
BIN
mods/d2k/maps/harkonnen-05/map.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 291 KiB |
515
mods/d2k/maps/harkonnen-05/map.yaml
Normal file
515
mods/d2k/maps/harkonnen-05/map.yaml
Normal file
@@ -0,0 +1,515 @@
|
|||||||
|
MapFormat: 11
|
||||||
|
|
||||||
|
RequiresMod: d2k
|
||||||
|
|
||||||
|
Title: Harkonnen 05
|
||||||
|
|
||||||
|
Author: Westwood Studios
|
||||||
|
|
||||||
|
Tileset: ARRAKIS
|
||||||
|
|
||||||
|
MapSize: 74,84
|
||||||
|
|
||||||
|
Bounds: 2,2,70,80
|
||||||
|
|
||||||
|
Visibility: MissionSelector
|
||||||
|
|
||||||
|
Categories: Campaign
|
||||||
|
|
||||||
|
LockPreview: True
|
||||||
|
|
||||||
|
Players:
|
||||||
|
PlayerReference@Neutral:
|
||||||
|
Name: Neutral
|
||||||
|
OwnsWorld: True
|
||||||
|
NonCombatant: True
|
||||||
|
PlayerReference@Creeps:
|
||||||
|
Name: Creeps
|
||||||
|
NonCombatant: True
|
||||||
|
Enemies: Harkonnen, Ordos Main Base, Ordos Small Base, Corrino
|
||||||
|
PlayerReference@Harkonnen:
|
||||||
|
Name: Harkonnen
|
||||||
|
Playable: True
|
||||||
|
LockFaction: True
|
||||||
|
Faction: harkonnen
|
||||||
|
LockColor: True
|
||||||
|
Color: FE0000
|
||||||
|
Enemies: Ordos Main Base, Ordos Small Base, Corrino, Creeps
|
||||||
|
PlayerReference@Ordos Main Base:
|
||||||
|
Name: Ordos Main Base
|
||||||
|
LockFaction: True
|
||||||
|
Faction: ordos
|
||||||
|
LockColor: True
|
||||||
|
Color: B3EAA5
|
||||||
|
Allies: Ordos Small Base, Corrino
|
||||||
|
Enemies: Harkonnen
|
||||||
|
PlayerReference@Ordos Small Base:
|
||||||
|
Name: Ordos Small Base
|
||||||
|
LockFaction: True
|
||||||
|
Faction: ordos
|
||||||
|
LockColor: True
|
||||||
|
Color: B3EAA5
|
||||||
|
Allies: Ordos Main Base, Corrino
|
||||||
|
Enemies: Harkonnen
|
||||||
|
PlayerReference@Corrino:
|
||||||
|
Name: Corrino
|
||||||
|
LockFaction: True
|
||||||
|
Faction: corrino
|
||||||
|
LockColor: True
|
||||||
|
Color: 7D00FE
|
||||||
|
Allies: Ordos Main Base, Ordos Small Base
|
||||||
|
Enemies: Harkonnen
|
||||||
|
|
||||||
|
Actors:
|
||||||
|
Actor0: wall
|
||||||
|
Location: 69,10
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor1: wall
|
||||||
|
Location: 70,10
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor2: wall
|
||||||
|
Location: 71,10
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor3: wall
|
||||||
|
Location: 64,11
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor4: wall
|
||||||
|
Location: 65,11
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor5: wall
|
||||||
|
Location: 66,11
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor6: wall
|
||||||
|
Location: 67,11
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor7: wall
|
||||||
|
Location: 68,11
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor8: wall
|
||||||
|
Location: 69,11
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OGunt1: medium_gun_turret
|
||||||
|
Location: 59,13
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
CSardaukar1: sardaukar
|
||||||
|
Location: 69,13
|
||||||
|
Owner: Corrino
|
||||||
|
CSardaukar2: sardaukar
|
||||||
|
Location: 70,13
|
||||||
|
Owner: Corrino
|
||||||
|
Actor12: spicebloom.spawnpoint
|
||||||
|
Location: 32,14
|
||||||
|
Owner: Neutral
|
||||||
|
Actor13: wall
|
||||||
|
Location: 59,14
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
CStarport: starport
|
||||||
|
Location: 67,14
|
||||||
|
Owner: Corrino
|
||||||
|
Actor15: wall
|
||||||
|
Location: 59,15
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OHeavyFactory: heavy_factory
|
||||||
|
Location: 61,15
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
CSardaukar3: sardaukar
|
||||||
|
Location: 65,15
|
||||||
|
Owner: Corrino
|
||||||
|
CSardaukar4: sardaukar
|
||||||
|
Location: 71,15
|
||||||
|
Owner: Corrino
|
||||||
|
Actor19: wall
|
||||||
|
Location: 59,16
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor20: wall
|
||||||
|
Location: 59,17
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
CSardaukar5: sardaukar
|
||||||
|
Location: 66,17
|
||||||
|
Owner: Corrino
|
||||||
|
Actor22: wall
|
||||||
|
Location: 57,18
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor23: wall
|
||||||
|
Location: 58,18
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor24: wall
|
||||||
|
Location: 59,18
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor25: light_inf
|
||||||
|
Location: 65,18
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
CPower1: wind_trap
|
||||||
|
Location: 67,18
|
||||||
|
Owner: Corrino
|
||||||
|
CPower2: wind_trap
|
||||||
|
Location: 69,18
|
||||||
|
Owner: Corrino
|
||||||
|
Actor28: wind_trap
|
||||||
|
Location: 4,19
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor29: spicebloom.spawnpoint
|
||||||
|
Location: 47,19
|
||||||
|
Owner: Neutral
|
||||||
|
OOutpost: outpost
|
||||||
|
Location: 58,19
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OConYard: construction_yard
|
||||||
|
Location: 63,19
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor32: light_inf
|
||||||
|
Location: 3,20
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor33: light_inf
|
||||||
|
Location: 6,20
|
||||||
|
Owner: Harkonnen
|
||||||
|
OPower1: wind_trap
|
||||||
|
Location: 55,20
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor35: trooper
|
||||||
|
Location: 61,20
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor36: combat_tank_h
|
||||||
|
Location: 7,21
|
||||||
|
Owner: Harkonnen
|
||||||
|
ORefinery1: refinery
|
||||||
|
Location: 68,21
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
HConYard: construction_yard
|
||||||
|
Location: 4,23
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor39: wind_trap
|
||||||
|
Location: 8,23
|
||||||
|
Owner: Harkonnen
|
||||||
|
OLightFactory1: light_factory
|
||||||
|
Location: 57,23
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OPower2: wind_trap
|
||||||
|
Location: 61,23
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OBarracks1: barracks
|
||||||
|
Location: 63,23
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OPower3: wind_trap
|
||||||
|
Location: 67,24
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OPower4: wind_trap
|
||||||
|
Location: 69,24
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OPower5: wind_trap
|
||||||
|
Location: 54,26
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor46: light_inf
|
||||||
|
Location: 8,27
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor47: spicebloom.spawnpoint
|
||||||
|
Location: 19,27
|
||||||
|
Owner: Neutral
|
||||||
|
OHiTechFactory: high_tech_factory
|
||||||
|
Location: 57,27
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor49: trooper
|
||||||
|
Location: 61,27
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
ORefinery2: refinery
|
||||||
|
Location: 63,27
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor51: carryall
|
||||||
|
Location: 66,27
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor52: light_inf
|
||||||
|
Location: 6,28
|
||||||
|
Owner: Harkonnen
|
||||||
|
OPower6: wind_trap
|
||||||
|
Location: 67,28
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OPower7: wind_trap
|
||||||
|
Location: 69,28
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor55: light_inf
|
||||||
|
Location: 3,29
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor56: harvester
|
||||||
|
Location: 65,30
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OBarracks2: barracks
|
||||||
|
Location: 57,31
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor58: combat_tank_o
|
||||||
|
Location: 61,31
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor59: light_inf
|
||||||
|
Location: 63,31
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OPower8: wind_trap
|
||||||
|
Location: 67,31
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OPower9: wind_trap
|
||||||
|
Location: 69,31
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor62: wormspawner
|
||||||
|
Location: 48,33
|
||||||
|
Owner: Creeps
|
||||||
|
Actor63: combat_tank_o
|
||||||
|
Location: 59,33
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor64: combat_tank_o
|
||||||
|
Location: 66,33
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor65: wall
|
||||||
|
Location: 57,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor66: wall
|
||||||
|
Location: 58,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor67: wall
|
||||||
|
Location: 59,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor68: wall
|
||||||
|
Location: 60,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OGunt2: medium_gun_turret
|
||||||
|
Location: 61,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor70: combat_tank_o
|
||||||
|
Location: 64,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
OGunt3: medium_gun_turret
|
||||||
|
Location: 66,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor72: wall
|
||||||
|
Location: 67,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor73: wall
|
||||||
|
Location: 68,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor74: wall
|
||||||
|
Location: 69,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor75: wall
|
||||||
|
Location: 70,35
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor76: wall
|
||||||
|
Location: 57,36
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor77: wall
|
||||||
|
Location: 70,36
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor78: wall
|
||||||
|
Location: 57,37
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor79: wall
|
||||||
|
Location: 70,37
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor80: wall
|
||||||
|
Location: 71,37
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor81: spicebloom.spawnpoint
|
||||||
|
Location: 25,38
|
||||||
|
Owner: Neutral
|
||||||
|
OGunt4: medium_gun_turret
|
||||||
|
Location: 56,38
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor83: wall
|
||||||
|
Location: 57,38
|
||||||
|
Owner: Ordos Main Base
|
||||||
|
Actor84: wall
|
||||||
|
Location: 10,43
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor85: wall
|
||||||
|
Location: 12,43
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor86: wall
|
||||||
|
Location: 10,44
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor87: medium_gun_turret
|
||||||
|
Location: 11,44
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor88: wall
|
||||||
|
Location: 12,44
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor89: spicebloom.spawnpoint
|
||||||
|
Location: 22,45
|
||||||
|
Owner: Neutral
|
||||||
|
Actor90: spicebloom.spawnpoint
|
||||||
|
Location: 63,45
|
||||||
|
Owner: Neutral
|
||||||
|
Actor91: wall
|
||||||
|
Location: 5,47
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor92: wall
|
||||||
|
Location: 6,47
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor93: medium_gun_turret
|
||||||
|
Location: 6,48
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor94: spicebloom.spawnpoint
|
||||||
|
Location: 27,48
|
||||||
|
Owner: Neutral
|
||||||
|
Actor95: wall
|
||||||
|
Location: 5,49
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor96: wall
|
||||||
|
Location: 6,49
|
||||||
|
Owner: Harkonnen
|
||||||
|
Actor97: spicebloom.spawnpoint
|
||||||
|
Location: 32,56
|
||||||
|
Owner: Neutral
|
||||||
|
Actor98: spicebloom.spawnpoint
|
||||||
|
Location: 66,62
|
||||||
|
Owner: Neutral
|
||||||
|
Actor99: spicebloom.spawnpoint
|
||||||
|
Location: 41,64
|
||||||
|
Owner: Neutral
|
||||||
|
Actor100: spicebloom.spawnpoint
|
||||||
|
Location: 38,66
|
||||||
|
Owner: Neutral
|
||||||
|
Actor101: spicebloom.spawnpoint
|
||||||
|
Location: 5,69
|
||||||
|
Owner: Neutral
|
||||||
|
OSilo: silo
|
||||||
|
Location: 13,72
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
OPower10: wind_trap
|
||||||
|
Location: 15,72
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
OLightFactory2: light_factory
|
||||||
|
Location: 11,74
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
OPower11: wind_trap
|
||||||
|
Location: 15,75
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
OGunt5: medium_gun_turret
|
||||||
|
Location: 9,76
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
Actor107: wall
|
||||||
|
Location: 10,76
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
Actor108: wall
|
||||||
|
Location: 9,77
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
OBarracks3: barracks
|
||||||
|
Location: 7,78
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
ORefinery3: refinery
|
||||||
|
Location: 10,78
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
Actor111: carryall
|
||||||
|
Location: 13,78
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
OPower12: wind_trap
|
||||||
|
Location: 14,78
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
OPower13: wind_trap
|
||||||
|
Location: 16,78
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
Actor114: wall
|
||||||
|
Location: 19,78
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
Actor115: spicebloom.spawnpoint
|
||||||
|
Location: 32,78
|
||||||
|
Owner: Neutral
|
||||||
|
OGunt6: medium_gun_turret
|
||||||
|
Location: 19,79
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
Actor117: harvester
|
||||||
|
Location: 13,80
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
Actor118: wall
|
||||||
|
Location: 19,80
|
||||||
|
Owner: Ordos Small Base
|
||||||
|
OrdosRally10: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 4,78
|
||||||
|
OrdosEntry10: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 4,81
|
||||||
|
CorrinoStarportEntry: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 71,15
|
||||||
|
CorrinoStarportExit: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 2,15
|
||||||
|
OrdosRally8: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 63,36
|
||||||
|
OrdosEntry8: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 71,34
|
||||||
|
OrdosRally9: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 63,33
|
||||||
|
OrdosEntry9: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 71,30
|
||||||
|
OrdosRally11: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 69,76
|
||||||
|
OrdosEntry11: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 71,76
|
||||||
|
HOutpost: outpost
|
||||||
|
Owner: Harkonnen
|
||||||
|
Location: 6,40
|
||||||
|
OrdosRally12: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 28,80
|
||||||
|
OrdosEntry12: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 28,81
|
||||||
|
OrdosRally1: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 29,67
|
||||||
|
OrdosEntry1: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 29,81
|
||||||
|
OrdosRally2: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 7,67
|
||||||
|
OrdosEntry2: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 2,67
|
||||||
|
OrdosRally3: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 14,65
|
||||||
|
OrdosEntry3: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 2,65
|
||||||
|
OrdosRally4: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 32,58
|
||||||
|
OrdosEntry4: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 2,58
|
||||||
|
OrdosRally5: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 22,30
|
||||||
|
OrdosEntry5: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 22,2
|
||||||
|
OrdosRally6: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 30,8
|
||||||
|
OrdosEntry6: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 30,2
|
||||||
|
OrdosRally7: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 31,4
|
||||||
|
OrdosEntry7: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 31,2
|
||||||
|
HarkonnenRally1: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 11,19
|
||||||
|
HarkonnenEntry1: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 2,19
|
||||||
|
HarkonnenRally2: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 4,29
|
||||||
|
HarkonnenEntry2: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 2,29
|
||||||
|
|
||||||
|
Rules: d2k|rules/campaign-rules.yaml, d2k|rules/campaign-palettes.yaml, rules.yaml
|
||||||
76
mods/d2k/maps/harkonnen-05/rules.yaml
Normal file
76
mods/d2k/maps/harkonnen-05/rules.yaml
Normal file
@@ -0,0 +1,76 @@
|
|||||||
|
Player:
|
||||||
|
PlayerResources:
|
||||||
|
DefaultCash: 6000
|
||||||
|
|
||||||
|
World:
|
||||||
|
LuaScript:
|
||||||
|
Scripts: campaign-global.lua, harkonnen05.lua, harkonnen05-AI.lua
|
||||||
|
MissionData:
|
||||||
|
Briefing: Protect the Outpost at Habbanya to prevent Imperial interference. Rush ground troops through the mountain passes and secure our Outpost. Once this is done, turn on the Ordos and crush them.
|
||||||
|
BriefingVideo: H_BR05_E.VQA
|
||||||
|
MapOptions:
|
||||||
|
TechLevel: medium
|
||||||
|
ScriptLobbyDropdown@difficulty:
|
||||||
|
ID: difficulty
|
||||||
|
Label: Difficulty
|
||||||
|
Values:
|
||||||
|
easy: Easy
|
||||||
|
normal: Normal
|
||||||
|
hard: Hard
|
||||||
|
Default: easy
|
||||||
|
|
||||||
|
^Palettes:
|
||||||
|
IndexedPlayerPalette:
|
||||||
|
PlayerIndex:
|
||||||
|
Ordos Main Base: 175, 174, 173, 172, 171, 170, 169, 168, 167, 166, 165, 164, 163, 162, 161, 160
|
||||||
|
Ordos Small Base: 175, 174, 173, 172, 171, 170, 169, 168, 167, 166, 165, 164, 163, 162, 161, 160
|
||||||
|
|
||||||
|
carryall.reinforce:
|
||||||
|
Cargo:
|
||||||
|
MaxWeight: 25
|
||||||
|
|
||||||
|
frigate:
|
||||||
|
Aircraft:
|
||||||
|
LandableTerrainTypes: Sand, Rock, Transition, Spice, SpiceSand, Dune, Concrete
|
||||||
|
VTOL: true # The frigate would teleport to land otherwise
|
||||||
|
|
||||||
|
concreteb:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
large_gun_turret:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
research_centre:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: outpost, heavy_factory, upgrade.heavy
|
||||||
|
|
||||||
|
missile_tank:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~heavy.missiletank, upgrade.heavy, research_centre
|
||||||
|
|
||||||
|
siege_tank:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
sardaukar:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
stealth_raider:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
upgrade.conyard:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
outpost:
|
||||||
|
ExternalCondition@lua:
|
||||||
|
Condition: modified
|
||||||
|
Tooltip:
|
||||||
|
RequiresCondition: !modified
|
||||||
|
Tooltip@Modified:
|
||||||
|
Name: Modified Outpost
|
||||||
|
RequiresCondition: modified
|
||||||
@@ -25,5 +25,6 @@ Harkonnen Campaign:
|
|||||||
./mods/d2k/maps/harkonnen-03a
|
./mods/d2k/maps/harkonnen-03a
|
||||||
./mods/d2k/maps/harkonnen-03b
|
./mods/d2k/maps/harkonnen-03b
|
||||||
./mods/d2k/maps/harkonnen-04
|
./mods/d2k/maps/harkonnen-04
|
||||||
|
./mods/d2k/maps/harkonnen-05
|
||||||
./mods/d2k/maps/harkonnen-06a
|
./mods/d2k/maps/harkonnen-06a
|
||||||
./mods/d2k/maps/harkonnen-06b
|
./mods/d2k/maps/harkonnen-06b
|
||||||
|
|||||||
Reference in New Issue
Block a user