Fallout2 Opcode Playground

Opcodes: 8000-801F, 8020-803F, 8040-805F,
8060-807F, 8080-809F, 80A0-80BF, 80C0-80DF,
80E0-80FF, 8100-811F, 8120-813F, 8140-8155
 
List Opcodes:Used in Fallout 2Named
Known to DecompilerDescribed

Descriptions for 80F3

Opcode80F3, GetPerk
>> subfunction   GetPerk

Author: TryKos

30.04.03 21:27:23

GetPerk(Trait_Type, ObjectAddr, Trait) BIS: has_trait (Trait_Type, ObjectAddr, Trait); Возвращает значение заданного свойства (trait) заданного типа (trait_type) у заданного объекта (ObjectAddr) (по поводу значений свойств и их типов см. define.h). Эту команду можно использовать для определения обладает ли игрок конкретной Особенностью [Perk], Склонностью [Trait] (Точность, Громила и т. п.), его AI-пакет, номер команды, текущее направление взгляда. [Прим. пер: судя по всему, свойства Особенности и Склонности имеют смысл только для игрока.] Значения Trait_Type: #define TRAIT_PERK (0) //перк / Особенность #define TRAIT_OBJECT (1) //свойство #define TRAIT_TRAIT (2) //Склонность Значения Trait для Trait_Type = TRAIT_OBJECT: #define OBJECT_AI_PACKET (5) //номер AI пакета криттера #define OBJECT_TEAM_NUM (6) //номер команды криттера #define OBJECT_CUR_ROT (10) //текущее направление [rotation] объекта #define OBJECT_VISIBILITY (666) //флаг видимости объекта (видим / невидим) #define OBJECT_CUR_WEIGHT (669) //текущая загруженность объекта (вес предметов его инвентаря) Значения Trait для остальных Trait_Type - см. define.h из комплекта документации редактора BIS (уж очень их много).
Author: legacy information

25.06.02 15:34:59

GetPerk(0, Entity, Perk): Gets the perk from the Perk list, See text\english\game\perk.msg. Note that this index starts at 1 instead of 0, so 0 is actually Awareness... (ie: Perk is perk.msg - 1). GetPerk(2, Entity, Trait): Gets if the player has a trait. No funky -1 crap here. GetPerk(1, Entity, Parm): This one is weird, I still don't get it, but I beleive it's internall variables indentifying the state of the entity. 666 seems to be wether the entity is hostile to the player 6 seems to be the group with which the entity is "Associated".

c Red, from Duck And Cover forum

Author: legacy information

22.06.02 13:29:01

Команда 80F3 служит для проверки наличия у персонажа traits и perks. Последовательность 0;80BF;X;80F3 выводит перк (его наличие), а 2;80BF;X;80F3 - трэйт.