Add Counterstrike mission Siberian Conflict 1: Fresh Tracks
This commit is contained in:
282
mods/ra/maps/siberian-conflict-1-fresh-tracks/fresh-tracks.lua
Normal file
282
mods/ra/maps/siberian-conflict-1-fresh-tracks/fresh-tracks.lua
Normal file
@@ -0,0 +1,282 @@
|
||||
--[[
|
||||
Copyright 2007-2020 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.
|
||||
]]
|
||||
TimerTicks = DateTime.Minutes(8)
|
||||
Squad1 = { FirstSquad1, FirstSquad2, FirstSquad3 }
|
||||
Squad2 = { SecondSquad1, SecondSquad2, SecondSquad3 }
|
||||
PatrolMammothPath = { Patrol1.Location, Patrol2.Location, Patrol3.Location, Patrol4.Location, Patrol5.Location, Patrol6.Location, Patrol7.Location }
|
||||
ConvoyEscape = { CPos.New(113, 42), CPos.New(117, 71) }
|
||||
|
||||
IdleHunt = function(actor) if not actor.IsDead then Trigger.OnIdle(actor, actor.Hunt) end end
|
||||
|
||||
ConvoyUnits =
|
||||
{
|
||||
easy = { { "e2", "e2", "e2", "truk", "truk", "truk" }, { "3tnk", "3tnk", "truk", "truk", "truk" } },
|
||||
normal = { { "3tnk", "3tnk", "3tnk", "truk", "truk", "truk" }, { "3tnk", "v2rl", "e2", "e1", "e1", "truk", "truk", "truk" } },
|
||||
hard = { { "3tnk", "3tnk", "3tnk", "3tnk", "truk", "truk", "truk" }, { "3tnk", "v2rl", "v2rl", "e1", "e1", "e4", "e4", "truk", "truk", "truk", "4tnk" }, { "ttnk", "ttnk", "ttnk", "shok", "shok", "shok", "shok", "truk", "truk", "truk" } }
|
||||
}
|
||||
|
||||
BaseConvoyUnits = { "3tnk", "ttnk", "ttnk", "ttnk", "truk", "truk", "truk" }
|
||||
FinalConvoyUnits = { "3tnk", "3tnk", "3tnk", "3tnk", "truk", "truk", "truk", "4tnk" }
|
||||
|
||||
AttackPaths =
|
||||
{
|
||||
{ ExitNorth.Location },
|
||||
{ ExitEast.Location },
|
||||
{ AttackEntry1.Location },
|
||||
{ AttackEntry2.Location }
|
||||
}
|
||||
|
||||
AttackWaveUnits = { { "3tnk", "3tnk" }, { "e1", "e1", "e1", "e2", "e2", "e4", "e4" }, { "shok", "shok", "shok", "shok", "shok" }, { "ttnk", "ttnk" }, { "4tnk", "e1", "e1", "e2" }, { "v2rl", "v2rl", "ftrk", "ftrk", "ftrk" } }
|
||||
|
||||
ConvoyPaths =
|
||||
{
|
||||
{ NorthwestEntry.Location, NorthwestPath1.Location, NorthwestBridge.Location, Patrol7.Location, Patrol6.Location, NortheastBridge.Location, NorthwestPath3.Location, ExitNorth.Location },
|
||||
{ CenterEntry.Location, CenterPath1.Location, CenterPath2.Location, Patrol1.Location, Patrol7.Location, Patrol6.Location, NortheastBridge.Location, NorthwestPath3.Location, ExitNorth.Location },
|
||||
{ CenterEntry.Location, CenterPath1.Location, CenterPath2.Location, Patrol1.Location, Patrol2.Location, SouthPath2.Location, SoutheastBridge.Location, SouthPath3.Location, ExitEast.Location },
|
||||
{ SouthEntry.Location, SouthPath1.Location, Patrol2.Location, SouthPath2.Location, SoutheastBridge.Location, SouthPath3.Location, ExitEast.Location }
|
||||
}
|
||||
|
||||
BaseConvoyPath = { BaseEntry.Location, BasePath1.Location, CenterPath2.Location, Patrol1.Location, Patrol7.Location, Patrol6.Location, NortheastBridge.Location, NorthwestPath3.Location, ExitNorth.Location }
|
||||
FinalConvoyPath = { NorthEntry.Location, Patrol7.Location, Patrol6.Location, Patrol5.Location, FinalConvoy1.Location, ExitEast.Location }
|
||||
|
||||
OpeningMoves = function()
|
||||
Utils.Do(Squad1, function(actor)
|
||||
actor.AttackMove(AlliedBase.Location)
|
||||
end)
|
||||
|
||||
Utils.Do(Squad2, function(actor)
|
||||
actor.AttackMove(AlliedBase.Location)
|
||||
end)
|
||||
|
||||
PatrolMammoth.Patrol(PatrolMammothPath, true, 10)
|
||||
end
|
||||
|
||||
AttackWaveDelays =
|
||||
{
|
||||
easy = { DateTime.Seconds(40), DateTime.Seconds(80) },
|
||||
normal = { DateTime.Seconds(30), DateTime.Seconds(60) },
|
||||
hard = { DateTime.Seconds(20), DateTime.Seconds(40) }
|
||||
}
|
||||
|
||||
AttackWaves = function()
|
||||
local attackpath = Utils.Random(AttackPaths)
|
||||
local attackers = Reinforcements.Reinforce(USSR, Utils.Random(AttackWaveUnits), { attackpath[1] })
|
||||
Utils.Do(attackers, function(unit)
|
||||
Trigger.OnAddedToWorld(unit, function()
|
||||
unit.AttackMove(AlliedBase.Location)
|
||||
IdleHunt(unit)
|
||||
end)
|
||||
end)
|
||||
|
||||
Trigger.AfterDelay(Utils.RandomInteger(AttackWaveDelay[1], AttackWaveDelay[2]), AttackWaves)
|
||||
end
|
||||
|
||||
ConvoyWaves =
|
||||
{
|
||||
easy = 2,
|
||||
normal = 3,
|
||||
hard = 4
|
||||
}
|
||||
ConvoysPassed = 0
|
||||
|
||||
SendConvoys = function()
|
||||
ConvoysSent = true
|
||||
Media.PlaySpeechNotification(Allies, "ConvoyApproaching")
|
||||
local path = Utils.Random(ConvoyPaths)
|
||||
local units = Reinforcements.Reinforce(USSR, Utils.Random(ConvoyUnits), { path[1] })
|
||||
local lastWaypoint = path[#path]
|
||||
Utils.Do(units, function(unit)
|
||||
Trigger.OnAddedToWorld(unit, function()
|
||||
if unit.Type == "truk" then
|
||||
Utils.Do(path, function(waypoint)
|
||||
unit.Move(waypoint)
|
||||
end)
|
||||
|
||||
Trigger.OnIdle(unit, function()
|
||||
unit.Move(lastWaypoint)
|
||||
end)
|
||||
else
|
||||
unit.Patrol(path)
|
||||
Trigger.OnIdle(unit, function()
|
||||
unit.AttackMove(lastWaypoint)
|
||||
end)
|
||||
end
|
||||
end)
|
||||
end)
|
||||
|
||||
ConvoysPassed = ConvoysPassed + 1
|
||||
if ConvoysPassed <= ConvoyWaves[Map.LobbyOption("difficulty")] then
|
||||
Trigger.AfterDelay(DateTime.Seconds(90), SendConvoys)
|
||||
else
|
||||
FinalTrucks()
|
||||
end
|
||||
end
|
||||
|
||||
FinalTrucks = function()
|
||||
Trigger.AfterDelay(DateTime.Minutes(1), function()
|
||||
Media.PlaySpeechNotification(Allies, "ConvoyApproaching")
|
||||
local basePath = BaseConvoyPath
|
||||
local baseWaypoint = basePath[#basePath]
|
||||
local baseConvoy = Reinforcements.Reinforce(USSR, BaseConvoyUnits, { basePath[1] })
|
||||
Utils.Do(baseConvoy, function(unit)
|
||||
Trigger.OnAddedToWorld(unit, function()
|
||||
Utils.Do(basePath, function(waypoint)
|
||||
unit.Move(waypoint)
|
||||
end)
|
||||
|
||||
Trigger.OnIdle(unit, function()
|
||||
unit.Move(baseWaypoint)
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
|
||||
Trigger.AfterDelay(DateTime.Minutes(2), function()
|
||||
Media.PlaySpeechNotification(Allies, "ConvoyApproaching")
|
||||
local finalPath = FinalConvoyPath
|
||||
local finalWaypoint = finalPath[#finalPath]
|
||||
local finalConvoy = Reinforcements.Reinforce(USSR, FinalConvoyUnits, { finalPath[1] })
|
||||
Utils.Do(finalConvoy, function(unit)
|
||||
Trigger.OnAddedToWorld(unit, function()
|
||||
Utils.Do(finalPath, function(waypoint)
|
||||
unit.Move(waypoint)
|
||||
end)
|
||||
|
||||
Trigger.OnIdle(unit, function()
|
||||
unit.Move(finalWaypoint)
|
||||
end)
|
||||
end)
|
||||
end)
|
||||
|
||||
Trigger.OnAllKilled(Utils.Where(finalConvoy, function(a) return a.Type == "truk" end), function()
|
||||
Allies.MarkCompletedObjective(StopTrucks)
|
||||
end)
|
||||
end)
|
||||
end
|
||||
|
||||
ConvoyExit = function()
|
||||
Trigger.OnEnteredFootprint(ConvoyEscape, function(actor, id)
|
||||
if actor.Owner == USSR and actor.Type == "truk" then
|
||||
actor.Stop()
|
||||
actor.Destroy()
|
||||
Allies.MarkFailedObjective(StopTrucks)
|
||||
elseif actor.Owner == USSR and actor.Type ~= "truk" then
|
||||
actor.Stop()
|
||||
actor.Destroy()
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
BridgeTriggers = function()
|
||||
Trigger.OnKilled(BridgeBarrel1, function()
|
||||
local theNorthEastBridge = Utils.Where(Map.ActorsInWorld, function(actor) return actor.Type == "bridge2" end)[1]
|
||||
if not theNorthEastBridge.IsDead then
|
||||
theNorthEastBridge.Kill()
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnKilled(BridgeBarrel2, function()
|
||||
local theNorthwestBridge = Map.ActorsInBox(NorthwestPath1.CenterPosition, NorthEntry.CenterPosition, function(self) return self.Type == "bridge1" end)[1]
|
||||
if not theNorthwestBridge.IsDead then
|
||||
theNorthwestBridge.Kill()
|
||||
end
|
||||
end)
|
||||
|
||||
Trigger.OnKilled(BridgeBarrel3, function()
|
||||
local theSoutheastBridge = Map.ActorsInBox(SoutheastBridge.CenterPosition, SouthPath3.CenterPosition, function(self) return self.Type == "bridge1" end)[1]
|
||||
if not theSoutheastBridge.IsDead then
|
||||
theSoutheastBridge.Kill()
|
||||
end
|
||||
end)
|
||||
|
||||
AllThreeBridges = Utils.Where(Map.ActorsInWorld, function(actor)
|
||||
return
|
||||
actor.Type == "bridge1" or
|
||||
actor.Type == "bridge2"
|
||||
end)
|
||||
|
||||
Trigger.OnAllKilled(AllThreeBridges, function()
|
||||
Allies.MarkCompletedObjective(DestroyBridges)
|
||||
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 first trucks are entering your AO.", c) end)
|
||||
end
|
||||
Trigger.AfterDelay(DateTime.Seconds(6), function() UserInterface.SetMissionText("") end)
|
||||
end
|
||||
|
||||
ticked = TimerTicks
|
||||
ConvoysSent = false
|
||||
Tick = function()
|
||||
if ticked > 0 then
|
||||
UserInterface.SetMissionText("First trucks arrive in " .. Utils.FormatTime(ticked), TimerColor)
|
||||
ticked = ticked - 1
|
||||
elseif ticked == 0 and not ConvoysSent then
|
||||
SendConvoys()
|
||||
FinishTimer()
|
||||
end
|
||||
|
||||
if Allies.HasNoRequiredUnits() then
|
||||
USSR.MarkCompletedObjective(SovietObj)
|
||||
end
|
||||
end
|
||||
|
||||
WorldLoaded = function()
|
||||
Allies = Player.GetPlayer("Allies")
|
||||
USSR = Player.GetPlayer("USSR")
|
||||
|
||||
SovietObj = USSR.AddObjective("Defeat the Allies.")
|
||||
StopTrucks = Allies.AddObjective("Destroy all Soviet convoy trucks.")
|
||||
DestroyBridges = Allies.AddObjective("Destroy the nearby bridges to slow the\nconvoys down.", "Secondary", false)
|
||||
|
||||
Trigger.OnObjectiveAdded(Allies, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "New " .. string.lower(p.GetObjectiveType(id)) .. " objective")
|
||||
end)
|
||||
|
||||
Trigger.OnObjectiveCompleted(Allies, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective completed")
|
||||
end)
|
||||
Trigger.OnObjectiveFailed(Allies, function(p, id)
|
||||
Media.DisplayMessage(p.GetObjectiveDescription(id), "Objective failed")
|
||||
end)
|
||||
Trigger.OnPlayerLost(Allies, function()
|
||||
Media.PlaySpeechNotification(Allies, "Lose")
|
||||
end)
|
||||
Trigger.OnPlayerWon(Allies, function()
|
||||
Media.PlaySpeechNotification(Allies, "Win")
|
||||
end)
|
||||
|
||||
Trigger.AfterDelay(DateTime.Minutes(3), function()
|
||||
Media.PlaySpeechNotification(Allies, "WarningFiveMinutesRemaining")
|
||||
end)
|
||||
Trigger.AfterDelay(DateTime.Minutes(5), function()
|
||||
Media.PlaySpeechNotification(Allies, "WarningThreeMinutesRemaining")
|
||||
end)
|
||||
Trigger.AfterDelay(DateTime.Minutes(7), function()
|
||||
Media.PlaySpeechNotification(Allies, "WarningOneMinuteRemaining")
|
||||
end)
|
||||
|
||||
Camera.Position = AlliedBase.CenterPosition
|
||||
TimerColor = Allies.Color
|
||||
OpeningMoves()
|
||||
Trigger.AfterDelay(DateTime.Seconds(30), AttackWaves)
|
||||
ConvoyExit()
|
||||
BridgeTriggers()
|
||||
|
||||
local difficulty = Map.LobbyOption("difficulty")
|
||||
ConvoyUnits = ConvoyUnits[difficulty]
|
||||
AttackWaveDelay = AttackWaveDelays[difficulty]
|
||||
end
|
||||
BIN
mods/ra/maps/siberian-conflict-1-fresh-tracks/map.bin
Normal file
BIN
mods/ra/maps/siberian-conflict-1-fresh-tracks/map.bin
Normal file
Binary file not shown.
BIN
mods/ra/maps/siberian-conflict-1-fresh-tracks/map.png
Normal file
BIN
mods/ra/maps/siberian-conflict-1-fresh-tracks/map.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 17 KiB |
672
mods/ra/maps/siberian-conflict-1-fresh-tracks/map.yaml
Normal file
672
mods/ra/maps/siberian-conflict-1-fresh-tracks/map.yaml
Normal file
@@ -0,0 +1,672 @@
|
||||
MapFormat: 11
|
||||
|
||||
RequiresMod: ra
|
||||
|
||||
Title: Siberian Conflict 1: Fresh Tracks
|
||||
|
||||
Author: Westwood Studios
|
||||
|
||||
Tileset: SNOW
|
||||
|
||||
MapSize: 128,128
|
||||
|
||||
Bounds: 28,42,90,46
|
||||
|
||||
Visibility: MissionSelector
|
||||
|
||||
Categories: Mission
|
||||
|
||||
LockPreview: True
|
||||
|
||||
Players:
|
||||
PlayerReference@Neutral:
|
||||
Name: Neutral
|
||||
OwnsWorld: True
|
||||
NonCombatant: True
|
||||
Faction: allies
|
||||
PlayerReference@Creeps:
|
||||
Name: Creeps
|
||||
NonCombatant: True
|
||||
Faction: england
|
||||
PlayerReference@Allies:
|
||||
Name: Allies
|
||||
AllowBots: False
|
||||
Playable: True
|
||||
Required: True
|
||||
LockFaction: True
|
||||
Faction: allies
|
||||
LockColor: True
|
||||
Color: ABB7E4
|
||||
LockSpawn: True
|
||||
LockTeam: True
|
||||
Allies: England
|
||||
Enemies: USSR
|
||||
PlayerReference@England:
|
||||
Name: England
|
||||
Faction: allies
|
||||
Color: A0F08C
|
||||
Allies: Allies
|
||||
Enemies: USSR
|
||||
PlayerReference@USSR:
|
||||
Name: USSR
|
||||
Faction: soviet
|
||||
Color: FF1400
|
||||
Enemies: Allies, England
|
||||
|
||||
Actors:
|
||||
Actor0: brik
|
||||
Location: 39,72
|
||||
Owner: Allies
|
||||
Actor1: brik
|
||||
Location: 40,72
|
||||
Owner: Allies
|
||||
Actor2: brik
|
||||
Location: 41,72
|
||||
Owner: Allies
|
||||
Actor3: brik
|
||||
Location: 42,72
|
||||
Owner: Allies
|
||||
Actor4: brik
|
||||
Location: 43,72
|
||||
Owner: Allies
|
||||
Actor5: brik
|
||||
Location: 44,72
|
||||
Owner: Allies
|
||||
Actor6: brik
|
||||
Location: 45,72
|
||||
Owner: Allies
|
||||
Actor7: brik
|
||||
Location: 46,72
|
||||
Owner: Allies
|
||||
Actor8: brik
|
||||
Location: 47,72
|
||||
Owner: Allies
|
||||
Actor9: brik
|
||||
Location: 48,72
|
||||
Owner: Allies
|
||||
Actor10: brik
|
||||
Location: 39,73
|
||||
Owner: Allies
|
||||
Actor11: brik
|
||||
Location: 40,73
|
||||
Owner: Allies
|
||||
Actor12: brik
|
||||
Location: 47,73
|
||||
Owner: Allies
|
||||
Actor13: brik
|
||||
Location: 48,73
|
||||
Owner: Allies
|
||||
Actor14: brik
|
||||
Location: 48,74
|
||||
Owner: Allies
|
||||
Actor15: brik
|
||||
Location: 47,75
|
||||
Owner: Allies
|
||||
Actor16: brik
|
||||
Location: 48,75
|
||||
Owner: Allies
|
||||
Actor17: brik
|
||||
Location: 47,76
|
||||
Owner: Allies
|
||||
Actor18: brik
|
||||
Location: 48,76
|
||||
Owner: Allies
|
||||
Actor19: brik
|
||||
Location: 47,82
|
||||
Owner: Allies
|
||||
Actor20: brik
|
||||
Location: 48,82
|
||||
Owner: Allies
|
||||
Actor21: brik
|
||||
Location: 47,83
|
||||
Owner: Allies
|
||||
Actor22: brik
|
||||
Location: 48,83
|
||||
Owner: Allies
|
||||
Actor23: brik
|
||||
Location: 47,84
|
||||
Owner: Allies
|
||||
Actor24: brik
|
||||
Location: 48,84
|
||||
Owner: Allies
|
||||
Actor25: brik
|
||||
Location: 47,85
|
||||
Owner: Allies
|
||||
Actor26: brik
|
||||
Location: 48,85
|
||||
Owner: Allies
|
||||
Actor27: tc05
|
||||
Location: 42,85
|
||||
Owner: Neutral
|
||||
Actor28: tc04
|
||||
Location: 28,68
|
||||
Owner: Neutral
|
||||
Actor29: t16
|
||||
Location: 28,60
|
||||
Owner: Neutral
|
||||
Actor30: t15
|
||||
Location: 30,71
|
||||
Owner: Neutral
|
||||
Actor31: tc03
|
||||
Location: 32,86
|
||||
Owner: Neutral
|
||||
Actor32: tc01
|
||||
Location: 28,86
|
||||
Owner: Neutral
|
||||
Actor33: t01
|
||||
Location: 28,80
|
||||
Owner: Neutral
|
||||
Actor34: tc05
|
||||
Location: 30,49
|
||||
Owner: Neutral
|
||||
Actor35: tc03
|
||||
Location: 28,51
|
||||
Owner: Neutral
|
||||
Actor36: tc03
|
||||
Location: 105,85
|
||||
Owner: Neutral
|
||||
Actor37: tc04
|
||||
Location: 81,83
|
||||
Owner: Neutral
|
||||
Actor38: tc05
|
||||
Location: 73,43
|
||||
Owner: Neutral
|
||||
Actor39: tc04
|
||||
Location: 64,42
|
||||
Owner: Neutral
|
||||
Actor40: tc05
|
||||
Location: 84,85
|
||||
Owner: Neutral
|
||||
Actor41: t15
|
||||
Location: 104,41
|
||||
Owner: Neutral
|
||||
Actor42: tc03
|
||||
Location: 74,86
|
||||
Owner: Neutral
|
||||
Actor43: tc05
|
||||
Location: 56,54
|
||||
Owner: Neutral
|
||||
Actor44: tc04
|
||||
Location: 70,58
|
||||
Owner: Neutral
|
||||
Actor45: tc02
|
||||
Location: 71,47
|
||||
Owner: Neutral
|
||||
Actor46: tc04
|
||||
Location: 50,43
|
||||
Owner: Neutral
|
||||
Actor47: tc04
|
||||
Location: 44,54
|
||||
Owner: Neutral
|
||||
Actor48: tc04
|
||||
Location: 88,54
|
||||
Owner: Neutral
|
||||
Actor49: tc03
|
||||
Location: 83,54
|
||||
Owner: Neutral
|
||||
Actor50: tc03
|
||||
Location: 112,51
|
||||
Owner: Neutral
|
||||
Actor51: tc01
|
||||
Location: 115,53
|
||||
Owner: Neutral
|
||||
Actor52: tc05
|
||||
Location: 88,72
|
||||
Owner: Neutral
|
||||
Actor53: tc04
|
||||
Location: 82,72
|
||||
Owner: Neutral
|
||||
Actor54: tc02
|
||||
Location: 86,74
|
||||
Owner: Neutral
|
||||
Actor55: tc02
|
||||
Location: 101,71
|
||||
Owner: Neutral
|
||||
Actor56: tc03
|
||||
Location: 102,73
|
||||
Owner: Neutral
|
||||
Actor57: tc05
|
||||
Location: 96,79
|
||||
Owner: Neutral
|
||||
Actor58: tc03
|
||||
Location: 51,56
|
||||
Owner: Neutral
|
||||
Actor59: tc02
|
||||
Location: 52,57
|
||||
Owner: Neutral
|
||||
Actor60: t14
|
||||
Location: 97,61
|
||||
Owner: Neutral
|
||||
Actor61: tc01
|
||||
Location: 28,77
|
||||
Owner: Neutral
|
||||
Actor62: tc03
|
||||
Location: 28,42
|
||||
Owner: Neutral
|
||||
Actor63: tc04
|
||||
Location: 31,45
|
||||
Owner: Neutral
|
||||
Actor64: tc04
|
||||
Location: 31,60
|
||||
Owner: Neutral
|
||||
Actor65: t01
|
||||
Location: 89,42
|
||||
Owner: Neutral
|
||||
Actor66: tc05
|
||||
Location: 99,42
|
||||
Owner: Neutral
|
||||
Actor67: t15
|
||||
Location: 109,78
|
||||
Owner: Neutral
|
||||
Actor68: tc05
|
||||
Location: 112,79
|
||||
Owner: Neutral
|
||||
Actor69: tc03
|
||||
Location: 113,82
|
||||
Owner: Neutral
|
||||
Actor70: tc01
|
||||
Location: 52,66
|
||||
Owner: Neutral
|
||||
Actor71: t14
|
||||
Location: 53,69
|
||||
Owner: Neutral
|
||||
Actor72: t02
|
||||
Location: 92,46
|
||||
Owner: Neutral
|
||||
Actor73: tc02
|
||||
Location: 77,84
|
||||
Owner: Neutral
|
||||
Actor74: t06
|
||||
Location: 74,60
|
||||
Owner: Neutral
|
||||
Actor75: tc04
|
||||
Location: 107,81
|
||||
Owner: Neutral
|
||||
Actor76: t16
|
||||
Location: 110,83
|
||||
Owner: Neutral
|
||||
Actor77: t07
|
||||
Location: 88,50
|
||||
Owner: Neutral
|
||||
Actor78: t01
|
||||
Location: 77,80
|
||||
Owner: Neutral
|
||||
Actor79: tc05
|
||||
Location: 115,56
|
||||
Owner: Neutral
|
||||
Actor80: tc02
|
||||
Location: 113,75
|
||||
Owner: Neutral
|
||||
Actor81: tc02
|
||||
Location: 107,54
|
||||
Owner: Neutral
|
||||
Actor82: t16
|
||||
Location: 117,43
|
||||
Owner: Neutral
|
||||
Actor83: t14
|
||||
Location: 108,51
|
||||
Owner: Neutral
|
||||
Actor84: t06
|
||||
Location: 115,63
|
||||
Owner: Neutral
|
||||
Actor85: t10
|
||||
Location: 45,41
|
||||
Owner: Neutral
|
||||
Actor86: tc01
|
||||
Location: 48,68
|
||||
Owner: Neutral
|
||||
Actor87: t17
|
||||
Location: 50,69
|
||||
Owner: Neutral
|
||||
Actor88: tc01
|
||||
Location: 70,65
|
||||
Owner: Neutral
|
||||
Actor183: proc
|
||||
Location: 44,73
|
||||
Owner: Allies
|
||||
Actor184: proc
|
||||
Location: 41,73
|
||||
Owner: Allies
|
||||
Actor90: tent
|
||||
Location: 39,74
|
||||
Owner: Allies
|
||||
Actor91: apwr
|
||||
Location: 32,81
|
||||
Owner: Allies
|
||||
Actor92: hbox
|
||||
Location: 38,72
|
||||
Owner: Allies
|
||||
Actor93: hbox
|
||||
Location: 48,77
|
||||
Owner: Allies
|
||||
Actor94: weap
|
||||
Location: 43,80
|
||||
Owner: Allies
|
||||
Actor95: pbox
|
||||
Location: 39,80
|
||||
Owner: Allies
|
||||
Actor96: gun
|
||||
Location: 48,81
|
||||
Owner: Allies
|
||||
Facing: 159
|
||||
Actor97: gun
|
||||
Location: 34,72
|
||||
Owner: Allies
|
||||
Facing: 223
|
||||
Actor100: fix
|
||||
Location: 39,82
|
||||
Owner: Allies
|
||||
Actor102: dome
|
||||
Location: 36,78
|
||||
Owner: Allies
|
||||
Actor103: apwr
|
||||
Location: 35,82
|
||||
Owner: Allies
|
||||
Actor104: gun
|
||||
Location: 41,79
|
||||
Owner: Allies
|
||||
Facing: 191
|
||||
BridgeBarrel3: brl3
|
||||
Location: 105,78
|
||||
Owner: USSR
|
||||
Actor106: barl
|
||||
Location: 104,77
|
||||
Owner: USSR
|
||||
Actor107: v19
|
||||
Location: 104,78
|
||||
Owner: Neutral
|
||||
Actor108: hpad
|
||||
Location: 33,77
|
||||
Owner: Allies
|
||||
BridgeBarrel2: brl3
|
||||
Location: 42,45
|
||||
Owner: USSR
|
||||
Actor110: v19
|
||||
Location: 41,45
|
||||
Owner: Neutral
|
||||
Actor111: barl
|
||||
Location: 41,44
|
||||
Owner: USSR
|
||||
Actor112: brl3
|
||||
Location: 89,51
|
||||
Owner: USSR
|
||||
Actor113: barl
|
||||
Location: 88,52
|
||||
Owner: USSR
|
||||
Actor114: barl
|
||||
Location: 90,50
|
||||
Owner: USSR
|
||||
BridgeBarrel1: brl3
|
||||
Location: 91,47
|
||||
Owner: USSR
|
||||
Actor116: barl
|
||||
Location: 91,46
|
||||
Owner: USSR
|
||||
Actor117: v19
|
||||
Location: 91,45
|
||||
Owner: Neutral
|
||||
Actor118: v19
|
||||
Location: 89,52
|
||||
Owner: Neutral
|
||||
Actor119: barl
|
||||
Location: 90,45
|
||||
Owner: USSR
|
||||
Actor121: jeep
|
||||
Location: 45,83
|
||||
Owner: Allies
|
||||
Facing: 159
|
||||
Actor122: jeep
|
||||
Location: 43,83
|
||||
Owner: Allies
|
||||
Facing: 95
|
||||
Actor123: 3tnk
|
||||
Location: 73,75
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
Actor124: 3tnk
|
||||
Location: 89,46
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
Actor125: 3tnk
|
||||
Location: 41,49
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
PatrolMammoth: 4tnk
|
||||
Location: 56,59
|
||||
Owner: USSR
|
||||
Facing: 159
|
||||
Actor127: 3tnk
|
||||
Location: 105,83
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
Actor128: 1tnk
|
||||
Location: 44,78
|
||||
Owner: Allies
|
||||
Facing: 191
|
||||
Actor129: e1
|
||||
Location: 38,73
|
||||
Owner: Allies
|
||||
Facing: 127
|
||||
SubCell: 1
|
||||
Actor130: e1
|
||||
Location: 47,77
|
||||
Owner: Allies
|
||||
Facing: 191
|
||||
SubCell: 0
|
||||
Actor131: e1
|
||||
Location: 39,76
|
||||
Owner: Allies
|
||||
Facing: 159
|
||||
SubCell: 4
|
||||
Actor132: e1
|
||||
Location: 104,83
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
SubCell: 1
|
||||
Actor133: e2
|
||||
Location: 106,83
|
||||
Owner: USSR
|
||||
SubCell: 2
|
||||
Actor134: e2
|
||||
Location: 105,77
|
||||
Owner: USSR
|
||||
Facing: 159
|
||||
SubCell: 2
|
||||
Actor135: e2
|
||||
Location: 106,78
|
||||
Owner: USSR
|
||||
Facing: 223
|
||||
SubCell: 1
|
||||
Actor136: e1
|
||||
Location: 109,78
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
SubCell: 2
|
||||
Actor137: e1
|
||||
Location: 110,78
|
||||
Owner: USSR
|
||||
Facing: 159
|
||||
SubCell: 2
|
||||
Actor138: e1
|
||||
Location: 84,49
|
||||
Owner: USSR
|
||||
Facing: 31
|
||||
SubCell: 2
|
||||
Actor139: e1
|
||||
Location: 83,51
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
SubCell: 2
|
||||
Actor140: e2
|
||||
Location: 85,50
|
||||
Owner: USSR
|
||||
Facing: 159
|
||||
SubCell: 1
|
||||
Actor141: e2
|
||||
Location: 84,51
|
||||
Owner: USSR
|
||||
Facing: 31
|
||||
SubCell: 2
|
||||
Actor142: e2
|
||||
Location: 91,51
|
||||
Owner: USSR
|
||||
Facing: 159
|
||||
SubCell: 1
|
||||
Actor143: e2
|
||||
Location: 91,52
|
||||
Owner: USSR
|
||||
Facing: 223
|
||||
SubCell: 3
|
||||
Actor144: e1
|
||||
Location: 90,52
|
||||
Owner: USSR
|
||||
Facing: 191
|
||||
SubCell: 1
|
||||
Actor145: e1
|
||||
Location: 93,49
|
||||
Owner: USSR
|
||||
Facing: 159
|
||||
SubCell: 0
|
||||
SecondSquad1: e1
|
||||
Location: 59,72
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
SubCell: 4
|
||||
SecondSquad3: e1
|
||||
Location: 60,73
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
SubCell: 1
|
||||
FirstSquad1: e2
|
||||
Location: 36,63
|
||||
Owner: USSR
|
||||
SubCell: 0
|
||||
SecondSquad2: e2
|
||||
Location: 60,72
|
||||
Owner: USSR
|
||||
Facing: 95
|
||||
SubCell: 4
|
||||
FirstSquad3: e1
|
||||
Location: 38,63
|
||||
Owner: USSR
|
||||
SubCell: 1
|
||||
FirstSquad2: e1
|
||||
Location: 37,64
|
||||
Owner: USSR
|
||||
SubCell: 1
|
||||
Actor152: e1
|
||||
Location: 40,77
|
||||
Owner: Allies
|
||||
SubCell: 1
|
||||
Actor153: e1
|
||||
Location: 47,80
|
||||
Owner: Allies
|
||||
Facing: 63
|
||||
SubCell: 2
|
||||
Actor154: e1
|
||||
Location: 34,73
|
||||
Owner: Allies
|
||||
Facing: 223
|
||||
SubCell: 0
|
||||
Actor201: mine
|
||||
Owner: Neutral
|
||||
Location: 70,84
|
||||
Actor202: mine
|
||||
Owner: Neutral
|
||||
Location: 68,66
|
||||
Actor194: heli
|
||||
Owner: Allies
|
||||
Location: 34,79
|
||||
Facing: 217
|
||||
AlliedBase: waypoint
|
||||
Location: 40,79
|
||||
Owner: Neutral
|
||||
Patrol1: waypoint
|
||||
Location: 58,61
|
||||
Owner: Neutral
|
||||
Patrol2: waypoint
|
||||
Location: 58,74
|
||||
Owner: Neutral
|
||||
Patrol3: waypoint
|
||||
Location: 71,76
|
||||
Owner: Neutral
|
||||
Patrol4: waypoint
|
||||
Location: 77,71
|
||||
Owner: Neutral
|
||||
Patrol5: waypoint
|
||||
Location: 79,60
|
||||
Owner: Neutral
|
||||
Patrol6: waypoint
|
||||
Location: 76,52
|
||||
Owner: Neutral
|
||||
Patrol7: waypoint
|
||||
Location: 65,52
|
||||
Owner: Neutral
|
||||
NorthwestEntry: waypoint
|
||||
Owner: Neutral
|
||||
Location: 32,42
|
||||
CenterEntry: waypoint
|
||||
Owner: Neutral
|
||||
Location: 28,57
|
||||
BaseEntry: waypoint
|
||||
Owner: Neutral
|
||||
Location: 28,76
|
||||
SouthEntry: waypoint
|
||||
Owner: Neutral
|
||||
Location: 53,87
|
||||
NorthEntry: waypoint
|
||||
Owner: Neutral
|
||||
Location: 58,42
|
||||
ExitEast: waypoint
|
||||
Owner: Neutral
|
||||
Location: 117,71
|
||||
ExitNorth: waypoint
|
||||
Owner: Neutral
|
||||
Location: 113,42
|
||||
NortheastBridge: waypoint
|
||||
Location: 87,46
|
||||
Owner: Neutral
|
||||
NorthwestBridge: waypoint
|
||||
Location: 41,48
|
||||
Owner: Neutral
|
||||
SoutheastBridge: waypoint
|
||||
Location: 103,82
|
||||
Owner: Neutral
|
||||
NorthwestPath1: waypoint
|
||||
Location: 38,49
|
||||
Owner: Neutral
|
||||
NorthwestPath2: waypoint
|
||||
Location: 81,48
|
||||
Owner: Neutral
|
||||
NorthwestPath3: waypoint
|
||||
Location: 99,50
|
||||
Owner: Neutral
|
||||
BasePath1: waypoint
|
||||
Location: 35,76
|
||||
Owner: Neutral
|
||||
CenterPath1: waypoint
|
||||
Location: 37,57
|
||||
Owner: Neutral
|
||||
CenterPath2: waypoint
|
||||
Location: 37,61
|
||||
Owner: Neutral
|
||||
SouthPath1: waypoint
|
||||
Location: 53,75
|
||||
Owner: Neutral
|
||||
SouthPath2: waypoint
|
||||
Location: 92,80
|
||||
Owner: Neutral
|
||||
SouthPath3: waypoint
|
||||
Location: 110,69
|
||||
Owner: Neutral
|
||||
FinalConvoy1: waypoint
|
||||
Location: 88,62
|
||||
Owner: Neutral
|
||||
AttackEntry1: waypoint
|
||||
Location: 81,42
|
||||
Owner: Neutral
|
||||
AttackEntry2: waypoint
|
||||
Location: 92,87
|
||||
Owner: Neutral
|
||||
|
||||
Rules: ra|rules/campaign-rules.yaml, ra|rules/campaign-tooltips.yaml, rules.yaml
|
||||
69
mods/ra/maps/siberian-conflict-1-fresh-tracks/rules.yaml
Normal file
69
mods/ra/maps/siberian-conflict-1-fresh-tracks/rules.yaml
Normal file
@@ -0,0 +1,69 @@
|
||||
World:
|
||||
LuaScript:
|
||||
Scripts: fresh-tracks.lua
|
||||
MissionData:
|
||||
WinVideo: sovbatl.vqa
|
||||
LossVideo: overrun.vqa
|
||||
Briefing: Soviet activity in Siberia is increasing. A large shipment of atomic material is on its way through this area, and we need it stopped. Destroy all of the Soviet convoy trucks and prevent the Soviets from furthering their atomic testing.\n\nBe careful of the convoy truck cargo -- atomic material is highly unstable.\n\nThe mission is complete when all the convoy trucks from each convoy have been destroyed.
|
||||
ScriptLobbyDropdown@difficulty:
|
||||
ID: difficulty
|
||||
Label: Difficulty
|
||||
Values:
|
||||
easy: Easy
|
||||
normal: Normal
|
||||
hard: Hard
|
||||
Default: normal
|
||||
|
||||
Player:
|
||||
PlayerResources:
|
||||
DefaultCash: 2100
|
||||
|
||||
MONEYCRATE:
|
||||
Crate:
|
||||
Lifetime: 0
|
||||
ExplodeCrateAction:
|
||||
Weapon: MiniNuke
|
||||
Tooltip:
|
||||
Name: Atomic Material
|
||||
RenderSprites:
|
||||
Image: wcrate
|
||||
|
||||
SPY:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
MECH:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
E7:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
TRAN:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
HELI:
|
||||
Buildable:
|
||||
Prerequisites: ~hpad
|
||||
|
||||
MRJ:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
MCV:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
2TNK:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
ARTY:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
MH60:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
@@ -27,6 +27,7 @@ Counterstrike:
|
||||
sarin-gas-1-crackdown
|
||||
sarin-gas-2-down-under
|
||||
fall-of-greece-1-personal-war
|
||||
siberian-conflict-1-fresh-tracks
|
||||
soviet-soldier-volkov-n-chitzkoi
|
||||
top-o-the-world
|
||||
Aftermath:
|
||||
|
||||
Reference in New Issue
Block a user