Bienvenue sur JeuxOnLine - MMO, MMORPG et MOBA !
Les sites de JeuxOnLine...
 

Panneau de contrôle

Recherche | Retour aux forums

JOL Archives

Petite demande au sujet des Factions.

Par Ballesto le 22/10/2002 à 11:52:22 (#2381234)

Bonjour à toute la communauté.

Voilà j'ai un petit problème avec les factions. j'ai 5 groupe de monstres qui ont chacun leur faction et un Chef qui à sa propre faction et donc si on attaque ou que l'on se fait attaquer ( pour X raisons ) par un des groupes les autres reste sur leur faction de base, ainsi que le Chef par contre je voudrai que si on attaque le Chef et que sa faction passe en hostile, les 5 autres groupes est aussi leur faction qui passe en Hostile.

En résumer on peu chatouiller un peu les montres mais si on s'en prend au Chef alors tout le monde si met.

Merci pour vos réponses. :D

Par eMRaistlin le 22/10/2002 à 12:12:20 (#2381369)

Est-ce que tu veux leur affecter a tous le même script de OnPhysicallyAttaqued ou pas ?

(et OnSpellCastAt ?)


[Edit:]

Mince, j'y pense, je suis nul : Si tu fais en sorte que les orcs soient a 50 en reput pour les orc, et que les orc soient a 100 pour le heros (et l'inverse etant faux, 50 du hero vers les orcs..) alors le systeme de faction le fera pour toi, plus facilement que par script ^^

Par Ballesto le 22/10/2002 à 14:25:17 (#2382354)

Non, non le systeme de faction ne peut rien pour moi, je l'ai retourné dans tous les sens.

Au fait ton pseudo Raistlin c'est en rapprot avec Dragonlance ?

Bon pour le script, je comprend pas bien ta question. Ce n'est que lorsque l'on attaque le Chef que les autres factions devienne hostile par lorsque l'on attaque n'importe quelle créature des dite factions.

Par shadoh le 22/10/2002 à 14:27:48 (#2382376)

J ai un "probleme" a peu pres similaire à celui ci. J ai créé un monstre (une sorciere) puis j ai créé une faction spécifique pour ce monstre. En gros, la sorciere est neutre aux PJ et aux monstres. Les PJ peuvent lui parler afin d'obtenir des informations sur une quete. Et un des choix de réponse possible provoque la fureur de la sorciere qui attaque le PJ. Si je place la créature sans passer par un déclancheur, pas de probleme. Mais vu que le PJ peut la tuer, il faut qu'elle puisse respawn pour les autres PJ qui passeront plus tard. J ai donc créé un type de declancheur personalisé et au lieu de le mettre la faction en hostile en hostile, j'ai utilisé ma faction spéciale. Le probleme c'est qu avec ces reglages la, le mob de spawn pas si on passe sur le déclancheur. Alors j'ai réglé la faction du déclancheur en hostile et la le mob spawn bien avec la faction personnalisée que je voulais. Sauf que si je le tue, il respawnera un peu plus tard en étant hostile jusqu à ce qu'il ait tué son agrésseur (apres l'avoir tué, le mob arrete d'etre hotile et reprend sa faction spéciale).

Par eMRaistlin le 22/10/2002 à 14:44:51 (#2382501)

Non, non le systeme de faction ne peut rien pour moi, je l'ai retourné dans tous les sens.


Je suis surpris :

Si tu met la faction Orc Amie avec le chef et neutre envers tous (voir en plus hostile aux Pj) et que tu met le hero en neutre envers les orcs, ca marche pas ?

Sinon, ce que je disais, c'est que tu peux le gerer par script, dans ce cas, tu met tout le monde a 50 en reputation faction, puis dans les script OnPhysicallyAttacked et OnspellCatsAt, tu met des adjust reputation.

Ma question est la suivante:

Veux tu que je te fasse un script générique a mettre dans les event des Orcs ET du Hero, ou bein souhaite Tu 2 script differents : un pour les orcs, et un pour le Hero ? (c'est plus facile, masi si tu as vraiment besoin de 1 seul script, c'est faisable ... plus chi** mais faisable ^^)

Par Ballesto le 22/10/2002 à 14:49:47 (#2382541)

Excuse moi Raistlin si je suis un peu dur de la feuille mais je comprend pas tout.

En fait pourrai tu me faire UN script que je place dans les script de ma licorne qui passe les factions des centaures, dryades, spectres et pégases du bois des ombres en hostile vis à vis des PJ.

Merci de ta patience et de ta collaboration.:maboule:

Par eMRaistlin le 22/10/2002 à 15:19:26 (#2382740)

OnPhysicalAtk et OnDisturbed et OnSpellCastAt


void main(){ //quoique je te conseille de virer ca, et d'inserer directement la suite dans le Script par defaut,
//en lui changeant son nom

object oPC = GetLastHostileActor();
object oMonstre = OBJECT_SELF;
string sTagMonstre= GetTag(oMonstre );
string sPotes = "LIC_FOLLOWA_"; //ou autre, suivant ton besoin.
string sChef = "Tag de la licorne"; //
//Pour faire simple, affecte a toutes les creatures qui sont les
//suivantes de la licorne le même tag (genre "LIC_FOLLOWA")
//avec a la fin, le N° de faction (genre si tu a 4 faction differentes :
//LIC_FOLLOWA_1 / LIC_FOLLOWA_2 ... etc)


if (sChef == sTagMonstre)
{
int nNBfaction = 4; //si tu as 4 faction, par exemple

while (nNBFaction > 0)
{
oFollower = GetNearestObjectByTag(sPotes+IntToString(nNBFaction));
int nInitialRep = GetFactionAverageReputation(oFollower,oPC);
AdjustReputation(oPC,oFollower, -nInitialRep);
nNBFaction = nNBFaction-1;
}
}
}// Vire ca aussi, si tu a viré le void main(){ ^^


Avec ca, tu peux gerer plusieurs faction, tant que au moin un membre de chaque faction possede un Tag LIC_FOLLOWA_X


A priori, tu a juste besoin de le mettre sur les script de OnPhysicalAtk et OnDisturbed et OnSpellCastAt, mais bon, j'ai fait une securité pour que seule l'attaque du chef declenche la vindicte des foules, donc tu peut le mettre sur tout les monstres de la zone, si ca t'arrange...

Par contre, les scripts sur les reputations sont assez "touchy" donc, teste longtemps avant de l'inclure... (et hesite pas a me dire si le resultat est Ok ou Ko ^^)

Par LeProctophantasmiste le 22/10/2002 à 15:28:47 (#2382808)

eMRaistlin a raison je crois, tu n'a pas besoin de script (je viens de tester).
En supposant que pour l'instant aucune des faction ne réagit quand une autre est attaquée (il me semble que c'est ce que tu as pour l'instant, si je me trompe, corrige moi j'ajusterais).

Edite la faction de la licorne uniquement:
enclenche "full detail" (désolé en français je ne sais plus).
Normalement toutes les colonnes (pertinentes) doivent être neutres. Ce que tu veux c'est que la licorne soit neutre envers toutes les factions, mais que les factions soient toutes alliées de celle de la licorne (et neutre entre elles). Donc pour chaque relation tu laisse la colonne violette tranquile (celle de gauche), et tu monte celle de droite (verte) à 100. Ca devrait marcher.
eMRaistlin, désolé j'arrive un peu après la bataille .

EDIT: ah oui laisse global effect enclanché pour la licorne.
RE: j'ai un pbm avec ma gauche et ma droite :o

Par eMRaistlin le 22/10/2002 à 15:36:42 (#2382854)

pas grave...


/me AdjustReputation(eMRaistlin, GetObjectByTag("LeProctophantasmiste",-1));


error : [on ligne01] > Caracter string "LeProctophantasmiste" is too long...


:mdr: :mdr: :mdr: :mdr: :mdr: :mdr: :mdr: :mdr:

Par LeProctophantasmiste le 22/10/2002 à 15:44:39 (#2382914)

:D, Et encore, si j'avais pu, ça aurait été "Le Proctophantasmiste", mais là, même GOA trouvait ça trop long...

Merci à vous deux.

Par Ballesto le 22/10/2002 à 15:44:54 (#2382918)

Merci à vous deux.

Je vais testé tout cela dés ce soir à la maison.
A oui petite précision pour voir si j'ai bien tout compris le LIC_FOLLOW c'est bien le TAG d'une créature d'une des faction pote, c'est pas le nom de la faction.

Bon je vous remercie encore.

Au fait raistlin t'a pas répondu tu est un adepte de DragonLance?

Par eMRaistlin le 22/10/2002 à 15:47:35 (#2382937)

Au fait raistlin t'a pas répondu tu est un adepte de DragonLance?


J'adore... surtout la deuxieme trilogie ^^

Honnetement, je trouve ca presque meilleur que LotR, mais bon, faut pas comparer deux incomparables...(je vais me faire des ennemis, la ^^)

Par Ballesto le 22/10/2002 à 15:50:47 (#2382960)

La trilogie? mais c'est les livres, moi je te parle des scénario.

Tu les connait?

Si ta réponse est non, tu pourra bientot les jouer.

Par LeProctophantasmiste le 22/10/2002 à 15:57:22 (#2383015)

Gargh... Je me suis avancé, juste histoire d'être sûr j'ai fait des tests un peu plus complets, et le comportement est correct si toutes les créatures sont dans une même zone (area), mais pas de réaction si elles ne sont pas dans la zone de la licorne... Du coup je veux bien que l'on m'explique à quoi ça sert "global effect", je suis un peu perdu.

Par eMRaistlin le 22/10/2002 à 16:09:16 (#2383113)

Du coup je veux bien que l'on m'explique à quoi ça sert "global effect", je suis un peu perdu.



Je prend aussi, pasque honnetement, je bidouille, avec scripts, mais deja, rien que le manque de Set Reputation me manque enormement...

JOL Archives 1.0.1
@ JOL / JeuxOnLine