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:
60
mods/cnc/maps/gdi01/gdi01.lua
Normal file
60
mods/cnc/maps/gdi01/gdi01.lua
Normal file
@@ -0,0 +1,60 @@
|
||||
--[[
|
||||
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.
|
||||
]]
|
||||
|
||||
MCVReinforcements = { "mcv" }
|
||||
InfantryReinforcements = { "e1", "e1", "e1" }
|
||||
VehicleReinforcements = { "jeep" }
|
||||
NodPatrol = { "e1", "e1" }
|
||||
GDIBaseBuildings = { "pyle", "fact", "nuke" }
|
||||
|
||||
SendNodPatrol = function()
|
||||
Reinforcements.Reinforce(Nod, NodPatrol, { nod0.Location, nod1.Location }, 15, function(soldier)
|
||||
soldier.AttackMove(nod2.Location)
|
||||
soldier.AttackMove(nod3.Location)
|
||||
IdleHunt(soldier)
|
||||
end)
|
||||
end
|
||||
|
||||
Reinforce = function(units)
|
||||
Media.PlaySpeechNotification(GDI, "Reinforce")
|
||||
ReinforceWithLandingCraft(GDI, units, lstStart.Location, lstEnd.Location, reinforcementsTarget.Location)
|
||||
end
|
||||
|
||||
WorldLoaded = function()
|
||||
GDI = Player.GetPlayer("GDI")
|
||||
Nod = Player.GetPlayer("Nod")
|
||||
|
||||
InitObjectives(GDI)
|
||||
|
||||
SecureAreaObjective = AddPrimaryObjective(GDI, "eliminate-nod")
|
||||
BeachheadObjective = AddSecondaryObjective(GDI, "establish-beachhead")
|
||||
|
||||
ReinforceWithLandingCraft(GDI, MCVReinforcements, lstStart.Location + CVec.New(2, 0), lstEnd.Location + CVec.New(2, 0), mcvTarget.Location)
|
||||
Reinforce(InfantryReinforcements)
|
||||
|
||||
SendNodPatrol()
|
||||
|
||||
Trigger.AfterDelay(DateTime.Seconds(10), function() Reinforce(InfantryReinforcements) end)
|
||||
Trigger.AfterDelay(DateTime.Seconds(60), function() Reinforce(VehicleReinforcements) end)
|
||||
end
|
||||
|
||||
Tick = function()
|
||||
if Nod.HasNoRequiredUnits() then
|
||||
GDI.MarkCompletedObjective(SecureAreaObjective)
|
||||
end
|
||||
|
||||
if DateTime.GameTime > DateTime.Seconds(5) and GDI.HasNoRequiredUnits() then
|
||||
GDI.MarkFailedObjective(BeachheadObjective)
|
||||
GDI.MarkFailedObjective(SecureAreaObjective)
|
||||
end
|
||||
|
||||
if DateTime.GameTime % DateTime.Seconds(1) == 0 and not GDI.IsObjectiveCompleted(BeachheadObjective) and CheckForBase(GDI, GDIBaseBuildings) then
|
||||
GDI.MarkCompletedObjective(BeachheadObjective)
|
||||
end
|
||||
end
|
||||
BIN
mods/cnc/maps/gdi01/map.bin
Normal file
BIN
mods/cnc/maps/gdi01/map.bin
Normal file
Binary file not shown.
9
mods/cnc/maps/gdi01/map.ftl
Normal file
9
mods/cnc/maps/gdi01/map.ftl
Normal file
@@ -0,0 +1,9 @@
|
||||
## rules.yaml
|
||||
briefing =
|
||||
Use the units provided to protect the Mobile Construction Vehicle (MCV).
|
||||
|
||||
Deploy the MCV by left-clicking to select it, then right-clicking on it to deploy.
|
||||
|
||||
Start your base construction with a Power Plant.
|
||||
|
||||
Once you have built up a sizeable force, search out and destroy all enemy Nod units in the surrounding area.
|
||||
BIN
mods/cnc/maps/gdi01/map.png
Normal file
BIN
mods/cnc/maps/gdi01/map.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 46 KiB |
240
mods/cnc/maps/gdi01/map.yaml
Normal file
240
mods/cnc/maps/gdi01/map.yaml
Normal file
@@ -0,0 +1,240 @@
|
||||
MapFormat: 12
|
||||
|
||||
RequiresMod: cnc
|
||||
|
||||
Title: 01: Storm the Beachhead
|
||||
|
||||
Author: Westwood Studios
|
||||
|
||||
Tileset: TEMPERAT
|
||||
|
||||
MapSize: 64,64
|
||||
|
||||
Bounds: 35,39,27,23
|
||||
|
||||
Visibility: MissionSelector
|
||||
|
||||
Categories: Campaign
|
||||
|
||||
LockPreview: True
|
||||
|
||||
Players:
|
||||
PlayerReference@Nod:
|
||||
Name: Nod
|
||||
Faction: nod
|
||||
Color: FE1100
|
||||
Allies: Nod
|
||||
Enemies: GDI
|
||||
Bot: campaign
|
||||
PlayerReference@GDI:
|
||||
Name: GDI
|
||||
Playable: True
|
||||
AllowBots: False
|
||||
Required: True
|
||||
LockFaction: True
|
||||
Faction: gdi
|
||||
LockColor: True
|
||||
Color: F5D378
|
||||
LockSpawn: True
|
||||
LockTeam: True
|
||||
Allies: GDI
|
||||
Enemies: Nod
|
||||
PlayerReference@Neutral:
|
||||
Name: Neutral
|
||||
OwnsWorld: True
|
||||
NonCombatant: True
|
||||
Faction: gdi
|
||||
|
||||
Actors:
|
||||
Actor0: sbag
|
||||
Location: 48,55
|
||||
Owner: Neutral
|
||||
Actor1: sbag
|
||||
Location: 47,55
|
||||
Owner: Neutral
|
||||
Actor2: sbag
|
||||
Location: 49,54
|
||||
Owner: Neutral
|
||||
Actor3: sbag
|
||||
Location: 48,54
|
||||
Owner: Neutral
|
||||
Actor42: tc01
|
||||
Location: 59,39
|
||||
Owner: Neutral
|
||||
Actor45: tc02
|
||||
Location: 33,31
|
||||
Owner: Neutral
|
||||
Actor47: tc02
|
||||
Location: 55,44
|
||||
Owner: Neutral
|
||||
Actor59: tc01
|
||||
Location: 58,31
|
||||
Owner: Neutral
|
||||
Actor60: tc01
|
||||
Location: 60,37
|
||||
Owner: Neutral
|
||||
Actor61: tc02
|
||||
Location: 48,39
|
||||
Owner: Neutral
|
||||
Actor62: t01
|
||||
Location: 48,37
|
||||
Owner: Neutral
|
||||
Actor63: t06
|
||||
Location: 41,52
|
||||
Owner: Neutral
|
||||
Actor64: t06
|
||||
Location: 40,54
|
||||
Owner: Neutral
|
||||
Actor65: tc01
|
||||
Location: 46,50
|
||||
Owner: Neutral
|
||||
Actor66: tc01
|
||||
Location: 42,41
|
||||
Owner: Neutral
|
||||
Actor67: tc05
|
||||
Location: 45,40
|
||||
Owner: Neutral
|
||||
Actor68: tc04
|
||||
Location: 42,43
|
||||
Owner: Neutral
|
||||
Actor69: tc02
|
||||
Location: 44,47
|
||||
Owner: Neutral
|
||||
Actor70: t02
|
||||
Location: 45,44
|
||||
Owner: Neutral
|
||||
Actor71: t01
|
||||
Location: 44,46
|
||||
Owner: Neutral
|
||||
Actor72: t07
|
||||
Location: 44,44
|
||||
Owner: Neutral
|
||||
Actor73: t01
|
||||
Location: 47,46
|
||||
Owner: Neutral
|
||||
Actor74: t16
|
||||
Location: 45,50
|
||||
Owner: Neutral
|
||||
Actor75: tc02
|
||||
Location: 48,47
|
||||
Owner: Neutral
|
||||
Actor76: t01
|
||||
Location: 49,48
|
||||
Owner: Neutral
|
||||
Actor77: t01
|
||||
Location: 56,45
|
||||
Owner: Neutral
|
||||
Actor78: tc05
|
||||
Location: 56,41
|
||||
Owner: Neutral
|
||||
Actor79: tc04
|
||||
Location: 58,45
|
||||
Owner: Neutral
|
||||
Actor80: t16
|
||||
Location: 57,45
|
||||
Owner: Neutral
|
||||
Actor81: t01
|
||||
Location: 39,51
|
||||
Owner: Neutral
|
||||
Actor82: t02
|
||||
Location: 39,48
|
||||
Owner: Neutral
|
||||
Actor83: gun
|
||||
Location: 46,55
|
||||
Owner: Nod
|
||||
Health: 50
|
||||
Facing: 640
|
||||
Actor84: gun
|
||||
Location: 41,55
|
||||
Owner: Nod
|
||||
Health: 50
|
||||
Facing: 640
|
||||
Actor85: gun
|
||||
Location: 49,55
|
||||
Owner: Nod
|
||||
Health: 19
|
||||
Facing: 640
|
||||
Actor92: e1
|
||||
Location: 57,45
|
||||
Owner: Nod
|
||||
Facing: 640
|
||||
SubCell: 2
|
||||
Actor93: e1
|
||||
Location: 56,41
|
||||
Owner: Nod
|
||||
Facing: 768
|
||||
SubCell: 2
|
||||
Actor94: e1
|
||||
Location: 48,41
|
||||
Owner: Nod
|
||||
Facing: 384
|
||||
SubCell: 3
|
||||
Actor95: e1
|
||||
Location: 59,45
|
||||
Owner: Nod
|
||||
Facing: 640
|
||||
SubCell: 1
|
||||
Actor96: e1
|
||||
Location: 46,50
|
||||
Owner: Nod
|
||||
Facing: 384
|
||||
SubCell: 3
|
||||
Actor97: e1
|
||||
Location: 48,47
|
||||
Owner: Nod
|
||||
Facing: 384
|
||||
SubCell: 1
|
||||
Actor98: e1
|
||||
Location: 38,43
|
||||
Owner: Nod
|
||||
Facing: 512
|
||||
SubCell: 4
|
||||
Actor99: e1
|
||||
Location: 38,43
|
||||
Owner: Nod
|
||||
Facing: 512
|
||||
SubCell: 1
|
||||
Actor100: e1
|
||||
Location: 48,41
|
||||
Owner: Nod
|
||||
Facing: 384
|
||||
SubCell: 2
|
||||
Actor101: e1
|
||||
Location: 41,39
|
||||
Owner: Nod
|
||||
Facing: 384
|
||||
SubCell: 4
|
||||
Gunboat: boat
|
||||
Location: 51,59
|
||||
Owner: GDI
|
||||
Facing: 256
|
||||
nod0: waypoint
|
||||
Location: 36,39
|
||||
Owner: Neutral
|
||||
nod1: waypoint
|
||||
Location: 37,46
|
||||
Owner: Neutral
|
||||
nod2: waypoint
|
||||
Location: 38,55
|
||||
Owner: Neutral
|
||||
nod3: waypoint
|
||||
Location: 52,52
|
||||
Owner: Neutral
|
||||
lstStart: waypoint
|
||||
Location: 54,61
|
||||
Owner: Neutral
|
||||
lstEnd: waypoint
|
||||
Location: 54,57
|
||||
Owner: Neutral
|
||||
mcvTarget: waypoint
|
||||
Location: 56,53
|
||||
Owner: Neutral
|
||||
reinforcementsTarget: waypoint
|
||||
Location: 54,53
|
||||
Owner: Neutral
|
||||
|
||||
Rules: cnc|rules/campaign-maprules.yaml, cnc|rules/campaign-tooltips.yaml, cnc|rules/campaign-palettes.yaml, rules.yaml
|
||||
|
||||
Weapons: weapons.yaml
|
||||
|
||||
FluentMessages: cnc|fluent/lua.ftl, cnc|fluent/campaign.ftl, map.ftl
|
||||
111
mods/cnc/maps/gdi01/rules.yaml
Normal file
111
mods/cnc/maps/gdi01/rules.yaml
Normal file
@@ -0,0 +1,111 @@
|
||||
World:
|
||||
LuaScript:
|
||||
Scripts: campaign.lua, utils.lua, gdi01.lua
|
||||
MusicPlaylist:
|
||||
StartingMusic: aoi
|
||||
MissionData:
|
||||
Briefing: briefing
|
||||
BackgroundVideo: intro2.vqa
|
||||
BriefingVideo: gdi1.vqa
|
||||
StartVideo: landing.vqa
|
||||
WinVideo: consyard.vqa
|
||||
LossVideo: gameover.vqa
|
||||
|
||||
NUKE:
|
||||
-Sellable:
|
||||
Demolishable:
|
||||
-Condition:
|
||||
Buildable:
|
||||
BuildLimit: 1
|
||||
|
||||
PYLE:
|
||||
-Sellable:
|
||||
Demolishable:
|
||||
-Condition:
|
||||
Buildable:
|
||||
BuildLimit: 1
|
||||
|
||||
FACT:
|
||||
-Sellable:
|
||||
|
||||
PROC:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
SILO:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
WEAP:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
HQ:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
NUK2:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
FIX:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
HPAD:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
EYE:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
GUN:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
GTWR:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
ATWR:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
SBAG:
|
||||
-Crushable:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
CYCL:
|
||||
-Crushable:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
BRIK:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
E2:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
E3:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
E6:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
RMBO:
|
||||
Buildable:
|
||||
Prerequisites: ~disabled
|
||||
|
||||
BOAT:
|
||||
Health:
|
||||
HP: 150000
|
||||
AutoTarget:
|
||||
InitialStance: AttackAnything
|
||||
RejectsOrders:
|
||||
Except: Attack
|
||||
13
mods/cnc/maps/gdi01/weapons.yaml
Normal file
13
mods/cnc/maps/gdi01/weapons.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
BoatMissile:
|
||||
Warhead@Bonus: SpreadDamage
|
||||
Spread: 128
|
||||
Damage: 2000
|
||||
Versus:
|
||||
None: 50
|
||||
Wood: 100
|
||||
Light: 100
|
||||
Heavy: 100
|
||||
DamageTypes: Prone50Percent, TriggerProne, ExplosionDeath
|
||||
|
||||
TurretGun:
|
||||
ReloadDelay: 40
|
||||
Reference in New Issue
Block a user