Initial commit: OpenRA game engine
Fork from OpenRA/OpenRA with one-click launch script (start-ra.cmd) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
285
mods/ra/maps/allies-02/allies02.lua
Normal file
285
mods/ra/maps/allies-02/allies02.lua
Normal file
@@ -0,0 +1,285 @@
|
||||
--[[
|
||||
Copyright (c) The OpenRA Developers and Contributors
|
||||
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.
|
||||
]]
|
||||
ConstructionVehicleReinforcements = { "mcv" }
|
||||
ConstructionVehiclePath = { ReinforcementsEntryPoint.Location, DeployPoint.Location }
|
||||
|
||||
JeepReinforcements = { "e1", "e1", "e1", "jeep" }
|
||||
JeepPath = { ReinforcementsEntryPoint.Location, ReinforcementsRallyPoint.Location }
|
||||
|
||||
TruckReinforcements = { "truk", "truk", "truk" }
|
||||
TruckPath = { TruckEntryPoint.Location, TruckRallyPoint.Location }
|
||||
|
||||
PathGuards = { PathGuard1, PathGuard2, PathGuard3, PathGuard4, PathGuard5, PathGuard6, PathGuard7, PathGuard8, PathGuard9, PathGuard10, PathGuard11, PathGuard12, PathGuard13, PathGuard14, PathGuard15 }
|
||||
|
||||
SovietBase = { SovietConyard, SovietRefinery, SovietPower1, SovietPower2, SovietSilo, SovietKennel, SovietBarracks, SovietWarfactory }
|
||||
|
||||
IdlingUnits = { }
|
||||
|
||||
if Difficulty == "easy" then
|
||||
DateTime.TimeLimit = DateTime.Minutes(10) + DateTime.Seconds(3)
|
||||
|
||||
elseif Difficulty == "normal" then
|
||||
DateTime.TimeLimit = DateTime.Minutes(5) + DateTime.Seconds(3)
|
||||
InfantryTypes = { "e1", "e1", "e1", "e2", "e2", "e1" }
|
||||
InfantryDelay = DateTime.Seconds(18)
|
||||
AttackGroupSize = 5
|
||||
|
||||
elseif Difficulty == "hard" then
|
||||
DateTime.TimeLimit = DateTime.Minutes(3) + DateTime.Seconds(3)
|
||||
InfantryTypes = { "e1", "e1", "e1", "e2", "e2", "e1" }
|
||||
InfantryDelay = DateTime.Seconds(10)
|
||||
VehicleTypes = { "ftrk" }
|
||||
VehicleDelay = DateTime.Seconds(30)
|
||||
AttackGroupSize = 7
|
||||
|
||||
else
|
||||
DateTime.TimeLimit = DateTime.Minutes(1) + DateTime.Seconds(3)
|
||||
ConstructionVehicleReinforcements = { "jeep" }
|
||||
|
||||
InfantryTypes = { "e1", "e1", "e1", "e2", "e2", "dog", "dog" }
|
||||
InfantryDelay = DateTime.Seconds(10)
|
||||
VehicleTypes = { "ftrk" }
|
||||
VehicleDelay = DateTime.Minutes(1) + DateTime.Seconds(10)
|
||||
AttackGroupSize = 5
|
||||
end
|
||||
|
||||
SendJeepReinforcements = function()
|
||||
Media.PlaySpeechNotification(Greece, "ReinforcementsArrived")
|
||||
Reinforcements.Reinforce(Greece, JeepReinforcements, JeepPath, DateTime.Seconds(1))
|
||||
end
|
||||
|
||||
RunInitialActivities = function()
|
||||
Harvester.FindResources()
|
||||
Trigger.OnKilled(Harvester, function() HarvesterKilled = true end)
|
||||
|
||||
ScheduleEarlyAttackers()
|
||||
|
||||
Trigger.OnAllKilled(PathGuards, function()
|
||||
Greece.MarkCompletedObjective(SecureObjective)
|
||||
SendTrucks()
|
||||
end)
|
||||
|
||||
Trigger.OnAllKilled(SovietBase, function()
|
||||
local livePathGuards = Utils.Where(PathGuards, function(pg) return not pg.IsDead end)
|
||||
|
||||
Utils.Do(USSR.GetGroundAttackers(), function(unit)
|
||||
if Utils.Any(livePathGuards, function(pg) return pg == unit end) then
|
||||
return
|
||||
end
|
||||
|
||||
Trigger.OnIdle(unit, unit.Hunt)
|
||||
end)
|
||||
end)
|
||||
|
||||
if InfantryTypes then
|
||||
Trigger.AfterDelay(InfantryDelay, ProduceInfantry)
|
||||
end
|
||||
|
||||
if VehicleTypes then
|
||||
Trigger.AfterDelay(VehicleDelay, ProduceVehicles)
|
||||
end
|
||||
end
|
||||
|
||||
ProduceInfantry = function()
|
||||
if SovietBarracks.IsDead then
|
||||
return
|
||||
end
|
||||
|
||||
local toBuild = { Utils.Random(InfantryTypes) }
|
||||
|
||||
if SovietKennel.IsDead and toBuild == "dog" then
|
||||
toBuild = { "e1" }
|
||||
end
|
||||
|
||||
USSR.Build(toBuild, function(unit)
|
||||
IdlingUnits[#IdlingUnits + 1] = unit[1]
|
||||
Trigger.AfterDelay(InfantryDelay, ProduceInfantry)
|
||||
|
||||
if #IdlingUnits >= (AttackGroupSize * 1.5) then
|
||||
SendAttack()
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
ProduceVehicles = function()
|
||||
if SovietWarfactory.IsDead then
|
||||
return
|
||||
end
|
||||
|
||||
if HarvesterKilled then
|
||||
USSR.Build({ "harv" }, function(harv)
|
||||
harv[1].FindResources()
|
||||
Trigger.OnKilled(harv[1], function() HarvesterKilled = true end)
|
||||
|
||||
HarvesterKilled = false
|
||||
ProduceVehicles()
|
||||
end)
|
||||
return
|
||||
end
|
||||
|
||||
local toBuild = { Utils.Random(VehicleTypes) }
|
||||
USSR.Build(toBuild, function(unit)
|
||||
IdlingUnits[#IdlingUnits + 1] = unit[1]
|
||||
Trigger.AfterDelay(VehicleDelay, ProduceVehicles)
|
||||
|
||||
if #IdlingUnits >= (AttackGroupSize * 1.5) then
|
||||
SendAttack()
|
||||
end
|
||||
end)
|
||||
end
|
||||
|
||||
SendAttack = function()
|
||||
local units = { }
|
||||
|
||||
for i = 0, AttackGroupSize, 1 do
|
||||
local number = Utils.RandomInteger(1, #IdlingUnits)
|
||||
|
||||
if IdlingUnits[number] and not IdlingUnits[number].IsDead then
|
||||
units[i] = IdlingUnits[number]
|
||||
table.remove(IdlingUnits, number)
|
||||
end
|
||||
end
|
||||
|
||||
Utils.Do(units, function(unit)
|
||||
if Difficulty ~= "tough" then
|
||||
unit.AttackMove(DeployPoint.Location)
|
||||
end
|
||||
Trigger.OnIdle(unit, unit.Hunt)
|
||||
end)
|
||||
end
|
||||
|
||||
Tick = function()
|
||||
USSR.Resources = USSR.Resources - (0.01 * USSR.ResourceCapacity / 25)
|
||||
|
||||
if USSR.HasNoRequiredUnits() then
|
||||
Greece.MarkCompletedObjective(ConquestObjective)
|
||||
end
|
||||
|
||||
if Greece.HasNoRequiredUnits() then
|
||||
USSR.MarkCompletedObjective(USSRobjective)
|
||||
end
|
||||
end
|
||||
|
||||
FinishTimer = function()
|
||||
DateTime.TimeLimit = 0
|
||||
for i = 0, 5, 1 do
|
||||
local c = TimerColor
|
||||
if i % 2 == 0 then
|
||||
c = HSLColor.White
|
||||
end
|
||||
|
||||
Trigger.AfterDelay(DateTime.Seconds(i), function()
|
||||
UserInterface.SetMissionText(UserInterface.GetFluentMessage("convoy-arrived"), c)
|
||||
end)
|
||||
end
|
||||
Trigger.AfterDelay(DateTime.Seconds(6), function() UserInterface.SetMissionText("") end)
|
||||
end
|
||||
|
||||
ConvoyOnSite = false
|
||||
SendTrucks = function()
|
||||
if not ConvoyOnSite then
|
||||
ConvoyOnSite = true
|
||||
|
||||
DateTime.TimeLimit = 0
|
||||
UserInterface.SetMissionText("")
|
||||
ConvoyObjective = AddPrimaryObjective(Greece, "escort-convoy")
|
||||
|
||||
Media.PlaySpeechNotification(Greece, "ConvoyApproaching")
|
||||
Trigger.AfterDelay(DateTime.Seconds(3), function()
|
||||
ConvoyUnharmed = true
|
||||
local trucks = Reinforcements.Reinforce(England, TruckReinforcements, TruckPath, DateTime.Seconds(1),
|
||||
function(truck)
|
||||
Trigger.OnIdle(truck, function() truck.Move(TruckExitPoint.Location) end)
|
||||
end)
|
||||
local count = 0
|
||||
Trigger.OnEnteredFootprint( { TruckExitPoint.Location }, function(a, id)
|
||||
if a.Owner == England then
|
||||
count = count + 1
|
||||
a.Destroy()
|
||||
if count == 3 then
|
||||
Greece.MarkCompletedObjective(ConvoyObjective)
|
||||
Trigger.RemoveFootprintTrigger(id)
|
||||
end
|
||||
end
|
||||
end)
|
||||
Trigger.OnAnyKilled(trucks, ConvoyCasualties)
|
||||
end)
|
||||
end
|
||||
end
|
||||
|
||||
ConvoyCasualties = function()
|
||||
Media.PlaySpeechNotification(Greece, "ConvoyUnitLost")
|
||||
if ConvoyUnharmed then
|
||||
ConvoyUnharmed = false
|
||||
Trigger.AfterDelay(DateTime.Seconds(1), function() Greece.MarkFailedObjective(ConvoyObjective) end)
|
||||
end
|
||||
end
|
||||
|
||||
ScheduleEarlyAttackers = function()
|
||||
if Difficulty == "tough" then
|
||||
Trigger.AfterDelay(DateTime.Seconds(12), SendEarlyAttackers)
|
||||
return
|
||||
end
|
||||
|
||||
Trigger.AfterDelay(DateTime.Seconds(6), function()
|
||||
if not Greece.HasPrerequisites({ "anypower" }) then
|
||||
ScheduleEarlyAttackers()
|
||||
return
|
||||
end
|
||||
|
||||
SendEarlyAttackers()
|
||||
end)
|
||||
end
|
||||
|
||||
SendEarlyAttackers = function()
|
||||
local team = { EarlyAttacker1, EarlyAttacker2, EarlyAttacker3, EarlyAttacker4 }
|
||||
local dogTargets = Greece.GetActorsByType("e1")
|
||||
|
||||
Utils.Do(team, function(member)
|
||||
if member.IsDead then
|
||||
return
|
||||
end
|
||||
|
||||
-- Get attack dogs sprinting.
|
||||
if member.Type == "dog" and #dogTargets > 0 then
|
||||
member.Attack(Utils.Random(dogTargets))
|
||||
end
|
||||
|
||||
Trigger.OnIdle(member, member.Hunt)
|
||||
end)
|
||||
end
|
||||
|
||||
WorldLoaded = function()
|
||||
Greece = Player.GetPlayer("Greece")
|
||||
England = Player.GetPlayer("England")
|
||||
USSR = Player.GetPlayer("USSR")
|
||||
|
||||
InitObjectives(Greece)
|
||||
|
||||
USSRobjective = AddPrimaryObjective(USSR, "")
|
||||
|
||||
SecureObjective = AddPrimaryObjective(Greece, "secure-convoy")
|
||||
ConquestObjective = AddPrimaryObjective(Greece, "eliminate-soviets")
|
||||
|
||||
Trigger.AfterDelay(DateTime.Seconds(1), function() Media.PlaySpeechNotification(Allies, "MissionTimerInitialised") end)
|
||||
|
||||
RunInitialActivities()
|
||||
|
||||
Reinforcements.Reinforce(Greece, ConstructionVehicleReinforcements, ConstructionVehiclePath)
|
||||
Trigger.AfterDelay(DateTime.Seconds(5), SendJeepReinforcements)
|
||||
Trigger.AfterDelay(DateTime.Seconds(10), SendJeepReinforcements)
|
||||
|
||||
Trigger.OnTimerExpired(function()
|
||||
FinishTimer()
|
||||
SendTrucks()
|
||||
end)
|
||||
|
||||
Camera.Position = ReinforcementsEntryPoint.CenterPosition
|
||||
TimerColor = Greece.Color
|
||||
end
|
||||
BIN
mods/ra/maps/allies-02/map.bin
Normal file
BIN
mods/ra/maps/allies-02/map.bin
Normal file
Binary file not shown.
17
mods/ra/maps/allies-02/map.ftl
Normal file
17
mods/ra/maps/allies-02/map.ftl
Normal file
@@ -0,0 +1,17 @@
|
||||
dropdown-difficulty =
|
||||
.label = Difficulty
|
||||
.description = The difficulty of the mission
|
||||
|
||||
options-difficulty =
|
||||
.easy = Easy
|
||||
.normal = Normal
|
||||
.hard = Hard
|
||||
.tough = Real tough guy
|
||||
|
||||
## rules.yaml
|
||||
briefing =
|
||||
A critical supply convoy is due through this area in 10 minutes, but Soviet forces have blocked the road in several places.
|
||||
|
||||
Unless you can clear them out, those supplies will never make it to the front.
|
||||
|
||||
The convoy will come from the northwest, and time is short, so work quickly.
|
||||
BIN
mods/ra/maps/allies-02/map.png
Normal file
BIN
mods/ra/maps/allies-02/map.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 11 KiB |
661
mods/ra/maps/allies-02/map.yaml
Normal file
661
mods/ra/maps/allies-02/map.yaml
Normal file
@@ -0,0 +1,661 @@
|
||||
MapFormat: 12
|
||||
|
||||
RequiresMod: ra
|
||||
|
||||
Title: 02: Five to One
|
||||
|
||||
Author: Westwood Studios
|
||||
|
||||
Tileset: SNOW
|
||||
|
||||
MapSize: 128,128
|
||||
|
||||
Bounds: 43,44,50,42
|
||||
|
||||
Visibility: MissionSelector
|
||||
|
||||
Categories: Campaign
|
||||
|
||||
LockPreview: True
|
||||
|
||||
Players:
|
||||
PlayerReference@USSR:
|
||||
Name: USSR
|
||||
Faction: soviet
|
||||
Color: FE1100
|
||||
Enemies: Greece, England
|
||||
Bot: campaign
|
||||
PlayerReference@England:
|
||||
Name: England
|
||||
NonCombatant: True
|
||||
Faction: allies
|
||||
Color: A1EF8C
|
||||
Allies: Greece
|
||||
Enemies: USSR
|
||||
Bot: campaign
|
||||
PlayerReference@Neutral:
|
||||
Name: Neutral
|
||||
OwnsWorld: True
|
||||
NonCombatant: True
|
||||
Faction: allies
|
||||
PlayerReference@Greece:
|
||||
Name: Greece
|
||||
Playable: True
|
||||
AllowBots: False
|
||||
Required: True
|
||||
LockFaction: True
|
||||
Faction: allies
|
||||
LockColor: True
|
||||
Color: ABB7E4
|
||||
LockSpawn: True
|
||||
LockTeam: True
|
||||
Allies: England
|
||||
Enemies: USSR
|
||||
|
||||
Actors:
|
||||
EntryPoint: t06
|
||||
Location: 75,80
|
||||
Owner: Neutral
|
||||
Actor1: t03
|
||||
Location: 75,72
|
||||
Owner: Neutral
|
||||
Actor2: t08
|
||||
Location: 92,60
|
||||
Owner: Neutral
|
||||
Actor3: t12
|
||||
Location: 92,63
|
||||
Owner: Neutral
|
||||
Actor4: t01
|
||||
Location: 89,62
|
||||
Owner: Neutral
|
||||
Actor5: t16
|
||||
Location: 61,44
|
||||
Owner: Neutral
|
||||
Actor6: t14
|
||||
Location: 58,49
|
||||
Owner: Neutral
|
||||
Actor7: t10
|
||||
Location: 55,46
|
||||
Owner: Neutral
|
||||
Actor8: t10
|
||||
Location: 43,56
|
||||
Owner: Neutral
|
||||
Actor9: t01
|
||||
Location: 45,56
|
||||
Owner: Neutral
|
||||
Actor10: t17
|
||||
Location: 53,66
|
||||
Owner: Neutral
|
||||
Actor11: tc01
|
||||
Location: 59,60
|
||||
Owner: Neutral
|
||||
Actor12: tc01
|
||||
Location: 63,74
|
||||
Owner: Neutral
|
||||
Actor13: t07
|
||||
Location: 44,77
|
||||
Owner: Neutral
|
||||
Actor14: t08
|
||||
Location: 50,78
|
||||
Owner: Neutral
|
||||
Actor15: t11
|
||||
Location: 51,71
|
||||
Owner: Neutral
|
||||
Actor16: t10
|
||||
Location: 68,77
|
||||
Owner: Neutral
|
||||
Actor17: tc02
|
||||
Location: 69,72
|
||||
Owner: Neutral
|
||||
Actor18: tc03
|
||||
Location: 71,52
|
||||
Owner: Neutral
|
||||
Actor19: tc04
|
||||
Location: 67,76
|
||||
Owner: Neutral
|
||||
Actor20: t17
|
||||
Location: 70,55
|
||||
Owner: Neutral
|
||||
Actor21: tc01
|
||||
Location: 70,54
|
||||
Owner: Neutral
|
||||
Actor22: t06
|
||||
Location: 67,54
|
||||
Owner: Neutral
|
||||
Actor23: t01
|
||||
Location: 67,44
|
||||
Owner: Neutral
|
||||
Actor24: tc02
|
||||
Location: 67,51
|
||||
Owner: Neutral
|
||||
Actor25: tc04
|
||||
Location: 67,49
|
||||
Owner: Neutral
|
||||
Actor26: t17
|
||||
Location: 69,50
|
||||
Owner: Neutral
|
||||
Actor27: t08
|
||||
Location: 64,55
|
||||
Owner: Neutral
|
||||
Actor28: t16
|
||||
Location: 72,62
|
||||
Owner: Neutral
|
||||
Actor29: t15
|
||||
Location: 71,63
|
||||
Owner: Neutral
|
||||
Actor30: tc04
|
||||
Location: 67,66
|
||||
Owner: Neutral
|
||||
Actor31: tc05
|
||||
Location: 68,67
|
||||
Owner: Neutral
|
||||
Actor32: t17
|
||||
Location: 67,62
|
||||
Owner: Neutral
|
||||
Actor33: tc02
|
||||
Location: 44,68
|
||||
Owner: Neutral
|
||||
Actor37: t02
|
||||
Location: 79,47
|
||||
Owner: Neutral
|
||||
Actor38: t11
|
||||
Location: 77,56
|
||||
Owner: Neutral
|
||||
Actor39: t01
|
||||
Location: 92,45
|
||||
Owner: Neutral
|
||||
Actor42: t07
|
||||
Location: 87,44
|
||||
Owner: Neutral
|
||||
Actor43: t14
|
||||
Location: 46,84
|
||||
Owner: Neutral
|
||||
Actor44: t08
|
||||
Location: 48,85
|
||||
Owner: Neutral
|
||||
Actor45: t07
|
||||
Location: 51,84
|
||||
Owner: Neutral
|
||||
Actor46: tc01
|
||||
Location: 62,84
|
||||
Owner: Neutral
|
||||
Actor47: t11
|
||||
Location: 59,71
|
||||
Owner: Neutral
|
||||
Actor48: t01
|
||||
Location: 45,44
|
||||
Owner: Neutral
|
||||
Actor49: tc04
|
||||
Location: 45,53
|
||||
Owner: Neutral
|
||||
Actor50: t11
|
||||
Location: 54,55
|
||||
Owner: Neutral
|
||||
Actor51: t10
|
||||
Location: 84,71
|
||||
Owner: Neutral
|
||||
Actor52: tc05
|
||||
Location: 90,83
|
||||
Owner: Neutral
|
||||
Actor53: tc01
|
||||
Location: 89,84
|
||||
Owner: Neutral
|
||||
Actor54: tc04
|
||||
Location: 85,81
|
||||
Owner: Neutral
|
||||
Actor55: tc05
|
||||
Location: 43,71
|
||||
Owner: Neutral
|
||||
Actor56: tc03
|
||||
Location: 43,70
|
||||
Owner: Neutral
|
||||
Actor64: brl3
|
||||
Location: 65,59
|
||||
Owner: USSR
|
||||
Actor65: barl
|
||||
Location: 66,60
|
||||
Owner: USSR
|
||||
Actor66: barl
|
||||
Location: 65,60
|
||||
Owner: USSR
|
||||
Actor67: brl3
|
||||
Location: 64,60
|
||||
Owner: USSR
|
||||
Actor68: barl
|
||||
Location: 65,61
|
||||
Owner: USSR
|
||||
Actor69: v19
|
||||
Location: 67,60
|
||||
Owner: USSR
|
||||
Actor70: v19
|
||||
Location: 67,59
|
||||
Owner: USSR
|
||||
Actor71: barl
|
||||
Location: 65,62
|
||||
Owner: USSR
|
||||
Actor73: brl3
|
||||
Location: 55,70
|
||||
Owner: USSR
|
||||
Actor74: brl3
|
||||
Location: 54,70
|
||||
Owner: USSR
|
||||
Actor75: barl
|
||||
Location: 53,69
|
||||
Owner: USSR
|
||||
Actor76: barl
|
||||
Location: 54,69
|
||||
Owner: USSR
|
||||
Actor77: barl
|
||||
Location: 55,71
|
||||
Owner: USSR
|
||||
Actor78: brl3
|
||||
Location: 56,71
|
||||
Owner: USSR
|
||||
Actor79: brl3
|
||||
Location: 53,68
|
||||
Owner: USSR
|
||||
Actor80: v19
|
||||
Location: 56,70
|
||||
Owner: USSR
|
||||
Actor81: barl
|
||||
Location: 55,69
|
||||
Owner: USSR
|
||||
Actor82: brl3
|
||||
Location: 72,51
|
||||
Owner: USSR
|
||||
Actor83: barl
|
||||
Location: 72,50
|
||||
Owner: USSR
|
||||
Actor84: barl
|
||||
Location: 74,48
|
||||
Owner: USSR
|
||||
Actor85: barl
|
||||
Location: 72,49
|
||||
Owner: USSR
|
||||
Actor86: barl
|
||||
Location: 73,48
|
||||
Owner: USSR
|
||||
Actor87: v19
|
||||
Location: 75,48
|
||||
Owner: USSR
|
||||
Health: 52
|
||||
Actor88: v19
|
||||
Location: 62,57
|
||||
Owner: USSR
|
||||
Actor89: v19
|
||||
Location: 60,58
|
||||
Owner: USSR
|
||||
Actor90: brl3
|
||||
Location: 62,56
|
||||
Owner: USSR
|
||||
Actor91: brl3
|
||||
Location: 61,58
|
||||
Owner: USSR
|
||||
Actor92: barl
|
||||
Location: 61,57
|
||||
Owner: USSR
|
||||
Actor93: brl3
|
||||
Location: 59,58
|
||||
Owner: USSR
|
||||
Actor94: barl
|
||||
Location: 58,58
|
||||
Owner: USSR
|
||||
Actor96: dog
|
||||
Location: 53,58
|
||||
Owner: USSR
|
||||
SubCell: 1
|
||||
Actor97: dog
|
||||
Location: 65,68
|
||||
Owner: USSR
|
||||
Facing: 768
|
||||
SubCell: 3
|
||||
Actor98: dog
|
||||
Location: 65,66
|
||||
Owner: USSR
|
||||
Facing: 896
|
||||
SubCell: 2
|
||||
Actor99: dog
|
||||
Location: 59,70
|
||||
Owner: USSR
|
||||
Facing: 384
|
||||
SubCell: 2
|
||||
Actor100: e2
|
||||
Location: 61,56
|
||||
Owner: USSR
|
||||
Facing: 896
|
||||
SubCell: 3
|
||||
Actor101: e2
|
||||
Location: 59,57
|
||||
Owner: USSR
|
||||
Facing: 128
|
||||
SubCell: 4
|
||||
Actor102: e2
|
||||
Location: 64,67
|
||||
Owner: USSR
|
||||
Facing: 640
|
||||
SubCell: 0
|
||||
EarlyAttacker3: e1
|
||||
Location: 78,74
|
||||
Owner: USSR
|
||||
SubCell: 2
|
||||
Facing: 512
|
||||
Actor104: e1
|
||||
Location: 80,74
|
||||
Owner: USSR
|
||||
Facing: 384
|
||||
SubCell: 0
|
||||
Actor105: e1
|
||||
Location: 56,68
|
||||
Owner: USSR
|
||||
Facing: 384
|
||||
SubCell: 3
|
||||
Actor107: e1
|
||||
Location: 73,60
|
||||
Owner: USSR
|
||||
Facing: 896
|
||||
SubCell: 2
|
||||
Actor108: e1
|
||||
Location: 74,61
|
||||
Owner: USSR
|
||||
Facing: 128
|
||||
SubCell: 1
|
||||
Actor109: e1
|
||||
Location: 72,60
|
||||
Owner: USSR
|
||||
Facing: 768
|
||||
SubCell: 0
|
||||
Actor115: e1
|
||||
Location: 60,64
|
||||
Owner: USSR
|
||||
Facing: 128
|
||||
SubCell: 3
|
||||
Actor116: e2
|
||||
Location: 68,45
|
||||
Owner: USSR
|
||||
Facing: 640
|
||||
SubCell: 0
|
||||
Actor118: e1
|
||||
Location: 57,69
|
||||
Owner: USSR
|
||||
Facing: 640
|
||||
SubCell: 1
|
||||
Actor119: e2
|
||||
Location: 60,70
|
||||
Owner: USSR
|
||||
Facing: 896
|
||||
SubCell: 0
|
||||
Actor120: e1
|
||||
Location: 89,48
|
||||
Owner: Greece
|
||||
Facing: 384
|
||||
SubCell: 1
|
||||
Actor121: e1
|
||||
Location: 87,48
|
||||
Owner: Greece
|
||||
Facing: 256
|
||||
SubCell: 4
|
||||
Actor122: e1
|
||||
Location: 87,48
|
||||
Owner: Greece
|
||||
Facing: 256
|
||||
SubCell: 1
|
||||
Actor123: e1
|
||||
Location: 88,48
|
||||
Owner: Greece
|
||||
Facing: 512
|
||||
SubCell: 4
|
||||
Actor124: e1
|
||||
Location: 88,49
|
||||
Owner: Greece
|
||||
Facing: 512
|
||||
SubCell: 1
|
||||
EarlyAttacker4: dog
|
||||
Location: 78,75
|
||||
Owner: USSR
|
||||
SubCell: 1
|
||||
Facing: 384
|
||||
EarlyAttacker1: e1
|
||||
Location: 71,61
|
||||
Owner: USSR
|
||||
SubCell: 0
|
||||
Facing: 384
|
||||
EarlyAttacker2: dog
|
||||
Location: 70,61
|
||||
Owner: USSR
|
||||
SubCell: 4
|
||||
Facing: 640
|
||||
Actor136: e2
|
||||
Location: 69,66
|
||||
Owner: USSR
|
||||
SubCell: 3
|
||||
Actor137: e2
|
||||
Location: 73,51
|
||||
Owner: USSR
|
||||
Facing: 128
|
||||
SubCell: 4
|
||||
Actor138: medi
|
||||
Location: 88,48
|
||||
Owner: Greece
|
||||
Facing: 384
|
||||
SubCell: 1
|
||||
Actor139: fenc
|
||||
Location: 57,75
|
||||
Owner: USSR
|
||||
Actor140: fenc
|
||||
Location: 57,76
|
||||
Owner: USSR
|
||||
Actor141: fenc
|
||||
Location: 57,77
|
||||
Owner: USSR
|
||||
Actor142: fenc
|
||||
Location: 58,77
|
||||
Owner: USSR
|
||||
Actor143: fenc
|
||||
Location: 58,78
|
||||
Owner: USSR
|
||||
Actor144: fenc
|
||||
Location: 57,78
|
||||
Owner: USSR
|
||||
Actor145: fenc
|
||||
Location: 58,75
|
||||
Owner: USSR
|
||||
Actor146: fenc
|
||||
Location: 58,74
|
||||
Owner: USSR
|
||||
Actor147: fenc
|
||||
Location: 57,74
|
||||
Owner: USSR
|
||||
Actor148: fenc
|
||||
Location: 66,67
|
||||
Owner: USSR
|
||||
Actor149: fenc
|
||||
Location: 66,68
|
||||
Owner: USSR
|
||||
Actor150: fenc
|
||||
Location: 66,69
|
||||
Owner: USSR
|
||||
Actor151: fenc
|
||||
Location: 66,70
|
||||
Owner: USSR
|
||||
Actor152: fenc
|
||||
Location: 65,70
|
||||
Owner: USSR
|
||||
Actor153: fenc
|
||||
Location: 64,70
|
||||
Owner: USSR
|
||||
Actor154: fenc
|
||||
Location: 63,70
|
||||
Owner: USSR
|
||||
Actor155: fenc
|
||||
Location: 51,68
|
||||
Owner: USSR
|
||||
Actor156: fenc
|
||||
Location: 52,68
|
||||
Owner: USSR
|
||||
Actor157: fenc
|
||||
Location: 52,67
|
||||
Owner: USSR
|
||||
Actor158: fenc
|
||||
Location: 52,66
|
||||
Owner: USSR
|
||||
Actor159: fenc
|
||||
Location: 51,66
|
||||
Owner: USSR
|
||||
Actor160: fenc
|
||||
Location: 51,62
|
||||
Owner: USSR
|
||||
Actor161: fenc
|
||||
Location: 51,63
|
||||
Owner: USSR
|
||||
Actor162: fenc
|
||||
Location: 67,58
|
||||
Owner: USSR
|
||||
Actor163: fenc
|
||||
Location: 66,58
|
||||
Owner: USSR
|
||||
Actor164: fenc
|
||||
Location: 66,59
|
||||
Owner: USSR
|
||||
Actor165: fenc
|
||||
Location: 47,51
|
||||
Owner: USSR
|
||||
Actor166: fenc
|
||||
Location: 47,50
|
||||
Owner: USSR
|
||||
Actor167: fenc
|
||||
Location: 46,50
|
||||
Owner: USSR
|
||||
Actor168: fenc
|
||||
Location: 51,50
|
||||
Owner: USSR
|
||||
Actor169: fenc
|
||||
Location: 50,50
|
||||
Owner: USSR
|
||||
Actor170: fenc
|
||||
Location: 50,51
|
||||
Owner: USSR
|
||||
SovietConyard: fact
|
||||
Location: 62,61
|
||||
Owner: USSR
|
||||
SovietRefinery: proc
|
||||
Location: 53,62
|
||||
Owner: USSR
|
||||
FreeActor: False
|
||||
SovietPower1: powr
|
||||
Location: 57,62
|
||||
Owner: USSR
|
||||
SovietPower2: powr
|
||||
Location: 59,62
|
||||
Owner: USSR
|
||||
SovietSilo: silo
|
||||
Location: 54,68
|
||||
Owner: USSR
|
||||
SovietKennel: kenn
|
||||
Location: 58,68
|
||||
Owner: USSR
|
||||
SovietBarracks: barr
|
||||
Location: 56,66
|
||||
Owner: USSR
|
||||
SovietWarfactory: weap
|
||||
Location: 60,66
|
||||
Owner: USSR
|
||||
Harvester: harv
|
||||
Location: 55,65
|
||||
Owner: USSR
|
||||
Facing: 384
|
||||
PathGuard1: e1
|
||||
Location: 50,72
|
||||
Owner: USSR
|
||||
Facing: 384
|
||||
SubCell: 4
|
||||
PathGuard2: e1
|
||||
Location: 49,58
|
||||
Owner: USSR
|
||||
Facing: 256
|
||||
SubCell: 0
|
||||
PathGuard3: e1
|
||||
Location: 51,58
|
||||
Owner: USSR
|
||||
Facing: 896
|
||||
SubCell: 1
|
||||
PathGuard4: e1
|
||||
Location: 60,78
|
||||
Owner: USSR
|
||||
Facing: 256
|
||||
SubCell: 4
|
||||
PathGuard5: e2
|
||||
Location: 62,79
|
||||
Owner: USSR
|
||||
Facing: 384
|
||||
SubCell: 4
|
||||
PathGuard6: e1
|
||||
Location: 48,72
|
||||
Owner: USSR
|
||||
Facing: 640
|
||||
SubCell: 0
|
||||
PathGuard7: e1
|
||||
Location: 50,46
|
||||
Owner: USSR
|
||||
Facing: 896
|
||||
SubCell: 1
|
||||
PathGuard8: e1
|
||||
Location: 49,47
|
||||
Owner: USSR
|
||||
Facing: 768
|
||||
SubCell: 0
|
||||
PathGuard9: e2
|
||||
Location: 49,49
|
||||
Owner: USSR
|
||||
Facing: 384
|
||||
SubCell: 1
|
||||
PathGuard10: e2
|
||||
Location: 47,46
|
||||
Owner: USSR
|
||||
Facing: 640
|
||||
SubCell: 3
|
||||
PathGuard11: e2
|
||||
Location: 48,63
|
||||
Owner: USSR
|
||||
SubCell: 1
|
||||
PathGuard12: e1
|
||||
Location: 49,63
|
||||
Owner: USSR
|
||||
Facing: 640
|
||||
SubCell: 2
|
||||
PathGuard13: e1
|
||||
Location: 74,81
|
||||
Owner: USSR
|
||||
Facing: 768
|
||||
SubCell: 3
|
||||
PathGuard14: e2
|
||||
Location: 75,83
|
||||
Owner: USSR
|
||||
Facing: 640
|
||||
SubCell: 0
|
||||
PathGuard15: e1
|
||||
Location: 57,82
|
||||
Owner: USSR
|
||||
Facing: 384
|
||||
SubCell: 1
|
||||
TruckEntryPoint: waypoint
|
||||
Location: 49,44
|
||||
Owner: Neutral
|
||||
TruckRallyPoint: waypoint
|
||||
Location: 49,76
|
||||
Owner: Neutral
|
||||
TruckExitPoint: waypoint
|
||||
Location: 80,85
|
||||
Owner: Neutral
|
||||
ReinforcementsEntryPoint: waypoint
|
||||
Location: 90,44
|
||||
Owner: Neutral
|
||||
ReinforcementsRallyPoint: waypoint
|
||||
Location: 88,49
|
||||
Owner: Neutral
|
||||
DeployPoint: waypoint
|
||||
Location: 89,51
|
||||
Owner: Neutral
|
||||
|
||||
Rules: ra|rules/campaign-rules.yaml, ra|rules/campaign-tooltips.yaml, ra|rules/campaign-palettes.yaml, rules.yaml
|
||||
|
||||
FluentMessages: ra|fluent/lua.ftl, ra|fluent/campaign.ftl, map.ftl
|
||||
103
mods/ra/maps/allies-02/rules.yaml
Normal file
103
mods/ra/maps/allies-02/rules.yaml
Normal file
@@ -0,0 +1,103 @@
|
||||
Player:
|
||||
PlayerResources:
|
||||
DefaultCash: 5700
|
||||
|
||||
World:
|
||||
LuaScript:
|
||||
Scripts: campaign.lua, utils.lua, allies02.lua
|
||||
MissionData:
|
||||
Briefing: briefing
|
||||
BriefingVideo: ally2.vqa
|
||||
StartVideo: mcv.vqa
|
||||
WinVideo: montpass.vqa
|
||||
LossVideo: frozen.vqa
|
||||
SmudgeLayer@CRATER:
|
||||
InitialSmudges:
|
||||
60,79: cr1,0
|
||||
ScriptLobbyDropdown@difficulty:
|
||||
ID: difficulty
|
||||
Label: dropdown-difficulty.label
|
||||
Description: dropdown-difficulty.description
|
||||
Values:
|
||||
easy: options-difficulty.easy
|
||||
normal: options-difficulty.normal
|
||||
hard: options-difficulty.hard
|
||||
tough: options-difficulty.tough
|
||||
Default: normal
|
||||
TimeLimitManager:
|
||||
CountdownLabel: MISSION_TEXT
|
||||
CountdownText: The convoy will arrive in {0}
|
||||
Notification: {0} minute{1} remaining
|
||||
SkipTimerExpiredNotification: True
|
||||
|
||||
APWR:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
FIX:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
SYRD:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
WEAP:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
DOME:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
HPAD:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
ATEK:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
BRIK:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
HBOX:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
GUN:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
AGUN:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
GAP:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
PDOX:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
MSLO:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
E6:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
SPY:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
MECH:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
E7:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
Reference in New Issue
Block a user