VcomAI est un mod développé par dominic/genesis92x, touchant au comportement de l'IA. De par sa conception, il est également possible d'installer ce mod en version script dans une mission. Ce tutoriel a pour objectif de vous montrer cette manipulation et également les paramétrages Vcom.
Pour installer la version script de Vcom, vous devez tout d'abord télécharger la dernière version sur Github. Une fois sur la page GitHub, sélectionnez la dernière version disponible. À la date de ce tutoriel la dernière version est la 3.4.0-release (la 3.4.1 étant toujours en développement). Une fois la bonne version sélectionnée, vous allez télécharger l'archive zip contenant le code.
Les images suivantes vous indiquent la procédure.
[image perdue] [image perdue]
Extrayez l'archive et ouvrez le dossier VcomAI-3.0-3.4.0-release/VcomAI340.Stratis. Vous devez trouver à l'intérieur 2 dossiers et 3 fichiers :
[image perdue]
Il vous faut maintenant ouvrir dans l'explorateur de fichiers votre répertoire de mission. Celui-ci se trouve normalement dans le chemin d'accès C:\Users\<username>\OneDrive\Documents\Arma 3 - Other Profiles\<profil>\missions\<votremission> ou mpmissions\<votremission> (les noms de répertoire entre <> sont à remplacer par les vôtres), <votremission> étant le dossier de votre mission (je sais, incroyable !).
Dans ce dossier, transférez les fichiers init.sqf, description.ext, le dossier Vcom et le dossier userconfig. Voilà ! Vcom est maintenant installé dans votre mission et uniquement cette mission. Maintenant voyons les réglages du mod.
Par défaut, Vcom influe sur toutes les unités non contrôlées par les joueurs, excepté celles du camp civil. Pour ses réglages, Vcom utilise deux fichiers aux contenus identiques, VcomAI_DefaultSettings.sqf et AISettingsV3.hpp.
[image perdue]
Les deux coupables, ces coquins.
Toute cette partie est valable pour la version mod également.
En ouvrant votre fichier de paramètres dans votre éditeur de code préféré comme VS Code, Notepad++, Emacs Vim (bande de vieux ), etc. Les premières lignes de votre fichier sont un commentaire contenant des commandes à mettre dans l'init d'une unité si l'on veut désactiver certains comportements.
ADDITIONAL COMMANDS (group this) setVariable ["VCM_NOFLANK",true]; //This command will stop the AI squad from executing advanced movement maneuvers. (group this) setVariable ["VCM_NORESCUE",true]; //This command will stop the AI squad from responding to calls for backup. (group this) setVariable ["VCM_TOUGHSQUAD",true]; //This command will stop the AI squad from calling for backup. (group this) setVariable ["Vcm_Disable",true]; //This command will disable Vcom AI on a group entirely. (group this) setVariable ["VCM_DisableForm",true]; //This command will disable AI group from changing formations. (group this) setVariable ["VCM_Skilldisable",true]; //This command will disable an AI group from being impacted by Vcom AI skill changes.
(group this) par this, vous pouvez directement mettre la ligne dans l'init du groupe et je recommande cette pratique (Traduction pour les non-anglophones :
Évidemment, pour annuler à tout moment l'effet de ces commandes il suffit de changer true en false avec this setVariable[“<variable>”, false];.
Passons maintenant aux paramètres généraux de Vcom. Il est à noter que ces paramètres sont modifiables à tout moment dans la mission.
Vcm_ActivateAI = true; //Set this to false to disable VcomAI. It can be set to true at any time to re-enable Vcom AI VcmAI_ActiveList = []; //Leave this alone. Vcm_ArtilleryArray = []; //Leave this alone //VCOM ARTILLERY. Only one kind of advanced artillery can be used at a time. VCM_ARTYENABLE = true; //Enable improved artillery handling from Vcom. VCM_ARTYLST = []; //List of all AI inside of artillery pieces, leave this alone. VCM_ARTYDELAY = 60; //Delay between squads requesting artillery VCM_MEDICALACTIVE = true; // AI will heal themselves, and medics will heal others in their squad. VCM_ARTYWT = -(VCM_ARTYDELAY); VCM_ARTYET = -(VCM_ARTYDELAY); VCM_ARTYRT = -(VCM_ARTYDELAY); VCM_ARTYSIDES = [west,east,resistance]; //Sides that will use VCOM artillery VCM_AIMagLimit = 5; //Number of mags remaining before AI looks for ammo. VCM_Debug = false; //Enable debug mode. VCM_MINECHANCE = 75; //Chance to lay a mine every 30 seconds or so VCM_MINEENABLED = true; //Enable AI placing mines VCM_SIDEENABLED = [west,east,resistance]; //Sides that will activate Vcom AI VCM_RAGDOLL = true; //Should AI have a chance to ragdoll when hit VCM_RAGDOLLCHC = 100; //CHANCE AI RAGDOLL VCM_FullSpeed = true; //Enforce full speedmode during combat (Does not reset after combat end) VCM_HEARINGDISTANCE = 800; //Distance AI hear unsuppressed gunshots. VCM_SUPDIST = 300; //Distance AI will hear suppressed gunshots. VCM_WARNDIST = 2000; //How far AI can request help from other groups. VCM_WARNDELAY = 30; //How long the AI have to survive before they can call in for support. This activates once the AI enter combat. VCM_STATICARMT = 300; //How long AI stay on static weapons when initially arming them. This is just for AI WITHOUT static bags. They will stay for this duration when NO ENEMIES ARE SEEN, or their group gets FAR away. VCM_StealVeh = false; //Will the AI steal vehicles. VCM_ClassSteal = true; //If true, crewmen are required to steal tracked vehicles. Pilots are required to steal aircraft. false = anyone can steal any vehicle. VCM_AIDISTANCEVEHPATH = 100; //Distance AI check from the squad leader to steal vehicles VCM_ADVANCEDMOVEMENT = true; //True means AI will actively generate waypoints if no other waypoints are generated for the AI group (2 or more). False disables this advanced movements. VCM_FRMCHANGE = true; //AI GROUPS WILL CHANGE FORMATIONS TO THEIR BEST GUESS. VCM_SKILLCHANGE = true; //AI Groups will have their skills changed by Vcom. VCM_USECBASETTINGS = false;//If CBA is enabled on the host, use the CBA default settings. If false, use the filepatching settings instead. VCM_CARGOCHNG = true; //If true, Vcom will handle disembarking/re-embarking orders instead of vanilla. This is with the intention to prevent the endless embark/disembark loops AI are given. VCM_TURRETUNLOAD = true;//If true = Prevents AI vehicle turret positions from leaving a vehicle just beecause it is slightly damaged. Example: leaving a tank when just the tracks are damaged. VCM_DISEMBARKRANGE = 500; //How far AI will disembark from their enemies. If the vehicle is damaged, they will disembark. VCM_AISNIPERS = true; //Special sniper AI VCM_AISUPPRESS = true; //AI will attack from further away with primary weapons to suppress enemies Vcm_DrivingActivated = true; //AI will use experimental driving improvements. Vcm_PlayerAISkills = true; //AI in a group, that a players leads, can have their skills changed separately. Vcm_GrenadeChance = 10; //Chance the AI will throw a grenade. Vcm_SmokeChance = 5; //Chance the AI will throw a smoke grenade. Vcm_AI_EM = true; //Will the AI use enhanced movement to navigate around. Vcm_AI_EM_CHN = 10; //Chance a group will attempt to jump over an obstacle - every 0.5 secs VCM_AI_EM_CLDWN = 10; //Time in seconds before a group will consider jumping over obstacles;
true, false pour le désactiver (de grandes études ont été faites pour cette conclusion, je vous l'assure !).
true, si vous ne le désactivez pas en mettant sa valeur en false, vos paramètres seront écrasés par la config CBA des IA du serveur ou une valeur par défaut arbitraire de Vcom. Aucun changement que vous ferez sur les autres paramètres ne sera pris en compte dans ce cas-ci.
Et c'est parti pour une nouvelle liste de paramètres :
west, east, independant) si vous voulez un délai différent. La valeur doit être négative.Vcom permet également de modifier le skill des IA en utilisant les paramètres avancés du jeu vanilla. Dans Arma, la compétence d'une IA est calculée à partir de deux types de paramètres, les paramètres de config (ceux que vous réglez dans vos options de jeu) et le paramètre d'éditeur (le slider disponible dans les attributs d'une IA). Mais derrière ce paramètre d'éditeur se cache une série de paramètres plus précis sur lesquels vous pouvez jouer. Vcom vous propose de jouer sur ces paramètres à différentes échelles, gardez à l'esprit que la config d'IA rentre toujours en jeu dans le calcul.
[image perdue]
Ces paramètres sont les subskills, aimingAccuracy, aimingShake, etc. Pour pouvoir jouer sur ces skills, vous avez à disposition plusieurs variables :
Plusieurs de ces paramètres peuvent être activés en même temps. Seul VCM_SIDESPECIFICSKILL rend complètement caduc VCM_CLASSNAMESPECIFIC (ce qui peut être changé en inversant deux clauses if dans la boucle VCM_AIDIFSET ).
Le paramètre VCM_SKILL_CLASSNAMES mange des tableaux de type
/*
EXAMPLE FOR VCM_SKILL_CLASSNAMES
VCM_SKILL_CLASSNAMES = [
["Classname1",[aimingaccuracy,aimingshake,spotdistance,spottime,courage,commanding,aimingspeed,general,endurance,reloadspeed]],
["Classname2",[aimingaccuracy,aimingshake,spotdistance,spottime,courage,commanding,aimingspeed,general,endurance,reloadspeed]]
];
*/
VCM_SKILL_CLASSNAMES = [
["B_GEN_Soldier_F",[0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1]],
["B_G_Soldier_AR_F",[0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1]]
];
Les autres variables mangent tous des tableaux de type
VCM_AIDIFA = [['aimingAccuracy',0.25],['aimingShake',0.15],['aimingSpeed',0.35],['commanding',0.85],['courage',0.5],['endurance',1],['general',1],['reloadSpeed',0.7],['spotDistance',0.90],['spotTime',0.75]];
Et c'est sur ces belles paroles que se finit ce tutoriel .
Méthode 1 : Passez votre souris sur l'unité voulue dans la liste d'unités. Méthode 2 : Clic droit sur l'unité.
[image perdue] [image perdue]