1. You need to set ShortGame=no. Means to win you must destroy all enemy units, not just buildings.
2. Can't have starting units. You only start with your sides MCV, nothing else.
First, do these general changes in rules.ini:
Code:
MinDamage=0
BaseUnit=BOO
BuildConst=GABOO
[MultiplayerDefaults]
...
Bases=yes
ShortGame=no
UnitCount=2
Then give AllowedToStartInMultiplayer=no to every GDI / Nod unit.
All GDI / Nod buildings that should be available to human players need to have an extra owner (Special). E.g. Owner=GDI,Special.
Now we need 5 new units. Well 4 if you use the original MCV as the GDI MCV.
Code:
[VehicleTypes]
...
51=MCVGDI ; Real GDI MCV
52=MCVNOD ; Real Nod MCV
53=MCVGDISPAWN ; Starting unit GDI MCV
54=MCVNODSPAWN ; Starting unit Nod MCV
55=BOO ; Fake unit needed for logic to work
; Real GDI MCV that you can build or get from a crate
[MCVGDI]
...
Image=MCV ; Put the real image here
Owner=GDI
Prerequisite=GAWEAP,GATECH ; GDIFACTORY,GATECH in firestrm.ini
CrateGoodie=yes
DeploysInto=GACNST
AllowedToStartInMultiplayer=no
; Real Nod MCV that you can build or get from a crate
[MCVNOD]
...
Image=WEED ; Put the real image here
Owner=Nod
Prerequisite=NAWEAP,NATECH ; NODFACTORY,NATECH in firestrm.ini
CrateGoodie=yes
DeploysInto=NACNST
AllowedToStartInMultiplayer=no
; GDI MCV that you only get at start of the match
[MCVGDISPAWN]
...
Image=MCV ; Put the real image here
Owner=GDI
Prerequisite=CABHUT
TechLevel=1
Armor=wood
CrateGoodie=no
Cost=5000
AllowedToStartInMultiplayer=yes
Primary=MCVSpawn
DeploysInto=GACNST
DeployToFire=yes
; Nod MCV that you only get at start of the match
[MCVNODSPAWN]
...
Image=WEED ; Put the real image here
Owner=Nod
Prerequisite=CABHUT
TechLevel=1
Armor=wood
CrateGoodie=no
Cost=5000
AllowedToStartInMultiplayer=yes
Primary=MCVSpawn
DeploysInto=NACNST
DeployToFire=yes
; Fake vehicle needed for logic to work
[BOO]
Name=
Nominal=yes
Image=BOO
Strength=1
Primary=GetMadBro
Secondary=GetHappyBro
Elite=GetMadBroC
GuardRange=255
Category=Support
Armor=heavy
DeploysInto=GABOO
TechLevel=1
Sight=2
Speed=5
Owner=GDI,Nod
CrateGoodie=no
Cost=2500
Points=0
ROT=30
Crewed=no
Crusher=no
Selectable=no
MaxDebris=0
Locomotor={4A582741-9839-11d1-B709-00A024DDAFD1}
Weight=1
MovementZone=Normal
ThreatPosed=0
AllowedToStartInMultiplayer=yes
LegalTarget=no
Then 3 buildings (2 if you use GACNST as GDI con.yard).
Code:
; GDI Construction Yard
[GACNST]
...
Name=GDI Construction Yard
Image=GADROP ; Put the real image here
UndeploysInto=MCVGDI
Owner=GDI
AIBuildThis=no
; Nod Construction Yard
[NACNST]
...
Name=Nod Construction Yard
Image=NATMPL ; Put the real image here
UndeploysInto=MCVNOD
Owner=Nod
AIBuildThis=no
; Fake building needed for logic to work
[GABOO]
Name=
Nominal=yes
ConstructionYard=yes
;;Factory=BuildingType ; This needs to be disabled!
Strength=1000
Immune=yes
InvisibleInGame=no ;yes ; Can't leave this on, breaks logic.
Unsellable=yes
Repairable=no
Capturable=false
Powered=no
TogglePower=no
Insignificant=yes ; So it blows up when AI loses
Armor=heavy
TechLevel=-1
Adjacent=2
Sight=0
Owner=GDI,Nod
Cost=0
Points=0
Power=0
Crewed=no
MaxDebris=0
ThreatPosed=0
AIBuildThis=no
Some weapons needed:
Code:
; Fake vehicle fires this first, which then changes into GetMadBroC.
[GetMadBro]
Damage=0
ROF=50
Range=255
ProjectileRange=0
Projectile=MadBroPR
Speed=0
Warhead=MadBroWH
Anim=SUICIDE
; This hits each MCV, pissing them off and causing them to deploy.
[GetMadBroC]
Damage=1
ROF=50
Range=255
Projectile=Invisible
Speed=100
Warhead=MadBroCWH
; Not ever fired, but needed for BOO to not target anything else than MCVs.
[GetHappyBro]
Damage=1
ROF=50
Range=300
MinimumRange=290
Projectile=Invisible
Speed=100
Warhead=HappyBroWH
Charges=yes
; Needed for MCVs to deploy themselves correctly.
[MCVSpawn]
Damage=100
ROF=50
Range=255
Projectile=Invisible
Speed=100
Warhead=Super
Projectile:
Code:
[MadBroPR]
Shadow=no
Proximity=no
Cluster=1
Ranged=yes
Range=0
AA=no
Image=120MM
ROT=8
Splits=yes
AirburstWeapon=GetMadBroC
IgnoresFirestorm=yes
RetargetAccuracy=100%
Warheads:
Code:
[MadBroWH]
Spread=0
Verses=0%,100%,0%,0%,0% ; Target only Armor=wood (MCV)
InfDeath=0
ProneDamage=0%
[MadBroCWH]
Spread=0
Verses=0%,-100%,0%,0%,0% ; Target only Armor=wood (MCV)
InfDeath=0
ProneDamage=0%
Veinhole=yes
[HappyBroWH]
Spread=0
Verses=100%,0%,100%,100%,100% ; Target everything else except Armor=wood
InfDeath=0
ProneDamage=100%
Add these to art.ini:
Code:
; Just to make the fake vehicle invisible
[BOO]
Voxel=no
PrimaryFireFLH=0,0,0
; To make the fake building invisible
[GABOO]
Image=INVISO
Remapable=yes
Foundation=0x0
Buildup=INVISO
DemandLoadBuildup=true
FreeBuildup=true
NewTheater=yes
; This was just added for the test GDI con.yard.
[GADROP]
Remapable=yes
Normalized=yes
Height=2
Foundation=3x3
Buildup=GADROPMK
DemandLoadBuildup=true
FreeBuildup=true
NewTheater=yes
; Self-destructs BOO, stage 1.
[SUICIDE]
Image=INVISO
Surface=yes
Start=0
End=300
Next=SUICIDE2
; Self-destructs BOO, stage 2.
[SUICIDE2]
Image=INVISO
Surface=yes
Damage=10
DamageRadius=0
Start=0
End=1
Also, in the case of default TS, we need to change the prerequisite of the first buildable structures:
Code:
; GDI Power Plant
[GAPOWR]
Prerequisite=GACNST ; Requires GDI con.yard
; Nod Power Plant
[NAPOWR]
Prerequisite=NACNST ; Requires Nod con.yard
I've attached package that contains the boo.shp file for the fake vehicle, and an edited language.dll that prevents players from adjusting the Bases, ShortGame and Unit Count settings in skirmish.