veafShortcuts — Aliases de marqueurs¶
Module ID : SHORTCUTS | Fichier : veafShortcuts.lua
Objectif¶
Fournit des commandes marqueur courtes et faciles à retenir (aliases) qui correspondent à des commandes _spawn ou autres commandes VEAF complètes. Les joueurs tapent -nomAlias dans un marqueur F10 au lieu de mémoriser la syntaxe complète des commandes.
Fonctionnement¶
- Le joueur place un marqueur F10 avec un texte commençant par
- veafShortcutsrésout l'alias vers la commande VEAF sous-jacente- La commande résolue est exécutée comme si le joueur l'avait tapée directement
Les aliases peuvent inclure des paramètres aléatoires (ex : -sam choisit un niveau de défense aléatoire à chaque fois).
Activation¶
veafShortcuts.initialize()
Cela enregistre automatiquement la liste d'aliases par défaut.
Activé par défaut. Les alias intégrés (
-shilka,-sa2, …) fonctionnent d'emblée — la listeshortcuts:ci-dessous ne sert qu'à ajouter vos propres alias custom.
Configuration (mission.yaml)¶
modules:
SHORTCUTS:
enabled: true # défaut : true
logLevel: info # surcharge optionnelle du niveau de log
shortcuts: # définitions d'aliases personnalisés
- name: "smoke" # nom de l'alias (tapé en -smoke dans les marqueurs)
description: "Raccourci fumée" # affiché dans l'aide radio
command: "/_smoke" # commande VEAF à exécuter
bypass_security: false # true = saute le contrôle de niveau de la commande (toujours disponible)
| Champ | Type | Défaut | Requis | Description |
|---|---|---|---|---|
enabled |
booléen | true |
Non | Activer ou désactiver le module |
logLevel |
string | (global) | Non | Surcharge du niveau de log par module |
shortcuts |
objet[] | [] |
Non | Aliases personnalisés supplémentaires |
shortcuts[].name |
string | — | Oui | Nom de l'alias — les joueurs tapent -nom dans un marqueur |
shortcuts[].description |
string | — | Non | Description affichée dans l'aide radio |
shortcuts[].command |
string | — | Oui | Commande VEAF complète à exécuter (ex : /_smoke) |
shortcuts[].bypass_security |
booléen | false |
Non | Si true, cet alias ignore le système de sécurité |
Exemple minimal¶
modules:
SHORTCUTS:
enabled: true
shortcuts:
- name: "cas"
description: "Demander CAS"
command: "/_spawn group, name CAS-Template"
Les créateurs de missions peuvent également ajouter des aliases personnalisés dans mission-script.lua :
Aliases personnalisés¶
Ajoutez des aliases spécifiques à votre mission dans mission-script.lua :
veafShortcuts.AddAlias(
VeafAlias:new()
:setName("-monalias")
:setDescription("Mon spawn personnalisé")
:setVeafCommand("_spawn group, name mon-groupe-custom")
)
Référence des aliases par défaut¶
Les aliases intégrés les plus courants sont regroupés ci-dessous. Voir la Référence des Alias pour la liste complète de tous les alias intégrés.
Missions aériennes¶
| Alias | Description |
|---|---|
-cap |
CAP dynamique (nécessite le nom de l'appareil) |
-awacs |
AWACS en hippodrome depuis le marqueur, dans Skynet et liaison de données allumée ; escort <template> ajoute une escorte |
-escort |
Escorte de chasse pour l'avion ami ou neutre le plus proche du marqueur (template en option) |
-airstart |
Démarrer une mission de combat (nécessite un nom) |
-airstop |
Arrêter une mission de combat (nécessite un nom) |
-zonestart |
Activer une zone de combat (nécessite un nom) |
-zonestop |
Désactiver une zone de combat (nécessite un nom) |
Radio¶
| Alias | Description |
|---|---|
-send |
Envoyer un message radio (nécessite "MESSAGE") |
-play |
Jouer un fichier son (nécessite "NOMFICHIER") |
Mission Master¶
| Alias | Description |
|---|---|
-flag |
Lire la valeur d'un flag (nécessite un nom) |
-flagon |
Mettre un flag à ON (nécessite un nom) |
-flagoff |
Mettre un flag à OFF (nécessite un nom) |
-run |
Exécuter un runnable (nécessite un nom) |
Commandes utilitaires¶
| Alias | Description |
|---|---|
-destroy |
Détruire toute unité dans un rayon de 100 m du marqueur |
-ai_set |
Définir le handler IA d'un groupe terrestre |
Sécurité¶
La plupart des aliases respectent le système de sécurité (veafSecurity). Neuf aliases utilitaires
le contournent et restent toujours disponibles pour tous les joueurs : -smoke, -longsmoke, -signal,
-light, -point, -tacan, -jtac, -afac, -beacon.
Ce qu'on peut taper après un alias qui contourne la sécurité¶
Derrière un tel alias, un marqueur de joueur n'admet que les options qui règlent son effet, chacune sous une forme stricte :
| Alias | Options admises |
|---|---|
-smoke, -longsmoke |
color (red, green, orange, blue, white) |
-signal |
color (red, green, white, yellow) |
-light |
alt, radius (entiers) |
-jtac |
laser (4 chiffres), freq (MHz), mod (am, fm) |
-afac |
laser, freq, mod, alt, speed, hdg / heading (entiers), immortal |
-tacan |
channel (1 à 3 chiffres), band (x, y), code (1 à 4 lettres ou chiffres), radius (0 à 999 m) |
-point |
un nom, sans virgule |
-beacon |
aucune |
Tout le reste refuse le marqueur en entier : rien n'est exécuté, et seul l'auteur du marqueur reçoit un message qui dit ce que l'alias accepte.
Un mot-clé de commande VEAF (_spawn, _cas…) est refusé partout derrière ces alias.
Le texte refusé n'est jamais écrit dans le journal : il peut contenir un mot de passe.
Ne changent pas : l'alias seul, les coordonnées #… et le délai !N, les alias lancés par un script (lots d'alias, zones de combat), et une mission où la sécurité est désactivée.
Un alias de votre mission qui contourne la sécurité n'admet rien derrière lui, sauf s'il le déclare dans mission-script.lua :
veafShortcuts.AddAlias(
VeafAlias:new()
:setName("-mafumee")
:setVeafCommand("_spawn smoke")
:setBypassSecurity(true)
:setAllowedOptions({ color = "color", shells = "^[1-3]$" })
)
Une forme est le nom d'une forme de veafShortcuts.OptionForms (color, flareColor, laser, frequency, modulation, integer, tacanChannel, tacanBand, morseCode, radius999, flag), ou un motif Lua ancré.
Un alias déclaré dans mission.yaml avec bypass_security: true n'admet rien derrière lui.
Contourner le mot de passe ne veut pas dire se taire. Ces deux notions ont longtemps été le même
réglage dans le code, et ça se voyait : un pilote qui posait un marqueur -tacan n'obtenait aucune
confirmation — ni canal, ni bande. Le silence ne dépend plus que d'une chose : qui a demandé.
| Qui pose l'objet | Message au joueur |
|---|---|
| un pilote, par un marqueur sur la carte F10 | toujours, même si l'alias contourne le mot de passe |
| un script — zone de combat, vague AirWaves, unité pré-placée | aucun, sinon une zone de trente groupes afficherait trente messages |
Deux exceptions volontaires, parce que leur message n'est pas une notification mais la donnée dont le pilote a besoin pour s'en servir :
- un JTAC annonce son code laser et sa fréquence même quand c'est un script qui l'a posé ;
- un TACAN annonce son canal, sa bande et son indicatif — mais seulement au marqueur. Posé par un script, il reste muet : c'est le comportement d'avant, laissé tel quel faute de mission qui en ait besoin.
Voir aussi¶
- Référence des Alias — liste complète de tous les alias intégrés
- veafSpawn — le moteur de spawn sous-jacent
- veafSecurity — système de permissions