Can someone make a detailed installation tutorial of cod4x botwarfare

I have been trying to get it work for about 2 weeks. Trying to install version 2.0.1 cuz heard that v 2.1.0 doesn’t work anyways please cause im getting a headache on trying to figure this out

1 Like

What exactly are you having trouble with? This is taken from the read me. Men do not read instructions haha. It is really simple to get going.

TOP TIP. Both my servers de-ranked from GameTracker because I Never put [bot] in front of the bot names. I never knew about that and while I was testing servers obviously ranked up. Yes in this day and age people are still worried about that :rofl: and of course reported my servers. Get a life.

Anyway give me a shout if you need some help.

Installation

Using CoD4x’s extended functionality requires to use their Dedicated server, as explained here.

You can easily setup a local LAN dedicated server for you to join and play on. Have a look at Setting up a CoD4x server.

  1. Make sure that CoD4x server + client is installed, updated and working properly.
  2. Locate your CoD4x server install folder.
  3. Move the files/folders found in ‘Add to root of CoD4x server’ from the Bot Warfare release archive you downloaded to the root of your CoD4x server folder.
    • The folder/file structure should follow as .CoD4x server folder\main_shared\maps\mp\bots\_bot.gsc.
  4. The mod is now installed, now start your server, change the DVARs and start a map.
  5. Now start your CoD4x client and connect to your server (‘connect 127.0.0.1’ in the console most likely) and play!

Documentation

Menu Usage

  • You can open the menu by pressing the primary grenade and secondary grenade buttons together.

  • You can navigate the options by the pressing the ADS and fire keys, and you can select options by pressing your melee key.

  • Pressing the menu button again closes menus.

DVARs

Dvar Description Default Value
bots_main Enable this mod. true
bots_main_firstIsHost The first player to connect will be given host. true
bots_main_GUIDs A comma separated list of GUIDs of players who will be given host. “”
bots_main_waitForHostTime How many seconds to wait for the host player to connect before adding bots to the match. 10
bots_main_menu Enable the in-game menu for hosts. true
bots_main_debug Enable the in-game waypoint editor. false
bots_main_kickBotsAtEnd Kick the bots at the end of a match. false
bots_main_chat The rate bots will chat at, set to 0 to disable. 1.0
bots_manage_add Amount of bots to add to the game, once bots are added, resets back to 0. 0
bots_manage_fill Amount of players/bots (look at bots_manage_fill_mode) to maintain in the match. 0
bots_manage_fill_mode bots_manage_fill players/bots counting method.
  • 0 - counts both players and bots.
  • 1 - only counts bots.
0
bots_manage_fill_kick If the amount of players/bots in the match exceeds bots_manage_fill, kick bots until no longer exceeds. false
bots_manage_fill_spec If when counting players for bots_manage_fill should include spectators. true
bots_team One of autoassign, allies, axis, spectator, or custom. What team the bots should be on. autoassign
bots_team_amount When bots_team is set to custom. The amount of bots to be placed on the axis team. The remainder will be placed on the allies team. 0
bots_team_force If the server should force bots’ teams according to the bots_team value. When bots_team is autoassign, unbalanced teams will be balanced. This dvar is ignored when bots_team is custom. false
bots_team_mode When bots_team_force is true and bots_team is autoassign, players/bots counting method.
  • 0 - counts both players and bots.
  • 1 - only counts bots
0
bots_skill Bots’ difficulty.
  • 0 - Random difficulty for each bot.
  • 1 - Easiest difficulty for all bots.
  • 2 to 6 - Between easy and hard difficulty for all bots.
  • 7 - The hardest difficulty for all bots.
  • 8 - custom (look at the bots_skill_<team>_<difficulty> dvars
0
bots_skill_axis_hard When bots_skill is set to 8, the amount of hard difficulty bots to set on the axis team. 0
bots_skill_axis_med When bots_skill is set to 8, the amount of medium difficulty bots to set on the axis team. The remaining bots on the team will be set to easy difficulty. 0
bots_skill_allies_hard When bots_skill is set to 8, the amount of hard difficulty bots to set on the allies team. 0
bots_skill_allies_med When bots_skill is set to 8, the amount of medium difficulty bots to set on the allies team. The remaining bots on the team will be set to easy difficulty. 0
bots_skill_min The minimum difficulty level for the bots. 1
bots_skill_max The maximum difficulty level for the bots. 7
bots_loadout_reasonable If the bots should filter bad performing create-a-class selections. false
bots_loadout_allow_op If the bots should be able to use overpowered and annoying create-a-class selections. true
bots_loadout_rank What rank to set the bots.
  • -1 - Average of all players in the match.
  • 0 - All random.
  • 1 or higher - Sets the bots’ rank to this.
-1
bots_play_move If the bots can move. true
bots_play_knife If the bots can knife. true
bots_play_fire If the bots can fire. true
bots_play_nade If the bots can grenade. true
bots_play_obj If the bots can play the objective. true
bots_play_camp If the bots can camp. true
bots_play_jumpdrop If the bots can jump/drop shot. true
bots_play_target_other If the bots can target other entities other than players. true
bots_play_killstreak If the bots can call in killstreaks. true
bots_play_ads If the bots can aim down sights. true
bots_play_aim If the bots can aim.
3 Likes

This is the exact same thing on github idk if im stupid or it just kinda lacked instructions i followed this the last time and then i get steam error about an invalid token when i start a server don’t really know anything about that or i screwed up the installation process pls do reply back

Maybe this will help regarding the token?

1 Like

Ok ima gonna try this again tomorrow morning gonna sleep first i’ll reply to you later. btw thanks for replying

1 Like

This is the steam token problem i have

Ok i already fixed it. The problem was i wasn’t connected to any wifi if you want to play without wifi edit z_localserver.bat you see something about a dedicated server or something like that set it to to 0 for a listen server play local 1 for internet 2.

1 Like

Glad you got it sorted :slight_smile:

1 Like

hello thank you very much for the guide … I’m doing something wrong … the server works fine for a few hours and then it stops and throws this message … (image) … I think somewhere I read about the file … “_callbacksetup.gsx” …but now I can’t find where I read that … =( … my server uses the “new_experience” mod… and inside the “main_shared\maps\mp\gametypes” folder I already have a file called… “_callbacksetup.gsx”… I remember reading that it has to be replaced… … thank you very much in advance!

2022-11-09 00_10_49-WeWert Server Latam BO2 0_18

my … “_callbacksetup.gsx” …seems to be incomplete…?

CodeCallback_StartGameType()
{
// If the gametype has not beed started, run the startup
if(!isDefined(level.gametypestarted) || !level.gametypestarted)
{
[level.callbackStartGameType];

	level.gametypestarted = true; // so we know that the gametype has been started up

	level thread maps\mp\bots\_bot::init();
	level thread maps\mp\bots\_bot_chat::init();
	level thread maps\mp\bots\_menu::init();
	level thread maps\mp\bots\_wp_editor::init();
}

}


I just realized that this happens when entering a command of the “new experience” mod … example …“$fps” … the server crashes and that message appears (image) … I mean … how do I run the two mods in simultaneous? there are other servers that have both mods

I use both New Experience and Bot Warfare Mods and have no issues with $fps

can you post your full _callbacksetup.gsx file and I will compare it with mine

1 Like

In the past I have run both together with no issues.

Try running it with out the menu, chat and wp editor first and see how it goes.

Personally I did not bother with them. If it for you and friends then do you really need ?

My callbacksetup just had

level thread maps\mp\bots_bot::init();

1 Like

thanks for answering … ! I leave you here…

thanks for answering ! =) … how do I run it without …“the menu, the chat and the editor”

the server is a dedicated server… I mean, it’s public… it’s not just for my friends…

ok so your _callbacksetup.gsx is fine apart from the line to initiate the bots is missing:

Might be worth looking at your configs.

I run the NE config within my command line then at the bottom of this file I have
exec botsofwar.cfg

which then proceeds to run the server config

Are you set up similar?

1 Like

Downloaded your setup.

You have it loading the server config and then the NE config.

Try it the other way round

In your command line change +exec server.cfg to +exec config.cfg

Remove the entry of exec config.cfg from server.cfg
Add entry of exec server.cfg to bottom of config.cfg

Add the init thread for the bots to your _callbacksetup.gsx file

1 Like

Remove the bots dvars from your server.cfg file

Copy and paste these and alter to suit:

//******************************************************************************
// Load Bot Warfare DVAR's
//******************************************************************************

set bots_main 1
//Enable this mod.

set bots_main_firstIsHost 0
//The first player to connect will be given host.

set bots_main_GUIDs ""
//A comma separated list of GUIDs of players who will be given host.

set bots_main_waitForHostTime 0
//How many seconds to wait for the host player to connect before adding bots to the match.

set bots_main_menu 0
//Enable the in-game menu for hosts.

set bots_main_debug 0
//Enable the in-game waypoint editor.

set bots_main_kickBotsAtEnd 0
//Kick the bots at the end of a match.

set bots_main_chat 0
//	The rate bots will chat at, set to 0 to disable.

set bots_manage_add "8"
//amount of bots to add to the game, resets to 0 once the bots have been added

set bots_manage_fill "8"
//amount of players/bots (depends on bots_manage_fill_mode) to retain on the server, it will automatically add bots to fill player space.

set bots_manage_fill_mode "1"
// indicate if the server should consider only bots or players and bots when filling player space. 0 will consider both players and bots. 1 will only consider bots.

set bots_manage_fill_kick "0"
//whether or not if the server should kick bots if the amount of players/bots (depends on bots_manage_fill_mode) exceeds the value of bots_manage_fill.

set bots_manage_fill_spec "0"
//whether or not if the server should consider players who are on the spectator team when filling player space.

set bots_team "autoassign"
//indicates what team the bots should join autoassign allies axis custom

set bots_team_amount "0"
//amount of bots to have on the axis team if bots_team is set to 'custom', the rest of the bots will be placed on the allies team.

set bots_team_force "0"
//enforce periodically the bot's team instead of just a single team when the bot is added to the game.

set bots_team_mode "0"
// consider only bots or players and bots when counting players on the teams. 0 will consider both players and bots. 1 will only consider bots.

set bots_skill "2"
//value to indicate how difficult the bots should be.0 will be mixed difficultly 1 will be the most easy 2-6 will be in between most easy and most hard 7 will be the most hard. 8 will be custom.

set bots_skill_axis_hard "0"
//- an integer amount of hard bots on the axis team.

set bots_skill_axis_med "0"
//- an integer amount of medium bots on the axis team.

set bots_skill_allies_hard "0"
//- an integer amount of hard bots on the allies team.

set bots_skill_allies_med "0"
//- an integer amount of medium bots on the allies team, if bots_skill is 8 (custom). The remaining bots on the team will become easy bots.

set bots_skill_min 1
//The minimum difficulty level for the bots

set bots_skill_max	2
//The maximum difficulty level for the bots.

//for example: having 5 bots on the allies team, 'bots_skill_allies_hard 2' and 'bots_skill_allies_med 2' will have 2 hard bots, 2 medium bots, and 1 easy bot on the allies team

set bots_loadout_reasonable "1"
//whether or not if the bots should filter out bad create a class selections (like no silenced miniuzi with overkill perk, etc)

set bots_loadout_allow_op "0"
//whether or not if the bots are allowed to use jug, marty and laststand

set bots_loadout_rank 50
// what rank the bots should be around, -1 is around the players, 0 is all random

set bots_loadout_prestige 5
// what pretige the bots will be, -1 is the players, -2 is random

set bots_play_move 1
//bots move

set bots_play_knife 1
//bots knife

set bots_play_fire 1
//bots fire

set bots_play_nade 1
//bots grenade

set bots_play_obj 1
//bots play the obj

set bots_play_camp 0
//bots camp and follow

set bots_play_jumpdrop 0
//bots jump and dropshot

set bots_play_target_other 1
//bot target non play ents (vehicles)

set bots_play_killstreak 1
//bot use killstreaks

set bots_play_ads 1
//bot aim down sights

set bots_play_aim 1
//If the bots can aim.
1 Like

I did everything you explained to me… but I don’t know how and what to add to the “_callbacksetup.gsx” file… couldn’t you send the content of yours please…?

I don’t know which one is the “NE” configuration.

Thank you very much for your support …

your config.cfg is the NE config. Why not rename it config_ne.cfg so you know in future

Top of _callbacksetup.gsx:

CodeCallback_StartGameType()
{
	// If the gametype has not beed started, run the startup
	if(!isDefined(level.gametypestarted) || !level.gametypestarted)
	{
		[[level.callbackStartGameType]]();

		level.gametypestarted = true; // so we know that the gametype has been started up
		
		level thread maps\mp\bots\_bot::init();
		//level thread maps\mp\bots\_menu::init();
		//level thread maps\mp\bots\_wp_editor::init();

	}
}
1 Like

Oh by the way @CamouflageLvLCat, I have just realised you are not the threads original poster and have hijacked this thread. Any more help needed then please start your own thread as I don’t think the mods here like it when a thread gets hijacked :smile:

1 Like