Faire rentrer une IA dans un batiment ???

Pour les Masochistes Éditeurs de missions
Répondre
NesteA
Chouchou
Chouchou
Messages : 23
Enregistré le : ven. 20 janv. 2012, 07:49

Faire rentrer une IA dans un batiment ???

Message par NesteA »

Mesdames, messieurs de la TTK, bien le bonjour chez vous

Je viens une nouvelle fois à vous afin de profiter égoïstement de votre savoir-faire....

Je vous expose mon ou mes souci(s) :

Je tente de créer une mission où le but (version dépouillée loool) sera de filer une IA afin qu'elle nous mène à une cible....
Par souci de re-jouabilité, je lui ai créé un parcours avec une destination finale possible sur plusieurs points, en utilisant :

Code : Tout sélectionner

move position "nom d'objet" 
l'objet étant groupé à plusieurs marqueurs sur la carte .... jusque là pas de problème....

Mais je voudrais que cette IA une fois arrivé à destination rentre dans un bâtiment , mais comme selon le point qu'il rejoindra , la configuration du terrain ne sera pas la même, je me demandais si il n'y avait pas une commande pour faire rentrer cette IA dans le plus proche bâtiment ou quelques choses du style.... une action qui pourrait s'appliquer quelque soit sa destination en fait....

j’espère être clair car je me fais peur quand je me relis lol

Dernière petite chose, y a t il moyen de modifier la perception de l'IA afin qu'elle ne nous repère pas trop facilement????

Allez j’arrête avec les questions et je vous remercie d'avance de prendre le temps de me lire :)


Vous remarquerez que je peux pas être plus poli looool :mrgreen: :mrgreen:


Merci les gars
Modifié en dernier par =[TTK]= Memphis007 le mar. 31 janv. 2012, 19:21, modifié 2 fois.
Raison : Merci d'utiliser la balise BBCode "Code" au lieu de mettre le texte dans une couleur illisible.

Avatar du membre
=[TTK]= Yoda
Grand Mérou
Grand Mérou
Âge : 58
Messages : 3562
Enregistré le : jeu. 11 févr. 2010, 17:52
Humeur : bieng-bieng
Localisation : Le milieu

Re: Faire rentrer une IA dans un batiment ???

Message par =[TTK]= Yoda »

fait leur signer un bail.

nan je déconne, c'est pour détendre l'atmosphère ... ;)
C’est parce que la vitesse de la lumière est supérieure à celle du son que certains ont l’air brillant avant d’avoir l’air con.

Image
" ... j'ai pas la tirelire dans le string et des tétons comme des pipettes de roues de camion ..." - Injonction Frog Pénelope 2014

Avatar du membre
=[TTK]= Yourry
Grand Scriptou
Grand Scriptou
Âge : 36
Messages : 1634
Enregistré le : mer. 17 mars 2010, 16:39
Localisation : Dans le reblochon !

Re: Faire rentrer une IA dans un batiment ???

Message par =[TTK]= Yourry »

Pour faire entrer l'ia dans ton batiment le plus proche; voici la solution:

->Dans l'init de ton ia:

Code : Tout sélectionner

nul=[this]execVM"move_maison.sqf" 
->Le script: "move_maison.sqf":

Code : Tout sélectionner

/* 
buildingPos: est la commande qui permet de choisir l'emplacement dans une maison. Le nombre d'emplacements dans une maison varies de 0 à 5 (rare). Normalement une maison à toujours au moins deux emplacements valides 0 et 1 .
Pour plus d'info sur cette commande:
http://arma2-wiki.fr/buildingPos
(en plus en français)

=> En lisant les notes on aurait pu mettre un truc dans l'init de ton ia:
this move ((nearestBuilding this) buildingPos 1)

or il y a apparemment quelques soucis avec cette commande en  haut. D'où la solution de passer par un petit script:
*/

// On ne lance le script que du côté du serveur puisque c'est lui qui gère l'IA:
if(isServer) then {

    //On définie les variables privées du script
    private ["_pos", "_radius", "_nearbldgs", "_maison","_ton_ia"];

    //Permet de récuperer ton ia (renvois au 'this' dans ton expression nul=[this]exec.....
    _ton_ia = _this select 0;
    
    //centre à partir de quoi point on cherche une maison:
    _pos = position "nom d'objet";//à toi d'adapter en fonction de ce que tu veux.

    //rayon de recherche
    _radius = 500;

    //Commande pour chercher les maison; on obtient une liste de toutes les maisons dans un rayon de 500m à partir de notre centre (_pos)
    _nearbldgs = nearestObjects [_pos, ["Building"], _radius];

    //On sélectione la première maison qui est la plus proche de notre centre (_pos):
    _maison = _nearbldgs select 0;

    //On dépplace ton IA dans la maison trouvée:
        //Petite sécurité si on a pas trouvée de maison; permet de régler mieux la recherche:
        if(count _maison == 0) then {
        hint"pas d'habitation trouvée";//Faut revoir la recherche: le rayon et ton centre.
        }else{
        //Si on est ici, c'est qu'une maison a été trouvé:
        _ton_ia move (_maison buildingPos 1);
        };
};
 
Dernière petite chose, y a t il moyen de modifier la perception de l'IA afin qu'elle ne nous repère pas trop facilement????
Certainement possible puisque la nuit une IA nous repère moins bien que la journée (il y a donc bien une commande qui le fait), mais je n'en sais rien sur ce sujet. Faut faire une recherche.

Bonne édition.
"Les Boches faisaient "Kamarad". Il aurait fallu commencer par ça des deux côtés, pour éviter les massacres organisés par ceux d'en haut, mais le fusil qu'ils nous avaient collé entre les mains, forcément, il a bien fallu qu'il serve et tout le reste à suivit." dixit Tardi et Verney
Image
L'autre jour, en tirant le rouleau de papier cul, toute la cloison est venue avec. dixit Camille Caz

NesteA
Chouchou
Chouchou
Messages : 23
Enregistré le : ven. 20 janv. 2012, 07:49

Re: Faire rentrer une IA dans un batiment ???

Message par NesteA »

merci beaucoup pour ta réponse yourry , l'IA n'ayant pas voulu signé de bail , je me rabat sur ton script ^^

Je teste et je vous tiens au jus..... encore merci ;)

Avatar du membre
Camille Caz
Grand Gourou
Grand Gourou
Âge : 83
Messages : 1814
Enregistré le : lun. 25 janv. 2010, 22:45
Humeur : paléolithique mais presque
Localisation : près de La Rochelle

Re: Faire rentrer une IA dans un batiment ???

Message par Camille Caz »

Pour la perception de l'objet, essaie de le mettre en "imprudent" et tu ajoutes "rapide" s'il flâne trop.
Normalement, en imprudent, les IA ne sont pas trop vigilants.

En plus, ici et sans tarder, j'adresse mes félicitations répétées pour la générosité et la compétence de Yourry.
Vous avez un problème ? Demandez à Yourry, il vous fait le script.
Exemple
Yourry, pourrais-tu me traduire en .sqf le script suivant

tant qu'on joue, exèque ce qui suit;
si un joueur du groupe des joueurs est atteint par un projectile,
Si ce joueur s'appelle =TTK=Camille Caz, alors {annule l’effet de l'impact}
fin de si
fin de si

Merci Yourry
On n'a pas toujours ce qu'on mérite mais on ne mérite pas forcément ce qu'on a.

Avatar du membre
=[TTK]= Yourry
Grand Scriptou
Grand Scriptou
Âge : 36
Messages : 1634
Enregistré le : mer. 17 mars 2010, 16:39
Localisation : Dans le reblochon !

Re: Faire rentrer une IA dans un batiment ???

Message par =[TTK]= Yourry »

Tu as pas besoin de ce genre d'artifice, tu restes toujours planqué derrière nous.
On prend déjà tout à ta place.

:mrgreen:
"Les Boches faisaient "Kamarad". Il aurait fallu commencer par ça des deux côtés, pour éviter les massacres organisés par ceux d'en haut, mais le fusil qu'ils nous avaient collé entre les mains, forcément, il a bien fallu qu'il serve et tout le reste à suivit." dixit Tardi et Verney
Image
L'autre jour, en tirant le rouleau de papier cul, toute la cloison est venue avec. dixit Camille Caz

NesteA
Chouchou
Chouchou
Messages : 23
Enregistré le : ven. 20 janv. 2012, 07:49

Re: Faire rentrer une IA dans un batiment ???

Message par NesteA »

loool je voulais pas ré-ouvrir de vieilles blessures de guerre les gars...^^ toutes mes excuses..... :mrgreen: :mrgreen:

Avatar du membre
Camille Caz
Grand Gourou
Grand Gourou
Âge : 83
Messages : 1814
Enregistré le : lun. 25 janv. 2010, 22:45
Humeur : paléolithique mais presque
Localisation : près de La Rochelle

Re: Faire rentrer une IA dans un batiment ???

Message par Camille Caz »

C'est rien, c'est rien Nestea.
Juste une petite révolte de djeun vite réprimée par la seule force de l'assurance. Non mais.
On n'a pas toujours ce qu'on mérite mais on ne mérite pas forcément ce qu'on a.

Répondre