Editeur mission : 1er script : annonces copilote altitudeAGL

Salle dédiée aux mods/addons et applications pour DCS World
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Editeur mission : 1er script : annonces copilote altitudeAGL

#1

Message par hellfrog35 »

je 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 ?
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
Avatar de l’utilisateur

diditopgun
Pilote Philanthrope
Pilote Philanthrope
Messages : 7787
Inscription : 09 janvier 2004

Re: Editeur mission

#2

Message par diditopgun »

Si ç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à. :emlaugh:
Image 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.
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#3

Message par hellfrog35 »

mon pb c'est que j'ai tjrs aimé le côté obscur ... :Jumpy:
merci Didi
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Avatar de l’utilisateur

diditopgun
Pilote Philanthrope
Pilote Philanthrope
Messages : 7787
Inscription : 09 janvier 2004

Re: Editeur mission

#4

Message par diditopgun »

Oui le "touch'papal" est en toi ! lol
Image 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.
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#5

Message par hellfrog35 »

Ah non ça c'est fini (pour le moment :jerry: ).
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
Avatar de l’utilisateur

diditopgun
Pilote Philanthrope
Pilote Philanthrope
Messages : 7787
Inscription : 09 janvier 2004

Re: Editeur mission

#6

Message par diditopgun »

lol
Image 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.
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#7

Message par hellfrog35 »

bon 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)

Code : Tout sélectionner

env.setErrorMessageBoxEnabled(true) myGroupName = "GroupHellfrog" myPilot = "Hellfrog" myGroup = Group.getByName(myGroupName) myGroupID = Group.GetID(myGroup)
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.
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#8

Message par hellfrog35 »

résolu
dernière ligne : getID et non GetID .... trop bête...
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#9

Message par hellfrog35 »

bon 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
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#10

Message par hellfrog35 »

est - 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
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Avatar de l’utilisateur

diditopgun
Pilote Philanthrope
Pilote Philanthrope
Messages : 7787
Inscription : 09 janvier 2004

Re: Editeur mission

#11

Message par diditopgun »

Mon 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... :emlaugh:
Image 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.
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#12

Message par hellfrog35 »

tu 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... :exit:
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
Avatar de l’utilisateur

diditopgun
Pilote Philanthrope
Pilote Philanthrope
Messages : 7787
Inscription : 09 janvier 2004

Re: Editeur mission

#13

Message par diditopgun »

Je 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. :yes:
Image 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.
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#14

Message par hellfrog35 »

c'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...
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#15

Message par hellfrog35 »

ç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
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission

#16

Message par hellfrog35 »

version 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++

[L’extension « zip » a été désactivée et ne peut plus être affichée.]

ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Avatar de l’utilisateur

Topic author
hellfrog35
Nouvelle Recrue
Nouvelle Recrue
Messages : 187
Inscription : 12 avril 2016

Re: Editeur mission : 1er script : annonces copilote altitud

#17

Message par hellfrog35 »

bon 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
ancien compte hellfrog sous DCS BS1 de 2007 à 2011
Répondre

Revenir à « Mods et Applications »