Bots/fr

From Team Fortress Wiki
< Bots
Revision as of 20:02, 4 July 2010 by MistaWolf (talk | contribs)
Jump to: navigation, search

Il y a deux sortes de bots dans TF2:

  • Les premiers possèdent une intelligence artificielle (IA) sophistiquée, basé sur l'IA des infectés de Left 4 Dead[1]. Ils sont suffisamment intelligents pour remplacer des joueurs humains dans la plus part des cas. L'activation de la commande sv_cheats n'est pas nécessaire, ce qui permet aux joueurs humain de réaliser des succès en jouant contre des bots.
  • Les seconds n'ont pas d'IA, ce sont de simples marionnettes que l'on peut faire apparaitre pour faire différentes chose, comme les faire vous suivre partout et tirer. Ils sont utiles pour les testeurs ou pour céder à des fantasmes antisocial. La commande sv_cheats nécessite d'être activée, de ca fait les joueurs humains ne peuvent réaliser des succès en jouant avec eux.


Bots avec IA

Ces bots peuvent prendre la place de joueurs humains. Ils ne peuvent être qu'invoqués, ils ne peuvent pas être directement contrôlés. De plus, on ne peut pas choisir la classes des bots invoqués -- le jeu choisit pour vous.

Cependant, les bots apparaissant dans certaines classes peuvent être indirectement contrôlés, jusqu'à un certain point: un bot Medic vous soignera si vous l'appelez à l'aide(Touche "E" par défaut sur PC). Si un bot Medic vous soigne et qu'il possède une ÜberCharge prête, l'utilisation de la commande vocale "Go go go!" (Par défaut "W" puis "3" sur PC) ou de "Activate Charge!" (par défaut "X" puis "7" sur PC) forcera le bot à activer son ÜberCharge!

A propos de ce texte:

  • Les bots sont toujours en beta-test.
  • Toutes les classes ne sont pas représentées, par exemple pas de Spy; Il est probable qu'un humain Spy ai un comportent trop complexe pour qu'il soit efficacement reproduit par une intelligence artificielle. Valve travaille probablement dessus.
  • Ils fonctionnent sans soucis sur la plus part des maps officielles de type Roi de la colline et cp_dustbowl.
  • Les bots ne peuvent actuellement pas, ou ne pourront pas, sauter, rocketjumper ou stickyjumper volontairement.
  • Les bots n'utilisent pas à l'heure actuelle les objets déblocables ou trouvables (Chapeaux, armes, divers).

Commandes pour les bot avec IA

Pour utiliser les bots avec IA sur les map supportées, il suffit d'ouvrir la console et de taper les commandes suivantes:

Commande Description

tf_bot_add

Cette commande va créer un ou plusieurs bots avec IA de classes aléatoire dans une équipe au hasard. Ils porteront des noms humoristiques.

Syntaxe
tf_bot_add [<nombre>] [<classe>] [<équipe>] [<difficulté>]
Paramètres
<nombre>
Spécifie le <nombre> de bots à créer. Si le champ n'est pas renseigné, un seul bot sera créer.
Spécifier un nombre plus grand que la limite maximum de joueur sur le serveur (pensez a prendre en compte les joueur humain pendant le calcul) cause un arret des bots (i.e. Ils ne bougent plus). Donc si votre serveur peut accueillir 24 joueur (limite par défaut) et que vous êtes le seul humain à joué ne créez pas plus de 23 bots.
<classe>
La <classe> peut prendre les valeurs suivante: Demoman, Engineer, HeavyWeapons, Medic, Pyro, Scout, Soldier, Sniper ou Spy.
<équipe>
Spécifie l'équipe que doit rejoindre le bot crée. <équipe> peut prendre la valeur RED ou BLU
<difficulté>
Défini le niveau de difficulté du bot crée. <difficulté> peut être easy(facile), normal(normale), or hard(difficile).
Exemple
tf_bot_add red 3 heavyweapons easy ajoutera 3 Heavys à l'équipe RED avec le niveau de difficulté facile.

tf_bot_difficulty

Défini la difficulté de tout les bots rejoignant la partie.

Syntaxe
tf_bot_difficulty <niveau>
Paramètres
<niveau>
Défini un niveau de difficulté pour les bots. Les valeurs possible de <niveau> sont: 0=facile, 1=normale, 2=difficile, 3=expert. Par défaut le niveau de difficulté est à 1.
Exemple
tf_bot_difficulty 2 tout les bots crées après cette commande seront de niveau difficile.

tf_bot_force_class

Si renseigné par le nom d'une classe, tout les bots seront de cette classe.

Syntaxe
tf_bot_force_class <classe>
Paramètres
<classe>
La <classe> peut pendre les valeurs suivantes: Demoman, Engineer, HeavyWeapons, Medic, Pyro, Scout, Soldier, Sniper ou Spy. Par défaut le champ est laissé vide. (i.e. "").
Exemple
tf_bot_force_class medic changera tout les bots présent en Medic lors de leur prochain respawn.

tf_bot_join_after_player

Si non nul, les bots attendront la présence d'un joueur pour rejoindre la partie.

Syntaxe
tf_bot_join_after_player <entier>
Paramètres
<entier>
Soit 1, soit 0. Par défaut <entier> est à 1 (activé).
Exemple
tf_bot_join_after_player 0 permettra aux bots de rejoindre la partie même si aucun joueur humain n'est présent.

tf_bot_keep_class_after_death

Si nul, les bots choisiront une classe différente lors de leurs respawns.

Syntaxe
tf_bot_keep_class_after_death <entier>
Paramètres
<entier>
Soit 1, soit 0. Par défaut à 0 (désactivé).
Exemple
tf_bot_keep_class_after_death 1 Empêchera les bots de changer de classe.

tf_bot_kick

Cette commande supprimera un ou tout les bots de la partie.

Syntaxe
tf_bot_kick <nom/all>
Paramètres
<nom/all>
Spécifie le nom du bot à supprimer ou les supprime tous (all).
Exemple
tf_bot_kick CEDA supprimera le bot nommé "CEDA" s'il existe.

tf_bot_prefix_name_with_difficulty

Si non nul, rajoute le niveau de difficulté du bot dans son nom.

Syntaxe
tf_bot_prefix_name_with_difficulty <entier>
Paramètres
<entier>
Soit 1, soit 0. Par défaut à 0 (désactivé).
Exemple
tf_bot_prefix_name_with_difficulty 1 donnera des noms comme "1 Aimbot" (normal) et "3 Saxton Hale" (expert).

tf_bot_quota

Fixe la limite du nombre total de bot dans le jeu. N'a d'effet que si "tf_bot_quota_mode" = "fill" ou "match".

Syntaxe
tf_bot_quota <entier>
Paramètres
<entier>
<entier> peut pendre un valeur entre 0 inclus et le nombre maximum que le serveur peut accueillir. Par défaut à 0.
Exemple
tf_bot_quota 2, Si tf_bot_quota_mode = match, ajoutera 2 bots pour 1 humain.

tf_bot_quota_mode

Détermine le type du quota.

Syntaxe
tf_bot_quota_mode<normal/fill/match>
Paramètres
normal/fill/match
Si 'normal', le serveur n'ajoutera/ne supprimera aucuns bots de lui-même et la commande tf_bot_quota n'a pas d'effet.
Si 'fill', le serveur ajustera le nombre de bots pour qu'il y ai toujours N joueurs en jeu, N est la valeur de tf_bot_quota.
Si 'match', le serveur maintiendra un ratio de N bots pour 1 humain, N est la valeur de tf_bot_quota.
Exemple
tf_bot_quota_mode fill gardera toujours (bot_quota - nombre de joueurs humain) bots en jeu.


Il est possible d'utiliser les bot avec IA sur des map non supportées, mais le résultant est sans garantie. Premièrement le serveur doit avoir les codes activés (sv_cheats 1), et deuxièmement il faut générer le chemin des bots qui provoque un rechargement de la map, et troisièmement ces chemins ne fonctionnent généralement pas bien. Cependant si vous désirez tout de même utiliser des bots sur des maps non supportés voici la marche à suivre:

1) Ouvrez la console et tapez les commandes qui suivent
2) sv_cheats 1
3) nav_generate
4) Attendez quelques instant (peut prendre plusieurs minutes) que le jeu génère les chemins des bots
5) La map va se recharger (les chemins sont sauvegardés, pas besoin de refaire l'étape précédente)
6) tf_bot_add <nombre>

De plus, un packs de chemins pour bots a été réalisé pour de nombreuses maps.

Note: Les bots ne marchent pas sur les maps de type Capture de l'intelligence ou Payload même avec le tutoriel vu plus haut. Il faudra une nouvelle mise à jour des bots.


Noms des bots

Les bots avec IA sont programmés pour prendre différents noms. De nombreux noms sont des références aux travaux de Valve, tel que Portal, Left 4 Dead 1 & 2, Half-Life, etc... Il y a également des références a Team Fortress. Beaucoup de ces noms ont été demandés par la communauté les sur les forums de Steam.

Bots "marionnettes"

Les bots "marionnettes" ne comportent pas d'IA. Ils ne peuvent donc pas remplacer de vrais joueurs puisqu'ils sont dans l'incapacité d'agir d'eux-mêmes. Cependant, on peut les utiliser comme des poupées en leur faisant faire des actions simples tel le suivi du joueur ou le tir.

Ils sont principalement utiles pour tester le jeu. On peut également s'amuser en regardant une armée de parfaits soldats tirant leur roquettes à l'unisson ou alors exploser une douzaine d'ennemis impuissants avec une simple bombe collante.

Comme ils nécessitent que la valeur "sv_cheats" du serveur soit réglé sur 1, on ne peut pas utiliser des bots pour débloquer des succés.

Commandes pour les bots "marionnettes"

Plusieurs commandes peuvent ne pas marcher. Pour plus de clarté, nous avons préféré garder la liste complète de toutes les commandes. Il faut noter que si vous tapez une commande sans aucune valeur, la console vous affichera une fenêtre d'aide indiquant les commandes associés à celle tapée.

Command Description

bot

This command will create a bot on the given team with the specified class and name. If team or name is omitted, they will be assigned randomly.

Syntax
bot -team <teamname/number> -class <classname> -name <botname>
Parameters
-team teamname/number
Specifies the team name or number to assign the bot. Where name/number can be RED or 1, BLU or 0
-class classname
The classname of the class can be Demoman, Engineer, HeavyWeapons, Medic, Pyro, Scout, Soldier, Sniper, or Spy
-name botname
botname peut être n'importe quoi. S'il y a déjà quelqu'un avec le même nom, alors un nombre incrémental (commençant à 1) entouré de parenthèses sera ajouté au début du nom. Par exemple, joe, (1)joe, (2)joe, etc. Si aucun nom n'est donné, alors le nom sera "bot" suivi d'un nombre commençant par 01; par exemple, le premier bot sera bot01, le prochain sera bot02, et ainsi de suite.
Exemple
bot -team red -class Engineer -name joe

bot_changeclass

Force all bots to change to the specified class. Does not seem to be implemented, nothing happens.

bot_changeteams

Tous les bots changent d'équipe. Si un bot est dans l'équipe RED, alors il va dans l'équipe BLUE, et vice versa.

bot_command

Envoie la commande spécifiée au bot spécifiée.

Syntax
bot_command <botname> <console command>
botname est le nom ou l'id du bot à qui envoyer la commande.
console command peut être n'importe laquelle parmi celles listées dans les Scripting#Console_Commands.
Example 1
bot_command bot01 "voicemenu 0 0"
Example 2
bot_command bot01 "taunt"

bot_defend

Set to a team number, and that team will all keep their combat shields raised. For instance, heavies will spin their miniguns.

bot_dontmove

Bots are allowed or prevented from moving. When set to 1 the bots cannot move but they can still turn and jump. Note with a combination of this command and bot_mimic you can move bots to where you want them and leave them there.

Syntax
bot_dontmove <0/1>
Bot is allowed to move, or not.
Example
bot_dontmove 1

bot_forceattack

This will make all the bots automatically fire whatever weapon they currently have selected. If bot_forceattack2 is set to 0, then the bots will execute primary_fire. If bot_forceattack2 is set to 1, then the bots will execute secondary_fire.

Note this does nothing if bot_mimic is active (set to 1).

Syntax
bot_forceattack <0/1>
Bot will not fire if set to 0 and fire repeatedly if set to 1.
Example
bot_forceattack 1

bot_forceattack2

This will make all the bots execute secondary_fire on whatever weapon they currently have selected when bot_forceattack is set to 1.

Syntax
bot_forceattack2 <0/1>
Bot will use its weapon's secondary_fire when set to 1, primary_fire when set to 0
Example
bot_forceattack2 1

bot_forceattack_down

When firing, don't tap fire, hold it down. If this is set to 0 then the bot will act like they are continuously tapping the fire button (useful for the Pistol, but not for the Heavy's Minigun). If this is set to 1 then the bot will act as if it is holding down the fire button (useful for the Heavy).

Syntax
bot_forceattack_down <0/1>
On when set to 1, off when set to 0
Example
bot_forceattack_down 1

bot_forcefireweapon

Force bots with the specified weapon to fire. Does not seem to be implemented, nothing happens.

bot_kill

Kills the specified bot.

Syntax
bot_kill <bot name>
Makes the specified bot commit suicide.
Example
bot_kill bot01

bot_mimic

Bot uses usercmd of player by index. The bot will execute all keystrokes issued by a player, mimicking movements, turns, jumps, fire, etc.

Note this overrides bot_forceattack but does not override bot_dontmove.

Syntax
bot_mimic <0/1>
On when set to 1, off when set to 0
Example
bot_mimic 1

bot_mimic_yaw_offset

Offsets the bots' yaw. The bots will face in a direction this angle from the player. By default this is set to 180 so that all bots will face the player. Setting this to 0 will face the bots in the same direction as the player.

Syntax
bot_mimic_yaw_offset <0-360>
Set the direction by specifying angle in degrees
Example
bot_mimic_yaw_offset 180

bot_randomnames

This will add text to bot names, apparently used for testing during development, some examples: "Yet more Bot names, medium size", "Another bot", "This is a medium Bot", "This is a super long bot name t"

Syntax
bot_randomnames <0/1>
On when set to 1, off when set to 0
Example
bot_randomnames 1

bot_refill

Refills all bots' Ammo counts, including Metal for Engineers.

Syntax: bot_refill

bot_saveme

This makes all the bots call for a Medic, equivalent to issuing bot_command <botname> "voicemenu 0 0" to every bot. Syntax: bot_saveme <0/1>

On when set to 1, off when set to 0

bot_selectweaponslot

This makes the first bot select weapon in specified weapon slot. 0 = primary; 1 = secondary; 2 = melee; 3 = special Note this only works for the first bot spawned. There doesn't seem to be a way to specify other bots.

Syntax
bot_selectweaponslot <n>
Set n to weapon slot that bots should switch to.
Example
bot_selectweaponslot 2

bot_teleport

Teleports a specified bot to a given coordinate. Map coordinates of where you are standing can be found by typing Status in the console.

Syntax
bot_teleport <botname> <X> <Y> <Z> <Pitch> <Yaw> <Roll>
Where botname is the bot name or id to teleport.
X Y Z are the map coordinates.
Pitch Yaw Roll is the direction the bot should face.
Example
bot_teleport bot01 -4815 1385 -447 0 0 0

bot_whack

Deliver lethal damage from player to specified bot. This basically kills the bot with the currently selected weapon, probably used for testing during development.

Syntax
bot_whack <botname>
Where botname is the name of bot to "whack".
Example
bot_whack bot109

Binds et Alias Utiles

sv_lan 1

sv_cheats 1

mp_teams_unbalance_limit 0

alias +bot_shoot_primary "bot_selectweaponslot 0; bot_forceattack 1"

alias -bot_shoot_primary "bot_selectweaponslot 0; bot_forceattack 0"

alias +bot_shoot_secondary "bot_selectweaponslot 1; bot_forceattack 1"

alias -bot_shoot_secondary "bot_selectweaponslot 1; bot_forceattack 0"

bind n +bot_shoot_primary

bind m +bot_shoot_secondary

Appuyer sur n forcera le bot à utiliser son arme primaire (1er slot) et de tirer une fois. Appuyer sur m forcera le bot à selectionner son arme secondaire et à tirer une fois. Appuyez sur n ou m à la suite fait tirer le bot plusieurs fois. Si vous desirez utiliser le tir alternatif de certaines armes (par exemple le Lanceur de bombes collantes), tapez dans la console la commande bot_forceattack2 1 pour utiliser le tir alternatif, puis bot_forceattack2 0 pour revenir au tir classique. Bien sur vous pouvez faire un bind pour cette action.

Exemple de Scripts

  1. Créez un serveur sur une map de votre choix (Gravelpit est un bon choix du fait qu'il n'y a qu'une zone de réapparition, ou les maps succès qui ont des zones de respawn ouvertes).
  2. Rejoignez l'équipe BLU et restez dans la zone de réapparition.
  3. Ouvrez la console et tapez les commandes suivantes:
    sv_cheats 1
    mp_teams_unbalance_limit 0
    bot -class Engineer
    bot_mimic_yaw_offset 0
    bot_mimic 1
    Cela fait faire apparaitre un bot Engineer BLU nommé "bot01" qui fera exactement ce que vous faites, c'est à dire marcher, changer d'armes et tirer en même temps que vous. Cependant il ne construira aucuns bâtiments même si vous en construisez. Heureusement il y a une commande BUILD (construire) et la commande bot_command qui permet de donner des ordres au bot.
  4. Ouvrez la console et tapez:
    bot_command bot01 "build 3"
    Cela va démarrer le processus de construction, pour vous situer le bot voit le plan.
  5. Fermez la console et tirez - cela va lancer la construction d'une Sentry. Continuer de tirer pour que le bot frappe la Sentry avec sa Clé pour construire plus rapidement. Si vous voulez augmenter le niveau de la Sentry il faudra donner plus de métal au bot via la commande bot_refill (à taper dans la console).

Autres Exemples

  1. L'exemple suivant fera apparaitre un bot Medic et un Soldier dans l'équipe RED qui tireront jusqu'à n'avoir plus de munitions. Le Medic finira par équiper son Medigun pour soigner tout les joueurs à sa portée (Spy inclus). Le Soldier finira par donner des coups avec son arme de corps à corps à moins qu'il récupère des munitions, dans ce cas il recommencera à tirer des roquettes (Utile pour s'entrainer à renvoyer les roquettes avec le Pyro).
sv_cheats 1
mp_teams_unbalance_limit 0
bot -team red -class medic
bot -team red -class soldier
bot_mimic 0
bot_forceattack 1
bot_selectweaponslot 1
sv_cheats 0
retry
  1. Le script suivant fera apparaitre un Sniper dans l'équipe RED qui passera son temps à regarder par sa lunette et un Spy dans l'équipe RED qui passera son temps à se rendre invisible puis visible puis invisible etc. La commande retry vous permet de commencer une partie propre (sans sv_cheats).
sv_cheats 1
mp_teams_unbalance_limit 0
bot -team red -class sniper
bot -team red -class spy
bot_selectweaponslot 1
bot_mimic 0
bot_forceattack 1
bot_forceattack2 1
sv_cheats 0
retry
  1. Le script suivant fait apparaitre trois Scout et trois Heavies dans l'équipe RED.
sv_cheats 1
mp_teams_unbalance_limit 0
bot -team red -class scout
bot -team red -class scout
bot -team red -class scout
bot -team red -class heavyweapons
bot -team red -class heavyweapons
bot -team red -class heavyweapons
sv_cheats 0
retry

Références