Reaction

Character reaction is a game mechanic in Fallout and Fallout 2. It reflects general attitude of an NPC towards the protagonist. The reaction can be good, neutral of bad.

Characteristics
Reaction value is composed of two components: base reaction and static reaction. The base reaction is preserved between dialogues while the static reaction is not.

Initial reaction
Initial reaction is calculated from multiple factors:


 * Charisma compared to the NPC's Charisma, only upon the first conversation
 * Karma has no direct effect (the code is commented out), only through relevant titles
 * Town reputation
 * Reputation titles
 * Presence perk and Sex Appeal trait
 * Cult of Personality perk has no effect (the code is commented out)
 * Karma Beacon perk also has no effect (the code is unused)

Characters marked as "evil" have their reaction modifiers from karma-based titles (except Childkiller) and reputation backward. Slaver title's effect and its sign rather depend on what the character thinks of slavers.

In only a few locations are appropriate characters marked as "evil" for this purpose in Fallout 2:
 * The Den
 * Rebecca Dyer
 * Enclave Oil Rig
 * Frank Horrigan
 * New California Republic
 * Buster
 * Lenny
 * Merk
 * Mira
 * Merk's guard
 * Oswald
 * Rawhide Saloon patrons
 * Skeeter
 * Vortis' holding center guards
 * Vortis
 * New Reno
 * Bishop's man
 * Drug dealers
 * Mordino's man
 * Ramirez
 * Salvatore's man
 * Wright children playing a game in front of their mansion
 * Redding
 * Obidiah Hakeswill
 * San Francisco
 * Dave Handy
 * Hubologists in robes
 * Juan Cruz and Vikki Goldman
 * Lo Pan
 * AHS-7
 * AHS-9
 * Vault 13
 * Matt (Vault 13)
 * Vault 15
 * Darion's dog
 * Darion
 * Darion's personal guard
 * New Khans
 * Karla
 * Phil (Khans)

Changing
The reaction is changed by saying nice or mean things to the character by choosing appropriate dialogue options. For talking heads, the character's expression visibly changes.

There are also scripted changes in various amounts.

Under the hood
It's an integer from -100 to 100, with 25 and higher for Good, -25 or lower for Bad and Neutral for in-between. There's also a separate variable from -4 to 4 holding just the level where +2 is good and -2 is bad. After one is changed, the other is converted to reflect the result. Both variables are recalculated each time a conversation starts, only the base reaction is saved.

Base reaction: Initial static reaction: Changes:
 * On the first conversation: each point of the player character's Charisma over NPCs: +5 (if higher) / -5 (if lower)
 * After that, it's only altered by scripted changes
 * Sex Appeal: ±20
 * Each level of Presence: +10
 * Each level of reputation title for general Karma: ±5
 * Berserker: -20
 * Champion: +20
 * Childkiller: -30
 * Slaver: -50, -25, 0 or +25 (mostly 0)
 * Each 2 points of town reputation: ±1
 * The dialogue options adjust the level by two.
 * There are also scripted changes by various amounts as well as direct assignments. They can affect either base reaction or the effective reaction.

Effects
It affects the course of the dialogue in 39 instances in Falout 2. It impacts barter prices, for Chitsa (CH 10 and Sex Appeal), Leather armor was offered for $1,218 by Maida Buckner and for $1,190 by Sajag).

Bugs

 * Macros setting the effective level actually have no effect.
 * Most macros, including the one calculating the initial reaction, do not properly synchronize all three reaction variables (base reaction, effective reaction, effective level).
 * The macro converting value to level uses effective reaction while the one converting level to value rather sets base reaction.