🤖 Guide Waypoints – Omni-bot ET

Guide complet pour créer des fichiers .way et .gm avec Omni-bot 0.91 sur Wolfenstein : Enemy Territory.

Toutes les commandes, flags, goals et le workflow complet pour waypointeur débutant ou confirmé.

📋 Table des Matières

  1. Téléchargements requis
  2. Configuration initiale (MOD + CFG)
  3. Activer le mode Waypoint
  4. Affichage & Debug
  5. Créer / Supprimer
  6. Connexions
  7. Nommer et configurer les waypoints
  8. Flags de waypoints
  9. Gestion des bots
  10. Goals & Objectifs
  11. Outils avancés
  12. Sauvegarde
  13. Workflow complet

⬇️ Téléchargements requis

Wolfenstein : Enemy Territory

v2.60b

Le jeu complet gratuit. Version officielle 2.60b nécessaire pour jouer et créer des waypoints en local.

Télécharger ET 2.60b

Omni-bot

v0.91

Le mod de bots pour Enemy Territory. Version 0.91 recommandée. Dossier à placer dans C:\ET\omnibot\.

Télécharger Omnibot 0.91

📁 Emplacement des fichiers : Après création, placez vos fichiers .way et .gm dans C:\ET\omnibot\et\nav\. Lancez le serveur local avec votre .bat avant de commencer.

⚙️ Configuration initiale

⚠️ Important : Pour créer des waypoints, Omni-bot doit être utilisé comme un MOD dans Enemy Territory, pas comme un simple plugin. Le jeu doit être lancé avec +set fs_game omnibot.

1. Structure des dossiers requis

Créez la structure suivante dans votre dossier ET :

C:\ET\ ├── omnibot\ ← dossier MOD omnibot │ ├── et\ │ │ └── nav\ ← vos fichiers .way et .gm ici │ └── omni-bot\ └── ET.exe

2. Fichier de lancement — launch_wp.bat

Créez un fichier .bat à la racine de votre dossier ET pour lancer le serveur local en mode waypointing :

et.exe +set dedicated 0 +set fs_game omnibot +set sv_pure 0 +set com_hunkmegs 64 +exec server.cfg +map nomdelamap
Remplacez nomdelamap par le nom exact de la map sur laquelle vous travaillez (ex: fueldump, radar, killhouse...).

3. Fichier server.cfg

Ce fichier configure le serveur local et active omnibot. À placer dans C:\ET\omnibot\ :

seta omnibot_path "./omnibot" seta omnibot_enable 1 seta bot_enable 1 seta cg_omnibotdrawing 1 seta omnibot_render_distance 2000 seta sv_cheats 1 seta timelimit 0 seta g_warmup 10 bind F1 "bot waypoint_add" bind F2 "bot waypoint_biconnect"

4. Fichier omnibot.cfg

Active l'affichage des waypoints au démarrage. À placer dans C:\ET\omnibot\ :

bot waypoint_view bot waypoint_add seta cg_omnibotdrawing 1

5. Fichier wp.cfg

Script d'ajout de waypoint à la position locale. À placer dans C:\ET\omnibot\ :

bot script_run "Wp.AddWaypoint(GetLocalPosition(), Vector3(0,0,0));"
✅ Récapitulatif des fichiers à créer dans C:\ET\omnibot\ :

📄 server.cfg — configuration du serveur local
📄 omnibot.cfg — activation de l'affichage waypoints
📄 wp.cfg — script d'ajout de waypoint
📁 et\nav\ — dossier de destination pour vos .way et .gm

⚡ Activer le mode Waypoint

Une fois le jeu lancé avec votre .bat, vous devez voir dans la console le message de chargement d'Omni-bot :

Omnibot chargé en console

Message de confirmation : omni-bot 0.91 initializes in 0.13 seconds

Activez ensuite le mode waypoint pour voir et poser des waypoints sur la map :

Mode waypoint activé avec /bot mywpmode

Les waypoints et leurs connexions sont maintenant visibles en jeu

CommandeDescription
/bot mywpmodeActive le mode waypoint avec affichage et autosave
/bot autosaveSauvegarde automatique des waypoints
/bot waypoint_viewAfficher les waypoints
/bot waypoint_view offCacher les waypoints / sortir du mode
/bot helpAffiche toutes les commandes disponibles dans votre version

🔍 Affichage & Debug

Avant de commencer à poser des waypoints, affichez les goals et spawns pour repérer toutes les zones importantes :

draw_goals on - affichage des objectifs en jeu

Résultat de /bot draw_goals on — les objectifs sont visibles sur la map

⚠️ N'oubliez pas de désactiver avec /bot draw_goals off après avoir repéré les zones.
CommandeDescription
/bot draw_goals on/offAffiche / cache les objectifs et zones importantes de la map
/bot draw_goalroutes onAffiche les routes utilisées par les bots
/bot draw_spawnsAffiche les points de spawn des deux équipes
/bot draw_oidsAffiche les zones d'objectifs
/bot draw_paththroughAffiche les paththroughs (flags spéciaux)
/bot drawtriggers 1Affiche les triggers actifs sur la map
/bot drawblocktests 1Affiche les tests de blocage des chemins
/bot debugtriggers onAffiche en console les triggers déclenchés
/bot debugbot all moveDebug des déplacements de tous les bots
/bot dbg_mapscriptsDebug des scripts de map (.gm)
/bot dbg_scriptgoalsDebug des objectifs définis dans les scripts
/bot dbg_goalavailabilityDebug de la disponibilité des goals
/bot nav_logfailedpathEnregistre les chemins échoués dans les logs
/bot waypoint_infoInfos détaillées du waypoint le plus proche
/bot waypoint_statsNombre total de waypoints sur la map
/bot myposAffiche votre position exacte en coordonnées
/bot aim_posAffiche la position visée par votre crosshair
/bot distAffiche la distance vers la cible visée

➕ Créer / Supprimer

Parcourez la map et appuyez sur F1 pour poser un waypoint à chaque position :

Waypoint posé seul en jeu

Un waypoint posé seul — le texte Waypoint X, Radius 35.00, UID X s'affiche

CommandeDescription
F1Ajouter un waypoint à votre position (raccourci clavier)
/bot waypoint_addAjouter un waypoint — identique à F1
/bot waypoint_delSupprimer le waypoint le plus proche
💡 Conseil : Marchez sur toute la map en appuyant régulièrement sur F1. Espacez les waypoints d'environ 100 à 200 unités. Les zones de combat et les objectifs nécessitent une densité plus élevée.

🔗 Connexions

Après avoir posé les waypoints, connectez-les entre eux. Voici deux waypoints reliés manuellement avec F2 :

Deux waypoints connectés avec une ligne blanche

La ligne blanche indique une connexion biconnect entre deux waypoints

Pour les zones denses, utilisez l'autobuild qui connecte automatiquement tous les waypoints proches :

Réseau de waypoints après autobuild

Réseau de connexions généré par /bot waypoint_autobuild 0 1 100 200 5

CommandeDescription
F2Connecter deux waypoints en biconnect (raccourci clavier)
/bot waypoint_biconnectConnexion dans les deux sens entre deux waypoints
/bot waypoint_connectConnexion sens unique (A → B seulement) — apparaît en vert en jeu
/bot waypoint_dcallDéconnecter toutes les connexions du waypoint le plus proche
/bot waypoint_autobuild 0 1 100 200 5Connecter automatiquement tous les waypoints proches. Paramètres : team / mode / rayon min / rayon max / pas
💡 Couleur des connexions :
Blanc — connexion biconnect normale (les deux sens)
Vert — connexion sens unique (waypoint_connect) — le bot ne peut aller que dans un sens
Rouge — connexion bloquée (flag blockwall ou blockbridge actif)
Violet — connexion paththrough (LADDER, SATCHELSTOP, UseSwitch...)

🏷️ Nommer et configurer les waypoints

Le nommage des waypoints est une pratique avancée essentielle pour les maps professionnelles. Il permet de référencer précisément un waypoint dans le fichier .gm et d'organiser la navigation des bots.

CommandeDescription
/bot waypoint_setname "Water Pump 1"Donne un nom au waypoint le plus proche. Les noms peuvent contenir des espaces et des majuscules.
/bot waypoint_setradius 35Définit le rayon d'influence du waypoint (défaut : 35 unités)
/bot waypoint_setradius 300Grand rayon pour les zones de spawn — le bot considère qu'il est "arrivé" dès 300 unités
/bot waypoint_setradius 20Petit rayon pour une précision maximale (positions de sniper, objectifs précis)
/bot cwnClear Waypoint Names — supprime tous les noms de waypoints
/bot cwn trueSupprime tous les noms ET liste chaque waypoint effacé en console

Rayons recommandés selon les zones

RayonUsageExemple
300Zone de spawn — couvre tout le périmètre de départallyspawn, FlagSpawn, axisspawn
95Zone d'objectif large — couvre un mur ou une structure entièreWall 2, Generator area
50Zone de défense ou flag — rayon moyen pour une zone stratégiqueFlag 4, defend zone
35Waypoint standard — valeur par défaut pour les cheminstous les waypoints normaux
25Zone d'objectif précise — pour les actions ponctuellesFlag 13, callartillery spot
20Position de sniper — précision maximalep1axis valleyledge 2

Conventions de nommage professionnelles

En étudiant des maps comme Oasis, on constate que les waypointeurs pros suivent des conventions claires :

ConventionExempleSignification
Spawn d'équipeallyspawn, axisspawn, FlagSpawnPoint de départ d'une équipe — grand rayon 300
Objectif nomméWater Pump 1, GeneratorObjectif principal référencé dans le .gm
Point stratégiqueAllied CP, Old City Flag Room 2Zone importante pour la navigation
Route nomméetoproute_a, leftdoor, walldoorChemin ou passage identifié pour le .gm
Position de combatp1axis valleyledge 2p1=position 1, équipe, lieu, numéro
Flag/objectif numérotéFlag 4, Flag 13Objectif capturables avec numéro
💡 Utilisation dans le .gm : Un waypoint nommé peut être référencé directement dans votre script :
local wp = Waypoints.GetWaypointByName("Water Pump 1");
Cela permet de forcer un bot à se rendre précisément à cet endroit ou de gérer des événements liés à cette position.
⚠️ Important : Le nommage est surtout utile pour les goals MOUNTMG42, REPAIRMG42, AMMOCAB, HEALTHCAB qui n'ont pas de nom d'entité propre. Pour les autres goals, préférez les manipuler directement via leur nom dans le .gm.

🚩 Flags de waypoints

⚠️ Syntaxe : Pour ajouter un flag : /bot waypoint_addflag <flag> — Pour retirer : /bot waypoint_delflag <flag> — Pour les paththrough : /bot waypoint_setproperty paththrough <FLAG>

Exemple d'une échelle correctement waypoitée avec le flag LADDER en haut et en bas :

Waypoints LADDER sur une échelle

La connexion verticale entre les deux waypoints LADDER permet aux bots de monter et descendre les échelles

Exemple d'un waypoint SATCHELSTOP — la ligne violette verticale est caractéristique de ce flag :

Waypoint SATCHELSTOP avec ligne violette

Le bot recule jusqu'à ce waypoint avant de déclencher son satchel

FlagTypeDescription
— OBJECTIFS —
dynamicObjectifPoser de la dynamite ou un satchel sur un objectif — gère les deux explosifs
— DÉPLACEMENT —
climbDéplacementZone d'escalade — le bot grimpe une surface verticale
crouchDéplacementLe bot s'accroupit pour passer sous un obstacle bas
doorDéplacementOuverture de porte — le bot interagit avec la porte
elevatorDéplacementZone d'ascenseur — le bot attend et utilise la plateforme mobile
jumpDéplacementLe bot saute pour franchir un obstacle ou atteindre une plateforme surélevée
jumpgapDéplacementLe bot saute par-dessus un trou ou un vide
jumplowDéplacementSaut bas — pour franchir un petit obstacle sans élan
proneDéplacementLe bot se met à plat ventre pour passer sous un obstacle très bas
sprintDéplacementLes bots traversent rapidement cette zone sans s'arrêter
strafe_lDéplacementLe bot se déplace latéralement vers la gauche sur ce waypoint
strafe_rDéplacementLe bot se déplace latéralement vers la droite sur ce waypoint
teleportDéplacementZone de téléporteur — le bot entre et ressort à la destination
usepathDéplacementForce le bot à utiliser ce chemin défini
— EAU —
inwaterEauZone dans l'eau — le bot nage en surface
underwaterEauZone sous l'eau — le bot nage en profondeur
— BLOCAGE —
blockbridgeBlocageBloque le passage sur un pont — utilisé quand le pont n'est pas construit
blockwallBlocageBloque le passage contre un mur — indique que ce chemin est fermé
blockwaterBlocageBloque le passage dans une zone d'eau — utilisé pour les zones interdites
closedBlocageZone fermée — le bot ne peut pas passer par ici
— ÉQUIPE —
alliesÉquipeWaypoint réservé aux Alliés uniquement (team2)
axisÉquipeWaypoint réservé aux Axis uniquement (team1)
team1ÉquipeRéservé à l'équipe 1 (Axis) — variante de axis
team2ÉquipeRéservé à l'équipe 2 (Allies) — variante de allies
— CLASSE —
disguiseClasseZone de déguisement — réservé aux Covert Ops pour se déguiser
infiltratorClasseZone d'infiltration — chemin réservé aux bots infiltrateurs
— DIVERS —
sneakDiversChemin moins attractif — les bots l'évitent si un meilleur chemin existe
routeDiversMarque ce waypoint comme faisant partie d'une route principale — les bots le privilégient
— PATHTHROUGH (setproperty) —
LADDERPaththroughÉchelle — à poser en haut et en bas de l'échelle, connectés entre eux avec F2
SATCHELSTOPPaththroughPoint de repli satchel — le bot recule jusqu'ici avant de déclencher l'explosion
UseSwitch_PT:elevatorPaththroughAscenseur avec interrupteur — le bot appuie sur le switch avant de monter
— FLAGS LEGACY (dépréciés depuis 0.8 — visibles sur anciennes maps) —
attack⚠️ LegacyAnciennement : zone d'attaque pour les bots. Remplacé par les goals ATTACK dans le .gm en 0.8+
defend⚠️ LegacyAnciennement : zone de défense. Remplacé par les goals DEFEND dans le .gm en 0.8+
snipe⚠️ LegacyAnciennement : position de sniper. Remplacé par les goals SNIPE dans le .gm en 0.8+
callartillery⚠️ LegacyAnciennement : appel d'artillerie. Remplacé par les goals CALLARTILLERY dans le .gm en 0.8+
⚠️ Flags legacy : Les flags attack, defend, snipe, callartillery sont dépréciés depuis Omni-bot 0.8. Vous les voyez encore sur des maps comme Oasis car elles ont été créées sous l'ancienne version 0.71. En 0.91, ces comportements sont gérés directement dans le fichier .gm via les goals — c'est beaucoup plus flexible et précis.

🤖 Gestion des bots

Ajoutez des bots pour tester vos waypoints en temps réel :

Bots en action sur la map

Les bots se déplacent en suivant les waypoints — observez s'ils se bloquent quelque part

💡 Pour ajouter des bots : /bot maxbots 6 — Pour les retirer : /bot maxbots 0 puis /bot kickall
CommandeDescription
/bot maxbots 6Ajouter automatiquement 3 Alliés + 3 Axis
/bot maxbots 0Empêcher l'ajout de nouveaux bots
/bot kickallVirer tous les bots — toujours après /bot maxbots 0
/bot addbot 3 alliesAjouter 3 bots Alliés manuellement
/bot addbot 3 axisAjouter 3 bots Axis manuellement
/bot addbot 1 allies engineerAjouter un ingénieur Allié spécifiquement
/bot difficulty 3Définir la difficulté des bots (1 à 5)
/bot dontshoot 1Empêche les bots de tirer — utile pendant le waypointing
/bot sagVoir l'état actuel de chaque bot et ce qu'il fait
/bot warpbotTéléporte le testbot à votre position
/bot warpanybot <nom>Téléporte un bot spécifique à votre position

🎯 Goals & Objectifs

⚠️ Attention : Les noms des goals sont sensibles à la casse. Utilisez toujours /bot show_goals pour récupérer les noms exacts avant d'écrire votre .gm. Un nom incorrect = goal ignoré silencieusement.

La commande /bot show_goals affiche la liste complète des objectifs disponibles sur la map :

Résultat de /bot show_goals en jeu

Chaque goal affiche son nom exact, son équipe (serial) et sa priorité — notez la casse exacte pour votre .gm

CommandeDescription
/bot show_goalsListe tous les objectifs avec nom exact, priorité et équipe
/bot sgi PLANT_tunnel_wallInfos détaillées d'un goal spécifique
/bot draw_goals onAfficher visuellement les goals en jeu
/bot draw_goals offDésactiver l'affichage des goals
/bot plantstartAller au premier goal PLANT de la map
/bot plantnextAller au goal PLANT suivant
/bot makegmGénère automatiquement un script .gm de base pour la map
/bot makemapgoallistGénère une liste complète des objectifs de la map
/bot reloadscriptsRecharge les scripts .gm sans redémarrer le serveur

🛠️ Outils avancés

CommandeDescription
/bot waypoint_setname "nom"Donne un nom au waypoint le plus proche — utilisé pour les goals MOUNTMG42, REPAIRMG42, AMMOCAB, HEALTHCAB et la navigation scriptée
/bot waypoint_setradius 35Définit le rayon d'influence du waypoint (35=standard, 300=spawn, 20=sniper)
/bot waypoint_setfacingDéfinit la direction dans laquelle le bot regarde sur ce waypoint — utilisable dans les scripts
/bot waypoint_setproperty checkpoint trueMarque le waypoint comme checkpoint — utilisé pour la navigation de véhicules
/bot cwnSupprime tous les noms de waypoints
/bot cwn trueSupprime tous les noms ET liste chaque effacement en console
/bot warpto "Water Pump 1"Téléporte le joueur vers un waypoint par son nom
/bot warpto 452Téléporte vers un waypoint par son UID
/bot warptogoaloffset <goalname>Téléporte près d'un objectif spécifique
/bot addroute <nom>Ajoute un nœud de route nommé
/bot ar <nom>Alias court de addroute
/bot bvp <goalname>Vérifie le chemin d'un véhicule sur toute sa route
/bot saveplayerposSauvegarde votre position actuelle pour debug
/bot saveusepointCrée des UsePoints (interaction avec objets de la map)
/bot traceboxConstruit une boîte AABB basée sur votre position — debug de navigation
/bot tracetrajectory <speed>Affiche la trajectoire depuis votre position — utile pour les jumpgap

💾 Sauvegarde

Une fois vos waypoints terminés, sauvegardez. Le fichier .way sera généré dans C:\ET\omnibot\et\nav\ :

Message de confirmation de sauvegarde waypoints

Message de confirmation après /bot waypoint_save

Les fichiers .way et .gm sont maintenant présents dans le dossier nav :

Fichiers .way et .gm dans le dossier nav

Les deux fichiers nécessaires au fonctionnement des bots sur la map

CommandeDescription
/bot waypoint_saveSauvegarder le fichier .way dans omni-bot/et/nav/
/bot waypoint_loadCharger le fichier .way de la map actuelle

📋 Workflow complet

Workflow conseillé pour créer un fichier .way de A à Z :
  1. Lancer le serveur local avec votre .bat — vérifier que omnibot est chargé en console
  2. Activer le mode waypoint : /bot mywpmode
  3. Identifier les zones importantes : /bot draw_goals on et /bot draw_spawns — puis /bot draw_goals off
  4. Parcourir toute la map à pied en appuyant sur F1 tous les 100-200 unités
  5. Connecter les waypoints : /bot waypoint_autobuild 0 1 100 200 5
  6. Ajouter les flags spéciaux : LADDER sur les échelles, climb pour les surfaces grimpables, door sur les portes, crouch sur les passages bas, prone pour les passages très bas, jump / jumpgap pour les sauts, elevator pour les ascenseurs, inwater / underwater pour l'eau, blockwall pour les murs/véhicules mobiles, blockbridge pour les ponts destructibles, SATCHELSTOP pour les zones satchel
  7. Nommer les waypoints importants avec /bot waypoint_setname "nom" — spawns, objectifs, portes, routes
  8. Ajuster les rayons avec /bot waypoint_setradius X — 300 pour les spawns, 50 pour les zones de flag, 20 pour les positions de précision
  9. Utiliser /bot waypoint_connect (sens unique, ligne verte) pour les chemins à sens forcé — escaliers descendants, sauts, téléporteurs
  10. Récupérer les noms exacts des goals : /bot show_goals
  11. Tester avec des bots : /bot maxbots 6 — observer les déplacements
  12. Corriger les zones où les bots restent bloqués
  13. Retirer les bots : /bot maxbots 0 puis /bot kickall
  14. Sauvegarder : /bot waypoint_save
  15. Sortir du mode waypoint : /bot waypoint_view off
✅ Fichiers finaux : .way et .gm dans C:\ET\omnibot\et\nav\. Testez avec différentes classes (ingénieur, médecin, covertops) pour valider tous les objectifs.