Documentation
Toutes les pages
MAX_CVARS  -  par FSMOD
Erreur MAX_CVARS
 

cvar.jpg

Peut-être avez vous déjà eu cet écran d'erreur qui s'est affiché lors d'un passage d'un serveur à un autre. Cette avarie s'accompagnant parfois d'une altération du gamma de l'écran.

Ce problème m'est arrivé récemment lors de mes nombreux essais.

Après quelques recherches je suis arrivé aux conclusions suivantes:


 

Premier point, évitez de lancer trop de fichiers txt par le biais de l'autoexec.cfg, surtout si ces fichiers renferment des boucles VSTR relatives à des sons multiples.


C'est le cas lorsque vous affectionnez plusieurs serveurs et pour lesquels vous avez créé un fichier son pour chacun d'entre eux. Si les boucles VSTR sont trop longues (en gros plus d'une centaine de sons) le passage d'un serveur à l'autre ne permettra pas le vidage de la mémoire allouée à SOF et vous obtiendrez le message d'erreur.

Comme je l'ai déjà dit dans ma doc adoptez plutôt la méthode qui consiste à créer pour chaque serveur, son propre icône de lancement sur le bureau de votre ordi. Le passage d'un serveur à l'autre vous obligera à passer par le dit bureau et vider ainsi la mémoire avant la connexion à un autre serveur.



Deuxième point important toujours lié à la fréquentation de plusieurs serveurs, évitez de charger trop de maps dans votre répertoire BASE. Une centaine de taille moyenne est largement suffisant pour vous éviter une surcharge pondérale de la mémoire.
Faîtes le ménage de temps à autre pour vous débarrasser des maps inutiles, La fluidité de votre jeu n'en sera que meilleure.


 

-=smile=-
Publié le 05/02/2019 16:26  Prévisualiser...   Imprimer...   Haut
Favori  -  par FSMOD
Création d'un favori
 
Il vous est déjà arrivé peut-être de saisir directement dans l'interface dédiée à la création d'un serveur , l'IP et le port dudit serveur sans avoir  rencontré de difficultés.

La raison simple est que la ligne que vous avez entrée, ne dépassait pas 20 caractères.

Les concepteurs de SOF2 ont en effet pensé que certaines IP  ne pouvaient comporter  la totalité des caractères, soit 4 groupes de 3 digits.
J'avoue que leur processus intellectuel m'a échappé.

EXEMPLE:
essayez dans SOF2 d'origine, je dis d'origine car ma version a corrigé ce bug, de saisir les 21 caractères de l'IP suivant : 213.251.144.245:20200
Vous obtiendrez ceci :

 
createfav.jpg

La fenêtre noire, malgré sa bonne dimension, n'acceptera pas le dernier zéro du port.

Correction du bug

Il se situe dans le fichier createfavorite.menu, lui-même encapsulé dans le répertoire UI du fichier système mp.pk3.
 
  • Ouvrir createfavorite.menu
  • Rechercher l'extrait suivant :
     
menu.jpg
  • Modifier la valeur du CVAR maxchars et la fixer à 21.
  • Sauvegarder.

Facile non ?

-=smile=-
Publié le 05/02/2019 16:25  Prévisualiser...   Imprimer...   Haut
CL_ParsePacketEntities  -  par FSMOD

CL_ParsePacketEntities

suivant.gif SYMPTOME

Le joueur reçoit ce message "CL_ParsePacketEntities: end of message" et se retrouve déconnecté du serveur.

suivant.gif ORIGINE

Ce message est retourné systématiquement lorsqu'il existe une non-concordance entre les données transmises par le serveur et leur interprétation par le client.  Il peut s'agir de données incomplètes ou totalement perdues dont les répétitions amènent à la saturation des scripts de calcul du client et partant, sa déconnexion précédée du message d'erreur.

Le terme évoqué de "données" est en fait, l'encapsulage des différents instantanés (snapshots) échangés et interprétés par le serveur et le client. J'ai d'ailleurs développé ce concept dans ma rubrique "Le CVAR cl_timenudge" que je vous invite à compulser.

Par ailleurs, il convient de remarquer que le traitement de l'incohérence de transfert de données serveur/client est dévolu au fichier sof2mp.exe et qu'il est totalement indépendant du mode exploité. Ne pas oublier que d'autres jeux utilisent le même moteur que SOF2, à savoir Quake3 et qu'en conséquence ce message est parfaitement connu sur d'autres théâtres d'opérations.

Pour terminer ce préambule et pour ceux qui pratiquent un peu le code voici un extrait des sources de Quake3 qui montrent bien la fonction chargée de l'analyse des checksums d'instantanés consécutifs (snaphots).

packet.jpg

suivant.gif CAUSES

Elles sont multiples et pas toujours très évidentes à cerner. Voici les points à vérifier ou à améliorer.

suivant_n.gif  Vérifier que votre carte réseau est à jour de ces pilotes. Dans le cas contraire une petite mise à niveau sur le site du constructeur n'est pas  inutile. Si vous avez une vieille carte à 10 Mbit/s, jetez-la. Une carte à 100 Mbit/s est suffisante mais une carte à 1 Gbit/s est toujours bonne à prendre

suivant_n.gif  Vérifier que le débit ADSL et votre PING sont stables dans le temps. Des fluctuations peuvent induire des pertes de données. Evitez bien entendu de télécharger des vidéos tout en jouant.

suivant_n.gif Assurez vous d'exploiter les mêmes versions de maps customisées que le serveur. Il est impressionnant de constater le nombre de maps trafiquées dont regorge le net. Si votre manager propose des packs, téléchargez les, cela sous entend que ces maps seront installées sur le serveur et qu'en conséquence vous utiliserez les mêmes versions. Il faut garder présent à l'esprit qu'une légère modification volontaire ou non dans une map modifie son checksum, et les snapshots n'auront pas la même valeur d'où génération d'une incohérence.

suivant_n.gif Effacer tous les éventuels fichiers PK3 que vous auriez installés dans vos répertoires BASE, MP ou ROCMOD. La plupart de ces fichiers, sensés personnaliser votre mode par des effets sonores ou visuels sont parfaitement inutiles et visibles que de vous même. Leur accumulation parfois conflictuelle entre eux mêmes est souvent la source d'une occupation mémoire prohibitive pour la fluidité du jeu.

suivant_n.gif Vérifier le CVAR com_hunkMegs dans votre fichier de configuration. Une valeur de 256 est suffisante dans la plupart des cas mais 512 peut se révéler plus adéquat dans certaines maps importantes.

suivant_n.gif Il est possible qu'à l'instant où vous avez reçu le message d'erreur, le serveur ait connu une période de "stress", entrainant des latences fugaces de nature à tronquer quelques envois de données. Là, vous n'y pourrez rien évidement et il faudra attendre des jours meilleurs.

suivant_n.gif Selon une note informative de RAVEN, l'éditeur originel du jeu, il est indiqué que l'usage d'un fichier sof2mp.exe craqué ou d'un fichier NO-CD pourrait être de nature à générer l'erreur. Personnellement je n'y crois guère et j'ai une raison bien personnelle qui m'interdit de souscrire à cet avertissement.

-=cool=-

Publié le 05/02/2019 16:24  Prévisualiser...   Imprimer...   Haut
Création - Modifications  -  par FSMOD
Création et intégration de polices de caractères

 
 
Ce sujet porte essentiellement sur l'ajout de nouvelles polices de caractères dans le fichier client pk3.

J'évoquerai bien entendu ma propre version mais cette méthode reste applicable à toute autre version.


 
fin.gif  Utilisation de l'outil FontCreator  

Dans ma section DOWNLOAD importez le fichier FontCreator.rar.
Après décompression vous obtenez le répertoire FontCreator avec le contenu suivant:
 
repfont.jpg

Le répertoire tempo contient ceci:

 
reptempo.jpg

On peut conserver son contenu si la police arial vous intéresse sinon vous pouvez effacer les 3 fichiers. Le répertoire tempo est destiné à la fois à héberger les polices True Type (TTF)  issues de Windows que vous aurez choisies et également à recevoir les fichiers .fontdat et .png issus de leur transformation suite au lancement du fichier go.bat.
 
Editez le fichier go.bat

 
bat.jpg

 
Pour modifier son contenu il est indispensable de bien comprendre son action.
La ligne de commande s'explique comme suit :
On lance l'exécutable font, il crée à partir du fichier arial.ttf situé dans le répertoire tempo, un groupe de fichiers ayant pour racine le nom arial, avec une taille de 24 pixels et les place dans le répertoire tempo. Ce groupe est composé des fichiers arial.png et arial.fondat comme évoqué précédemment.




fin.gif  Importation de nouvelles polices


Ouvrez votre répertoire fonts de Windows et copier les polices ttf que vous affectionnez, puis collez les dans le répertoire tempo de FontCreator. A noter que vous pouvez également choisir d'autres polices que celles natives de Windows. Personnellement je penche pour le site suivant dafont.com

Voici un exemple du répertoire tempo avec un nouveau contenu de polices sélectionnées. On considère que les fichiers qu'il contenait auparavant et qui ont servi à la compréhension de l'outil FontCreator, ont été effacés.
 
reptestnew.jpg

 
Ouvrez le fichier go.bat

Pour créer ces 6 polices vous pouvez écrire soit une ligne à la fois pour chaque police et lancer ainsi 6 fois go.bat ou bien écrire 6 lignes de commande et lancer une seule fois go.bat.
C'est la dernière option que je présente ci-après


 
batnew.jpg


Après exécution de go.bat on obtient ceci dans le répertoire tempo:
 
reptestfinal.jpg




fin.gif  Migration des nouvelles polices  

 
Tout ce qui a été évoqué précédemment n'avait pour but que de mettre en évidence les fonctions de FontCreator. Dans la pratique il sera inutile d'utiliser autant de polices.
Comme fixé en intro je me bornerai à prendre pour exemple ma version client ROCMOD 2.2v.
A l'aide de PAKSCAPE, ouvrez le fichier rocmod_2.2v_client.pk3.
Ouvrez le répertoire fonts
Du répertoire tempo de FontCreator nous ne retiendront que la police Comic
Copier les fichiers comic.fondat et comic.jpg et les coller dans le répertoire fonts. Ne pas prendre le fichier ttf.

Sauvegarder
Nota: les polices fs et ft toujours présentes dans ma version ne sont pas utilisées. Elle ont servi à des tests.

fontpk3.jpg

A ce stade, certaines précisions s'imposent.
La police originelle de SOF2 baptisée HUD est déclarée dans le fichier système therest.pk3 comme le montre la capture suivante.
On y retrouve bien les 2 fichiers associés, à savoir le fichier directeur hud.fondat ainsi que la fichier image hud.png.
A noter que cette police est vraiment horrible.

hudtherest.jpg
Cette police est omniprésente. Elle est dispensée dans les textes générés par le serveur comme le chat et les diverses annonces, mais aussi dans les textes des menus fixes et déroulants des différents panels de contrôle.
J'ai donc créé une nouvelle police nommée fin qui apparait dans toutes les configurations précédentes.
Concernant les textes émis par le serveur cela n'a posé aucun problème, toutefois au niveau des textes encapsulés dans les différents fichiers du répertoire UI, il a été nécessaire de recoder toutes les lignes originelles textfont "hud" en textfont "fin" comme l'illustrent les 2 captures suivantes

ui.jpg
textfont.jpg

 fin.gif  Vos modifications  

 
Si vous désirez effectuer vos propres modifications nous allons envisager 2 cas de figure principaux:
1 - Changement total de la police fin
C'est le cas le plus simple. Dans le répertoire fonts du fichier client rocmod_2.2v_client.pk3 , il suffit d'effacer les fichiers fin.fontdat et fin.png et de renommer respectivement les fichiers comic.fontdat et comic.png en fin.fontdat et fin.png puis sauvegarder. Désormais tous les textes émis par le serveur ainsi que les textes affichés dans les différents panels de contrôle seront de la forme comic.
Bien entendu toute autre police de remplacement aurait suivi la même procédure.

2 - Changement partiel de la police fin
Vous envisagez de garder la police fin uniquement pour les annonces serveur mais vous voudriez personnaliser les textes visibles dans les différents panels de commandes.
Il convient dès lors d'ouvrir chaque fichier en extension menu encapsulé dans le répertoire ui du fichier rocmod_2.2v_client.pk3 et pour chaque groupe itemDef remplacer la ligne textfont "fin" par la ligne textfont "comic"
Comme précédemment toute autre police est possible.
Vous pouvez même faire un panachage de différentes polices au sein même des fichiers *.menu. En cette occurrence il suffira d'intégrer plusieurs polices de votre choix dans le répertoire fonts

Je rappelle que PAKSCAPE ne peut sauvegarder un fichier dans sa propre interface. Il convient au préalable de le copier sur le bureau ou dans un autre dossier, d'effectuer la modification, de le sauvegarder puis de le réintégrer dans la fenêtre de PAKSCAPE. Effectuer au final une sauvegarde générale en cliquant sur l'icône disquette.



Voici l'aspect d'un onglet de l'interface ADMIN de ma version doté de la police comic_sans_ms

sysop.jpg


 
La taille des polices devra bien sûr rester en adéquation avec les cadres dans lesquels elles s'inscrivent. Je rappelle que cette taille est définie en pixels par une valeur numérique dans le fichier go.bat de FontCreator. (voir plus haut).
Des valeurs comprises entre 18 et 24 donnent en général de bons résultats.

A remarquer également que certaines polices ne restitueront pas toujours des caractères comme le tilde, les crochets, les apostrophes etc...

-= eek =-
Publié le 02/02/2019 19:33  Prévisualiser...   Imprimer...   Haut
Botroutes WPS  -  par FSMOD
CREATION DES BOTROUTES WPS

Certains modes comme CRSBOT ou PWNBOT exploitent des fichiers botroutes en extension WPS.
Il existe de nombreuses bibliothèques qui disposent d'un choix assez large de route WPS, toutefois j'ai écrit cette documentation à l'attention des managers qui voudraient s'essayer dans la conception de ce type de routes ou à tout le moins dans la modification de routes déjà existantes. Je précise que les routes WPS sont beaucoup plus élaborées que les routes WNT et sont plus adaptées à "l'intelligence" artificielle des bots des modes CRSBOT ou PWNBOT.

Avant de démarrer ce tuto je vous invite à télécharger le pack wps.rar ICI

fin.gif Installation:

  1. Décompacter le fichier rar, vous obtenez 4 fichiers fswps.pk3, map.cfg, set.cfg et wps.bat et un répertoire botroutes vide pour le moment.
  2. Créer un répertoire wps.
  3. Placer les 3 fichiers fswps.cfg, map.cfg et set.cfg ainsi que le répertoire botroutes dans le répertoire wps.
  4. Placer le répertoire wps  et le fichier wps.bat dans votre répertoire principal SOF2.

 wps est désormais considéré comme un mode particulier qui va vous permettre la création des botroutes.

A ce stade je précise que les routes seront créées en mode client. Il n'est donc point besoin de solliciter un quelconque serveur.

Dans le répertoire principal SOF2, créer un raccourci vers le bureau à partir du fichier wps.bat


icon_rac.jpg

En résumé voici 2 captures illustrant l'emplacement des différents composants:

Répertoire WPS Répertoire principal SOF2
wps_rep.jpg rep_sof.jpg

fin.gif Examen des composants:

  • fswps.pk3 a été recodé à partir du mode CRSBOT, il est spécifiquement dédié à la création des botroutes wps.
  • set.cfg regroupe les réglages serveur et client pour la gestion des principales commandes. Il n'y a pas lieu de le modifier. Voir ICI.
  • wps.bat batch de lancement du mode wps. Il n'y a pas lieu de le modifier. Voir ICI.
  • map.cfg regroupe 2 CVARS primordiaux, à savoir la définition de la map et de son gametype. C'est le seul fichier qu'il faudra modifier en fonction de ce que vous voulez faire. Le fichier présent concerne la création des routes pour la map mp_jor1 en mode DM. A noter que si vous vouliez créer des routes pour une map non standard, c'est-à-dire non incluse dans les fichiers système d'origine, il faudra préalablement placer cette map dans le répertoire BASE de votre SOF2. A noter également que le gametype pour lequel vous voulez faire des routes doit être accepté par la map. Dans le cas contraire un gametype standard sera automatiquement sélectionné. Exemple: si vous vouliez créer des routes CTF por la map mp_finca, le lancement de WPS orientera son action vers la conception de routes TDM. Voir ICI
  • botroutes est un répertoire vide au démarrage. Il est destiné à stocker vos routes finies. Dans le cas où vous désireriez modifier un fichier wps existant il faudra bien entendu qu'il soit présent dans ce répertoire.

fin.gif Lancement initial:

Important: Ne reportez pas le fichier sof2mp.cfg d'un autre mode vers votre répertoire wps. Le lancement initial a pour but d'en créer un, spécifique au mode wps, quels que soient vos paramètres préférés pour les autres modes. Si vous avez configuré vos paramètres dans un fichier autoexec.cfg, la plupart les réglages vidéo et audio seront déjà acquis.

Cliquer sur le raccourci wps.bat à partir du bureau. Après avoir réglé éventuellement les paramètres vidéo et audio, vous entrez dans le mode WPS comme le montre l'intro suivante:

info.jpg

On constate que, conformément aux réglages contenus dans le fichier map.cfg c'est bien la map mp_jor1 associée au gametype DM qui est sollicitée. Si le fichier map.cfg avait été renseigné de la sorte:

set g_gametype ctf
devmap mp_kam4

Vous auriez obtenu l'intro suivante, paré à accéder à la conception des routes pour la map mp_kam4 en mode CTF.

info_kam4.jpg

fin.gif Initialisation des commandes:

Ouvrez la console et tapez: exec set

Le retour en console confirme la validation des paramètres et vous informe par le CVAR wp_DebugRender = qtrue, que le programme est prêt pour la création des routes.

cons_wpdev.jpg

fin.gif Les commandes et leur action en détail:

A votre arrivée sur la map vous constaterez la présence de traits verticaux rouges, il s'agit de la position des bots à leur point de respawn. Ils apparaissent au fur et à mesure que vous vous déplacez sur la map:

Bots visibles en DM Bots visibles en CTF
bots_trait.jpg bots_ctf.jpg

fin.gif Commandes principales (WP=waypoint)

TOUCHES ACTIONS AVANT ESRESULTATU INFOS CONSOLE
R Création du premier WP (N°1) no_trait.jpg trait.jpg creating_point.jpg
Création du WP suivant. Il sera relié au premier. A chaque nouvel appui sur R, un WP sera créé et relié au précédent. Leur numéro de baptême est incrémenté à chaque fois. point_av.jpg point_suiv.jpg linking.jpg
SOURIS CLIC DROIT Désélectionne le WP en cours. Permet ainsi de se positionner à un autre endroit sur la map et de créer un nouveau WP qui ne sera pas relié au précédent. A noter qu'après un certain temps les traits verticaux matérialisant le WP, disparaissent.  Vous pouvez désélectionner n'importe quel WP pour  quitter le pattern en cours et vous positionner à un autre endroit de la map. 2lignes.jpg clearing_point.jpg
SOURIS CLIC GAUCHE Sélectionne un WP. Il se matérialise par un trait vertical. Le WP peut être un simple point si les vecteurs adjacents ont été effacés. av_recup_point.jpg recup_point.jpg selecting_point.jpg
DEL (Suppr)

Efface le WP sélectionné. Les routes de part et d'autres du WP effacé disparaitront. Il sera toujours possible de relier ces 2 WP d'extrémités libres ou  de créer d'autres WP intermédiaires et de les relier.

del.jpg del2.jpg deleting_point.jpg
ENTER (Entrée) Etablit un lien entre le WP sélectionné et le WP visé. av_lien.jpg lien.jpg linking_point.jpg

Efface un lien existant entre le WP sélectionné et le WP visé. Dans l'exemple 3 vecteurs on été effacés, il ne subsiste que les 4 points de leurs WP respectifs. A noter que ces WP peuvent être sélectionnés à nouveau et reliés entre eux ou vers d'autres WP

3vector.jpg 4points.jpg unlink.jpg
SHIFT(Maj) + ENTER Etablit un lien unidirectionnel entre un WP sélectionné et un WP visé. A utiliser lorsqu'un bot saute depuis un point haut qu'il ne pourra pas franchir en sens inverse. A noter que le vecteur rouge est interrompu vers le WP visé. av_non_retour.jpg non_retour.jpg one_way_link.jpg
END (Fin) Sauvegarde le fichier route wps. Dans cet exemple de gametype DM, le fichier sera de la forme mp_jor1_dm.wps. Le suffixe dm étant automatiquement apposé en fonction du gametype défini dans le fichier map.cfg save.jpg

fin.gif Commandes de déplacements

 Touches Action
Z  Courir en avant
SHIFT + Z  Marcher en avant
ESPACE  Sauter

NOTA: Les textes G_EditWPS retournés en mode info console sont natifs dans les sources originelles de CRSBOT. Toutefois pour des impératifs de clarté, notamment dans la démo in fine, j'ai codé des textes additifs en mode chat et en français qui font clairement apparaître les actions assorties des touches qui les ont générées. Voir exemple ci-après.

fr_txt.jpg

fin.gif Conseils et réflexions:

Lorsque que vous voulez viser un WP soit pour le sélectionner, le désélectionner ou l'effacer vous devez être très près ou quasiment à sa verticale. De toute manière si l'action n'est pas suivie d'effet, vous ne lirez aucune information en retour dans la console.

Pour gravir ou descendre une échelle, il suffit de définir un WP en bas de l'échelle et un autre vers le haut. Des WP intermédiaires ne sont pas nécessaires.

Les routes doivent être tracées au plus près des bots. Dans le cas contraire le bot restera à son point de respawn mais conservera ses facultés de tir. Au même titre assurez vous que tous les points de la map qui proposent des articles de jeux tels que armes, santé, armure, drapeaux, attaché-case, bombe, etc...,  possèdent un WP proche de leur position.

A l'opposé des routes WNT dont l'élaboration consistait à démarrer d'un point et de tracer un seul vecteur ininterrompu englobant tous les points de respawn et les différents articles de jeu, les routes WPS proposent des vecteurs multiples reliés ou non entre eux, établissant ainsi une véritable toile d'araignée. A partir d'un noeud de routes le bot prendra la direction qu'il jugera la plus opportune en fonction des ennemis et selon les critères définis par son intelligence artificielle.

 Dans cet exemple, à partir de son point de respawn, le bot rejoindra le noeud d'où partent 5 routes et pourra choisir sa direction en fonction de la présence des ennemis potentiels. routes_finies.jpg

Ne soyez pas surpris si il s'écoule parfois un certain temps entre une action et son effet, notamment dans les actions visant à modifier des liens existants. Le programme a en effet besoin de recalculer les rangs de chaque WP et la puissance de votre ordinateur peut ne pas être suffisante pour mener à bien rapidement ces opérations.

Voici une vue qui illustre un exemple de carroyage de botroutes dans la map mp_finca1. A remarquer les routes à sens unique. Les WP A rejoignent les WP B mais pas l'inverse. La route interrompue juste avant les WP B caractérise l'impossibilité du bot de revenir sur ses pas.

canevas.jpg

fin.gif Une demo pour terminer

Ce fichier peut être lu dans n'importe quel mode. Si vous désirez le visionner en mode WPS il vous suffira au préalable de créer dans le répertoire WPS un répertoire demos et d'y inclure le présent fichier wps.dm_2004.

La création de botroutes WPS ne présente rien d'insurmontable mais requiert surtout de la patience et beaucoup d'essais successifs.

Bon courage!

-=eek=-

Publié le 31/01/2019 17:37  Prévisualiser...   Imprimer...   Haut
Botroutes WNT  -  par FSMOD
CREATION DES BOTROUTES WNT


A - Généralités

Les bots sont contrôlés par l'intelligence artificielle qui leur a été assignée. Leur principale et unique mission est de suivre leur route et de tirer sur tout ce qui leur a été désigné comme ennemi. Mais ils ont absolument besoin de ces routes pour arpenter les maps.
Sans elles ils resteraient figés à leur point de respawn.

Nous utiliserons le mode GOLDRUSH pour la création des routes, attendu que ROCMOD dans sa version 2.1c primitive ne peut s'acquitter de cette tâche. A noter que ma version 2.2v prend totalement en charge l'élaboration de ses botroutes, mais attendu que ma version serveur n'est pas publique, il convenait à tout le moins que cette documentation s'appliquât aux origines logicielles de ROCMOD.
Je précise que la création des routes s'effectue uniquement en mode client. Il n'est donc point besoin de se connecter à un serveur distant quelconque. Nous verrons plus avant que le mode client créera lui-même un serveur LAN élémentaire.

GOLDRUSH crée des routes en extension wnt et cela tombe bien car ROCMOD exploite la même extension. Ces routes pourront donc être installées sur tout serveur tournant sur ce mode.

Si vous n'avez pas le mode GOLDRUSH client vous pouvez toujours le télécharger sur le site en version FSMOD compacte, beaucoup plus facile à gérer que la foultitude de fichiers du mode standard. De plus cette version a été particulièrement adaptée à sa fonction essentielle de créatrice de botroutes. En revanche, en matière de version client, sa compatibilité avec les serveurs qui tournent encore sous GOLDRUSH, n'est pas garantie. Je précise en outre que ma version a été recodée pour reconnaître les fichiers en extension .ent particulièrement utiles pour gérer des items associés aux maps SP (Single Player) entre autres. 48 de ces maps y sont d'ailleurs intégrées.

Je profite de cette remarque pour vous signaler que tous les autres fichiers et répertoires évoqués dans cette démo sont disponibles sur le site, en rubrique DOWNLOAD / BOTROUTES.

intro_wnt.jpg



B - Commandes principales

Ces commandes sont à saisir normalement en mode console mais il est plus judicieux de les associer à des binds et partant de les intégrer dans un fichier d'exécution.

Commandes Action
 bot_wp_add Ajoute un waypoint à votre position actuelle sur la map. Par défaut, un waypoint va être ajouté à la   suite du précédent dans l'ordre numérique. Toutefois, si vous spécifiez un argument numéral la commande ajoutera le waypoint après le numéro de waypoint spécifié.
Par exemple, si vous utilisez "bot_wp_add 3", un waypoint sera inséré entre les waypoints 3 et 4. Il prendra alors le numéro 4. L'ancien 4 deviendra 5 et ainsi de suite dans l'ordre croissant.
 bot_wp_rem Supprime un waypoint. Par défaut, le dernier waypoint sera suprimé. Si vous spécifiez un argument numéral, le waypoint désigné par son numéro sera supprimé.
Par exemple bot_wp_rem 5 supprime le waypoint 5. Le waypoint 6 devient alors le numéro 5, et ainsi de suite dans l'ordre régressif.
 bot_wp_addflagged c Ajoute un  point de camping / sniping, le bot va souvent venir à ce point si il a des propriétés de campeur.
 bot_wp_addflagged d Le bot va s'accroupir tout en essayant d'arriver à ce waypoint.
 bot_wp_addflagged f Attente d'un événement sur la map à ce waypoint avant de le franchir. Ceci est utile pour les ascenseurs, les plateformes mobiles, et d'autres éléments de telle sorte que le bot va attendre que l'objet soit sous le waypoint, pour avancer.
 bot_wp_addflagged g Crée un waypoint qui reliera le précédent en contournant les obstacles par le plus court chemin.
 bot_wp_addflagged j Ajoute un waypoint qui demande au bot de sauter sur ce point.
 bot_wp_addflagged m Forme inversée de l'argument f. Le bot passera par ce waypoint à condition qu'il n'y ait rien en dessous.
 bot_wp_addflagged n Le bot n'effectuera pas des contrôles de visibilité lors de son déplacement vers ce waypoint. A utiliser avec parcimonie car le bot peut facilement se coincer sur un obstacle en joignant le waypoint.
 bot_wp_addflagged s Identique à l'argument c, sauf le bot va s'accroupir pour le camping
 bot_wp_addflagged u Ajoute un waypoint qui invite le bot a se servir d' un objet à ce point. Utilisé dans le gametype dem pour les bombes. Pour que cela fonctionne correctement, vous devez vous assurer que vous utilisez toujours ce waypoint exactement au même endroit. Donc il est préférable de l'utiliser dans le centre de la croix rouge, sinon les bots ne seront pas en mesure de désamorcer les bombes.
 bot_wp_addflagged x Crée un sens unique vers l'avant. Le bot passera ce waypoint, mais en revenant vers lui, il va se retourner et avancer de nouveau.
Il s'agit d'un bon moyen si vous voulez que le bot saute depuis un point haut qu'il ne pourra pas gravir en retour. A utiliser toutefois avec parcimonie, car cela rend le bot beaucoup moins efficace.
 bot_wp_addflagged y Crée un sens unique vers l'arrière. Même principe que ci-dessus, sauf que le bot passera le waypoint en reculant.
 bot_wp_addflagged z Ajoute un waypoint qui demande au bot de camper accroupi à ce point.
 bot_wp_save Enregistre tous les waypoints créés.




Toutefois, avant de commencer et pour éviter tout problème, il est fortement recommandé de faire une copie de votre sof2mp.cfg actuel.
L'ajout de nouveaux binds nécessaires à la création des routes pourrait être de nature à bouleverser vos précieux binds.
Bien entendu si vous utilisez la méthode d'un autoexec.cfg pour générer vos binds avec fichier de configuration associé, comme je l'ai déjà préconisé dans ma doc, ceci ne vous concerne pas.


Dans SOF2 ouvrez le répertoire GOLDRUSH et créez un nouveau document texte.
Dans ce document, nous allons ajouter les binds pour la création des waypoints, ainsi que les paramètres pour la génération d'un pseudo serveur local, tout cela dans le but de générer des routes avec la plus grande facilité.

Dans votre nouveau document texte , ajouter ce qui suit:



 

 //********************
 //      Binds botroutes      
 //********************


  bind INS  "bot_wp_add"                             //  La touche Inser ajoute un waypoint.
  bind HOME "bot_wp_addflagged d"           //  La touche Orig oblige le bot a s'accroupir en joignant ce waypoint.
  bind DEL  "bot_wp_rem"                            //  La touche Suppr annule le dernier waypoint.
  bind UPARROW "bot_wp_addflagged j"     //  La touche flèche haut demande au bot de sauter sur ce point.
  bind PGDN "bot_wp_addflagged g"           //  La touche PgSuiv relie le dernier waypoint en contournant les obstacles.
  bind PGUP "bot_wp_addflagged x"           //  La touche PgPréc crée un sens unique vers l'avant.
  bind END "bot_wp_save"                          //  La touche Fin enregistre tous vos waypoints.

 //********************
 //       Config Serveur      
 //********************

  seta sv_hostname "^1WNT Botroutes Maker"

  set sv_maxclients "50"

  seta bot_enable             "1"
  seta bot_minplayers       "40"                  // A régler suivant le nombre de points de respawn
  seta bot_ignoreroutes   "1"
  seta g_do_warmup        "0"
  seta g_speed                 "500"               // A régler en fonction de la précision requise
  seta g_gravity                "500"               // A régler en fonction de la précision requise
 
  seta dmflags                   "8"
  seta g_scorelimit            "500"
  seta g_timelimit              "500"


  mapcycle


La deuxième partie du fichier concernant la config serveur sera évoquée in fine.

Vous pouvez copier et coller le contenu du précédent tableau dans votre nouveau document texte.
Enregistrer et nommez le wp.cfg 
 
Bien entendu ce sont les binds les plus courants que j'utilise pour créer mes routes et vous avez toute latitude pour les modifier, en ajouter ou en supprimer à votre convenance.



Toujours dans le répertoire GOLDRUSH de votre SOF2, créer un nouveau fichier texte.
Dans ce document nous allons ajouter toutes les commandes nécessaires au lancement de GOLDRUSH en mode développement de map.

Dans votre nouveau document texte , ajouter ce qui suit:

 
 
      start SoF2MP +set fs_game goldrush +devmap mp_finca +set bot_wp_edit 1 +exec wp.cfg +set g_pickupsDisabled 1
 



Explications:

J'ai choisi dans cet exemple la création de nouvelles routes pour la map mp_finca. A modifier en fonction de la map de votre choix. Il peut aussi s'agir d'une map de votre création.

ATTENTION : La map pour laquelle vous allez créer des routes doit être présente impérativement dans le répertoire BASE de votre SOF2 sinon start.bat ne lancera pas le jeu en mode serveur.
S'il s'agit d'une map standard le problème ne se posera pas puisqu'elle sera déjà encapsulée dans les fichiers système.

bot_wp_edit 1 indique que vous allez éditer les waypoints pour les bots
exec wp.cfg lance le fichier wp.cfg
set g_pickupsDisabled 1 désactive le mode ramassage des armes. Dans le cas contraire les routes devront passer sur les points de résurgence des armes et munitions.


Enregistrez et nommez le : start.bat. Attention, veillez à bien renommer l'extension .txt par l'extension .bat



Récapitulation:

Votre répertoire GOLDRUSH doit contenir:
  • GOLDRUSH_FSMOD.pk3
  • start.bat
  • wp.cfg
  • botfiles (voir in fine)
  • sof2mp.cfg

NOTA: le fichier sof2mp.cfg sera créé au lancement de GOLDRUSH, toutefois il est conseillé d'utiliser votre propre configuration issue d'un d'un autre mode .
Lancez start.bat

Vous êtes maintenant prêt à créer de nouvelles routes dans la map mp_finca



En appuyant sur la touche Inser vous allez ajouter un waypoint.
Avancez un peu et appuyez à nouveau sur la touche Inser et ainsi de suite. Vous verrez une grande ligne rouge derrière vous qui symbolise la route que les bots vont s'efforcer de suivre.
Facile non? Eh bien maintenant, le reste vous appartient. Essayez les autres binds et voyez ce que ça donne.
A vos débuts il est déconseillé de faire un canevas de routes trop complexe car vous rencontrerez sûrement des blocages ou des incohérences dans le déplacement des bots. Entrainez vous plutôt à créer des tronçons de routes courts en utilisant différents binds et voyez ce que donne le résultat. Seule cette manière empirique vous donnera les bons réflexes pour générer des routes pertinentes.

Lorsque vous serez satisfait de vos itinéraires, enregistrez par la touche Fin.

Un répertoire botroutes sera créé automatiquement dans GOLDRUSH. Il renfermera votre nouveau fichier wnt qui se nommera:

mp_finca_dm.wnt

A noter que l'argument dm ou tout autre argument lié à un gametype spécifique ne sera pas reconnu sous ROCMOD.
Si vous utilisez un serveur ROCMOD il conviendra en conséquence de renommer mp_finca_dm.wnt en :

mp_finca.wnt



Puis de le coller dans le répertoire botroutes de votre serveur, à la place du précédent.
Ce fichier générique est opérationnel pour tous les gametypes

Nota: si vous voulez créer des routes pour GOLDRUSH il faudra préciser le gameype désiré. Ce sera donc l'instruction +devmap mp_finca du fichier start.bat qui sera libellée du genre +devmap mp_finca_dm, +devmap mp_finca_ctf, etc..
A noter aussi que sous GOLDRUSH, si aucune information de gametype n'est précisée dans la fichier wnt, ce sera le fichier générique qui sera pris en compte, à condition qu'il existe. Ainsi, par exemple en CTF dans la map mp_jor, si le fichier mp_jor_ctf.wnt n'est pas présent dans le répertoire botroutes du serveur, c'est le fichier mp_jor.wnt qui servira de remplaçant. Cette appellation de base d'une route wnt sera d'autant plus importante si vous exploitez un serveur SOF2 en version V1.00 associé au mode RPM.




C - Conseils

Choisissez vos emplacements de camping avec prudence (pas de porte ou ruelle étroite), cela peut bloquer les autres bots dans les jeux d'équipe.

Lorsque vous demandez au bot de sauter sur un obstacle, assurez vous qu'en fonction de la gravité, il pourra s'affranchir de cette demande. Lors de la création du waypoint, évitez de coller le bot trop près de l'obstacle avant le saut.

Si la route passe sur un point haut, assurez vous que les niveaux sont identiques de chaque côté de l'obstacle. Un niveau  plus bas d'un côté risque de bloquer le bot en retour. Ne pas oublier, en effet, qu'une route créée en marche avant est également utilisable dans les 2 sens et le profil du terrain peut être différent entre l'aller et le retour.

Evitez des crochets ou des demi-tours étroits, préférez plutôt de larges virages. Une route qui tourne trop serrée sur elle-même ou qui se croise après un virage a 270 degrés, risque de dérouter le bot et de l'entrainer dans un mouvement de toupie.

Un bot peut très bien sortir de sa route durant le combat, il s'efforcera toujours de rejoindre le rail le plus proche de sa position. C'est pour cette raison qu'il est nécessaire de concevoir un réseau assez fourni, sans tomber dans l'excès.

Si un bot doit gravir une échelle de grande taille, comme par exemple monter le long d'un gratte-ciel, il convient de ponctuer l'ascension, par de nombreux waypoints, Sans cette pratique, le bot s'élèvera de quelques échelons puis retombera irrémédiablement sur le sol.

IMPORTANT :Assurez-vous de couvrir chaque point de respawn. Sinon les bots ne feront juste que s'accroupir et n'iront nulle part.
Le terme couvrir ne signifie pas que le bot doit impérativement passer le point précis du respawn. Il suffit simplement que la route  passe à proximité du point de respawn et que le bot puisse la "voir". Dans certaines maps le point de respawn peut se situer au fond d'un couloir ou dans une pièce très étroite, en ce cas la route doit passer au plus près du point de respawn.


D - Les points de respawn

Si vous connaissez par coeur tous les points de respawn d'une map donnée, ce qui suit sera sans objet pour vous.
Subodorant le contraire j'ai configuré un pseudo serveur sous GOLDRUSH qui permet de positionner les bots dans leurs spots d'apparition sur la map en les figeant et en les empêchant de tirer.
Le but est d'armer tous les points de respawn, donc de créer un grand nombre de bots. leur présence vous aidera a tracer des routes au plus près.
C'est le but de la deuxième partie du fichier wp.cfg , ainsi que du répertoire botfiles.
Ce dernier répertoire contient un fichier générateur de 40 bots ayant tous un profil unique dont les CVARS sont définis dans un fichier de configuration.
Le lancement en mode serveur se fera toujours par le fichier start.bat.
Vous arriverez sur la map par un point de respawn et là, petite particularité, les bots seront présents et immobiles mais pourront utiliser leurs armes. Si vous vous déplacez sur la map afin de rallier un point de votre choix pour le démarrage de vos routes, vous risquez de vous faire descendre.
La seule astuce est d'actionner la touche Inser le plus tôt possible ce qui aura pour effet de pacifier les bots.
Vous pourrez alors parcourir toute la map dans la réalisation de vos routes en passant au plus près des bot sans risquer de vous faire abattre.
A remarquer que vous pouvez actionner la touche Inser dès votre respawn sur la map attendu que de toute façon vous serez obligé tôt ou tard de passer par là.
La sauvegarde de vos routes par la touche Fin, rendra de nouveau les bots aptes au tir.

Avant de quitter vous pouvez éventuellement passer en mode spectateur et suivre en direct la navigation des bots sur leur routes.


Après avoir quitté le jeu vous pouvez désormais récupérer votre nouveau fichier wnt dans le répertoire botroutes  qui s'est créé automatiquement dans le répertoire GOLDRUSH client et l'installer dans le répertoire botroutes de votre serveur afin d'essayer au plus vite, le résultat de votre âpre labeur.

Pour conclure voici quelques captures.

Le waypoint N° 23 vient d'être saisi. Noter l'information résultante en haut à gauche de l'écran.

wp23.jpg


Quelques routes vues de dessus sans les bots

wpnobots.jpg


  Les waypoints viennent d'être validés, les bots naviguent  sur leur routes.

wpbot.jpg



Et enfin une petite démo qui en dit long sur tout ce qui précède
 
-=smile=-
Publié le 31/01/2019 15:35  Prévisualiser...   Imprimer...   Haut
INSTALLATION  -  par FSMOD
SOF2 V1.00

Retour aux origines

Pour ceux qui voudraient revenir à cette ancienne version qui a connu et connait encore de belles heures, voici les opérations simples qui permettront cette réalisation, à partir de la version GOLD V1.03.

INSTALLATION

  • Effectuer une copie complète de votre répertoire 'Soldier of Fortune II - Double Helix', renommer ce nouveau répertoire SofV1 par exemple et le replacer à la racine de votre disque dur.
  • Ouvrez ce nouveau répertoire SofV1.
  • Effacer les fichiers SoF2MP.exe et gamex86.dll.
  • Installer les nouveaux fichiers gamex86.dll et SoF2MP.exe contenus dans le pack RAR, disponible ICI.
  • Effacer le répertoire PB ainsi que tous les répertoires liés à des modes particuliers (ROCMOD, etc....)
  • Ouvrir le répertoire BASE
  • Effacer les fichiers update101.pk3, update102.pk2 et update103.pk3.
  • Fermer le répertoire BASE et revenir dans le répertoire principal SofV1.
  • créer un répertoire RPM et y installer le fichier client rpmX.pk3 disponible ICI.
  • A partir du nouveau fichier SoF2MP.exe, créer un raccourci vers le bureau.
  • Quitter le répertoire SofV1 et revenir vers le bureau.

On termine par:

  • Clic droit sur le raccourci SofV1.
  • Clic Propriétés.
  • Dans la fenêtre Cible ajouter après SoF2MP.exe, espace puis +set fs_game RPM
  • Clic sur OK

raccourci.jpg

-=cool=-

Publié le 21/01/2019 15:57  Prévisualiser...   Imprimer...   Haut
Rubriques

Vous êtes ici :   Accueil » Documentation