• Commencer à apprendre le scripting Arma3


    Hello à tous !

    J’aimerai commencer a apprendre le scripting Arma.
    Aussi j’ai commencé à regarder sur internet comment que ça se passe. Néanmoins, je suis tombé sur de vieux tuto pas très explicite. Du coup est-ce que l’un d’entre vous aurez une bonne adresse (FR/EN) pour tranquillement prendre en main ce language avec bonne pratique et voir même des TP :p

    Cya !

  • Salut, pub gratos : https://bit.ly/2C1VVGl

  • @steez
    Et ben merci !
    J’avoue que je préfère les cours en texte mais c’est un début :p

  •       @Elenui le wiki de bohémia en texte est pas mal :D
  • j ai jamais fini mais j ai commence ceci:
    http://btrteam.fr/le script sqf.html

    Apres sur mon youtube:

    Pour bien comprendre le wiki:
    http://btrteam.fr/le wiki de bohémia.html

  • @Adonis-Johnson Merci à toi ! J’ai commencé a regardé mais c’est un jolie merdier !

    @brutalzic merci beaucoup :)

    Avec ce que vous m’avez donné je devrais avoir de quoi commencer. Reste juste à trouver des TP ^^

  • Dommage que tu n’ai jamais finis c’est très bien :)

    Dommage que Poseidon ne soit pas dispo sous linux ça m’aurait arrangé au boulot.

  • @elenui a dit dans Commencer à apprendre le scripting Arma3 :

    Dommage que tu n’ai jamais finis c’est très bien :)

    Dommage que Poseidon ne soit pas dispo sous linux ça m’aurait arrangé au boulot.

    Poseidon c est Sublime Text avec une indication des commandes Arma.
    Il se peux que tu puisses recuperer le fichier et l incopore pour linux
    https://www.sublimetext.com/docs/3/linux_repositories.html

    Sous windows les fichiers sont dans :
    poseidon\Data\Packages\Lang SQF
    poseidon\Data\Packages\BIS_Common

    a tester !

  • @brutalzic
    Parfait !

    Je test ça et en cas je ferais un petit tuto si ça marche.

  • @brutalzic

    Donc ça marche bien !!

    0_1539158594166_7ab618fc-8852-4fd1-922c-d864eef5be3c-image.png

  • @brutalzic

    Au faite tes video ne sont plus disponible ^^"

  • @Elenui j ai edite le post, c est les liens que j avais mal renseigne !

  • Y en a un t-il un qui pourrais m’expliquer les fonctions ?
    J’avoue que j’ai beau regarder le wiki de bohemia je comprends vraiment pas comment c’est déclaré.
    J’ai regarder aussi dans le framework de life et même résultat.

    J’ai une montagne de question par rapport au scripting mais bon…
    Pour l’instant ce que j’ai réussis à faire c’est :
    Avoir un hint qui pop lorsqu’on regarde un flic et selon son grade afficher : nom prénoms grade

    La je m’attaques a quelque chose sans doute très compliqué mais j’aimerai faire une prise de service à un pnj secretaire.
    Dans le principe je sais ce qu’il me faut :

    add action sur le pnj
    get uid player
    query cop_level du player selon son uid
    change side player

    du coup j’ai compris qu’il me fallait des fonctions pour faire tout ça mais impossible de comprendre comment ça marche.

  • une fonction c est simple:
    Tu la declare (pour un life) dans le functions.hpp (regarde comment c est declare c est tout bete)
    Ensuite tu le declare dans le remoteexec (si besoin)

    Apres ca tu n as plus qu a creer un script qui commencera par recuperer les parametre envoye.

    voila c est tout !
    https://community.bistudio.com/wiki/Functions_Library_(Arma_3)

  • AAhhh !
    Je comprends enfin cette page du wiki !
    Merci Brutalzic

  • Donc si je comprends bien.

    Dans mon répertoire mission, altis_life.altis :
    1 - je créé un repertoire MesFonctions
    2- je déclare une class Functions
    3- Je déclare le répertoire ou trouver mes fonctions
    4- Je déclare chaque fichier fonction

    Right ?

  • le functions.hpp existe deja !
    Ajoute simplement ta class et regarde comment les autres sont definis.

    class Socket_Reciever {//nom de la class que tu definis comme tu le souhaites
        tag = "SOCK"; // nom dans l appel de la fonction
        class SQL_Socket { //class que tu definis comme tu le souhaites
            file = "core\session"; // emplacement du fichier ou se trouve les scripts a appeler comme fonction
             class dataQuery {};// declarration de la fonction SOCK_fnc_dataQuery, on appel donc le script fn_dataQuery.sqf (fn_ pour fonction, obligatoire)
         };
    };
    

    J espere avoir ete assez claire avec cette exemple tire du life

  • @brutalzic

    Thanks Brutalzic !
    Mais j’avais bien compris c’est exactement ce que j’ai fais et l’exemple que j’ai suivis !

    C’était juste pour être sur que j’avais bien fait.

    Pour l’instant ça ressemble à ça.
    Ca marche sans doute pas mais bon au moins ça me permet de m’imprégner des structures ça change des scripts python / shell.

    Déclaration dans function.hpp

    0_1539329785577_c5d520d9-efd0-4840-9953-771cb12c13a9-image.png

    Le début de fonction :
    0_1539329852347_faf3839e-e079-42c7-a861-9bbb68a8531f-image.png

  • @elenui ton class = x ne fonctionnera pas effectivement ^^ pas besoin du =

    ensuite pour tes hint il faut utiliser du format lorsque tu veux passer une variable dedans
    ce qui donne généralement ça

    hint format ["Secretaire Joceline : \n Bonjour %1, veuillez vous présentez à votre supérieur", _variable];
    

    la premiere variable est donc %1, la deuxieme sera %2

    hint format ["Secretaire %2 : \n Bonjour %1, veuillez vous présentez à votre supérieur", _variable, _nameSecretaire];
    

    là pour te montrer on n’est pas obligé d’affiche dans l’ordre mais tu dois te dire que après ton string, tu as un tableau et que y a “une forme” d’index avec tes variables, réfléchi comme ça et tu auras aucun soucis

    hint format ["Secretaire Joceline : \n Bonjour %1, contactez %2 pour faire ca", _variable, _superieur];
    

    Je tiens également à dire que je n’invente rien

    https://community.bistudio.com/wiki/hint

Messages 27Vues 183