****************************** Configuring the Bot ****************************** Bot CVARS are located inside yapb.cfg and parsed on every level change. So new config will be applied on map change or by issuing ``exec addons/yapb/conf/yapb.cfg`` inside the server console. CVARs can be changed on the fly by typing them into the console. Bot CVARS ================================ yb_attack_monsters ------------------------------------------- Allows or disallows bots to attack monsters. Useful for mods like Halloween Mod. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_autokill_delay ------------------------------------------- Specifies amount of time in seconds when bots will be killed if no humans left alive. Minimum value is ``0``, Maximum value is ``90``, Default value is ``0``. yb_autovacate ------------------------------------------- If not zero, bots will automatically leave to make room for human players, when they join the server. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_autovacate_keep_slots ------------------------------------------- How many slots autovacate feature should keep for human players Minimum value is ``1``, Maximum value is ``8``, Default value is ``1``. yb_avoid_grenades ------------------------------------------- Allows bots to partially avoid grenades. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_bind_menu_key ------------------------------------------- Binds the specified key to open a bot menu. Default value is ``=``. yb_botbuy ------------------------------------------- If not zero, bots will be able to buy weapons and inventory. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_botskin_t ------------------------------------------- Specifies the bots wanted skin for Terrorists team. Allowed values: * ``0`` - Any class * ``1`` - Phoenix Connexion * ``2`` - Elite Crew * ``3`` - Arctic Avengers * ``4`` - Guerilla Warfare * ``5`` - Midwest Militia **(Condition Zero only!)** Minimum value is ``0``, Maximum value is ``5``, Default value is ``0``. yb_botskin_ct ------------------------------------------- Specifies the bots wanted skin for Counter-Terrorists team. Allowed values: * ``0`` - Any class * ``1`` - Seal Team 6 * ``2`` - GSG-9 * ``3`` - SAS * ``4`` - GIGN * ``5`` - Spetsnaz **(Condition Zero only!)** Minimum value is ``0``, Maximum value is ``5``, Default value is ``0``. yb_breakable_health_limit ------------------------------------------- Specifies the maximum health of breakable object, that bot will consider to destroy. Minimum value is ``1``, Maximum value is ``3000``, Default value is ``500``. yb_camping_allowed ------------------------------------------- If not zero, bots will try to pickup camp points as their goals, and will camp there for some time based on their personality. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_camping_time_min ------------------------------------------- Lower bound of time from which time for camping is calculated. Minimum value is ``5``, Maximum value is ``90``, Default value is ``15``. yb_camping_time_max ------------------------------------------- Upper bound of time until which time for camping is calculated. Minimum value is ``15``, Maximum value is ``120``, Default value is ``45``. yb_chat ------------------------------------------- If not zero, bots will be able to chat to each other and players while they are dead. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_chat_percent ------------------------------------------- Bot chances to send random dead chat when killed. Minimum value is ``0``, Maximum value is ``100``, Default value is ``30``. yb_check_darkness ------------------------------------------- Allows or disallows bot to check environment for darkness, thus allows or not to use flashlights or NVG. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_check_enemy_invincibility ------------------------------------------- Enables or disables checking enemy invincibility. Useful for some mods. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_check_enemy_rendering ------------------------------------------- Allows to check enemy rendering before taking a victim. This is useful to enable when you plays CSDM mod with spawn protection enabled. Bots will not try to select just-spawned players, as they are not vulnerable. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_csdm_mode ------------------------------------------- Enables or disables CSDM / FFA mode for bots. * If set to ``0``, CSDM / FFA mode is auto-detected. * If set to ``1``, CSDM mode is enabled, but FFA is disabled. * If set to ``2``, CSDM and FFA mode is enabled. * If set to ``3``, CSDM and FFA mode is disabled. Minimum value is ``0``, Maximum value is ``3``, Default value is ``0``. yb_chatter_path ------------------------------------------- Points to location where chatter (from official csbot for example) is located. Minimum value is ``-``, Maximum value is ``-``, Default value is ``sound/radio/bot``. yb_count_players_for_fakeping ------------------------------------------- Take players' pings into account when calculating the average ping for bots. If not, a random ping will be chosen for bots. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_debug ------------------------------------------- If not zero, enables useful messages about bot states. Not required for end users. Minimum value is ``0``, Maximum value is ``4``, Default value is ``0``. yb_debug_goal ------------------------------------------- Forces all alive bots to build path and go to the specified here graph node. Minimum value is ``-1``, Maximum value is ``2048``, Default value is ``-1``. yb_destroy_breakables_around ------------------------------------------- Allows bots to destroy breakables around him, even without touching with them. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_difficulty ------------------------------------------- Specifies the difficulty of all bots. Changing at runtime will affect already created bots. List of bot difficulties: * ``0`` - Newbie, * ``1`` - Average, * ``2`` - Normal, * ``3`` - Professional, * ``4`` - Godlike. Minimum value is ``0``, Maximum value is ``4``, Default value is ``4``. yb_difficulty_auto_balance_interval ------------------------------------------- Interval in which bots will balance their difficulty. Minimum value is ``30``, Maximum value is ``240``, Default value is ``30``. yb_difficulty_min ------------------------------------------- Lower bound of random difficulty on bot creation. Only affects newly created bots. ``-1`` means yb_difficulty only used. Minimum value is ``-1``, Maximum value is ``4``, Default value is ``-1``. yb_difficulty_max ------------------------------------------- Upper bound of random difficulty on bot creation. Only affects newly created bots. ``-1`` means yb_difficulty only used. Minimum value is ``-1``, Maximum value is ``4``, Default value is ``-1``. yb_difficulty_auto ------------------------------------------- Enables each bot balances own difficulty based kd-ratio of team. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_display_welcome_text ------------------------------------------- Specifies if the bot dll will display welcome text when adding bots. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_display_menu_text ------------------------------------------- Enables or disables display menu text, when players asks for menu. Useful only for Android. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_economics_disrespect_percent ------------------------------------------- Allows bots to ignore the economics and buy weapons with disrespect of it. Minimum value is ``0``, Maximum value is ``100``, Default value is ``25``. yb_economics_rounds ------------------------------------------- If not zero, bots will use "team" economics, if more than 70% of players don't have money to buy preferred weapon no-one buy anything to save money for the next round. This usually causes bots running with default pistols on first round. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_enable_fake_steamids ------------------------------------------- Allows or disallows bots to return fake Steam ID. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_enable_query_hook ------------------------------------------- Enables fake server queries response, that shows bots as real players in server browser. .. Note:: If you run bots on a dedicated server, make sure you have ``EnableFakeBotFeatures`` enabled in ``custom.cfg`` for this feature to work. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_freeze_bots ------------------------------------------- If not zero, bots think function is paused and bots stays at the place where they were been before activating these cvar. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_graph_analyze_auto_save ------------------------------------------- Automatically saves the analysis results to a graph file. And adds bots again. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_graph_analyze_auto_start ------------------------------------------- Starts the map autoanalyzer if the graph is not present in the local storage or database. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_graph_analyze_clean_paths_on_finish ------------------------------------------- Specifies if analyzer should clean the unnecessary paths upon finishing. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_graph_analyze_distance ------------------------------------------- Specifies the minimum distance to keep nodes from each other. Minimum value is ``42``, Maximum value is ``128``, Default value is ``64``. yb_graph_analyze_fps ------------------------------------------- Specifies the FPS at which analyzer process is running. This keeps game from freezing during analyzing. Minimum value is ``25``, Maximum value is ``99``, Default value is ``30``. yb_graph_analyze_mark_goals_on_finish ------------------------------------------- Specifies if analyzer should mark nodes as map goals automatically upon finish. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_graph_analyze_max_jump_height ------------------------------------------- Specifies the max jump height to test if next node will be unreachable. Minimum value is ``44``, Maximum value is ``64``, Default value is ``44``. yb_graph_analyze_optimize_nodes_on_finish ------------------------------------------- Specifies if analyzer should merge some near-placed nodes with much of connections together. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_graph_auto_collect_db ------------------------------------------- Allows the bot to scan the ``graph`` folder and upload every single ``.graph`` file to the database if they are not there. This is done in a separate thread and does not block the server process. .. Note:: It works only at server startup, not at map change. Also it does not work on the currently started map. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_graph_auto_save_count ------------------------------------------- Every N graph nodes placed on map, the graph will be saved automatically (without checks). If you want to disable autosave, set this cvar to ``0``. Minimum value is ``0``, Maximum value is ``2048``, Default value is ``15``. yb_graph_draw_distance ------------------------------------------- Maximum distance to draw graph nodes from editor viewport. Minimum value is ``64``, Maximum value is ``3072``, Default value is ``400``. yb_graph_fixcamp ------------------------------------------- Specifies whether bot should not 'fix' camp directions of camp waypoints when loading old PWF format. .. note:: This option was made to fix camp directions when using waypoints from PODBot 2.5, old YaPB versions or other PODBot clones that do not allow to set a horizontal camp direction. If you are using pwf waypoints from PODBot 3.0 this cvar should be disabled, as it can break the directions of the camp nodes. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_graph_url ------------------------------------------- Specifies the host where graph database is located. They must be in ``/graph`` path on the server. Set to empty, if you don't want downloads Allowed values: Valid DNS hostname with HTTP server listening on port 80. Default value is ``yapb.jeefo.net``. yb_graph_url_upload ------------------------------------------- Specifies the URL to which bots will try to upload the graph file to database. Default value is ``yapb.jeefo.net/upload``. yb_grenadier_mode ------------------------------------------- If enabled, bots will not apply throwing condition on grenades. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_has_team_semiclip ------------------------------------------- When enabled, bots will not try to avoid teammates on their way. Assuming that some of the semiclip plugins are in use. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_ignore_cvars_on_changelevel ------------------------------------------- Comma separated list of bot cvars to ignore on changelevel. Bots reads ``yapb.cfg`` every changelevel, and the values of bot cvars are overwritten with those located in config. This cvar allows server admin to ignore values of specified here cvars from ``yapb.cfg`` if they were changed by hand from server console. For example: Server started with ``yb_quota`` set to ``10`` in ``yapb.cfg`` and ``yb_quota`` is specified in ``yb_ignore_cvars_on_changelevel``. Time passed, server admin decide that ``yb_quota`` should be set to ``12`` and set it via server console. Next time server will change map, value of ``yb_quota`` will not be changed while reading ``yapb.cfg`` and will stay ``12``. If you want to disable ignoring reading cvars from ``yapb.cfg``, then leave the value empty ``yb_ignore_cvars_on_changelevel ""`` in ``yapb.cfg`` Minimum value is ``-``, Maximum value is ``-``, Default value is ``yb_quota,yb_autovacate``. yb_ignore_enemies ------------------------------------------- If not zero, bots will run all over the map, and doing goals but will not search for enemies. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_ignore_enemies_after_spawn_time ------------------------------------------- Make bots ignore enemies for a specified here time in seconds on new round. Useful for Zombie Plague mods. Minimum value is ``0``, Maximum value is ``540``, Default value is ``0``. yb_ignore_map_prefix_game_mode ------------------------------------------- If enabled, bots will not apply game modes based on map name prefix (fy_ and ka_ specifically). Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_ignore_objectives ------------------------------------------- Allows or disallows bots to do map objectives, i.e. plant/defuse bombs, and saves hostages. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_jasonmode ------------------------------------------- If not zero, bots will use only knives while fighting against enemies. This also disabling buying. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_join_after_player ------------------------------------------- If not zero, bots will join the server only when some human player already joined the team. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_join_team ------------------------------------------- Forces all bots to join team specified in this cvars. Valid values: ``ct``, ``t``, ``any``, Default value is ``any``. yb_join_delay ------------------------------------------- Specifies after how many seconds bots should start to join the game after the changelevel. Minimum value is ``0``, Maximum value is ``30``, Default value is ``5``. yb_kick_after_player_connect ------------------------------------------- Kick the bot immediately when a human player joins the server (yb_autovacate must be enabled). Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_language ------------------------------------------- Sets the bot language for menus, names, chat and messages. Valid values: ``ru``, ``en``, ``de``, Default value is ``en``. yb_logger_disable_logfile ------------------------------------------- Disables logger to write anything to log file. Just spew content to the console. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_max_nodes_for_predict ------------------------------------------- Maximum number for path length, to predict the enemy. Minimum value is ``15``, Maximum value is ``256``, Default value is ``25``. yb_name_prefix ------------------------------------------- This cvar contains a string that will be prepended to every added bot name. Something like a clantag. By default this value is not set. yb_object_destroy_radius ------------------------------------------- The radius on which bot destroy breakables around it, when not touching with them. Minimum value is ``64``, Maximum value is ``1024``, Default value is ``400``. yb_object_pickup_radius ------------------------------------------- The radius on which bot searches world for new objects, items, and weapons. Minimum value is ``64``, Maximum value is ``1024``, Default value is ``450``. yb_password_key ------------------------------------------- Specifies the password key for ``setinfo`` command, to gain remote control to ``yb`` command and bot menus. Default value is: ``_ybpw``. yb_password ------------------------------------------- Specifies the actual password for ``setinfo`` command, to gain remote control to ``yb`` command and bot menus. To gain access to bot command remotely, user should open console and enter ``setinfo key password``, when ``key`` is value from from ``yb_password_key`` and password is value from ``yb_password``. By default this value is not set. yb_path_astar_post_smooth ------------------------------------------- Enables post-smoothing for A*. Reduces zig-zags on paths at cost of some CPU cycles. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_path_danger_factor_min ------------------------------------------- Lower bound of danger factor that used to add additional danger to path based on practice. The ``yb_path_danger_factor_min`` and ``yb_path_danger_factor_max`` cvars are used to make dangerous paths even more dangerous based on a random value between these cvars. It means that bots will be less likely to build paths through these nodes. These cvars do not affect the goal node, because despite the danger, the bots will go to this node in order to complete the goal (plant a bomb, take a hostage, etc.) Minimum value is ``100``, Maximum value is ``2400``, Default value is ``200``. yb_path_danger_factor_max ------------------------------------------- Upper bound of danger factor that used to add additional danger to path based on practice. Minimum value is ``200``, Maximum value is ``4800``, Default value is ``400``. yb_path_dijkstra_simple_distance ------------------------------------------- Use simple distance path calculation instead of running full Dijkstra path cycle. Used only when Floyd matrices unavailable due to memory limit. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_path_floyd_memory_limit ------------------------------------------- Limit maximum floyd-warshall memory (megabytes). Use Dijkstra if memory exceeds. Minimum value is ``0``, Maximum value is ``32``, Default value is ``6``. yb_path_heuristic_type ------------------------------------------- Selects the heuristic function mode. For debug purposes only. Minimum value is ``0``, Maximum value is ``4``, Default value is ``0``. yb_path_randomize_on_round_start ------------------------------------------- Randomize pathfinding on each round start. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_pickup_ammo_and_kits ------------------------------------------- Allows bots pickup mod items like ammo, health kits and suits. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_pickup_best ------------------------------------------- Allows or disallows bots to pickup best weapons. (Disabling can be useful for some mods with non-pickable weapons). Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_pickup_custom_items ------------------------------------------- Allows or disallows bots to pickup custom items. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_ping_base_min ------------------------------------------- Lower bound for base bot ping shown in scoreboard. Affects only on newly created bots. Minimum value is ``0``, Maximum value is ``100``, Default value is ``7``. yb_ping_base_max ------------------------------------------- Upper bound for base bot ping shown in scoreboard. Affects only on newly created bots. Minimum value is ``0``, Maximum value is ``100``, Default value is ``34``. yb_quota ------------------------------------------- Determines the total number of bots in the game. Minimum value is ``0``, Maximum value is ``32``, Default value is ``9``. yb_quota_adding_interval ------------------------------------------- Interval in which bots are added to the game. Minimum value is ``0.10``, Maximum value is ``1``, Default value is ``0.10``. yb_quota_maintain_interval ------------------------------------------- Interval on which overall bot quota are checked. Minimum value is ``0.40``, Maximum value is ``2``, Default value is ``0.40``. yb_quota_mode ------------------------------------------- Determines the type of how ``yb_quota`` works. * If set ``fill``, the server will adjust bots to keep N players in the game, where N is ``yb_quota``. * If set ``match``, the server will maintain a 1:N ratio of humans to bots, where N is ``yb_quota``. * If set ``normal``, this variable does not affect ``yb_quota``. Allowed values is ``normal``, ``fill`` and ``match``, Default value is ``normal``. yb_quota_match ------------------------------------------- Determines the total number of bots in the game, when the ``yb_quota_mode`` is set to ``match``, i.e. for every human, N bots join. Minimum value is ``0``, Maximum value is ``32``, Default value is ``0``. yb_radio_mode ------------------------------------------- Specifies the way bots are talking to each other and player. * If set to ``0`` bots will not communicate at all. * If set to ``1`` bots will use only the radio. * If set to ``2`` bots will use chatter. .. Note:: Chatter will be used only if bot will find valid wave files in specified in ``yb_chatter_path`` directory. Minimum value is ``0``, Maximum value is ``2``, Default value is ``2``. yb_random_knife_attacks ------------------------------------------- Allows or disallows the ability for random knife attacks when bot is rushing and no enemy is nearby. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_restricted_weapons ------------------------------------------- A list of individual weapons that are restricted for bot to buy. Separated by semicolon. The list of weapons for Counter-Strike 1.6:: usp - HK USP .45 Tactical glock - Glock18 Select Fire deagle - Desert Eagle .50AE p228 - SIG P228 elite - Dual Beretta 96G Elite fn57 - FN Five-Seven m3 - Benelli M3 Super90 xm1014 - Benelli XM1014 mp5 - HK MP5-Navy tmp - Steyr Tactical Machine Pistol p90 - FN P90 mac10 - Ingram MAC-10 ump45 - HK UMP45 ak47 - Automat Kalashnikov AK-47 galil - IMI Galil famas - GIAT FAMAS sg552 - Sig SG-552 Commando m4a1 - Colt M4A1 Carbine aug - Steyr Aug scout - Steyr Scout awp - AI Arctic Warfare/Magnum g3sg1 - HK G3/SG-1 Sniper Rifle sg550 - Sig SG-550 Sniper m249 - FN M249 Para flash - Concussion Grenade hegren - High-Explosive Grenade sgren - Smoke Grenade vest - Kevlar Vest vesthelm - Kevlar Vest and Helmet defuser - Defuser Kit shield - Tactical Shield By default this value is not set. yb_rotate_bots ------------------------------------------- Randomly disconnect and connect bots, simulating players join/quit. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_rotate_stay_max ------------------------------------------- Specifies maximum amount of seconds bot keep connected, if rotation active. Minimum value is ``1800``, Maximum value is ``14400``, Default value is ``3600``. yb_rotate_stay_min ------------------------------------------- Specifies minimum amount of seconds bot keep connected, if rotation active. Minimum value is ``120``, Maximum value is ``7200``, Default value is ``360``. yb_save_bots_names ------------------------------------------- Allows to save bot names upon changelevel, so bot names will be the same after a map change Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_shoots_thru_walls ------------------------------------------- Determines the method how bots checks if wall/obstacle is penetrable. If set to ``1`` bots will try to shoot through walls more actively, even unrealistically. If set to ``2`` bots will use algorithm from original PODBot, and shoot through walls less. The ``2`` method is consuming a bit more CPU power than the ``1`` method. Minimum value is ``1``, Maximum value is ``3``, Default value is ``2``. yb_show_avatars ------------------------------------------- Enables or disables displaying bot avatars in front of their names in scoreboard. Note, that is currently you can see only avatars of your steam friends. .. Note:: If you run bots on a dedicated server, make sure you have ``EnableFakeBotFeatures`` enabled in ``custom.cfg`` for this feature to work. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_show_latency ------------------------------------------- Determines the type of bots ping displayed. * If set to ``0`` there will be no anything in scoreboard about bot ping. * If set to ``1`` there will be "BOT" displayed for every bot in scoreboard. * If set to ``2`` there will be "fake" ping displayed for every bot in scoreboard. .. Note:: If you run bots on a dedicated server, make sure you have ``EnableFakeBotFeatures`` enabled in ``custom.cfg`` for this feature to work. Minimum value is ``0``, Maximum value is ``2``, Default value is ``2``. yb_smoke_grenade_checks ------------------------------------------- Determines the method of how smoke affects the bot's vision * If set to ``0`` the smoke won't affect the bot's vision. * If set to ``1`` the smoke affection method from PODBot will be used. * If set to ``2`` the smoke affection method from official CSBot (a.k.a. ZBot) will be used. ZBot's method allow the bot to shoot at enemies in smoke clouds under certain circumstances, while PODBot's certainly cannot. Minimum value is ``0``, Maximum value is ``2``, Default value is ``2``. yb_spraypaints ------------------------------------------- If not zero, bots will spray some paints all over the map. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_stab_close_enemies ------------------------------------------- If not zero, bots will stab the enemy with knife if bot is in good condition. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_think_fps ------------------------------------------- Determines how many times per second the rest of bot AI is executed. Higher values will give more smooth movement, but will cause CPU waste, and may cause problems with dedicated servers that have more than 500 fps. Minimum value is ``24``, Maximum value is ``90``, Default value is ``26``. yb_think_fps_disable ------------------------------------------- Allows to completely disable think fps on Xash3D. It avoids laggy movement of bots when watching them in spectator mode. .. Note:: This cvar goes into effect when new bots are added. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_threadpool_workers ------------------------------------------- Maximum number of threads bot will run to process some tasks. -1 means half of CPU cores used. Minimum value is ``-1``, Maximum value is ``count of your CPU's threads``, Default value is ``-1``. yb_tkpunish ------------------------------------------- If not zero, bots will punish teammates that attacks the bot. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_use_engine_pvs_check ------------------------------------------- Use engine to check potential visibility of an enemy. It reduces the number of calls to engine functions, thus reducing CPU usage. The side effect is that bots can fire through obstacles more blatantly. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. yb_user_follow_percent ------------------------------------------- Determines percentage of bots that will try to automatically follow the leader. Bots treats bomb guy, vip and human players as leader. Minimum value is ``0``, Maximum value is ``100``, Default value is ``20``. yb_user_max_followers ------------------------------------------- Determines how many bots can respond to human player on ``Follow Me`` command and follow the human. Minimum value is ``0``, Maximum value is ``16``, Default value is ``1``. yb_walking_allowed ------------------------------------------- If not zero, bots will use "shift" or walking when hearing the nearby enemy. Minimum value is ``0``, Maximum value is ``1``, Default value is ``1``. yb_whose_your_daddy ------------------------------------------- Enables or disables extra hard difficulty for bots. It zeroes out any reaction or surprise timers, and allows bots to ignore FOV when searching for enemies. It also forces the bots to aim their weapon at the enemy almost immediately. Minimum value is ``0``, Maximum value is ``1``, Default value is ``0``. Map Specific Configuration ================================ Map specific configs where user-configured cvars are stored. The filename is ``mapname.cfg`` where "mapname" is name of the map for which this config was created eg: ``de_dust.cfg`` for de_dust map. This file located at ``addons/yapb/conf/maps`` directory. You can use the cvars shown above to write in this config. They will be executed automatically when you start a map specified in the name of this config. By default YaPB does not have any configs for maps. Custom Configuration File ================================ A custom config file that allows you to change some hard-coded things in the bot code. It's located in ``addons/yapb/conf/custom.cfg`` ``C4ModelName`` - It sets a custom name for C4 model, for servers that replace C4 model with it's own. By default it's ``c4.mdl`` (the models/path is omitted), so if you need to use ``models/mybomb/mybomb.mdl``, you should specify ``mybomb/mybomb.mdl``. ``AMXParachuteCvar`` - It sets a custom cvar name for parachute handling, there are various plugins that handles parachute (AMX Parachute, AMX Parachute Lite, etc.), you can specify needed cvar here. ``CustomCSDMSpawnPoint`` - It sets a custom spawn point classname for CSDM mods that add custom spawn points other than info_player_start and info_player_deathmatch. So bots will be able to join the game without default spawn entities. ``CSDMDetectCvar`` - It sets a cvar to detect the CSDM mod if it is activated in the game. ``ZMDetectCvar`` - It sets a cvar to detect the Zombie mod. ``ZMDelayCvar`` - It sets a cvar that deals with time before any game mode starts. ``ZMInfectedTeam`` - It determines the team on which infected players are on. Valid values: T, CT. ``EnableFakeBotFeatures`` - It decides if fake features (like a fake time, fake SID (avatar), fakeping) should be enabled whitin bot code on dedicated server. By default it's off. To enable it you're should provide variable with: ``i'm confident for what i'm doing`` value. Its value doesn't affect the listen server. Bot Difficulty Configuration ================================ You can fine-tune the bots thanks to the difficulty configuration file. It contains the values of reaction time, headshot and wallshot probabilities, recoil control values, and aim offset axes. Each of these values is tied to each difficulty level. The bots difficulty configuration file is located on the path ``addons/yapb/conf/difficulty.cfg`` The valid format is:: Level = minReactionTime(s),maxReactionTime(s),headshotProbability,seenThruWallChance,heardThruWallChance,maxWeaponRecoil,aimError Where:: minReactionTime - Minimal time in seconds from when the bot first saw the enemy to when it can recognize it. maxReactionTime - Same as above, but upper cap of the limit. headshotProbability - The probability that the bot will aim at the head instead of body, if both body and head are visible. seenThruWallChance - Chance that the bot will attack the enemy if it believes that it is there and just saw it. heardThruWallChance - Chance that the bot will attack the enemy if it believes that it is there and just heard it. maxWeaponRecoil - Maximum weapon recoil to compensate by pausing fire. aimError - (x, y, z) offsets to add aim error to bot aiming Example:: Expert = 0.1, 0.2, 100, 90, 90, 21, 0.0, 0.0, 0.0 Logos Configuration ================================ List of the bot spray paints are stored is in ``addons/yapb/conf/logos.cfg``. It uses textures from decals.wad, so if you want to add a new spray paint texture, it should be in that file. To see available textures in decals.wad you can use special tools like Wally, Half-Life Texture Tools, etc. Default spray paints list:: {biohaz {graf003 {graf004 {graf005 {lambda06 {target {hand1 {spit2 {bloodhand6 {foot_l {foot_r Weapons Configuration ================================ Main config where most stuff regarding weapon handling is defined. The filename is ``weapon.cfg`` and located at ``addons/yapb/conf`` directory. To edit this file you need to know the weapon numbering. MapStandard Field ---------------------------- This field is by default used on all maps except VIP scenario. Below is the table that specifies which Team is allowed to buy a weapon on a Map. You can also use it to allow/disallow Weapons for a Team or a Map/Gamemode (remember that some Weapons are team-specific and can't be bought by another team). Weapon buy flags:: -1 = Disallow Buying for any Team 0 = Terrorist Team only 1 = CT Team only 2 = Can be bought by both Teams Example:: MapStandard = -1,0,-1,2,-1,0,1,2,2,2,-1,2,-1,-1,0,0,1,0,1,1,2,2,0,1,2,1 MapAS Field ---------------------------- This field is by default used only on VIP scenario maps. Below is the table that specifies which Team is allowed to buy a weapon on a Map. You can also use it to allow/disallow Weapons for a Team or a Map/Gamemode (remember that some Weapons are team-specific and can't be bought by another team). Weapon buy flags:: -1 = Disallow Buying for any Team 0 = Terrorist Team only 1 = CT Team only 2 = Can be bought by both Teams Example:: MapAS = -1,-1,-1,2,-1,0,1,1,1,1,1,1,0,2,0,-1,1,0,1,1,0,0,-1,1,1,1 Grenade buying percentage ---------------------------- Specifies the buying percents for grenade inventory. From left to right:: 1 - HE grenade. 2 - Flashbang. 3 - Smoke grenade. Example:: GrenadePercent = 98,75,60 Bot Economics ---------------------------- Specifies economics values for buying the weapons. From left to right:: 1 - If bot has more money than the value specified here, it can buy the primary weapon. 2 - If bot has more money than the value specified here, it will not buy SMGs (MP5, MAC10, TMP, P90, UMP45, SCOUT) (only for CTs) (+ 8/9/10) 3 - If bot has more money than the value specified here, it will not buy SMGs (MP5, MAC10, TMP, P90, UMP45, SCOUT) (only for Ts) (+ 8/9/10)) 4 - If bot has more money than the value specified here, it can buy shotguns (M3, XM1014). 5 - If bot has less money than the value specified here, it cannot buy shotguns (M3, XM1014). 6 - If bot has more money than the value specified here, it can buy AWP, SG550, G3SG1, M249. 7 - If bot has less money than the value specified here, it cannot buy AWP, SG550, G3SG1, M249. 8 - How much money bot leaves in stock, at purchase of the primary weapon (only for type of behaviour - Normal) 9 - How much money bot leaves in stock, at purchase of the primary weapon (only for type of behaviour - Rusher). 10 - How much money bot leaves in stock, at purchase of the primary weapon (only for type of behaviour - Careful). 11 - If bot has more money than the value specified here, it can buy the shield. Example:: Economics = 1550,2100,2100,4000,6000,7000,16000,1200,800,1100,3000 Weapon Priorities ----------------------------- This table stores the Weapon Priorities of the Bots depending on Personality (it affects buying & picking up better weapons from the ground). Numbering of the weapons:: 0 - KNIFE 1 - USP 2 - GLOCK18 3 - DEAGLE 4 - P228 5 - ELITE 6 - FIVESEVEN 7 - M3 8 - XM1014 9 - MP5NAVY 10 - TMP 11 - P90 12 - MAC10 13 - UMP45 14 - AK47 15 - SG552 16 - M4A1 17 - GALIL 18 - FAMAS 19 - AUG 20 - SCOUT 21 - AWP 22 - G3SG1 23 - SG550 24 - M249 25 - SHIELD From left to right. Rightmost value is a most wanted bot weapon. Leftmost value is most worst weapon. .. Note:: Knife should most "worst" weapon in this table, otherwise things are messed up. Examples:: PersonalityNormal = 00,02,01,04,05,06,03,12,10,24,25,13,11,08,07,22,23,20,21,09,19,15,17,18,14,16 PersonalityRusher = 00,02,04,05,01,06,03,24,25,22,23,20,10,12,13,07,08,21,11,09,15,19,17,18,16,14 PersonalityCareful = 00,02,01,04,05,06,03,07,08,12,10,13,11,09,18,17,15,19,16,14,20,22,25,23,24,21