Add Allies08a
This commit is contained in:
242
mods/ra/maps/allies-08a/allies08a-AI.lua
Normal file
242
mods/ra/maps/allies-08a/allies08a-AI.lua
Normal file
@@ -0,0 +1,242 @@
|
|||||||
|
--[[
|
||||||
|
Copyright 2007-2018 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.
|
||||||
|
]]
|
||||||
|
AttackGroup = { }
|
||||||
|
AttackGroupSize = 10
|
||||||
|
SovietInfantry = { "e1", "e2", "e4" }
|
||||||
|
SovietVehicles = { "3tnk", "3tnk", "v2rl" }
|
||||||
|
SovietAircraftType = { "mig" }
|
||||||
|
Migs = { }
|
||||||
|
|
||||||
|
IdleHunt = function(unit) if not unit.IsDead then Trigger.OnIdle(unit, unit.Hunt) end end
|
||||||
|
|
||||||
|
GroundWavesUpgradeDelay = DateTime.Minutes(12)
|
||||||
|
GroundAttackUnitType = "Normal"
|
||||||
|
GroundAttackUnits =
|
||||||
|
{
|
||||||
|
Normal = { {"4tnk", "3tnk", "e2", "e2", "e2" }, { "3tnk", "v2rl", "e4", "e4", "e4" } },
|
||||||
|
Upgraded = { {"4tnk", "3tnk", "ftrk", "apc", "apc", "e1", "e1", "e1", "e1", "e1", "e2", "e2", "e2" }, { "3tnk", "v2rl", "ftrk", "apc", "apc", "e1", "e1", "e1", "e1", "e1", "e4", "e4", "e4" } }
|
||||||
|
}
|
||||||
|
GroundAttackPaths =
|
||||||
|
{
|
||||||
|
{ SovEntry1.Location, ParaLZ3.Location, AttackChrono.Location },
|
||||||
|
{ SovEntry2.Location, ParaLZ5.Location, AttackChrono.Location },
|
||||||
|
{ SovEntry3.Location, ParaLZ5.Location, AttackChrono.Location }
|
||||||
|
}
|
||||||
|
GroundWavesDelays =
|
||||||
|
{
|
||||||
|
easy = 4,
|
||||||
|
normal = 3,
|
||||||
|
hard = 2
|
||||||
|
}
|
||||||
|
|
||||||
|
WTransUnits = { { "4tnk", "3tnk", "e2", "e2", "e2" }, { "3tnk", "v2rl", "e4", "e4", "e4" } }
|
||||||
|
WTransWays =
|
||||||
|
{
|
||||||
|
{ DDEntry.Location, WaterLanding1.Location },
|
||||||
|
{ WaterEntry2.Location, WaterLanding2.Location },
|
||||||
|
{ WaterEntry2.Location, WaterLanding3.Location }
|
||||||
|
}
|
||||||
|
WTransDelays =
|
||||||
|
{
|
||||||
|
easy = 5,
|
||||||
|
normal = 4,
|
||||||
|
hard = 3
|
||||||
|
}
|
||||||
|
|
||||||
|
ParadropLZs = { ParaLZ1.CenterPosition, ParaLZ2.CenterPosition, ParaLZ3.CenterPosition, ParaLZ4.CenterPosition, ParaLZ5.CenterPosition }
|
||||||
|
ParadropDelays =
|
||||||
|
{
|
||||||
|
easy = 3,
|
||||||
|
normal = 2,
|
||||||
|
hard = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
BombDelays =
|
||||||
|
{
|
||||||
|
easy = 4,
|
||||||
|
normal = 3,
|
||||||
|
hard = 2
|
||||||
|
}
|
||||||
|
|
||||||
|
ProductionInterval =
|
||||||
|
{
|
||||||
|
easy = DateTime.Seconds(20),
|
||||||
|
normal = DateTime.Seconds(10),
|
||||||
|
hard = DateTime.Seconds(5)
|
||||||
|
}
|
||||||
|
|
||||||
|
SendAttackGroup = function()
|
||||||
|
if #AttackGroup < AttackGroupSize then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
Utils.Do(AttackGroup, function(unit)
|
||||||
|
if not unit.IsDead then
|
||||||
|
Trigger.OnIdle(unit, unit.Hunt)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
AttackGroup = { }
|
||||||
|
end
|
||||||
|
|
||||||
|
ProduceInfantry = function()
|
||||||
|
if USSRRax.IsDead or USSRRax.Owner ~= ussr then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
ussr.Build({ Utils.Random(SovietInfantry) }, function(units)
|
||||||
|
table.insert(AttackGroup, units[1])
|
||||||
|
SendAttackGroup()
|
||||||
|
Trigger.AfterDelay(ProductionInterval[Map.LobbyOption("difficulty")], ProduceInfantry)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
ProduceVehicles = function()
|
||||||
|
if USSRWarFactory.IsDead or USSRWarFactory.Owner ~= ussr then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
ussr.Build({ Utils.Random(SovietVehicles) }, function(units)
|
||||||
|
table.insert(AttackGroup, units[1])
|
||||||
|
SendAttackGroup()
|
||||||
|
Trigger.AfterDelay(ProductionInterval[Map.LobbyOption("difficulty")], ProduceVehicles)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
ProduceAircraft = function()
|
||||||
|
if (Airfield1.IsDead or Airfield1.Owner ~= ussr) and (Airfield2.IsDead or Airfield2.Owner ~= ussr) then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
ussr.Build(SovietAircraftType, function(units)
|
||||||
|
local mig = units[1]
|
||||||
|
Migs[#Migs + 1] = mig
|
||||||
|
|
||||||
|
Trigger.OnKilled(mig, ProduceAircraft)
|
||||||
|
|
||||||
|
local alive = Utils.Where(Migs, function(y) return not y.IsDead end)
|
||||||
|
if #alive < 2 then
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(ProductionInterval[Map.LobbyOption("difficulty")] / 2), ProduceAircraft)
|
||||||
|
end
|
||||||
|
|
||||||
|
TargetAndAttack(mig)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
TargetAndAttack = function(mig, target)
|
||||||
|
if not target or target.IsDead or (not target.IsInWorld) then
|
||||||
|
local enemies = Utils.Where(greece.GetActors(), function(actor)
|
||||||
|
return actor.HasProperty("Health") and actor.Type ~= "brik"
|
||||||
|
end)
|
||||||
|
if #enemies > 0 then
|
||||||
|
target = Utils.Random(enemies)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if target and mig.AmmoCount() > 0 and mig.CanTarget(target) then
|
||||||
|
mig.Attack(target)
|
||||||
|
else
|
||||||
|
mig.ReturnToBase()
|
||||||
|
end
|
||||||
|
|
||||||
|
mig.CallFunc(function()
|
||||||
|
TargetAndAttack(mig, target)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
GroundWaves = function()
|
||||||
|
local path = Utils.Random(GroundAttackPaths)
|
||||||
|
local units = Reinforcements.Reinforce(ussr, Utils.Random(GroundAttackUnits[GroundAttackUnitType]), { path[1] })
|
||||||
|
local lastWaypoint = path[#path]
|
||||||
|
Utils.Do(units, function(unit)
|
||||||
|
Trigger.OnAddedToWorld(unit, function()
|
||||||
|
unit.Patrol(path)
|
||||||
|
Trigger.OnIdle(unit, function()
|
||||||
|
unit.AttackMove(lastWaypoint)
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(GroundWavesDelays), GroundWaves)
|
||||||
|
end
|
||||||
|
|
||||||
|
WTransWaves = function()
|
||||||
|
local way = Utils.Random(WTransWays)
|
||||||
|
local units = Utils.Random(WTransUnits)
|
||||||
|
local attackUnits = Reinforcements.ReinforceWithTransport(ussr, "lst", units , way, { way[2], way[1] })[2]
|
||||||
|
Utils.Do(attackUnits, function(a)
|
||||||
|
Trigger.OnAddedToWorld(a, function()
|
||||||
|
a.AttackMove(AttackChrono.Location)
|
||||||
|
IdleHunt(a)
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(WTransDelays), WTransWaves)
|
||||||
|
end
|
||||||
|
|
||||||
|
Paradrop = function()
|
||||||
|
local units = PowerProxy.SendParatroopers(Utils.Random(ParadropLZs))
|
||||||
|
Utils.Do(units, function(unit)
|
||||||
|
Trigger.OnAddedToWorld(unit, IdleHunt)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(ParadropDelays), Paradrop)
|
||||||
|
end
|
||||||
|
|
||||||
|
SendParabombs = function()
|
||||||
|
local airfield = Airfield1
|
||||||
|
if Airfield1.IsDead or Airfield1.Owner ~= ussr then
|
||||||
|
if Airfield2.IsDead or Airfield2.Owner ~= ussr then
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
airfield = Airfield2
|
||||||
|
end
|
||||||
|
|
||||||
|
local targets = Utils.Where(greece.GetActors(), function(actor)
|
||||||
|
return
|
||||||
|
actor.HasProperty("Sell") and
|
||||||
|
actor.Type ~= "brik" and
|
||||||
|
actor.Type ~= "sbag" or
|
||||||
|
actor.Type == "pdox" or
|
||||||
|
actor.Type == "atek"
|
||||||
|
end)
|
||||||
|
|
||||||
|
if #targets > 0 then
|
||||||
|
airfield.SendAirstrike(Utils.Random(targets).CenterPosition, true, 0)
|
||||||
|
end
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(BombDelays), SendParabombs)
|
||||||
|
end
|
||||||
|
|
||||||
|
ActivateAI = function()
|
||||||
|
local difficulty = Map.LobbyOption("difficulty")
|
||||||
|
GroundWavesDelays = GroundWavesDelays[difficulty]
|
||||||
|
WTransDelays = WTransDelays[difficulty]
|
||||||
|
ParadropDelays = ParadropDelays[difficulty]
|
||||||
|
BombDelays = BombDelays[difficulty]
|
||||||
|
|
||||||
|
local buildings = Utils.Where(Map.ActorsInWorld, function(self) return self.Owner == ussr and self.HasProperty("StartBuildingRepairs") end)
|
||||||
|
Utils.Do(buildings, function(actor)
|
||||||
|
Trigger.OnDamaged(actor, function(building)
|
||||||
|
if building.Owner == ussr and building.Health < building.MaxHealth * 3/4 then
|
||||||
|
building.StartBuildingRepairs()
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
|
||||||
|
ProduceInfantry()
|
||||||
|
ProduceVehicles()
|
||||||
|
ProduceAircraft()
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(GroundWavesDelays), GroundWaves)
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(WTransDelays), WTransWaves)
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(ParadropDelays), Paradrop)
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(BombDelays), SendParabombs)
|
||||||
|
Trigger.AfterDelay(GroundWavesUpgradeDelay, function() GroundAttackUnitType = "Upgraded" end)
|
||||||
|
end
|
||||||
192
mods/ra/maps/allies-08a/allies08a.lua
Normal file
192
mods/ra/maps/allies-08a/allies08a.lua
Normal file
@@ -0,0 +1,192 @@
|
|||||||
|
--[[
|
||||||
|
Copyright 2007-2018 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.
|
||||||
|
]]
|
||||||
|
AlliedBoatReinforcements = { "dd", "dd" }
|
||||||
|
TimerTicks = DateTime.Minutes(21)
|
||||||
|
ObjectiveBuildings = { Chronosphere, AlliedTechCenter }
|
||||||
|
ScientistTypes = { "chan", "chan", "chan", "chan" }
|
||||||
|
ScientistDiscoveryFootprint = { CPos.New(28, 83), CPos.New(29, 83) }
|
||||||
|
ScientistEvacuationFootprint = { CPos.New(29, 60), CPos.New(29, 61), CPos.New(29, 62), CPos.New(29, 63), CPos.New(29, 64), CPos.New(29, 65), CPos.New(29, 66) }
|
||||||
|
|
||||||
|
InitialAlliedReinforcements = function()
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(2), function()
|
||||||
|
Media.PlaySpeechNotification(greece, "ReinforcementsArrived")
|
||||||
|
Reinforcements.Reinforce(greece, { "mcv" }, { MCVEntry.Location, MCVStop.Location })
|
||||||
|
Reinforcements.Reinforce(greece, AlliedBoatReinforcements, { DDEntry.Location, DDStop.Location })
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
CreateScientists = function()
|
||||||
|
scientists = Reinforcements.Reinforce(greece, ScientistTypes, { ScientistsExit.Location })
|
||||||
|
Utils.Do(scientists, function(s)
|
||||||
|
s.Move(s.Location + CVec.New(0, 1))
|
||||||
|
s.Scatter()
|
||||||
|
end)
|
||||||
|
|
||||||
|
local flare = Actor.Create("flare", true, { Owner = greece, Location = DefaultCameraPosition.Location + CVec.New(-1, 0) })
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(2), function() Media.PlaySpeechNotification(player, "SignalFlareNorth") end)
|
||||||
|
|
||||||
|
Trigger.OnAnyKilled(scientists, function()
|
||||||
|
Media.PlaySpeechNotification(greece, "ObjectiveNotMet")
|
||||||
|
greece.MarkFailedObjective(EvacuateScientists)
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Add the footprint trigger in a frame end task (delay 0) to avoid crashes
|
||||||
|
local left = #scientists
|
||||||
|
Trigger.AfterDelay(0, function()
|
||||||
|
local changeOwnerTrigger = Trigger.OnEnteredFootprint(ScientistEvacuationFootprint, function(a, id)
|
||||||
|
if a.Owner == greece and a.Type == "chan" then
|
||||||
|
a.Owner = germany
|
||||||
|
a.Stop()
|
||||||
|
a.Move(MCVEntry.Location)
|
||||||
|
|
||||||
|
-- Constantly try to reach the exit (and thus avoid getting stuck if the path was blocked)
|
||||||
|
Trigger.OnIdle(a, function()
|
||||||
|
a.Move(MCVEntry.Location)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
-- Use a cell trigger to destroy the scientists preventing the player from causing glitchs by blocking the path
|
||||||
|
Trigger.OnEnteredFootprint({ MCVEntry.Location }, function(a, id)
|
||||||
|
if a.Owner == germany then
|
||||||
|
a.Stop()
|
||||||
|
a.Destroy()
|
||||||
|
|
||||||
|
left = left - 1
|
||||||
|
if left == 0 then
|
||||||
|
Trigger.RemoveFootprintTrigger(id)
|
||||||
|
Trigger.RemoveFootprintTrigger(changeOwnerTrigger)
|
||||||
|
flare.Destroy()
|
||||||
|
|
||||||
|
if not greece.IsObjectiveCompleted(EvacuateScientists) and not greece.IsObjectiveFailed(EvacuateScientists) then
|
||||||
|
Media.PlaySpeechNotification(greece, "ObjectiveMet")
|
||||||
|
greece.MarkCompletedObjective(EvacuateScientists)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
|
FinishTimer = function()
|
||||||
|
for i = 0, 5 do
|
||||||
|
local c = TimerColor
|
||||||
|
if i % 2 == 0 then
|
||||||
|
c = HSLColor.White
|
||||||
|
end
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(i), function() UserInterface.SetMissionText("The experiment is a success!", c) end)
|
||||||
|
end
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(6), function() UserInterface.SetMissionText("") end)
|
||||||
|
end
|
||||||
|
|
||||||
|
DefendChronosphereCompleted = function()
|
||||||
|
local cells = Utils.ExpandFootprint({ ChronoshiftLocation.Location }, false)
|
||||||
|
local units = { }
|
||||||
|
for i = 1, #cells do
|
||||||
|
local unit = Actor.Create("2tnk", true, { Owner = greece, Facing = 0 })
|
||||||
|
units[unit] = cells[i]
|
||||||
|
end
|
||||||
|
Chronosphere.Chronoshift(units)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(3), function()
|
||||||
|
greece.MarkCompletedObjective(DefendChronosphere)
|
||||||
|
greece.MarkCompletedObjective(KeepBasePowered)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
ticked = TimerTicks
|
||||||
|
Tick = function()
|
||||||
|
ussr.Cash = 5000
|
||||||
|
|
||||||
|
if ussr.HasNoRequiredUnits() then
|
||||||
|
greece.MarkCompletedObjective(DefendChronosphere)
|
||||||
|
greece.MarkCompletedObjective(KeepBasePowered)
|
||||||
|
end
|
||||||
|
|
||||||
|
if greece.HasNoRequiredUnits() then
|
||||||
|
ussr.MarkCompletedObjective(BeatAllies)
|
||||||
|
end
|
||||||
|
|
||||||
|
if ticked > 0 then
|
||||||
|
UserInterface.SetMissionText("Chronosphere experiment completes in " .. Utils.FormatTime(ticked), TimerColor)
|
||||||
|
ticked = ticked - 1
|
||||||
|
elseif ticked == 0 and (greece.PowerState ~= "Normal") then
|
||||||
|
greece.MarkFailedObjective(KeepBasePowered)
|
||||||
|
elseif ticked == 0 then
|
||||||
|
DefendChronosphereCompleted()
|
||||||
|
ticked = ticked - 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
WorldLoaded = function()
|
||||||
|
greece = Player.GetPlayer("Greece")
|
||||||
|
ussr = Player.GetPlayer("USSR")
|
||||||
|
germany = Player.GetPlayer("Germany")
|
||||||
|
|
||||||
|
DefendChronosphere = greece.AddPrimaryObjective("Defend the Chronosphere and the Tech Center\nat all costs.")
|
||||||
|
KeepBasePowered = greece.AddPrimaryObjective("The Chronosphere must have power when the\ntimer runs out.")
|
||||||
|
EvacuateScientists = greece.AddSecondaryObjective("Evacuate all scientists from the island to\nthe west.")
|
||||||
|
BeatAllies = ussr.AddPrimaryObjective("Defeat the Allied forces.")
|
||||||
|
|
||||||
|
Trigger.OnObjectiveCompleted(greece, function(p, id)
|
||||||
|
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective completed")
|
||||||
|
end)
|
||||||
|
Trigger.OnObjectiveFailed(greece, function(p, id)
|
||||||
|
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective failed")
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.OnPlayerLost(greece, function()
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(1), function()
|
||||||
|
Media.PlaySpeechNotification(greece, "MissionFailed")
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
Trigger.OnPlayerWon(greece, function()
|
||||||
|
Trigger.AfterDelay(DateTime.Seconds(1), function()
|
||||||
|
Media.PlaySpeechNotification(greece, "MissionAccomplished")
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(1), function()
|
||||||
|
Media.PlaySpeechNotification(greece, "TwentyMinutesRemaining")
|
||||||
|
end)
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(11), function()
|
||||||
|
Media.PlaySpeechNotification(greece, "TenMinutesRemaining")
|
||||||
|
end)
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(16), function()
|
||||||
|
Media.PlaySpeechNotification(greece, "WarningFiveMinutesRemaining")
|
||||||
|
end)
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(18), function()
|
||||||
|
Media.PlaySpeechNotification(greece, "WarningThreeMinutesRemaining")
|
||||||
|
end)
|
||||||
|
Trigger.AfterDelay(DateTime.Minutes(20), function()
|
||||||
|
Media.PlaySpeechNotification(greece, "WarningOneMinuteRemaining")
|
||||||
|
end)
|
||||||
|
|
||||||
|
PowerProxy = Actor.Create("powerproxy.paratroopers", false, { Owner = ussr })
|
||||||
|
|
||||||
|
Camera.Position = DefaultCameraPosition.CenterPosition
|
||||||
|
TimerColor = greece.Color
|
||||||
|
|
||||||
|
Trigger.OnAnyKilled(ObjectiveBuildings, function()
|
||||||
|
greece.MarkFailedObjective(DefendChronosphere)
|
||||||
|
end)
|
||||||
|
|
||||||
|
Trigger.OnEnteredFootprint(ScientistDiscoveryFootprint, function(a, id)
|
||||||
|
if a.Owner == greece and not scientistsTriggered then
|
||||||
|
scientistsTriggered = true
|
||||||
|
Trigger.RemoveFootprintTrigger(id)
|
||||||
|
CreateScientists()
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
InitialAlliedReinforcements()
|
||||||
|
ActivateAI()
|
||||||
|
end
|
||||||
BIN
mods/ra/maps/allies-08a/map.bin
Normal file
BIN
mods/ra/maps/allies-08a/map.bin
Normal file
Binary file not shown.
BIN
mods/ra/maps/allies-08a/map.png
Normal file
BIN
mods/ra/maps/allies-08a/map.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
988
mods/ra/maps/allies-08a/map.yaml
Normal file
988
mods/ra/maps/allies-08a/map.yaml
Normal file
@@ -0,0 +1,988 @@
|
|||||||
|
MapFormat: 11
|
||||||
|
|
||||||
|
RequiresMod: ra
|
||||||
|
|
||||||
|
Title: 08a: Protect the Chronosphere
|
||||||
|
|
||||||
|
Author: Westwood Studios
|
||||||
|
|
||||||
|
Tileset: SNOW
|
||||||
|
|
||||||
|
MapSize: 128,128
|
||||||
|
|
||||||
|
Bounds: 23,57,87,54
|
||||||
|
|
||||||
|
Visibility: MissionSelector
|
||||||
|
|
||||||
|
Categories: Campaign
|
||||||
|
|
||||||
|
LockPreview: True
|
||||||
|
|
||||||
|
Players:
|
||||||
|
PlayerReference@Neutral:
|
||||||
|
Name: Neutral
|
||||||
|
OwnsWorld: True
|
||||||
|
NonCombatant: True
|
||||||
|
Faction: england
|
||||||
|
PlayerReference@Creeps:
|
||||||
|
Name: Creeps
|
||||||
|
NonCombatant: True
|
||||||
|
Faction: england
|
||||||
|
PlayerReference@USSR:
|
||||||
|
Name: USSR
|
||||||
|
Faction: soviet
|
||||||
|
Color: FF1400
|
||||||
|
Enemies: Greece, Germany
|
||||||
|
PlayerReference@Germany:
|
||||||
|
Name: Germany
|
||||||
|
Faction: allies
|
||||||
|
Color: 505050
|
||||||
|
Enemies: USSR
|
||||||
|
PlayerReference@Greece:
|
||||||
|
Name: Greece
|
||||||
|
AllowBots: False
|
||||||
|
Playable: True
|
||||||
|
Required: True
|
||||||
|
LockFaction: True
|
||||||
|
Faction: allies
|
||||||
|
LockColor: True
|
||||||
|
Color: E2E6F6
|
||||||
|
LockSpawn: True
|
||||||
|
LockTeam: True
|
||||||
|
Enemies: USSR
|
||||||
|
|
||||||
|
Actors:
|
||||||
|
Actor0: brik
|
||||||
|
Location: 48,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor1: brik
|
||||||
|
Location: 49,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor2: brik
|
||||||
|
Location: 50,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor3: brik
|
||||||
|
Location: 51,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor4: brik
|
||||||
|
Location: 52,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor5: brik
|
||||||
|
Location: 53,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor6: brik
|
||||||
|
Location: 54,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor7: brik
|
||||||
|
Location: 55,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor8: brik
|
||||||
|
Location: 60,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor9: brik
|
||||||
|
Location: 61,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor10: brik
|
||||||
|
Location: 62,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor11: brik
|
||||||
|
Location: 63,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor12: brik
|
||||||
|
Location: 64,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor13: brik
|
||||||
|
Location: 65,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor14: brik
|
||||||
|
Location: 66,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor15: brik
|
||||||
|
Location: 67,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor16: brik
|
||||||
|
Location: 68,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor17: brik
|
||||||
|
Location: 69,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor18: brik
|
||||||
|
Location: 70,89
|
||||||
|
Owner: Greece
|
||||||
|
Actor19: brik
|
||||||
|
Location: 48,90
|
||||||
|
Owner: Greece
|
||||||
|
Actor20: brik
|
||||||
|
Location: 49,90
|
||||||
|
Owner: Greece
|
||||||
|
Actor21: brik
|
||||||
|
Location: 54,90
|
||||||
|
Owner: Greece
|
||||||
|
Actor22: brik
|
||||||
|
Location: 55,90
|
||||||
|
Owner: Greece
|
||||||
|
Actor23: brik
|
||||||
|
Location: 60,90
|
||||||
|
Owner: Greece
|
||||||
|
Actor24: brik
|
||||||
|
Location: 61,90
|
||||||
|
Owner: Greece
|
||||||
|
Actor25: brik
|
||||||
|
Location: 70,90
|
||||||
|
Owner: Greece
|
||||||
|
Actor26: brik
|
||||||
|
Location: 48,91
|
||||||
|
Owner: Greece
|
||||||
|
Actor27: brik
|
||||||
|
Location: 49,91
|
||||||
|
Owner: Greece
|
||||||
|
Actor28: brik
|
||||||
|
Location: 70,91
|
||||||
|
Owner: Greece
|
||||||
|
Actor29: brik
|
||||||
|
Location: 70,92
|
||||||
|
Owner: Greece
|
||||||
|
Actor30: brik
|
||||||
|
Location: 70,93
|
||||||
|
Owner: Greece
|
||||||
|
Actor31: brik
|
||||||
|
Location: 48,94
|
||||||
|
Owner: Greece
|
||||||
|
Actor32: brik
|
||||||
|
Location: 49,94
|
||||||
|
Owner: Greece
|
||||||
|
Actor33: brik
|
||||||
|
Location: 70,94
|
||||||
|
Owner: Greece
|
||||||
|
Actor34: brik
|
||||||
|
Location: 48,95
|
||||||
|
Owner: Greece
|
||||||
|
Actor35: brik
|
||||||
|
Location: 49,95
|
||||||
|
Owner: Greece
|
||||||
|
Actor36: brik
|
||||||
|
Location: 70,95
|
||||||
|
Owner: Greece
|
||||||
|
Actor37: brik
|
||||||
|
Location: 49,96
|
||||||
|
Owner: Greece
|
||||||
|
Actor38: brik
|
||||||
|
Location: 70,96
|
||||||
|
Owner: Greece
|
||||||
|
Actor39: brik
|
||||||
|
Location: 49,97
|
||||||
|
Owner: Greece
|
||||||
|
Actor40: brik
|
||||||
|
Location: 70,97
|
||||||
|
Owner: Greece
|
||||||
|
Actor41: brik
|
||||||
|
Location: 46,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor42: brik
|
||||||
|
Location: 47,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor43: brik
|
||||||
|
Location: 48,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor44: brik
|
||||||
|
Location: 49,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor45: brik
|
||||||
|
Location: 56,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor46: brik
|
||||||
|
Location: 57,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor47: brik
|
||||||
|
Location: 60,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor48: brik
|
||||||
|
Location: 61,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor49: brik
|
||||||
|
Location: 70,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor50: brik
|
||||||
|
Location: 71,98
|
||||||
|
Owner: Greece
|
||||||
|
Actor51: brik
|
||||||
|
Location: 46,99
|
||||||
|
Owner: Greece
|
||||||
|
Actor52: brik
|
||||||
|
Location: 56,99
|
||||||
|
Owner: Greece
|
||||||
|
Actor53: brik
|
||||||
|
Location: 57,99
|
||||||
|
Owner: Greece
|
||||||
|
Actor54: brik
|
||||||
|
Location: 60,99
|
||||||
|
Owner: Greece
|
||||||
|
Actor55: brik
|
||||||
|
Location: 61,99
|
||||||
|
Owner: Greece
|
||||||
|
Actor56: brik
|
||||||
|
Location: 70,99
|
||||||
|
Owner: Greece
|
||||||
|
Actor57: brik
|
||||||
|
Location: 71,99
|
||||||
|
Owner: Greece
|
||||||
|
Actor58: brik
|
||||||
|
Location: 46,100
|
||||||
|
Owner: Greece
|
||||||
|
Actor59: brik
|
||||||
|
Location: 56,100
|
||||||
|
Owner: Greece
|
||||||
|
Actor60: brik
|
||||||
|
Location: 61,100
|
||||||
|
Owner: Greece
|
||||||
|
Actor61: brik
|
||||||
|
Location: 35,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor62: brik
|
||||||
|
Location: 36,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor63: brik
|
||||||
|
Location: 37,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor64: brik
|
||||||
|
Location: 38,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor65: brik
|
||||||
|
Location: 39,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor66: brik
|
||||||
|
Location: 40,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor67: brik
|
||||||
|
Location: 41,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor68: brik
|
||||||
|
Location: 42,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor69: brik
|
||||||
|
Location: 43,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor70: brik
|
||||||
|
Location: 44,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor71: brik
|
||||||
|
Location: 45,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor72: brik
|
||||||
|
Location: 46,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor73: brik
|
||||||
|
Location: 56,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor74: brik
|
||||||
|
Location: 61,101
|
||||||
|
Owner: Greece
|
||||||
|
Actor75: brik
|
||||||
|
Location: 35,102
|
||||||
|
Owner: Greece
|
||||||
|
Actor76: brik
|
||||||
|
Location: 56,102
|
||||||
|
Owner: Greece
|
||||||
|
Actor77: brik
|
||||||
|
Location: 61,102
|
||||||
|
Owner: Greece
|
||||||
|
Actor78: brik
|
||||||
|
Location: 35,103
|
||||||
|
Owner: Greece
|
||||||
|
Actor79: brik
|
||||||
|
Location: 36,103
|
||||||
|
Owner: Greece
|
||||||
|
Actor80: brik
|
||||||
|
Location: 56,103
|
||||||
|
Owner: Greece
|
||||||
|
Actor81: brik
|
||||||
|
Location: 61,103
|
||||||
|
Owner: Greece
|
||||||
|
Actor82: brik
|
||||||
|
Location: 35,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor83: brik
|
||||||
|
Location: 36,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor84: brik
|
||||||
|
Location: 55,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor85: brik
|
||||||
|
Location: 56,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor86: brik
|
||||||
|
Location: 57,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor87: brik
|
||||||
|
Location: 58,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor88: brik
|
||||||
|
Location: 59,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor89: brik
|
||||||
|
Location: 60,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor90: brik
|
||||||
|
Location: 61,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor91: brik
|
||||||
|
Location: 62,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor92: brik
|
||||||
|
Location: 70,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor93: brik
|
||||||
|
Location: 71,104
|
||||||
|
Owner: Greece
|
||||||
|
Actor94: brik
|
||||||
|
Location: 55,105
|
||||||
|
Owner: Greece
|
||||||
|
Actor95: brik
|
||||||
|
Location: 56,105
|
||||||
|
Owner: Greece
|
||||||
|
Actor96: brik
|
||||||
|
Location: 61,105
|
||||||
|
Owner: Greece
|
||||||
|
Actor97: brik
|
||||||
|
Location: 62,105
|
||||||
|
Owner: Greece
|
||||||
|
Actor98: brik
|
||||||
|
Location: 70,105
|
||||||
|
Owner: Greece
|
||||||
|
Actor99: brik
|
||||||
|
Location: 71,105
|
||||||
|
Owner: Greece
|
||||||
|
Actor100: brik
|
||||||
|
Location: 35,108
|
||||||
|
Owner: Greece
|
||||||
|
Actor101: brik
|
||||||
|
Location: 36,108
|
||||||
|
Owner: Greece
|
||||||
|
Actor102: brik
|
||||||
|
Location: 35,109
|
||||||
|
Owner: Greece
|
||||||
|
Actor103: brik
|
||||||
|
Location: 36,109
|
||||||
|
Owner: Greece
|
||||||
|
Actor104: brik
|
||||||
|
Location: 35,110
|
||||||
|
Owner: Greece
|
||||||
|
Actor105: t08
|
||||||
|
Location: 93,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor106: t15
|
||||||
|
Location: 82,69
|
||||||
|
Owner: Neutral
|
||||||
|
Actor107: tc05
|
||||||
|
Location: 80,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor108: tc04
|
||||||
|
Location: 88,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor109: tc03
|
||||||
|
Location: 89,70
|
||||||
|
Owner: Neutral
|
||||||
|
Actor110: tc02
|
||||||
|
Location: 86,73
|
||||||
|
Owner: Neutral
|
||||||
|
Actor111: tc02
|
||||||
|
Location: 64,63
|
||||||
|
Owner: Neutral
|
||||||
|
Actor113: tc02
|
||||||
|
Location: 70,57
|
||||||
|
Owner: Neutral
|
||||||
|
Actor114: tc04
|
||||||
|
Location: 70,60
|
||||||
|
Owner: Neutral
|
||||||
|
Actor116: tc04
|
||||||
|
Location: 93,73
|
||||||
|
Owner: Neutral
|
||||||
|
Actor117: tc05
|
||||||
|
Location: 90,72
|
||||||
|
Owner: Neutral
|
||||||
|
Actor118: tc04
|
||||||
|
Location: 81,105
|
||||||
|
Owner: Neutral
|
||||||
|
Actor119: t13
|
||||||
|
Location: 83,103
|
||||||
|
Owner: Neutral
|
||||||
|
Actor120: t06
|
||||||
|
Location: 88,105
|
||||||
|
Owner: Neutral
|
||||||
|
Actor121: t07
|
||||||
|
Location: 85,104
|
||||||
|
Owner: Neutral
|
||||||
|
Actor122: t10
|
||||||
|
Location: 85,106
|
||||||
|
Owner: Neutral
|
||||||
|
Actor123: t06
|
||||||
|
Location: 87,104
|
||||||
|
Owner: Neutral
|
||||||
|
Actor124: t05
|
||||||
|
Location: 54,87
|
||||||
|
Owner: Neutral
|
||||||
|
Actor125: t01
|
||||||
|
Location: 56,81
|
||||||
|
Owner: Neutral
|
||||||
|
Actor126: t01
|
||||||
|
Location: 61,83
|
||||||
|
Owner: Neutral
|
||||||
|
Actor127: t08
|
||||||
|
Location: 53,88
|
||||||
|
Owner: Neutral
|
||||||
|
Actor128: t08
|
||||||
|
Location: 68,87
|
||||||
|
Owner: Neutral
|
||||||
|
Actor129: t12
|
||||||
|
Location: 82,83
|
||||||
|
Owner: Neutral
|
||||||
|
Actor130: t12
|
||||||
|
Location: 69,84
|
||||||
|
Owner: Neutral
|
||||||
|
Actor131: tc04
|
||||||
|
Location: 62,84
|
||||||
|
Owner: Neutral
|
||||||
|
Actor132: tc05
|
||||||
|
Location: 82,87
|
||||||
|
Owner: Neutral
|
||||||
|
Actor133: tc05
|
||||||
|
Location: 40,61
|
||||||
|
Owner: Neutral
|
||||||
|
Actor134: t11
|
||||||
|
Location: 54,58
|
||||||
|
Owner: Neutral
|
||||||
|
Actor144: t02
|
||||||
|
Location: 53,80
|
||||||
|
Owner: Neutral
|
||||||
|
Actor145: t02
|
||||||
|
Location: 55,74
|
||||||
|
Owner: Neutral
|
||||||
|
Actor146: t15
|
||||||
|
Location: 57,75
|
||||||
|
Owner: Neutral
|
||||||
|
Actor147: tc01
|
||||||
|
Location: 46,78
|
||||||
|
Owner: Neutral
|
||||||
|
Actor148: tc01
|
||||||
|
Location: 49,87
|
||||||
|
Owner: Neutral
|
||||||
|
Actor149: tc03
|
||||||
|
Location: 54,81
|
||||||
|
Owner: Neutral
|
||||||
|
Actor150: tc04
|
||||||
|
Location: 54,76
|
||||||
|
Owner: Neutral
|
||||||
|
Actor151: t15
|
||||||
|
Location: 103,105
|
||||||
|
Owner: Neutral
|
||||||
|
Actor153: tc01
|
||||||
|
Location: 88,107
|
||||||
|
Owner: Neutral
|
||||||
|
Actor154: tc04
|
||||||
|
Location: 105,106
|
||||||
|
Owner: Neutral
|
||||||
|
Actor155: tc05
|
||||||
|
Location: 106,99
|
||||||
|
Owner: Neutral
|
||||||
|
Actor156: tc04
|
||||||
|
Location: 51,86
|
||||||
|
Owner: Neutral
|
||||||
|
Actor157: t16
|
||||||
|
Location: 34,109
|
||||||
|
Owner: Neutral
|
||||||
|
Actor158: tc04
|
||||||
|
Location: 36,64
|
||||||
|
Owner: Neutral
|
||||||
|
Actor159: tc03
|
||||||
|
Location: 33,57
|
||||||
|
Owner: Neutral
|
||||||
|
Actor160: tc02
|
||||||
|
Location: 43,66
|
||||||
|
Owner: Neutral
|
||||||
|
Actor161: tc01
|
||||||
|
Location: 52,60
|
||||||
|
Owner: Neutral
|
||||||
|
Actor162: t17
|
||||||
|
Location: 51,57
|
||||||
|
Owner: Neutral
|
||||||
|
Actor163: t16
|
||||||
|
Location: 47,62
|
||||||
|
Owner: Neutral
|
||||||
|
Actor164: t15
|
||||||
|
Location: 48,62
|
||||||
|
Owner: Neutral
|
||||||
|
Actor165: t14
|
||||||
|
Location: 63,59
|
||||||
|
Owner: Neutral
|
||||||
|
Actor166: tc03
|
||||||
|
Location: 100,57
|
||||||
|
Owner: Neutral
|
||||||
|
Actor167: tc01
|
||||||
|
Location: 80,59
|
||||||
|
Owner: Neutral
|
||||||
|
Actor168: tc05
|
||||||
|
Location: 81,57
|
||||||
|
Owner: Neutral
|
||||||
|
Actor169: tc04
|
||||||
|
Location: 66,71
|
||||||
|
Owner: Neutral
|
||||||
|
Actor170: tc03
|
||||||
|
Location: 60,66
|
||||||
|
Owner: Neutral
|
||||||
|
Actor171: tc02
|
||||||
|
Location: 60,70
|
||||||
|
Owner: Neutral
|
||||||
|
Actor172: tc05
|
||||||
|
Location: 97,80
|
||||||
|
Owner: Neutral
|
||||||
|
Actor173: tc01
|
||||||
|
Location: 97,77
|
||||||
|
Owner: Neutral
|
||||||
|
Actor174: t17
|
||||||
|
Location: 101,77
|
||||||
|
Owner: Neutral
|
||||||
|
Actor175: t16
|
||||||
|
Location: 94,80
|
||||||
|
Owner: Neutral
|
||||||
|
Actor176: t13
|
||||||
|
Location: 98,85
|
||||||
|
Owner: Neutral
|
||||||
|
Actor177: t07
|
||||||
|
Location: 23,76
|
||||||
|
Owner: Neutral
|
||||||
|
Actor178: t08
|
||||||
|
Location: 30,88
|
||||||
|
Owner: Neutral
|
||||||
|
Actor179: t14
|
||||||
|
Location: 24,89
|
||||||
|
Owner: Neutral
|
||||||
|
Actor180: tc05
|
||||||
|
Location: 23,84
|
||||||
|
Owner: Neutral
|
||||||
|
Actor181: tc04
|
||||||
|
Location: 29,80
|
||||||
|
Owner: Neutral
|
||||||
|
Actor182: tc02
|
||||||
|
Location: 47,96
|
||||||
|
Owner: Neutral
|
||||||
|
Actor183: t17
|
||||||
|
Location: 34,102
|
||||||
|
Owner: Neutral
|
||||||
|
Actor184: tc02
|
||||||
|
Location: 74,83
|
||||||
|
Owner: Neutral
|
||||||
|
Actor185: tc01
|
||||||
|
Location: 78,93
|
||||||
|
Owner: Neutral
|
||||||
|
Actor186: t08
|
||||||
|
Location: 71,97
|
||||||
|
Owner: Neutral
|
||||||
|
Actor187: t01
|
||||||
|
Location: 45,96
|
||||||
|
Owner: Neutral
|
||||||
|
Actor188: t02
|
||||||
|
Location: 45,98
|
||||||
|
Owner: Neutral
|
||||||
|
Actor189: t03
|
||||||
|
Location: 45,97
|
||||||
|
Owner: Neutral
|
||||||
|
Actor190: t06
|
||||||
|
Location: 44,97
|
||||||
|
Owner: Neutral
|
||||||
|
Actor191: t07
|
||||||
|
Location: 44,98
|
||||||
|
Owner: Neutral
|
||||||
|
Actor192: t10
|
||||||
|
Location: 42,97
|
||||||
|
Owner: Neutral
|
||||||
|
Actor193: tc03
|
||||||
|
Location: 41,99
|
||||||
|
Owner: Neutral
|
||||||
|
Actor194: t12
|
||||||
|
Location: 46,96
|
||||||
|
Owner: Neutral
|
||||||
|
Actor195: t17
|
||||||
|
Location: 43,98
|
||||||
|
Owner: Neutral
|
||||||
|
Actor196: t10
|
||||||
|
Location: 58,105
|
||||||
|
Owner: Neutral
|
||||||
|
Actor197: t12
|
||||||
|
Location: 70,105
|
||||||
|
Owner: Neutral
|
||||||
|
Actor198: t02
|
||||||
|
Location: 72,109
|
||||||
|
Owner: Neutral
|
||||||
|
Actor199: t03
|
||||||
|
Location: 69,109
|
||||||
|
Owner: Neutral
|
||||||
|
Actor200: t06
|
||||||
|
Location: 69,108
|
||||||
|
Owner: Neutral
|
||||||
|
Actor201: t07
|
||||||
|
Location: 70,108
|
||||||
|
Owner: Neutral
|
||||||
|
Actor202: t08
|
||||||
|
Location: 71,110
|
||||||
|
Owner: Neutral
|
||||||
|
Actor203: t10
|
||||||
|
Location: 68,107
|
||||||
|
Owner: Neutral
|
||||||
|
Actor204: t01
|
||||||
|
Location: 71,108
|
||||||
|
Owner: Neutral
|
||||||
|
AAGun1: agun
|
||||||
|
Location: 62,101
|
||||||
|
Owner: Greece
|
||||||
|
AAGun2: agun
|
||||||
|
Location: 55,101
|
||||||
|
Owner: Greece
|
||||||
|
Dome: dome
|
||||||
|
Location: 67,93
|
||||||
|
Owner: Greece
|
||||||
|
Health: 97
|
||||||
|
Apwr1: apwr
|
||||||
|
Location: 37,108
|
||||||
|
Owner: Greece
|
||||||
|
Apwr2: apwr
|
||||||
|
Location: 43,102
|
||||||
|
Owner: Greece
|
||||||
|
Apwr3: apwr
|
||||||
|
Location: 40,102
|
||||||
|
Owner: Greece
|
||||||
|
AlliedTechCenter: atek
|
||||||
|
Location: 58,95
|
||||||
|
Owner: Greece
|
||||||
|
Health: 99
|
||||||
|
Chronosphere: pdox
|
||||||
|
Location: 58,102
|
||||||
|
Owner: Greece
|
||||||
|
Health: 99
|
||||||
|
Gap1: gap
|
||||||
|
Location: 59,101
|
||||||
|
Owner: Greece
|
||||||
|
Health: 97
|
||||||
|
Gap2: gap
|
||||||
|
Location: 57,103
|
||||||
|
Owner: Greece
|
||||||
|
Health: 97
|
||||||
|
Gap3: gap
|
||||||
|
Location: 58,101
|
||||||
|
Owner: Greece
|
||||||
|
Health: 97
|
||||||
|
Gap4: gap
|
||||||
|
Location: 60,103
|
||||||
|
Owner: Greece
|
||||||
|
Health: 97
|
||||||
|
Gun1: gun
|
||||||
|
Location: 56,89
|
||||||
|
Owner: Greece
|
||||||
|
Health: 99
|
||||||
|
Gun2: gun
|
||||||
|
Location: 59,89
|
||||||
|
Owner: Greece
|
||||||
|
Health: 99
|
||||||
|
Gun3: gun
|
||||||
|
Location: 71,100
|
||||||
|
Owner: Greece
|
||||||
|
Health: 99
|
||||||
|
Facing: 191
|
||||||
|
Gun4: gun
|
||||||
|
Location: 71,103
|
||||||
|
Owner: Greece
|
||||||
|
Health: 99
|
||||||
|
Facing: 191
|
||||||
|
OreRef: proc
|
||||||
|
Location: 62,90
|
||||||
|
Owner: Greece
|
||||||
|
Health: 99
|
||||||
|
Apwr4: apwr
|
||||||
|
Location: 40,108
|
||||||
|
Owner: Greece
|
||||||
|
Apwr5: apwr
|
||||||
|
Location: 37,102
|
||||||
|
Owner: Greece
|
||||||
|
Apwr6: apwr
|
||||||
|
Location: 43,108
|
||||||
|
Owner: Greece
|
||||||
|
ServiceDepot: fix
|
||||||
|
Location: 51,90
|
||||||
|
Owner: Greece
|
||||||
|
Actor226: fact
|
||||||
|
Location: 88,62
|
||||||
|
Owner: USSR
|
||||||
|
Actor227: powr
|
||||||
|
Location: 89,57
|
||||||
|
Owner: USSR
|
||||||
|
Actor228: powr
|
||||||
|
Location: 91,57
|
||||||
|
Owner: USSR
|
||||||
|
Actor229: proc
|
||||||
|
Location: 98,59
|
||||||
|
Owner: USSR
|
||||||
|
Actor230: silo
|
||||||
|
Location: 98,57
|
||||||
|
Owner: USSR
|
||||||
|
Actor231: silo
|
||||||
|
Location: 99,57
|
||||||
|
Owner: USSR
|
||||||
|
USSRWarFactory: weap
|
||||||
|
Location: 92,64
|
||||||
|
Owner: USSR
|
||||||
|
Actor233: proc
|
||||||
|
Location: 93,58
|
||||||
|
Owner: USSR
|
||||||
|
Actor234: apwr
|
||||||
|
Location: 104,64
|
||||||
|
Owner: USSR
|
||||||
|
Actor235: apwr
|
||||||
|
Location: 100,65
|
||||||
|
Owner: USSR
|
||||||
|
USSRRax: barr
|
||||||
|
Location: 86,60
|
||||||
|
Owner: USSR
|
||||||
|
Actor237: tsla
|
||||||
|
Location: 83,65
|
||||||
|
Owner: USSR
|
||||||
|
Actor238: apwr
|
||||||
|
Location: 99,68
|
||||||
|
Owner: USSR
|
||||||
|
Actor239: apwr
|
||||||
|
Location: 103,67
|
||||||
|
Owner: USSR
|
||||||
|
Actor240: ftur
|
||||||
|
Location: 81,62
|
||||||
|
Owner: USSR
|
||||||
|
Actor241: ftur
|
||||||
|
Location: 85,67
|
||||||
|
Owner: USSR
|
||||||
|
Actor242: silo
|
||||||
|
Location: 99,58
|
||||||
|
Owner: USSR
|
||||||
|
Actor243: silo
|
||||||
|
Location: 99,58
|
||||||
|
Owner: USSR
|
||||||
|
Actor244: silo
|
||||||
|
Location: 98,58
|
||||||
|
Owner: USSR
|
||||||
|
Actor245: stek
|
||||||
|
Location: 91,68
|
||||||
|
Owner: USSR
|
||||||
|
Tent: tent
|
||||||
|
Location: 68,97
|
||||||
|
Owner: Greece
|
||||||
|
Actor247: dome
|
||||||
|
Location: 26,79
|
||||||
|
Owner: Germany
|
||||||
|
Health: 26
|
||||||
|
Silo1: silo
|
||||||
|
Location: 64,90
|
||||||
|
Owner: Greece
|
||||||
|
Silo2: silo
|
||||||
|
Location: 66,90
|
||||||
|
Owner: Greece
|
||||||
|
Silo3: silo
|
||||||
|
Location: 65,91
|
||||||
|
Owner: Greece
|
||||||
|
Silo4: silo
|
||||||
|
Location: 67,91
|
||||||
|
Owner: Greece
|
||||||
|
Airfield1: afld.ukraine
|
||||||
|
Location: 102,58
|
||||||
|
Owner: USSR
|
||||||
|
Airfield2: afld
|
||||||
|
Location: 106,57
|
||||||
|
Owner: USSR
|
||||||
|
Actor254: v2rl
|
||||||
|
Location: 56,69
|
||||||
|
Owner: USSR
|
||||||
|
Actor255: v2rl
|
||||||
|
Location: 52,69
|
||||||
|
Owner: USSR
|
||||||
|
Actor256: 3tnk
|
||||||
|
Location: 54,65
|
||||||
|
Owner: USSR
|
||||||
|
Actor257: 3tnk
|
||||||
|
Location: 54,63
|
||||||
|
Owner: USSR
|
||||||
|
Actor258: 3tnk
|
||||||
|
Location: 56,66
|
||||||
|
Owner: USSR
|
||||||
|
Actor259: 3tnk
|
||||||
|
Location: 56,64
|
||||||
|
Owner: USSR
|
||||||
|
Facing: 31
|
||||||
|
Actor260: 3tnk
|
||||||
|
Location: 52,66
|
||||||
|
Owner: USSR
|
||||||
|
Actor261: 2tnk
|
||||||
|
Location: 28,60
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 159
|
||||||
|
Actor262: 2tnk
|
||||||
|
Location: 28,66
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 191
|
||||||
|
Actor263: 2tnk
|
||||||
|
Location: 28,64
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 191
|
||||||
|
Actor264: 2tnk
|
||||||
|
Location: 30,66
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 223
|
||||||
|
Actor265: 1tnk
|
||||||
|
Location: 30,64
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 191
|
||||||
|
Actor266: 1tnk
|
||||||
|
Location: 29,62
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 191
|
||||||
|
Actor267: mnly
|
||||||
|
Location: 27,61
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 191
|
||||||
|
Actor268: mnly
|
||||||
|
Location: 26,60
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 191
|
||||||
|
Actor269: jeep
|
||||||
|
Location: 32,61
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 223
|
||||||
|
Actor270: arty
|
||||||
|
Location: 24,66
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 223
|
||||||
|
Actor271: arty
|
||||||
|
Location: 25,67
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 223
|
||||||
|
Actor272: harv
|
||||||
|
Location: 65,95
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 95
|
||||||
|
Actor273: e1
|
||||||
|
Location: 58,98
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 31
|
||||||
|
SubCell: 4
|
||||||
|
Actor274: e1
|
||||||
|
Location: 59,98
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 223
|
||||||
|
SubCell: 4
|
||||||
|
Actor275: e1
|
||||||
|
Location: 55,102
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 31
|
||||||
|
SubCell: 0
|
||||||
|
Actor276: e1
|
||||||
|
Location: 62,102
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 223
|
||||||
|
SubCell: 4
|
||||||
|
Actor277: e1
|
||||||
|
Location: 62,99
|
||||||
|
Owner: Greece
|
||||||
|
SubCell: 4
|
||||||
|
Actor278: e1
|
||||||
|
Location: 55,91
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 191
|
||||||
|
SubCell: 0
|
||||||
|
Actor279: e1
|
||||||
|
Location: 54,103
|
||||||
|
Owner: Greece
|
||||||
|
SubCell: 4
|
||||||
|
Actor280: e1
|
||||||
|
Location: 55,99
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 31
|
||||||
|
SubCell: 0
|
||||||
|
Actor281: e1
|
||||||
|
Location: 61,91
|
||||||
|
Owner: Greece
|
||||||
|
Facing: 31
|
||||||
|
SubCell: 0
|
||||||
|
Actor282: e1
|
||||||
|
Location: 63,104
|
||||||
|
Owner: Greece
|
||||||
|
SubCell: 2
|
||||||
|
Actor283: e1
|
||||||
|
Location: 57,101
|
||||||
|
Owner: Greece
|
||||||
|
SubCell: 1
|
||||||
|
Actor284: e1
|
||||||
|
Location: 60,101
|
||||||
|
Owner: Greece
|
||||||
|
SubCell: 1
|
||||||
|
MCVEntry: waypoint
|
||||||
|
Location: 23,64
|
||||||
|
Owner: Neutral
|
||||||
|
MCVStop: waypoint
|
||||||
|
Location: 26,64
|
||||||
|
Owner: Neutral
|
||||||
|
DDStop: waypoint
|
||||||
|
Location: 30,71
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint6: waypoint
|
||||||
|
Location: 41,109
|
||||||
|
Owner: Neutral
|
||||||
|
waypoint9: waypoint
|
||||||
|
Location: 89,63
|
||||||
|
Owner: Neutral
|
||||||
|
DDEntry: waypoint
|
||||||
|
Location: 23,71
|
||||||
|
Owner: Neutral
|
||||||
|
WaterEntry2: waypoint
|
||||||
|
Location: 23,99
|
||||||
|
Owner: Neutral
|
||||||
|
ParaLZ1: waypoint
|
||||||
|
Location: 29,106
|
||||||
|
Owner: Neutral
|
||||||
|
ParaLZ2: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 47,84
|
||||||
|
ParaLZ3: waypoint
|
||||||
|
Location: 66,77
|
||||||
|
Owner: Neutral
|
||||||
|
ParaLZ4: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 77,88
|
||||||
|
ParaLZ5: waypoint
|
||||||
|
Location: 91,95
|
||||||
|
Owner: Neutral
|
||||||
|
SovEntry3: waypoint
|
||||||
|
Location: 109,110
|
||||||
|
Owner: Neutral
|
||||||
|
SovEntry1: waypoint
|
||||||
|
Location: 86,57
|
||||||
|
Owner: Neutral
|
||||||
|
WaterLanding1: waypoint
|
||||||
|
Location: 51,71
|
||||||
|
Owner: Neutral
|
||||||
|
WaterLanding2: waypoint
|
||||||
|
Location: 45,93
|
||||||
|
Owner: Neutral
|
||||||
|
SovEntry2: waypoint
|
||||||
|
Location: 109,72
|
||||||
|
Owner: Neutral
|
||||||
|
WaterLanding3: waypoint
|
||||||
|
Location: 25,101
|
||||||
|
Owner: Neutral
|
||||||
|
DefaultCameraPosition: waypoint
|
||||||
|
Location: 29,63
|
||||||
|
Owner: Neutral
|
||||||
|
ScientistsExit: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 26,80
|
||||||
|
AttackChrono: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 59,103
|
||||||
|
ChronoshiftLocation: waypoint
|
||||||
|
Owner: Neutral
|
||||||
|
Location: 58,86
|
||||||
|
|
||||||
|
Rules: ra|rules/campaign-rules.yaml, ra|rules/campaign-tooltips.yaml, ra|rules/campaign-palettes.yaml, rules.yaml
|
||||||
121
mods/ra/maps/allies-08a/rules.yaml
Normal file
121
mods/ra/maps/allies-08a/rules.yaml
Normal file
@@ -0,0 +1,121 @@
|
|||||||
|
Player:
|
||||||
|
PlayerResources:
|
||||||
|
DefaultCash: 15000
|
||||||
|
|
||||||
|
World:
|
||||||
|
LuaScript:
|
||||||
|
Scripts: allies08a.lua, allies08a-AI.lua
|
||||||
|
MissionData:
|
||||||
|
Briefing: Our latest technology, the Chronosphere, is housed in this research station. The timer represents the appointed time for the completion of a vital experiment. The Soviets have learned of this and are moving in. \n\nProtect the Chronosphere and the Advanced-Tech research center. Make sure the base is fully powered at the appointed time. If not, all will be lost!
|
||||||
|
BriefingVideo: ally8.vqa
|
||||||
|
WinVideo: crontest.vqa
|
||||||
|
LossVideo: cronfail.vqa
|
||||||
|
StartVideo: aagun.vqa
|
||||||
|
ScriptLobbyDropdown@difficulty:
|
||||||
|
ID: difficulty
|
||||||
|
Label: Difficulty
|
||||||
|
Values:
|
||||||
|
easy: Easy
|
||||||
|
normal: Normal
|
||||||
|
hard: Hard
|
||||||
|
Default: easy
|
||||||
|
|
||||||
|
powerproxy.paratroopers:
|
||||||
|
ParatroopersPower:
|
||||||
|
DropItems: E1,E1,E1,E2,E2
|
||||||
|
|
||||||
|
MCV:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
TRUK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
FTRK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
APC:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
MRJ:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
3TNK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~vehicles.soviet
|
||||||
|
|
||||||
|
V2RL:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~vehicles.soviet
|
||||||
|
|
||||||
|
4TNK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~vehicles.soviet
|
||||||
|
|
||||||
|
QTNK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
HPAD:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
AFLD.Ukraine:
|
||||||
|
-AirstrikePower@spyplane:
|
||||||
|
|
||||||
|
CHAN:
|
||||||
|
Infiltrates:
|
||||||
|
Types: Mission Objectives
|
||||||
|
|
||||||
|
ATEK:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
GpsPower:
|
||||||
|
ChargeInterval: 15000
|
||||||
|
Targetable:
|
||||||
|
TargetTypes: Ground, C4, DetonateAttack, Structure, Mission Objectives
|
||||||
|
-Sellable:
|
||||||
|
|
||||||
|
PDOX:
|
||||||
|
Inherits@IDISABLE: ^DisableOnLowPower
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
ChronoshiftPower@chronoshift:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
-Sellable:
|
||||||
|
|
||||||
|
IRON:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
MSLO:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
MECH:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
HIJACKER:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
E7:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
E7.noautotarget:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
CA:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
|
|
||||||
|
MSUB:
|
||||||
|
Buildable:
|
||||||
|
Prerequisites: ~disabled
|
||||||
@@ -8,6 +8,7 @@ Allied Campaign:
|
|||||||
./mods/ra/maps/allies-06a
|
./mods/ra/maps/allies-06a
|
||||||
./mods/ra/maps/allies-06b
|
./mods/ra/maps/allies-06b
|
||||||
./mods/ra/maps/allies-07
|
./mods/ra/maps/allies-07
|
||||||
|
./mods/ra/maps/allies-08a
|
||||||
Soviet Campaign:
|
Soviet Campaign:
|
||||||
./mods/ra/maps/soviet-01
|
./mods/ra/maps/soviet-01
|
||||||
./mods/ra/maps/soviet-02a
|
./mods/ra/maps/soviet-02a
|
||||||
|
|||||||
Reference in New Issue
Block a user