Sign in to follow this  
naossano

Fallout 2 Random Encouter Editor

12 posts in this topic


Tutoriel existants


http://fomod.nukacola.com/index.php?page=carte&zone=
http://falloutmods.wikia.com/wiki/Editing_Random_Encounters_in_Fallout_2


Future application
http://falloutmods.wikia.com/wiki/FO2_Worldmap_Editor


Autres explications au sein du topic

Salutations

Sachez que mon intention n'est pas de sortir un mod de fou furieux d'ici la fin de l'année.
J'essaie juste de faire un peu d'auto-fan-service, en essayant de bidouiller un élément qui me semble potentiellement très riche en bastons diverses. (avec des alliances improbables, via "AND" et des batailles inédites, via "FIGHTING")

Bref, avec un peu d'aléatoire, et aucun usage du mapper, je pense qu'on peut y faire des trucs interressants.


Le fil rouge de cette édition m'a été donnée, pour l'instant, sur ce lien : (c'est en anglais, mais y a pas trop de textes)

http://falloutmods.wikia.com/wiki/Editing_Random_Encounters_in_Fallout_2

Forcé de constater que les possibilités sont encore plus grandes que je le pensais.
Simplement en éditant UN fichier txt, (et un msg, mais qui concerne que les textes ingam), on peut, à peu près tout, moduler.


Pour autant, j'ai beau triturer ce fichier texte, je n'arrive à aucun résultat.

Pour info, j'ai créer un nouveau repertoire, avec une nouvelle installation, exprès pour cela.
J'ai édité divers tables, avec cette rencontre (pour le test)

enc_00=Chance:99%,Enc:(2-7) NAV_Enclave_Patrol FIGHTING (2-7) NCR_Masters_Army

Ce qui donne, par exemple :

[Encounter Table 10]
lookup_name=Arrok_M ; Arroyo Klamath Trade Route
maps=Mountain Encounter 1, Mountain Encounter 2, Cavern Encounter 0, Mountain Encounter 3, Mountain Encounter 4, Cavern Encounter 2
enc_00=Chance:100%,Enc:(2-10) NAV_Enclave_Patrol FIGHTING (2-10) NCR_Masters_Army


Puis édité plusieurs zones en les incitants à avoir telle table de rencontres.

art_idx=339 encounter_difficulty=0 walk_mask_name=wrldmp00 ; x_offset_yoffset=terrain,morning_chance,afternoon_chance,night_chance,type 0_0=Ocean,Fill_W,None,None,None,DstS 0_1=Ocean,Fill_W,None,None,None,DstS 0_2=Ocean,Fill_W,None,None,None,DstS 0_3=Ocean,Fill_W,None,None,None,DstS 0_4=Ocean,Fill_W,None,None,None,DstS 0_5=Ocean,Fill_W,None,None,None,DstS 1_0=Ocean,Fill_W,Uncommon,Uncommon,Uncommon,DstS 1_1=Ocean,Fill_W,Uncommon,Uncommon,Uncommon,DstS 1_2=Ocean,Fill_W,Rare,Rare,Rare,DstS 1_3=Ocean,Fill_W,Rare,Rare,Rare,DstS 1_4=Ocean,Fill_W,Uncommon,Uncommon,Uncommon,DstS 1_5=Ocean,Fill_W,Uncommon,Uncommon,Uncommon,DstS 2_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 2_1=Ocean,No_Fill,Uncommon,Uncommon,Uncommon,DstS 2_2=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 2_3=Mountain,No_Fill,Rare,Rare,Rare,DstS 2_4=Desert,No_Fill,Uncommon,Uncommon,Uncommon,DstS 2_5=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 3_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 3_1=Mountain,No_Fill,Rare,Rare,Rare,DstS 3_2=Mountain,No_Fill,Rare,Rare,Rare,DstS 3_3=Mountain,No_Fill,Rare,Rare,Rare,DstS 3_4=Desert,No_Fill,Uncommon,Uncommon,Uncommon,DstS 3_5=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 4_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 4_1=Mountain,No_Fill,Rare,Rare,Rare,DstS 4_2=Mountain,No_Fill,Rare,Rare,Rare,DstS 4_3=Mountain,No_Fill,Rare,Rare,Rare,DstS 4_4=Desert,No_Fill,Uncommon,Uncommon,Uncommon,DstS 4_5=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 5_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 5_1=Mountain,No_Fill,Rare,Rare,Rare,DstS 5_2=Desert,No_Fill,Rare,Rare,Rare,DstS 5_3=Desert,No_Fill,Rare,Rare,Rare,DstS 5_4=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 5_5=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 6_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 6_1=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,DstS 6_2=Mountain,No_Fill,Rare,Rare,Rare,DstS 6_3=Desert,No_Fill,Uncommon,Uncommon,Uncommon,DstS 6_4=Desert,No_Fill,Uncommon,Uncommon,Uncommon,DstS 6_5=Desert,No_Fill,Uncommon,Uncommon,Uncommon,Dsts

[Tile 0]

















































Ici, DstS correspondant à une table dont les rencontre m'interressent.

Pour bien vérifier que les changements sont effectifs,
J'ai remplacé tout les NAV_Enclave_Patrol AMBUSH Player (l'enclave attaquant le joueur) par des NAV_Enclave_Patrol FIGHTING (something) (l'enclave se battant contre quelque chose)

Malheureusement, je n'ai pu obtenir aucun changement ingame.
Les rencontres sont exactement les mêmes qu'avant.

J'ai beau recommencer la partie x fois (et me taper le temple des epreuves en speedrun cheaté), revérifier les occurences de mon fichier txt, je ne constate aucun changement.

Aussi, je me demande si l'erreur n'est pas ailleurs, s'il ne faut pas modifier un executable, ou autre.

Je me permet donc de demander, ici, si quelqu'un, ayant plus d'expérience dans le domaine peut m'aiguiller. (et nous éclairer davantage sur les possibilités offertes par cette édition)

Que faut-il faire pour appliquer ingame, les changement opérés sur les tables de worldmap.txt ?

Share this post


Link to post
Share on other sites

J'ai fais mes premières tentatives sur ma version patché (restoration project en FR) Puis j'ai refais une installation complète (sur un autre dossier), à partir de mon cd de Fallout 2, afin d'avoir une version vierge. Sur chacune des 2 installations, je n'ai constaté aucune différence ingame. Étant donné que j'ai remplacé chacune des occurrences de l'enclave, par des rencontres impliquant un affrontement contre une autre force, je pense que le blocage se situe ailleurs que dans le fichier worldmap.txt

Share this post


Link to post
Share on other sites
http://www.jeuxvideo.com/forums/1-472-8754102-1-0-1-0-0.htm

Trouvé l'erreur. C'était assez con, je l'avoue.

Mon fichier worldmap.txt se trouvait dans

Fallout2/data

Or, le bon dossier est

Fallout2/data/data

Pour le coup, le lien avec le fichier ne pouvait évidement pas se faire.

Désormais, tout marche très bien.

Le top étant aussi que, quand on édite le fichier worldmap.txt, les sauvegardes restent valides, et les changements effectifs. Pas besoin de faire le temple des épreuves en speedrun, si on veut tester les modifications.

Prochaine étape : Tenter d'ajouter de nouvelles rencontres. (avec des npcs n'y étant pas habituellement)

Share this post


Link to post
Share on other sites

c'est plutôt intéressant, et tu compte en faire un éditor ? ou un truc réutilisable par d'autre genre un tuto facile ? Ce serait pas mal si on pouvait tweaker les rencontres facilement.

Share this post


Link to post
Share on other sites

A vrai dire, je suis plutôt en phase de test, donc, je pense dire ici, au fur et à mesure, ce qu'il est possible de faire.

Tout d'abord, se fier au lien donné sur mon premier post. Il contient essentiellement toutes les fonctions éditables, c'est à dire tout. J'essaierai de traduire ce lien un peu plus en détail, quand j'aurais profité un peu plus des fonctions. (pê dans le week-end, ou au fur et à mesure)

(membres de chaque rencontres (modèle, arme, inventaire, scripte, probabilité d'apparition de chaque individus dans la rencontre), puis tables de rencontres (avec plusieurs rencontres par tables, choix des rencontres, de leur agressivité, des alliances ou guerres entre rencontres), puis l'association des tables de rencontres à des tiles, et celles des tiles à des zones géographique)


Cela fonctionne un peu comme de l'html ou du codage. C'est à dire que les balises doivent être respecté, les identifiants doivent rester les même, et qu'une virgule ou un nom de traviole peut foutre la merde.


Actuellement, j'ai effectué des reglages qui étaient les plus fans services, à mon sens, en opposants différents groupes de mobs, considérés comme étant les plus forts (enclave, unité (gardes de BH), restes de l'armée du maître, griffemorts, aliens, centaurs, floaters, mutated molerat, fire geckos, geckos dorés), et ajouté au milieu une rencontre avec des types en PA. (reste à trouver un scripte de la BOS, mais là, ça dépasse mes compétences)

J'essaie de voir si je peux pas ajouter Horrigan, mais j'ai toujours pas pu le voir ingame. J'ai aussi une rencontre foirée, que je cherche à détecter. (le jeux plante quand j'atterris dessus)

Bref, actuellement au stade de débuggage.

Pour autant, à part un tuto, et partager quelques worldmap.txt personnalisés, j'ai pas l'intention d'en faire un mod ou quoique ce soit. Le but étant surtout de générer des conflits et des alliances improbables entre npc, et voir le résultat ingame.

Aussi, je ne pense pas me préoccuper du fichier worldmap.msg, qui ne sert qu'à indiquer le nom de la rencontre worlmap, et n'influe pas sur celle-ci.

Edit: Concernant la création d'un editor, une équipe semble s'y atteler, comme indiqué sur ce lien.
http://falloutmods.wikia.com/wiki/FO2_Worldmap_Editor

Share this post


Link to post
Share on other sites

Bon allé, je m'y met...:angry:

Pour dire les choses simplement, pensant être un peu à la ramasse concernant l'édition des rencontres, je pensais pas être en mesure de réaliser un tutos, concernant celles-ci. Pour autant, afin de partager nos éditions, partageons nos découvertes.

Pour ma part, je n'ai pas l'intention d'éditer tout les éléments éditables, donc il est certain que je suis passé à côté de plein de trucs. Aussi, mes explications seront loin d'être exhaustives. Je m'attellerais surtout à décortiquer les éléments que je pense maîtriser le mieux, au sein d'un fichier spécifique, intitulé worldmap.txt.

Celui-ci se trouve dans le dossier Fallout2/data/data. Les modifications que l'on peut y faire s'appliqueront directement à votre partie. Pas besoin donc, de recommencer le jeu pour tester les effets ingame de vos éditions.

Avant d'entamer l'étude de ce fichier worlmap.txt, quelques conseils :

- Faîtes une sauvegarde du fichier original, ainsi que des sauvegardes des fichiers édités fonctionnels. (ainsi, en cas de bugs, vous pourrez revenir facilement à une configuration fonctionnelle)

- Procurez-vous le fichier worldmap.txt de Harris et Milan. Il permet d'augmenter le taux de rencontres aléatoires, pour les pc les plus récents. Autrement, vous pourriez faire 1 ou 2 rencontre en 13 ans.
http://www.nma-fallout.com/forum/dload.php?action=file&file_id=620

- Il est possible d'intégrer d'autres patchs comme la haute résolution ou le Restauration Project, mais faîtes gaffe à la compatibilité de certains mods.

- Utilisez éventuellement un éditeur de personnages, tels celui indiqué au dessous, afin de tester vos rencontres. Ainsi, vous ne prendrez aucun risques, et enchaînerez les rencontres sans mourir, ou être bloqué dans une rencontre super longue, faute d'AP.

http://www.nma-fallout.com/forum/dload.php?action=file&file_id=52

- Installez le Mapper de Fallout2, et éventuellement d'autres applications permettant d'identifier certains éléments appelés par le fichier texte.

- Essayez de ne pas trop faire de modifications d'un seul coup, et testez vos éditions assez souvent. En cas d'erreurs, il est plus facile de les décoder, quand on sait où on en est.

- Aussi, je vous conseille d'éditer en premier, des éléments facilement identifiables au sein du jeu. Pour ma part, j'ai démarré en modifiant les rencontre de l'enclave. (on ne rencontre qu'eux, dans une zone spécifique. Ainsi, on peut repérer directement les changements)

- Avoir quelques connaissances rudimentaires en codage ou en html peut aider, dans le sens, où on en aura un minimum compris la logique de l'édition d'un texte avec balises.

- Avoir des connaissances en anglais, pour lire les commentaires au sein du txt.

- Consultez le txt en même temps que les explications.

- Commencez simple.

- Ne modifiez que ce qui vous interresse. Si un élément parait confus ou ininterressant, laissez-le tel quel.

- Essayez de modifier, au lieu de créer, de copier/coller, au lieu de recopier.

Share this post


Link to post
Share on other sites

Revenons à notre bon vieux fichier worldmap.txt

La premier partie du documents contient plusieurs commentaires des dévelloppeurs. Pour ma part, je n'en ai pas tenu compte.


; These determine which maps are randomly chosen from for normal
; random encounters
[Random Maps: Desert]
map_00=Desert Encounter 1
map_01=Desert Encounter 2
map_02=Desert Encounter 3
map_03=Desert Encounter 4
map_04=Desert Encounter 5
map_05=Desert Encounter 6
map_06=Desert Encounter 7
map_07=Desert Encounter 8
map_08=Desert Encounter 9
map_09=Desert Encounter 10
map_10=Desert Encounter 11
map_11=Desert Encounter 12


Après ce petit commentaire explicatif, en lanque anglo-saxone, vous aurez droit à une série de paragraphes de ce type.
Il s'agit, en gros des types de maps, correspondants à chaque terrains. Ainsi, pour le terrain désert, il y aura 12 maps

différentes. Pour ma part, je n'ai pas l'intention d'y toucher, aussi, je peux me tromper en évoquant ceux-ci. Apparement, chacuns des terrains et des maps contient un numéros et un noms, qui serviront de références, au sein d'autres rubriques.


Suite aux paragraphes concernants le terrains, vous auraient à nouveau droit à des légendes explicatives, ainsi qu'à des exemples, pour mieux vous aidez à comprendre la logique du document.



; Scripts: 255-Raider attacks Player
; Scripts: 256-Peasant flees Player
; Scripts: 257-Merchant
; Scripts: 258-Guard Protects Merchant

; Scripts: 269-Gecko
; Scripts: 270-Golden Gecko


Par exemple, voici quelques scriptes types, afin de définir le comportement de vos mobs. (commerçants, fuillards, attaquants, neutres etc...)

Vous trouverez aussi quelques restes des rencontres de Fo1. L'utilité reste à démontrer.

Share this post


Link to post
Share on other sites

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; Newly added Random Encounter Types for Fallout2 ;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;; RWH2 June 19, 1998 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


Nouvelle rubrique, avec encore des explications.

[Encounter: ARRO_Rats]


A partir d'ici, cela commence à être interressant...
Ici commence l'édition des fameuses rencontres.

On va commencer avec une rencontre toute simple, celle des rats près d'Arroyo.

[Encounter: ARRO_Rats]
type_00=ratio:95%, pid:16777227, Script:617 ; Rats
type_01=ratio:5%, pid:16777328, Script:617 ; Pig Rats
type_02=pid:271, Distance:10, If (Rand(5%)) ; Xander Root
position=huddle, spacing:3 ;Player(Perception)


Allons-y, pas à pas.

[Encounter: ARRO_Rats]


[Encouter:(...)] définit cet élément, en tant que rencontre.
(...) ARRO_Rats(...) est le nom de cette rencontre.

Il est, à noter que cette rencontre ne porte pas de numéro. Il est peut-être envisageable d'avoir un nombre illimité de rencontres. (enfin, de groupes)

Interressons-nous aux types d'individus présents dans cette rencontre. (leur nombre n'est, de toutes façons, pas réglables ici)

type_00=ratio:95%, pid:16777227, Script:617 ; Rats


type_00= C'est l'indentifiant du type d'individu au sein de la rencontre. Sachant qu'il n'y a que deux chiffre, on peut supposer qu'il ne peut y avoir plus de 100 types d'individus au sein d'une rencontre. (de 0 à 99). Veillez à conserver des nombres consécutifs, ainsi qu'une écriture strictement identique.

ratio:95%, C'est la proportion (ou la probabilité) d'individus de ce type, au sein de cette rencontre. Aussi, il faut veiller à ce que la sommes des pourcentages des différents membres soit égale à 100%. La virgule sert à dissocier le ratio des mentions suivantes. Ainsi, si vous choisissez 20% pour le rat, une créature sur cinq, dans cette rencontre, sera un rat.

Aussi, il est inutile d'avoir plusieurs membres identiques, au sein de cette rubrique. Si vous en voulez plus, augmentez le pourcentage.

pid:16777227, Élément crucial. Il s'agit du type de critter invoqué. En clair, l'apparence, les animations, le nombre de point de vies, etc... Dans le cas présent, le nombre correspond à celui du rat. C'est cela qui en fait un rat. A noter qu'il y a beaucoup de chiffres, ce qui peut être délicat pour s'y retrouver. Si vous voulez intégrer un type d'individu nouveau dans cette rencontre, essayez de voir si vous pouvez pas trouver son pid dans une autre rencontre. Une autre astuce. Les critters sont présentés dans le même ordre dans le mapper. Ainsi, si vous voulez remplacer le rat par son voisin du mapper, vous n'avez qu'à indiquer 1777228 dans le pid. S'il est possible d'avoir accès au pid, autrement, je suis tout-ouïe.

Script:617 Comme indiqué, il s'agit du scripte ou de l'IA, de l'individus en question. Cela définit son nom, son attitude, son floating text, et éventuellement d'autres éléments. Il est à noter, que si vous souhaitez mettre en conflit deux groupes ayant le même scripte, chacun des membres attaquera tout le monde, au lieu d'aider son groupe. (voir dans les rubriques
suivantes)


; Rats Ce mot, précédé d'un point-virgule, n'est, ni plus, ni moins, qu'un commentaire. Il n'a d'autre valeur que de permettre au codeur/éditeur de se repérer. Sa présence ou son absence n'a aucune importance dans le fonctionnement du jeu.

C'est juste un moyen de se souvenir que l'individu est un rat, ce qui est nettement plus explicite qu'un pid.

type_02=pid:271, Distance:10, If (Rand(5%)) ; Xander Root


Aussi de ce groupe, vous pourrez également constater la présence d'autres objets, que des critters. Ici, il s'agit d'une racine de Xandre, située à une distance définie.
Est aussi impliqué la notion de conditions, de part le "If". Pour autant, cela est un peu trop compliqué pour moi.

position=huddle, spacing:3 ;Player(Perception)

En dernier, on peut voir le positionnement des membres, entre eux, et vis à vis du joueur. (il existe des précisions à ce sujet, que je ne parviens plus à retrouver)


[Encounter: ARRO_Pig_Rats]


On passe à une autre rencontre, celle-ci est donc terminé.


Cette rencontre est une des plus simples, et est situé en premier sur la liste, ce qui est un repère appréciable. Toutefois, certaines rencontres peuvent être plus délicates à aborder.

[Encounter: ARRO_Sm_Scorpions]
type_00=ratio:100%, pid:16777221, Script:616 ; Small Radscorpions
type_01=Dead, pid:16777219, Item:7, If (Rand(10%)) ; Dead Primitive Male w/ Spear
type_02=Dead, pid:16777220, Item:273, If (Rand(10%)) ; Dead Primitive Female w/ Healing Herb


Ainsi, dans la rencontre ARRO_Sm_Scorpions, la première indication pour certains membres est la mention type_0x=Dead,
Comme indiqué dans le commentaire en fin de ligne, le critter en question est déjà mort. A noter que le statut de décédé est indiqué avant le pid. Vous pouvez donc mettre le cadavre de n'importe quelle créature, du moment que vous indiquez son statut au préalable.

Item:7, Il s'agit de l'inventaire du personnage, membre de la rencontre.
En l'occurrence, celui-ci contient une lance. Le 7 corresponds donc à la lance, dans la liste des items possibles. Pour savoir quel nombre correspond à tel item, il faut, une fois encore, se référer à une liste externe. (ou tatonner avec le mapper, en chercher l'objet suivant ou précédent, un objet dont le nombre est connu). Vous pouvez aussi mettre un objet que possède un
autre personnage référé dans le document. Heureusement, les commentaires de fin de lignes, aident souvent à savoir à quoi correspondent les codes.


[Encounter: ARRO_Hunting_Party]
type_00=pid:16777418, Item:280(wielded), Item:(0-10)41, Script:484 ; Male Hunter w/ Sharp Spear (Leader)


Item:280 (wielded)
Ce type d'invidu porte une arme, l'arme 280. (il s'agit d'une lance aiguisé, comme indiqué dans le commentaire)
A noter que s'il s'agit d'une arme à feu, le chargeur sera plein. (généralement, il n'y a pas de munitions dans l'inventaire, ce qui est un peu galère pour identifier les munitions)

Item:(0-10)41,
Il a, dans son inventaire, entre 0 et 10 fois l'objet 41. (il s'agit d'argent, en l'occurrence)

[Encounter: ARRO_Nomads]
type_00=ratio:50%, pid:16777424, Item:49, Item:284, Item:7, Item:(0-10)41, Script:622 ; Male Nomad w/ Antidote, Meat Jerky, and Spear


Cet autre individu a plusieurs types d'objets différents dans son inventaire.


[Encounter: KLAD_Caravan]
type_00=pid:16777274, Item:5(wielded), Item:(0-20)41, Script:258 ; Average Merchant Male w/ Club
type_01=pid:16777285, Item:280(wielded), Item:(0-10)41, Script:259 ; Weak Melee Guard Male w/ Sharpened Spear
type_02=pid:16777286, Item:280(wielded), Item:(0-10)41, Script:259 ; Weak Melee Guard Felame w/ Sharpened Spear
type_03=pid:16777285, Item:8(wielded), Item:(0-10)41, Script:259 ; Weak Melee Guard Male w/ Sledge Hammer position=huddle, spacing:2


Le premier individu de cette liste a un scripte différent de ses collègues. C'est le marchand. Les autres sont de simples guardes.



type_04=ratio:10%, pid:16777253, Item:8(wielded), Item:(0-10)41, Script:625, If(Player(Level) > 6) ; Female Gun Thug w/ 10mm pistol


La présence de cet individu dépends du niveau du joueur.

[Encounter: KLA_Farmers]
type_00=ratio:67%, pid:16777281, Item:9, Item:(0-3)71, Item:(0-10)41, Script:493 ; Average Peasant Male w/ 10mm SMG and Fruit
type_01=ratio:25%, pid:16777282, Item:299, Item:(1-2)71, Item:(0-10)41, Script:493 ; Average Peasant Female w/ Hunting Rifle and Fruit
type_02=ratio:4%, pid:16777269, Item:71, Script:1129 ; Female Child w/ Fruit
type_03=ratio:4%, pid:16777270, Script:1129 ; Male Child
type_04=Dead, pid:16777298 ; Dead Dog
;position=Surrounding
;position=straight_line, spacing:1
;position=straight_line, spacing:2
;position=double_line, spacing:1
;position=wedge, spacing:2
;position=cone, spacing:2
position=huddle, spacing:1


Les choses se compliquent, avec un groupe très hétéroclites, avec des parents, des enfants, un cadavre, des inventaires chargés, et des positionnements multiples. (je reste très inculte sur cette dernière partie)


[Encounter: RED_BOS]
type_00=ratio:10%, pid:16777404, Item:388(wielded), Item:(0-5)388, Item:(0-20)41, Script:259 ; BOS sniper
type_01=ratio:25%, pid:16777406, Item:389(wielded), Item:(0-5)389, Item:(0-20)41, Script:259 ; BOS avenger
type_02=ratio:25%, pid:16777406, Item:28(wielded), Item:(0-5)28, Item:(0-20)41, Script:259 ; BOS gatling laser
type_03=ratio:25%, pid:16777406, Item:15(wielded), Item:(0-5)15, Item:(0-5)40, Item:(0-20)41, Script:259 ; BOS avenger
type_04=ratio:10%, pid:16777405, Item:13(wielded), Item:(0-15)35, Item:(0-20)41, Script:259 ; BOS rocket
type_05=ratio:5%, pid:16777406, Item:332(wielded), Item:(0-5)332, Item:(0-20)41, Script:789 ; BOS grease gun
type_06=pid:33555432, Distance:14, If (Rand(10%)) ; Still
position=huddle, spacing:2


Un groupe que j'ai créé, en utilisant le skin de personnages en power armor, le scripte de guardes de Vault City, des armes copiés d'autres rencontres, et plusieurs armes dans l'inventaire. (faute de pouvoir identifier les munitions, à ce stade)

ce groupe peut être mis dans n'importe quel ordre, au sein de la liste des rencontres étant donné l'absence de numéro.

Seul le nom du groupe comptera par la suite.

Share this post


Link to post
Share on other sites

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;; Newly added Random Encounter Tables for Fallout 2 ;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;; RWH2 June 19, 1998 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


Passons maintenant aux tables de rencontres.

Les tables de rencontres sont, par défaut, associés à des zones de la map. Mais cela peut-être changé, comme nous le verrons plus tard)
Pour autant, par soucis de simplicité et de cohérence, je préférait garder la localisation telle quelle. En effet, les noms des tables portent le nom des zones.

Ces tables de rencontres correspondent donc, par défaut, aux différents types de rencontres que l'on peut faire au sein d'une même case, ou d'un ensemble de cases.

Prenons pour exemple, la première table de la liste. (je préfère laisser de côté les précédentes, qui semble couvrir d'autres fonctions)

[Encounter Table 6]
lookup_name=Arro_M ; Areas around Arroyo to nearly the ocean
maps=Mountain Encounter 1, Mountain Encounter 2, Mountain Encounter 4, Mountain Encounter 5 ; No Caverns here
enc_00=Chance:9%,Enc:(2-4) ARRO_War_Party AMBUSH Player
enc_01=Chance:9%,Enc:(2-4) ARRO_Cannibals AMBUSH Player
enc_02=Chance:9%,Enc:(2-4) ARRO_Spore_Plants AND (1-2) ARRO_Silver_Geckos FIGHTING Player
enc_03=Chance:12%,Enc:(1-4) ARRO_Silver_Geckos AMBUSH Player
enc_04=Chance:15%,Enc:(2-5) Bounty_Hunter_Low AMBUSH Player, If(Global(1) > 1) And If(Player(Level) < 7)
enc_05=Chance:15%,Enc:(2-5) Bounty_Hunter_Low_Mid AMBUSH Player, If(Global(1) > 1) And If(Player(Level) > 6) And If(Player(Level) < 13)
enc_06=Chance:15%,Enc:(2-5) Bounty_Hunter_High_Mid AMBUSH Player, If(Global(1) > 1) And If(Player(Level) > 12) And If(Player(Level) < 19)
enc_07=Chance:15%,Enc:(2-6) Bounty_Hunter_High AMBUSH Player, If(Global(1) > 1) And If(Player(Level) > 18)
enc_08=Chance:15%,Enc:(2-4) Bounty_Hunter_Low AMBUSH Player, If(Global(0) < -500) And If(Player(Level) < 7)
enc_09=Chance:15%,Enc:(2-4) Bounty_Hunter_Low_Mid AMBUSH Player, If(Global(0) < -500) And If(Player(Level) > 6) And If(Player(Level) < 13)
enc_10=Chance:15%,Enc:(2-4) Bounty_Hunter_High_Mid AMBUSH Player, If(Global(0) < -500) And If(Player(Level) > 12) And If(Player(Level) < 19)
enc_11=Chance:15%,Enc:(2-5) Bounty_Hunter_High AMBUSH Player, If(Global(0) < -500) And If(Player(Level) > 18)
enc_12=Chance:10%,Enc:(4-7) Morton_Brother, If(Global(386) > 0) And If(Global(386) < 6)
enc_13=Chance:12%,Enc:(3-6) ARRO_Sm_Scorpions AMBUSH Player
enc_14=Chance:12%,Enc:(3-6) ARRO_Spore_Plants AMBUSH Player
enc_15=Chance:12%,Enc:(4-8) ARRO_Pig_Rats AMBUSH Player
enc_16=Chance:12%,Enc:(6-10) ARRO_Rats AMBUSH Player
enc_17=Chance:2%,Enc:(2-4) ARRO_Hunting_Party FIGHTING (3-4) ARRO_Cannibals
enc_18=chance:3%,Enc:(6-9) ARRO_Ants AMBUSH Player
enc_19=Chance:2%,Enc:(2-4) ARRO_Hunting_Party FIGHTING (3-6) ARRO_Sm_Scorpions
enc_20=Chance:3%,Enc:(2-4) ARRO_Pig_Rats AMBUSH Player
enc_21=Chance:4%,Enc:(2-4) ARRO_Sm_Scorpions AMBUSH Player
enc_22=Chance:4%,Enc:(5-8) ARRO_Ants
enc_23=Chance:5%,Enc:(3-6) ARRO_Hunting_Party
enc_24=Chance:5%,Enc:(3-5) ARRO_Nomads
enc_25=Chance:1%,Counter:1,Special,Map:Special Bridge Encounter,Enc:Special1, If(Player(Level) > 9) And If(Global(605) < 1)
enc_26=Chance:1%,Counter:1,Special,Map:Special Holy Encounter 2,Enc:Special1, If(Global(372) > 0) And If(Global(606) < 1)


Un peu compliqué en apparence. Seulement, il n'est pas nécessaire de tout y modifier pour obtenir des résultats interressants.

[Encounter Table 6]


Le numéro de la table. Je préfère ne pas y toucher, pour l'instant. Il pourrait être nécessaire pour d'autres documents.


lookup_name=Arro_M


Identifiant de la table de rencontres, pour l'intégrer dans la partie localisation. Ne pas y toucher, pour l'instant.

; Areas around Arroyo to nearly the ocean


Commentaire salutaire, afin de nous indiquer où nous sommes sensés obtenir les rencontres suivantes. En l'occurrence, entre Arroyo et la côte Ouest. Il est à noter que plusieurs tables portent le même commentaire. Cela signifie que dans cette zone, certaines cases auront cette table de rencontre, mais pas les autres.

maps=Mountain Encounter 1, Mountain Encounter 2, Mountain Encounter 4, Mountain Encounter 5 ; No Caverns here


Le type de map dans lequel on atterrira. Un commentaire nous rappelle qu'il n'y aura pas de grottes.

enc_00=Chance:9%,Enc:(2-4) ARRO_War_Party AMBUSH Player


Première rencontre.

enc_00=
Le numéro de la rencontre au sein de la table. Ne peut excéder 99.

Chance:9%,
Comme son nom l'indique, définit les chances qu'à le joueur d'effectuer la rencontre en question.
Il n'est, ici, pas nécessaire que la sommes des pourcentages soit égale à 100%.
Il est, à noter que l'ordre des rencontre, au sein de la liste, joue aussi sur la probabilité d'effectuer telle ou telle rencontre.


Enc:
C'est une rencontre. (c'est précisé à chaque fois)

(2-4) ARRO_War_Party

(2-4)
Entre 2 et 4 individus.

ARRO_War_Party
Ils appartiennent au groupe ARRO_War_Party

(2-4) ARRO_War_Party
Il s'agit d'un groupe de 2 à 4 membres du groupe de la rencontre correspondante. (veillez à ne pas mettre un nombre collossal)
A noter que la probabilité de voir tel ou tel individu au sein du groupe aura déjà été précisé en amont.(voir post précédent)

AMBUSH Player
Comme 90% des mobs, ce groupe vous attaquera d'emblée.
Si on enlève cette mention, théoriquement il ne vous attaquera pas. (sauf peut-être en cas de mauvaise réputation ou de scripte hostile)

enc_22=Chance:4%,Enc:(5-8) ARRO_Ants


Apparemment, si vous rencontrez ces fourmis, elles seront non hostiles.

enc_17=Chance:2%,Enc:(2-4) ARRO_Hunting_Party FIGHTING (3-4) ARRO_Cannibals


Ces deux groupes s'affronteront.

Attention à ne pas mettre en présence des groupes identiques (ou aux scriptes identiques)

Ainsi

enc_17=Chance:2%,Enc:(2-4) ARRO_Hunting_Party FIGHTING (2-16) ARRO_Hunting_Party


Dans cette situation, à éviter absolument, chacun des individus, attaquera n'importe qui sans tenir compte du groupe auquel il appartient.

(J'appartient à un groupe de chasseur auquel on ordonne de tuer des chasseur. Je vais donc tuer mes collègues, qui sont eux-mêmes chasseurs)



enc_02=Chance:9%,Enc:(2-4) ARRO_Spore_Plants AND (1-2) ARRO_Silver_Geckos FIGHTING Player


AND
Ces deux groupes seront alliés, au sein de cette rencontre.

FIGHTING Player
Ces deux groupes affronteront un même ennemis, en l'occurrence, vous.

enc_04=Chance:15%,Enc:(2-5) Bounty_Hunter_Low AMBUSH Player, If(Global(1) > 1) And If(Player(Level) < 7)


Ce groupe n'apparaîtra et ne vous attaquera que sous certaines conditions, en l'occurence, le niveau du joueur, et un scripte extérieur, nommé (Global(1)>1) (trop compliqué pour moi)

enc_12=Chance:10%,Enc:(4-7) Morton_Brother, If(Global(386) > 0) And If(Global(386) < 6)


Même chose pour les frères Morton, qui ne vous attaqueront que sous certaines conditions. (avoir tué leur frangin à Redding)



enc_25=Chance:1%,Counter:1,Special,Map:Special Bridge Encounter,Enc:Special1, If(Player(Level) > 9) And If(Global(605) < 1)


Il s'agit d'une rencontre spéciale. Je n'y ai pas touché.

Share this post


Link to post
Share on other sites

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;; End of Newly added Encounter Tables ;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


Il s'agit là d'associer des tables de rencontre à des zones géographiques, à des zones et des sous-zones.

[Tile 0]
art_idx=339
encounter_difficulty=0
walk_mask_name=wrldmp00
; x_offset_yoffset=terrain,morning_chance,afternoon_chance,night_chance,type
0_0=Ocean,Fill_W,None,None,None,Fish_O
0_1=Ocean,Fill_W,None,None,None,Fish_O
0_2=Ocean,Fill_W,None,None,None,Fish_O
0_3=Ocean,Fill_W,None,None,None,Fish_O
0_4=Ocean,Fill_W,None,None,None,Fish_O
0_5=Ocean,Fill_W,None,None,None,Fish_O
1_0=Ocean,Fill_W,Uncommon,Uncommon,Uncommon,Fish_O
1_1=Ocean,Fill_W,Uncommon,Uncommon,Uncommon,Fish_O
1_2=Ocean,Fill_W,Rare,Rare,Rare,Fish_O
1_3=Ocean,Fill_W,Rare,Rare,Rare,Fish_O
1_4=Ocean,Fill_W,Uncommon,Uncommon,Uncommon,Fish_O
1_5=Ocean,Fill_W,Uncommon,Uncommon,Uncommon,Fish_O
2_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
2_1=Ocean,No_Fill,Uncommon,Uncommon,Uncommon,Arro_O
2_2=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
2_3=Mountain,No_Fill,Rare,Rare,Rare,Arro_M
2_4=Desert,No_Fill,Uncommon,Uncommon,Uncommon,Arro_D
2_5=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
3_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
3_1=Mountain,No_Fill,Rare,Rare,Rare,Arro_M
3_2=Mountain,No_Fill,Rare,Rare,Rare,Arro_M
3_3=Mountain,No_Fill,Rare,Rare,Rare,Arro_M
3_4=Desert,No_Fill,Uncommon,Uncommon,Uncommon,Arro_D
3_5=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
4_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
4_1=Mountain,No_Fill,Rare,Rare,Rare,Arro_M
4_2=Mountain,No_Fill,Rare,Rare,Rare,Arro_M
4_3=Mountain,No_Fill,Rare,Rare,Rare,Arro_M
4_4=Desert,No_Fill,Uncommon,Uncommon,Uncommon,Arro_D
4_5=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
5_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
5_1=Mountain,No_Fill,Rare,Rare,Rare,Arro_M
5_2=Desert,No_Fill,Rare,Rare,Rare,Arrok_D
5_3=Desert,No_Fill,Rare,Rare,Rare,Arro_D
5_4=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
5_5=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Arro_M
6_0=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Kla_M
6_1=Mountain,No_Fill,Uncommon,Uncommon,Uncommon,Kla_M
6_2=Mountain,No_Fill,Rare,Rare,Rare,Arrok_M
6_3=Desert,No_Fill,Uncommon,Uncommon,Uncommon,Kla_D
6_4=Desert,No_Fill,Uncommon,Uncommon,Uncommon,Kla_D
6_5=Desert,No_Fill,Uncommon,Uncommon,Uncommon,Kla_D


Fish_O
L'élément, en fin de ligne, correspond à une table de rencontre.

Il est à noter que les zones en question peuvent très bien ne pas correspondre aux cases indiqués sur la worldmap. (si on les modifie)

Il est peut-être possible (à vérifier) de changer l'apparence de la worldmap, via cette rubrique.

Pour autant, je ne préfère pas y toucher, dans la mesure où les tables de rencontre portent des noms relatifs à leur zones géographique. Si on change l'emplacement de la table de rencontre, tout mes repères disparaissent.

Il s'agit de la dernière rubrique du document.

Si vous souhaiter donner un nom à vos rencontres, ingame, (ou éviter de décaler ceux existant), il faut passer par les fichiers worldmap.msg (editable par le bloc-note) des dossiers text/votrelangue/game.

Pour ma part, je fais ça pour mon propre plaisir de jeu, donc je ne m'embarrasse pas avec les noms ingame.

Share this post


Link to post
Share on other sites

Tout compte fait, il semblerai que je me suis un peu emballé en tentant un tutos.

En voici un, plus pédagogue, sur ce lien.

http://fomod.nukacola.com/index.php?page=carte&zone=

A noter qu'un y explique comment accéder aux fameux pid, ô combien indispensables pour intégrer de nouveaux critters dans les rencontres...:)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.