Editeur mission : 1er script : annonces copilote altitudeAGL
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Editeur mission : 1er script : annonces copilote altitudeAGL
#1je débute en script mission et je voudrais comprendre comment faire un truc assez simple :
quelle est la manière la plus simple dans un script de faire référence à l'objet = unité du joueur (en mission solo pour commencer simple) ?
l'objectif est ensuite de travailler avec GetPosition etc...
je suis un peu perdu entre les GetGroup, les coalitions, les GetUnit, lesGet ID... doit y a voir une syntaxe simple sans enumérer ttes les tables ?
par ex : GetByName fait référence dans l'éditeur de mission : à la case 'type' = nom de la classe de l'appareil ? ou au nom du joueur = case 'pilote' ? ou autre chose ?
si je prends la fonction suivante :
function getUnitID(unitName)
local unit = Unit.getByName(unitName)
local unitID = nil
if unit ~= nil then
unitID = unit:getID()
end
return unitID
end
à quoi correspond unitName ?
quelle est la manière la plus simple dans un script de faire référence à l'objet = unité du joueur (en mission solo pour commencer simple) ?
l'objectif est ensuite de travailler avec GetPosition etc...
je suis un peu perdu entre les GetGroup, les coalitions, les GetUnit, lesGet ID... doit y a voir une syntaxe simple sans enumérer ttes les tables ?
par ex : GetByName fait référence dans l'éditeur de mission : à la case 'type' = nom de la classe de l'appareil ? ou au nom du joueur = case 'pilote' ? ou autre chose ?
si je prends la fonction suivante :
function getUnitID(unitName)
local unit = Unit.getByName(unitName)
local unitID = nil
if unit ~= nil then
unitID = unit:getID()
end
return unitID
end
à quoi correspond unitName ?
Dernière modification par hellfrog35 le ven. juin 17, 2016 2:22 am, modifié 1 fois.
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
- Pilote Philanthrope
- Messages : 7786
- Inscription : 09 janvier 2004
Re: Editeur mission
#2Si ça fonctionne de la même manière que dans l'éditeur de mission le champs "NAME" (New Airplane Group) = "groupName" et le champs "PILOT" (Pilot #1) = "unitName"
Après je n'y connais strictement rien en script DCS.... c'est le côté obscure de la force ce truc là.
Après je n'y connais strictement rien en script DCS.... c'est le côté obscure de la force ce truc là.
Intel I7 8700K / RTX 3080 / 32Go DDR4 PC21300 G.Skill Ripjaws V / MSI Z370 Gaming Pro Carbon / Cooler Master Silent Pro Gold - 1000W / Noctua NH-D14 / Acer XB270HUDbmiprz 27" G-synch 144Hz / SSD Samsung 860EVO 250Go + 1To / Cooler Master HAF X / Warthog+VPC WarBRD / Thrustmaster TPR / Track-IR v5 / Windows 11 64bits.
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#3mon pb c'est que j'ai tjrs aimé le côté obscur ...
merci Didi
merci Didi
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
- Pilote Philanthrope
- Messages : 7786
- Inscription : 09 janvier 2004
Re: Editeur mission
#4Oui le "touch'papal" est en toi !
Intel I7 8700K / RTX 3080 / 32Go DDR4 PC21300 G.Skill Ripjaws V / MSI Z370 Gaming Pro Carbon / Cooler Master Silent Pro Gold - 1000W / Noctua NH-D14 / Acer XB270HUDbmiprz 27" G-synch 144Hz / SSD Samsung 860EVO 250Go + 1To / Cooler Master HAF X / Warthog+VPC WarBRD / Thrustmaster TPR / Track-IR v5 / Windows 11 64bits.
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#5Ah non ça c'est fini (pour le moment ).
suis passé à 3 écrans et pour avoir assez de FPS, plus de tactile. Par contre bcp plus de vrais boutons encombrent mon bureau...
suis passé à 3 écrans et pour avoir assez de FPS, plus de tactile. Par contre bcp plus de vrais boutons encombrent mon bureau...
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
- Pilote Philanthrope
- Messages : 7786
- Inscription : 09 janvier 2004
Re: Editeur mission
#6
Intel I7 8700K / RTX 3080 / 32Go DDR4 PC21300 G.Skill Ripjaws V / MSI Z370 Gaming Pro Carbon / Cooler Master Silent Pro Gold - 1000W / Noctua NH-D14 / Acer XB270HUDbmiprz 27" G-synch 144Hz / SSD Samsung 860EVO 250Go + 1To / Cooler Master HAF X / Warthog+VPC WarBRD / Thrustmaster TPR / Track-IR v5 / Windows 11 64bits.
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#7bon revenons au sujet :
ça marche pas .
si je crée un déclencheur 'une fois' ,règle 'temps > 5', action 'executer script'
avec ce code (y a pas d'erreur de typo)
déjà là ça me renvoie une erreur car myGroup = nil !!!!! : Attempt to call field 'GetID' a nil value
pour la suite j'ai besoin d'avoir l'ID du groupe et le nom de l'unité, c'est tout... rien de compliqué ensuite.
ça marche pas .
si je crée un déclencheur 'une fois' ,règle 'temps > 5', action 'executer script'
avec ce code (y a pas d'erreur de typo)
Code : Tout sélectionner
env.setErrorMessageBoxEnabled(true)
myGroupName = "GroupHellfrog"
myPilot = "Hellfrog"
myGroup = Group.getByName(myGroupName)
myGroupID = Group.GetID(myGroup)
pour la suite j'ai besoin d'avoir l'ID du groupe et le nom de l'unité, c'est tout... rien de compliqué ensuite.
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#8résolu
dernière ligne : getID et non GetID .... trop bête...
dernière ligne : getID et non GetID .... trop bête...
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#9bon j'ai avancé, mais ça marche pas encore comme je voudrais
si qqn veut aider c'est là pour les détails du code et de la mission
http://forums.eagle.ru/showthread.php?t=168583
si qqn veut aider c'est là pour les détails du code et de la mission
http://forums.eagle.ru/showthread.php?t=168583
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#10est - ce que qqn sait si les fonctions
trigger.action.outSoundForGroup
etc
ne fonctionnent que dans un script.lua intégré à une mission via une action do file script
ou bien aussi dans un autre lua comme export.lua par ex sans faire partie d'une mission ?
utilité : avoir un msg sonore dans un script indépendant... sans passer par un pgm externe
trigger.action.outSoundForGroup
etc
ne fonctionnent que dans un script.lua intégré à une mission via une action do file script
ou bien aussi dans un autre lua comme export.lua par ex sans faire partie d'une mission ?
utilité : avoir un msg sonore dans un script indépendant... sans passer par un pgm externe
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
- Pilote Philanthrope
- Messages : 7786
- Inscription : 09 janvier 2004
Re: Editeur mission
#11Mon pauvre hellfrog j'espère que quelqu'un saura répondre à tes question mais je crains que le scripting DCS ne soit pas un sport de masse dans la communauté française...
Intel I7 8700K / RTX 3080 / 32Go DDR4 PC21300 G.Skill Ripjaws V / MSI Z370 Gaming Pro Carbon / Cooler Master Silent Pro Gold - 1000W / Noctua NH-D14 / Acer XB270HUDbmiprz 27" G-synch 144Hz / SSD Samsung 860EVO 250Go + 1To / Cooler Master HAF X / Warthog+VPC WarBRD / Thrustmaster TPR / Track-IR v5 / Windows 11 64bits.
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#12tu sais que quand on vole il faut tjrs regarder au dessus de soi, et pas que en dessous...
c'est comme dans ta boite de conserve d'ailleurs...
pour la prog c'est pareil... moi j'aime bien approfondir les choses et voir tout ce qu'on peut faire avec...
et puis j'aime bien, autant que piloter, et comme avec mon epaule ds le sac je ne peux pas piloter plus d'une heure de suite... ça m'occupe...
c'est comme dans ta boite de conserve d'ailleurs...
pour la prog c'est pareil... moi j'aime bien approfondir les choses et voir tout ce qu'on peut faire avec...
et puis j'aime bien, autant que piloter, et comme avec mon epaule ds le sac je ne peux pas piloter plus d'une heure de suite... ça m'occupe...
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
- Pilote Philanthrope
- Messages : 7786
- Inscription : 09 janvier 2004
Re: Editeur mission
#13Je suis certains qu'il y a moyen de faire des choses très intéressantes avec le scripting dans DCS, mais actuellement c'est trop chronophage/complexe pour moi.
Intel I7 8700K / RTX 3080 / 32Go DDR4 PC21300 G.Skill Ripjaws V / MSI Z370 Gaming Pro Carbon / Cooler Master Silent Pro Gold - 1000W / Noctua NH-D14 / Acer XB270HUDbmiprz 27" G-synch 144Hz / SSD Samsung 860EVO 250Go + 1To / Cooler Master HAF X / Warthog+VPC WarBRD / Thrustmaster TPR / Track-IR v5 / Windows 11 64bits.
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#14c'est vrai que :
faut savoir déjà un peu programmer
avoir au moins des notions de C
maitriser le lua (notemment les tables et pointeurs)
comprendre la logique de l'editeur de mission
après on fait soit des missions avec juste des triggers dans l'editeur, y a déjà moyen de faire bcp de choses
soit on veut essayer de faire un truc pas possible par défaut et là faut mettre les mains dans le cambouis
pour eviter les pbs le mieux est alors de tout faire en script, mais c'est un sacré boulot
pour ça y a déjà des bases de scripts très intéressantes et bien faites dont mist, moose qui va le compléter bientot, CTLD CSAR etc...
enfin on peut tenter de mixer script et triggers, mais là faut déjà bien maîtriser...
et c'est sans compter les bugs : nb de fonctions ne marchent pas ou plus après une MAJ, d'autres n'ont jamais fonctionné etc...
et la doc qui manque cruellement d'exemples... donc recours aux fofos, et faut donc aussi maitriser l'anglais...
ça limite pas mal c'est vrai...
mais y a qd meme des missions superbes qui ont été faites grâce à ça.
et c'est grâce au retours des gens qui maîtrisent et partagent que l'éditeur évolue aussi... meme si faut pas être pressé... 2 more weeks...
faut savoir déjà un peu programmer
avoir au moins des notions de C
maitriser le lua (notemment les tables et pointeurs)
comprendre la logique de l'editeur de mission
après on fait soit des missions avec juste des triggers dans l'editeur, y a déjà moyen de faire bcp de choses
soit on veut essayer de faire un truc pas possible par défaut et là faut mettre les mains dans le cambouis
pour eviter les pbs le mieux est alors de tout faire en script, mais c'est un sacré boulot
pour ça y a déjà des bases de scripts très intéressantes et bien faites dont mist, moose qui va le compléter bientot, CTLD CSAR etc...
enfin on peut tenter de mixer script et triggers, mais là faut déjà bien maîtriser...
et c'est sans compter les bugs : nb de fonctions ne marchent pas ou plus après une MAJ, d'autres n'ont jamais fonctionné etc...
et la doc qui manque cruellement d'exemples... donc recours aux fofos, et faut donc aussi maitriser l'anglais...
ça limite pas mal c'est vrai...
mais y a qd meme des missions superbes qui ont été faites grâce à ça.
et c'est grâce au retours des gens qui maîtrisent et partagent que l'éditeur évolue aussi... meme si faut pas être pressé... 2 more weeks...
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#15ça y est ça marche...
à optimiser mais on peut le faire : annonces de l'altitude / sol (et non / mer comme par defaut dans l'editeur) par le copilote : ça marche.
reste à optimiser
cf lien post dcs plus haut
à optimiser mais on peut le faire : annonces de l'altitude / sol (et non / mer comme par defaut dans l'editeur) par le copilote : ça marche.
reste à optimiser
cf lien post dcs plus haut
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission
#16version finale du script qui semble marcher
réalisée sous DCS 202
mission jointe : départ en SA342 à batumi moteur chaud, aucun objectif, vol libre, map caucasus
annonce des altitudes AGL à 1 3 5 10 15 20 m
test une fois par seconde
au premier passage : annonce
ensuite annonce uniquement si
- plus de 10% de variation
- et n'a pas déjà été dite ou déjà dite mais avec changement du sens de passage (montée /descente)
les sons d'origine dcs viennet de \DCS World 2 OpenAlpha\Sounds\Speech\Sound\ENG\Common\Player
utilité :
réalisme IRL le copilote annonce les altitudes
pour se perfectionner en helitreuillage
pour se perfectionner en manoeuvres au ras du sol : vous pouvez vous concentrer sur l'acquisition et la mémorisation de repères visuels et lacher un peu le cadran de l'altimètre le temps le l'apprentissage
perso pour apprendre à faire mon premier script et comprendre comment ça marche...
pour les détails : ouvrir la mission dans l'éditeur : regarder les triggers
pour disséquer le contenu : ouvrir le fichier miz avec winrar ou winzip ou equivalent
les fichiers sons sont à copier dans le dossier l10n/DEFAULT
pour qu'ils soient joués il faut qu'ils apparaissent dans les triggers sinon l'éditeur les vire à l'enregistrement de la mission : (mise à jour des fichiers dictionnaire et map)
les fichiers sans extensions sont des lua lisibles avec notepad++
réalisée sous DCS 202
mission jointe : départ en SA342 à batumi moteur chaud, aucun objectif, vol libre, map caucasus
annonce des altitudes AGL à 1 3 5 10 15 20 m
test une fois par seconde
au premier passage : annonce
ensuite annonce uniquement si
- plus de 10% de variation
- et n'a pas déjà été dite ou déjà dite mais avec changement du sens de passage (montée /descente)
les sons d'origine dcs viennet de \DCS World 2 OpenAlpha\Sounds\Speech\Sound\ENG\Common\Player
utilité :
réalisme IRL le copilote annonce les altitudes
pour se perfectionner en helitreuillage
pour se perfectionner en manoeuvres au ras du sol : vous pouvez vous concentrer sur l'acquisition et la mémorisation de repères visuels et lacher un peu le cadran de l'altimètre le temps le l'apprentissage
perso pour apprendre à faire mon premier script et comprendre comment ça marche...
pour les détails : ouvrir la mission dans l'éditeur : regarder les triggers
pour disséquer le contenu : ouvrir le fichier miz avec winrar ou winzip ou equivalent
les fichiers sons sont à copier dans le dossier l10n/DEFAULT
pour qu'ils soient joués il faut qu'ils apparaissent dans les triggers sinon l'éditeur les vire à l'enregistrement de la mission : (mise à jour des fichiers dictionnaire et map)
les fichiers sans extensions sont des lua lisibles avec notepad++
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
-
Topic author - Nouvelle Recrue
- Messages : 187
- Inscription : 12 avril 2016
Re: Editeur mission : 1er script : annonces copilote altitud
#17bon j'ai fait qqs progrès,
integration de mist, et épuration du code heloscript de la mission nevada helicopter war, pour compiler les fonctions du copilote : alertes altitudes, + missiles incoming, + sink rate. j'ai viré tout le reste.
ça a l'air de marcher,
à part peut etre les alertes incoming, j'ai un doute... si qqn veut jeter un oeil... pour confirmer si ça marche ou pas...
ça progresse, mais c'est compliqué... y a pas bcp de guide how to ... faut étudier les scripts et les missions des autres pour piger peu à peu...
si vous avez un message de l'éditeur avec une messagebox blanche qui apparait, c'est qu'il y aun bug dans le code : tapper ENTER pour fermer la boite avec ok, et de suite ESC pour quitter la mission.
peut se produire en cas de kill du joueur par ex, faut que je voie comment gérer ça...
petite mission de chasse tanks et sams en remontant la rivière au nord de batumi sur caucasus. restez bas... rearm et refuel obligatoires, donc ça fait un bon training. pensez à larguer des leurres en traversant la rivière tant que tous les sams ne sont pas éliminés... la difficulté vient juste du relief... c'est pas difficile, mais c'est pas hyper facile non plus. rester TRES bas peut être une bonne idée au début. si vous volez avec un vario nul, les messages altitude ne devraient pas être une gêne. et si vous n'y arrivez pas encore bien, ils devraient vous aider à vous perfectionner.
tte suggestion retour de bug etc est la bienvenue.
je ne suis pas sûr de ne pas avoir mis des unités de mods (non vanilla) ... à voir si ça pose problème...
étape suivante : voire si on peut utiliser radiomenu pour activer / désactiver les messages du copilot
et enfin, qd les bugs seront corrigés par prochaine release update de DCS, intégrer les cargos... qui buguent pour le moment... j'aimerais bien sonoriser avec guidage la mission forestry operation pour le huey sur nevada... faire partir les camions quand un certains nb de cargos de bois ont été transportées etc... bref ajouter de l'animation et de l'immersion...
dispo en download ici http://forums.eagle.ru/showpost.php?p=2 ... stcount=17
integration de mist, et épuration du code heloscript de la mission nevada helicopter war, pour compiler les fonctions du copilote : alertes altitudes, + missiles incoming, + sink rate. j'ai viré tout le reste.
ça a l'air de marcher,
à part peut etre les alertes incoming, j'ai un doute... si qqn veut jeter un oeil... pour confirmer si ça marche ou pas...
ça progresse, mais c'est compliqué... y a pas bcp de guide how to ... faut étudier les scripts et les missions des autres pour piger peu à peu...
si vous avez un message de l'éditeur avec une messagebox blanche qui apparait, c'est qu'il y aun bug dans le code : tapper ENTER pour fermer la boite avec ok, et de suite ESC pour quitter la mission.
peut se produire en cas de kill du joueur par ex, faut que je voie comment gérer ça...
petite mission de chasse tanks et sams en remontant la rivière au nord de batumi sur caucasus. restez bas... rearm et refuel obligatoires, donc ça fait un bon training. pensez à larguer des leurres en traversant la rivière tant que tous les sams ne sont pas éliminés... la difficulté vient juste du relief... c'est pas difficile, mais c'est pas hyper facile non plus. rester TRES bas peut être une bonne idée au début. si vous volez avec un vario nul, les messages altitude ne devraient pas être une gêne. et si vous n'y arrivez pas encore bien, ils devraient vous aider à vous perfectionner.
tte suggestion retour de bug etc est la bienvenue.
je ne suis pas sûr de ne pas avoir mis des unités de mods (non vanilla) ... à voir si ça pose problème...
étape suivante : voire si on peut utiliser radiomenu pour activer / désactiver les messages du copilot
et enfin, qd les bugs seront corrigés par prochaine release update de DCS, intégrer les cargos... qui buguent pour le moment... j'aimerais bien sonoriser avec guidage la mission forestry operation pour le huey sur nevada... faire partir les camions quand un certains nb de cargos de bois ont été transportées etc... bref ajouter de l'animation et de l'immersion...
dispo en download ici http://forums.eagle.ru/showpost.php?p=2 ... stcount=17
ancien compte hellfrog sous DCS BS1 de 2007 à 2011