OK, check this out... i'll be using Kursk TDM as an example:
in the tdm.con file, add "run ai v_arg1" right before you run objectspawns.con so it looks like this:
Code: Select all
run tdm/SpawnpointManagerSettings
run tdm/SoldierSpawnTemplates
run tdm/SoldierSpawns
run tdm/ObjectSpawnTemplates
run tdm/ControlPointTemplates
if v_arg1 == host
run ai v_arg1
run tdm/ObjectSpawns
run tdm/ControlPoints
else
endIf
Code: Select all
run AI/AIdefault.con v_arg1
run AI/AIbehaviours.con v_arg1
Now, open the game.rfa of either your mod or from cherry BF. your looking for two files and a directory with 4 files. They are:
Bf1942/Game/AIdefault.con
Bf1942/Game/AIbehaviours.con
Bf1942/Game/AI/Strategies.con
Bf1942/Game/AI/radio.con
Bf1942/Game/AI/prerequisites.con
Bf1942/Game/AI/conditions.con
Extract all of these and put them (keeping the same directory structure) in your map RFA.
For example, now in my kursk map, i have:
Bf1942/levels/Kurks/AI/AIdefault.con
Bf1942/levels/Kurks/AI/AIbehaviours.con
Bf1942/levels/Kurks/AI/conditions.con
Bf1942/levels/Kurks/AI/prerequisites.con
Bf1942/levels/Kurks/AI/StrategicAreas.con
Bf1942/levels/Kurks/AI/Strategies.con
Bf1942/levels/Kurks/AI/AI/Strategies.con
Bf1942/levels/Kurks/AI/AI/radio.con
Bf1942/levels/Kurks/AI/AI/prerequisites.con
Bf1942/levels/Kurks/AI/AI/conditions.con
This will get bots in the map, but they wont do anything, and that's because the weapons their holding have no AI stuff on them (for some reason, if you dont run COOP, they dont get run).
Just include the AI files for any weapons you have in any of your kits. For this modded version of Kursk, i have no vehicles and sniper kits only, so here's what i needed (put this at the end of TDM.con, or Conquest.con for CQ mode):
Code: Select all
rem you need these two no matter what
include ../../../../../objects/items/basekit/ai/objects.con
include ../../../../../objects/soldiers/common/AI/Objects.con
rem include all weapons:
include ../../../../../objects/HandWeapons/EliteKnife/AI/Weapons.con
include ../../../../../objects/HandWeapons/Tabuk/AI/Weapons.con
include ../../../../../objects/HandWeapons/KnifeAllies/AI/Weapons.con
include ../../../../../objects/HandWeapons/M82/AI/Weapons.con
include ../../../../../objects/HandWeapons/M25/AI/Weapons.con
include ../../../../../objects/HandWeapons/Browninghipo/AI/Weapons.con
include ../../../../../objects/HandWeapons/KnifeAxis/AI/Weapons.con
include ../../../../../objects/HandWeapons/GrenadeAllies/AI/Weapons.con
include ../../../../../objects/HandWeapons/M9_beretta/AI/Weapons.con
this is what i have done and all i get is an Epic CTD on map load at about 2/3 completion
first my CTF.con
Code: Select all
run Ctf/SpawnpointManagerSettings
run Ctf/SoldierSpawnTemplates
run Ctf/SoldierSpawns
run Ctf/ObjectSpawnTemplates
if v_arg1 == host
run ai v_arg1
run Ctf/ObjectSpawns
rem ----- Host
rem ----------------------------------------------------------------------------
rem *** CREATE FLAG BASES ***
object.create usbase
Object.absolutePosition 1798.74/38.306/1943.2
Object.Rotation 0/0/0
object.create gebase
Object.absolutePosition 1697.61/38.306/1781.07
Object.Rotation 0/0/0
rem ----------------------------------------------------------------------------
else
rem ----- Join
rem ----------------------------------------------------------------------------
rem *** CREATE FLAG BASES ***
object.create FlagPole
Object.absolutePosition 1798.74/38.306/1943.2
Object.Rotation 0/0/0
object.create FlagPole
Object.absolutePosition 1697.61/38.306/1781.07
Object.Rotation 0/0/0
rem ----------------------------------------------------------------------------
endIf
include ../../../../../OBJECTS/items/basekit/ai/objects.con
include ../../../../../objects/soldiers/common/AI/Objects.con
include ../../../../../OBJECTS/handweapons/ak47/AI/weapons.con
include ../../../../../OBJECTS/handweapons/ak47gp30/AI/weapons.con
include ../../../../../OBJECTS/handweapons/AKS-74u/AI/weapons.con
include ../../../../../OBJECTS/handweapons/APlandmine/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Browninghipo/AI/weapons.con
include ../../../../../OBJECTS/handweapons/C4/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Car-15/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Common/AI/weapons.con
include ../../../../../OBJECTS/handweapons/GrenadeAllies/AI/weapons.con
include ../../../../../OBJECTS/handweapons/KnifeAllies/AI/weapons.con
include ../../../../../OBJECTS/handweapons/KnifeAxis/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Landmine/AI/weapons.con
include ../../../../../OBJECTS/handweapons/M4/AI/weapons.con
include ../../../../../OBJECTS/handweapons/M9_beretta/AI/weapons.con
include ../../../../../OBJECTS/handweapons/M16/AI/weapons.con
include ../../../../../OBJECTS/handweapons/M16a2/AI/weapons.con
include ../../../../../OBJECTS/handweapons/M25/AI/weapons.con
include ../../../../../OBJECTS/handweapons/M82/AI/weapons.con
include ../../../../../OBJECTS/handweapons/M203/AI/weapons.con
include ../../../../../OBJECTS/handweapons/M249/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Medpack/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Mk23/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Mortar/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Mortar_deploy/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Mortar_weap/AI/weapons.con
include ../../../../../OBJECTS/handweapons/MP5/AI/weapons.con
include ../../../../../OBJECTS/handweapons/MP5sd/AI/weapons.con
include ../../../../../OBJECTS/handweapons/PKM/AI/weapons.con
include ../../../../../OBJECTS/handweapons/PSS/AI/weapons.con
include ../../../../../OBJECTS/handweapons/remington/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Repairpack/AI/weapons.con
include ../../../../../OBJECTS/handweapons/RPG/AI/weapons.con
include ../../../../../OBJECTS/handweapons/RPG7/AI/weapons.con
include ../../../../../OBJECTS/handweapons/SA-7/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Saiga12k/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Sandbag/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Skorpion/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Smaw/AI/weapons.con
include ../../../../../OBJECTS/handweapons/SmokeGrenade/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Stinger/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Stingermissle/AI/weapons.con
include ../../../../../OBJECTS/handweapons/Tabuk/AI/weapons.con
include ../../../../../OBJECTS/handweapons/VSS/AI/weapons.con
include ../../../../../objects/handweapons/Bar1918/AI/weapons.con
include ../../../../../objects/handweapons/Bazooka/AI/weapons.con
include ../../../../../objects/handweapons/Binoculars/AI/weapons.con
include ../../../../../objects/handweapons/Colt/AI/weapons.con
include ../../../../../objects/handweapons/Common/AI/weapons.con
include ../../../../../objects/handweapons/Detonator/AI/weapons.con
include ../../../../../objects/handweapons/DP/AI/weapons.con
include ../../../../../objects/handweapons/ExpPack/AI/weapons.con
include ../../../../../objects/handweapons/GrenadeAxis/AI/weapons.con
include ../../../../../objects/handweapons/JohnsonLMG/AI/weapons.con
include ../../../../../objects/handweapons/K98/AI/weapons.con
include ../../../../../objects/handweapons/M1Garand/AI/weapons.con
include ../../../../../objects/handweapons/MP18/AI/weapons.con
include ../../../../../objects/handweapons/MP40/AI/weapons.con
include ../../../../../objects/handweapons/No4/AI/weapons.con
include ../../../../../objects/handweapons/Panzershreck/AI/weapons.con
include ../../../../../objects/handweapons/riflebulletclip_m1/AI/weapons.con
include ../../../../../objects/handweapons/Sg44/AI/weapons.con
include ../../../../../objects/handweapons/Thompson/AI/weapons.con
include ../../../../../objects/handweapons/Type5/AI/weapons.con
include ../../../../../objects/handweapons/Type99/AI/weapons.con
include ../../../../../objects/handweapons/Walther938/AI/weapons.con
Code: Select all
rem ************** LEVEL SPECIFIC AI SETTINGS ***************************
run AI/AIdefault.con v_arg1
run AI/AIbehaviours.con v_arg1
aiSettings.setWorldMapSize 2048 2048
aiSettings.viewDistance 55
aiSettings.setInformationGridDimension 32
rem ********************** START THE AI *********************************
rem *** Init AI using current settings ****
ai.init 2
rem *** init Botmanager ***
AIBotManager.setLodLevelTicks 6 6 6
AIBotManager.setLodLevelPriority 3 3 3
AIBotManager.setPlannedDecisionMakingThreshold 0.5 0.5 0.5
AIBotManager.setUnplannedDecisionMakingThreshold 0.3 0.4 0.4
AIBotManager.setDecisionMakingInterleave 2 2
AIBotManager.setSensingQuotient 1 1
AIBotManager.setSystemQuotient 40 40 20
rem *** Strategic map dimension, MUST BE DONE BEFORE CREATING SAI! ***
ai.saiMapXDimension 64
ai.saiMapYDimension 64
rem *** Create Strategic AI ***
ai.createSAI
rem *** Enabled or disabled as default ***
ai.saiEnable 1
rem game.showAIstats 1
run AIPathFinding.con
run AI/StrategicAreas.con
rem *** L;oad and set strategies for each side ***
run ai/conditions.con
run ai/prerequisites.con
run ai/Strategies.con
ai.addSAIStrategy 1 west
ai.addSAIStrategy 1 east
ai.addSAIStrategy 1 south
ai.addSAIStrategy 1 north
ai.addSAIStrategy 1 wide
ai.addSAIStrategy 1 finalPush
ai.addSAIStrategy 1 breakOut
ai.addSAIStrategy 2 west
ai.addSAIStrategy 2 east
ai.addSAIStrategy 2 south
ai.addSAIStrategy 2 north
ai.addSAIStrategy 2 wide
ai.addSAIStrategy 2 finalPush
ai.addSAIStrategy 2 breakOut