Fallout 2 mod How do you mod perks?

Discussion in 'Fallout General Modding' started by Question2, Jul 2, 2017.

  1. Question2

    Question2 It Wandered In From the Wastes

    Jun 20, 2017
    Does anyone know how to modify perks? In terms of requirements, effects, etc?
     
  2. Mr.Stalin

    Mr.Stalin Agent of Enclave Modder

    Oct 29, 2015
    Use Perks.ini file from sfall to modify perks and trait.
    Some engine effects can not be changed.
    Also, adding new behavior for perks or trait is possible only through script logic in game scripts.
     
    Last edited: Jul 2, 2017
  3. Question2

    Question2 It Wandered In From the Wastes

    Jun 20, 2017
    Where should I get that? I have the restoration project and sfall readme seems to suggest that the RP includes sfall, but i dont seem to have a perks.ini in my installation folder...
     
  4. NovaRain

    NovaRain Casual Modder Modder

    Mar 10, 2007
    You need to download sfall modders pack. Those extra files for modders are not included in RP or sfall normal release package.
     
  5. Question2

    Question2 It Wandered In From the Wastes

    Jun 20, 2017
    Thanks, im looking at perks.ini now but im confused. How do i get all the necessary data like which perk corresponds to which number?
     
  6. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    In the mapper program, there are header files (like DEFINE.H) that hold those definitions. As it doesn't sound like you want to use the mapper program, I'm including the content of the DEFINE.H file here...

    // Trait defines //
    #define TRAIT_PERK (0)
    #define TRAIT_OBJECT (1)
    #define TRAIT_TRAIT (2)
    // Perk Trait Types
    #define PERK_bonus_awareness (0)
    #define PERK_bonus_hth_attacks (1)
    #define PERK_bonus_hth_damage (2)
    #define PERK_bonus_move (3)
    #define PERK_bonus_ranged_damage (4)
    #define PERK_bonus_rate_of_fire (5)
    #define PERK_earlier_sequence (6)
    #define PERK_faster_healing (7)
    #define PERK_more_criticals (8)
    #define PERK_night_vision (9)
    #define PERK_presence (10)
    #define PERK_rad_resistance (11)
    #define PERK_toughness (12)
    #define PERK_strong_back (13)
    #define PERK_sharpshooter (14)
    #define PERK_silent_running (15)
    #define PERK_survivalist (16)
    #define PERK_master_trader (17)
    #define PERK_educated (18)
    #define PERK_healer (19)
    #define PERK_fortune_finder (20)
    #define PERK_better_criticals (21)
    #define PERK_empathy (22)
    #define PERK_slayer (23)
    #define PERK_sniper (24)
    #define PERK_silent_death (25)
    #define PERK_action_boy (26)
    ///#define PERK_mental_block (27) -- Disabled FO2
    #define PERK_lifegiver (28)
    #define PERK_dodger (29)
    #define PERK_snakeater (30)
    #define PERK_mr_fixit (31)
    #define PERK_medic (32)
    #define PERK_master_thief (33)
    #define PERK_speaker (34)
    #define PERK_heave_ho (35)
    ///#define PERK_friendly_foe (36) -- Disabled FO2
    #define PERK_pickpocket (37)
    #define PERK_ghost (38)
    #define PERK_cult_of_personality (39)
    ///#define PERK_scrounger (40) -- Disabled FO2
    #define PERK_explorer (41)
    ///#define PERK_flower_child (42) -- Disabled FO2
    #define PERK_pathfinder (43)
    ///#define PERK_animal_friend (44) -- Disabled FO2
    #define PERK_scout (45)
    #define PERK_mysterious_stranger (46)
    #define PERK_ranger (47)
    #define PERK_quick_pockets (48)
    #define PERK_smooth_talker (49)
    #define PERK_swift_learner (50)
    #define PERK_tag (51)
    #define PERK_mutate (52)
    //#define PERK_add_nuka // Do NOT USE! Engine ONLY!
    //#define PERK_add_buffout // Do NOT USE! Engine ONLY!
    //#define PERK_add_mentats // Do NOT USE! Engine ONLY!
    //#define PERK_add_psycho // Do NOT USE! Engine ONLY!
    //#define PERK_add_radaway // Do NOT USE! Engine ONLY!
    //#define PERK_weapon_long_range // Do NOT USE! Engine ONLY!
    //#define PERK_weapon_accurate // Do NOT USE! Engine ONLY!
    //#define PERK_weapon_penetrate // Do NOT USE! Engine ONLY!
    //#define PERK_weapon_knockback // Do NOT USE! Engine ONLY!
    //#define PERK_armor_powered // Do NOT USE! Engine ONLY!
    //#define PERK_armor_combat // Do NOT USE! Engine ONLY!
    // Note: Fallout 2: New Perks // Do NOT USE! Engine ONLY!
    //#define PERK_weapon_scope_range // Do NOT USE! Engine ONLY!
    //#define PERK_weapon_fast_reload // Do NOT USE! Engine ONLY!
    //#define PERK_weapon_night_sight // Do NOT USE! Engine ONLY!
    //#define PERK_weapon_flameboy // Do NOT USE! Engine ONLY!
    //#define PERK_armor_advanced_1 // Do NOT USE! Engine ONLY!
    //#define PERK_armor_advanced_2 // Do NOT USE! Engine ONLY!
    //#define PERK_add_jet // Do NOT USE! Engine ONLY!
    //#define PERK_add_tragic // Do NOT USE! Engine ONLY!
    //#define PERK_armor_charisma // Do NOT USE! Engine ONLY!
    #define PERK_gecko_skinning_perk (73)
    #define PERK_dermal_armor_perk (74)
    #define PERK_dermal_enhancement_perk (75)
    #define PERK_phoenix_armor_perk (76)
    #define PERK_phoenix_enhancement_perk (77)
    #define PERK_vault_city_inoculations_perk (78)
    #define PERK_adrenaline_rush_perk (79)
    #define PERK_cautious_nature_perk (80)
    #define PERK_comprehension_perk (81)
    #define PERK_demolition_expert_perk (82)
    #define PERK_gambler_perk (83)
    #define PERK_gain_strength_perk (84)
    #define PERK_gain_perception_perk (85)
    #define PERK_gain_endurance_perk (86)
    #define PERK_gain_charisma_perk (87)
    #define PERK_gain_intelligence_perk (88)
    #define PERK_gain_agility_perk (89)
    #define PERK_gain_luck_perk (90)
    #define PERK_harmless_perk (91)
    #define PERK_here_and_now_perk (92)
    #define PERK_hth_evade_perk (93)
    #define PERK_kama_sutra_perk (94)
    #define PERK_karma_beacon_perk (95)
    #define PERK_light_step_perk (96)
    #define PERK_living_anatomy_perk (97)
    #define PERK_magnetic_personality_perk (98)
    #define PERK_negotiator_perk (99)
    #define PERK_pack_rat_perk (100)
    #define PERK_pyromaniac_perk (101)
    #define PERK_quick_recovery_perk (102)
    #define PERK_salesman_perk (103)
    #define PERK_stonewall_perk (104)
    #define PERK_thief_perk (105)
    #define PERK_weapon_handling_perk (106)
    #define PERK_vault_city_training_perk (107)
    #define PERK_alcohol_hp_bonus1_perk (108)
    #define PERK_alcohol_hp_bonus2_perk (109)
    #define PERK_alcohol_hp_neg1_perk (110)
    #define PERK_alcohol_hp_neg2_perk (111)
    #define PERK_autodoc_hp_bonus1_perk (112)
    #define PERK_autodoc_hp_bonus2_perk (113)
    #define PERK_autodoc_hp_neg1_perk (114)
    #define PERK_autodoc_hp_neg2_perk (115)
    #define PERK_expert_excrement_expediter_perk (116)
    #define PERK_weapon_knockout_perk (117)
    #define PERK_jinxed_perk (118)

    If you really want to get into FO2 modding, you need to consider getting the BIS mapper and reviewing the script library in it.
     
  7. Question2

    Question2 It Wandered In From the Wastes

    Jun 20, 2017
    Thanks, i do have the mapper program, but i had no idea i was supposed to look at the script library there.

    Ive got the perk numbers now, but im still confused about how to edit them.

    For example lets say i want to merge scout, ranger and explorer all into one perk. I have no idea how to do that based on the example in perks.ini however.

    Code:
    Name=Example
    Desc=This is an example perk~Second line
    Image=72
    Ranks=1
    Level=1
    Type=0
    Stat=-1
    StatMag=0
    Skill1=-1
    Skill1Mag=0
    Skill2=-1
    Skill2Mag=0
    STR=0
    PER=0
    END=0
    CHR=0
    INT=0
    AGL=0
    LCK=0
    And lets say i want to change weapon knockback to do knockdowns instead of knockbacks, is that possible?
     
  8. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    To be honest, I haven't changed perks as a part of my own work, but I do know that what you are trying to do is more complex than just updating the Perks.ini file. If I'm understanding the sFall parameters correctly, it appears you can only change some of a perk's attributes (skill boosts/penalties, Stat's and attribute changes) using Perks.ini.

    To do the types of modifications you're suggesting, I think you need to script it. Meaning, you need to use the sFall script editor to create code to do what you're trying to do.

    I haven't run across where (which header or *.int file) you'd specifically do this. I need to defer to someone with more experience than I have...

    In general, I think @Mr.Stalin summarized it well...

     
  9. Mr.Stalin

    Mr.Stalin Agent of Enclave Modder

    Oct 29, 2015
    Mission Impossible. :)

    It is possible, but for advanced modders, you have a small skill)
    Learn scripting and F2 engine mechanics.
     
    Last edited: Jul 7, 2017
  10. Question2

    Question2 It Wandered In From the Wastes

    Jun 20, 2017
    So the bonus to special encounters is a hardcoded thing? I thought it might be a stat modifier or some kind so you could just sum them up, but i guess thats not possible.

    What if i wanted to do something easier, like make the dodger perk have two ranks instead of just one?

    Code:
    [29] // Perk 29 should be dodger
    Name=Dodger
    Desc=You are less likely to be hit in combat if you have this Perk. You gain a +5 to your Armor Class, in addition to the AC bonus from any armor worn.
    Image=72 //Not sure what the image should be
    Ranks=2
    Level=9
    Type=0 //0 = perk right?
    Stat=9 // AC
    StatMag=5
    Skill1=-1
    Skill1Mag=0
    Skill2=-1
    Skill2Mag=0
    STR=0
    PER=0
    END=0   
    CHR=0
    INT=0
    AGL=0
    LCK=0
    
    How do i figure out what image number I should use? I dont see anything in the defines file about images. Im guesisng the SPECIAL stats are the requirements? Can I just leave skill1 and skill2 as default values if i am not modifying skills?
     
  11. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    Graphic directories all have an *.LST file. To get your answer, look through the ART subdirectory and find the SKILLDEX.LST file. I'm assuming you just need to count from zero (starting at the top of the file) down to the image you're looking for... As I mentioned previously, I haven't done perks before; but based on how other things work in FO2 that should be the way to go.

    I have no idea. Try experimenting and let me know how it turns out. I'd be interested to learn as well.
     
  12. NovaRain

    NovaRain Casual Modder Modder

    Mar 10, 2007
    It would be extremely simple if using perks.ini:
    Code:
    ;Dodger
    [29]
    Ranks=2
    That's it. You don't need to fill up other settings if they are not changed.
     
  13. Question2

    Question2 It Wandered In From the Wastes

    Jun 20, 2017
    Thanks, that worked.
     
  14. Robert B

    Robert B Kitty's got some rads!

    May 29, 2017
    Hurray!!! :clap: ...and I learned something too!
     
  15. Question2

    Question2 It Wandered In From the Wastes

    Jun 20, 2017
    On the topic of perks, has anyone tried modding perks to be more useful? The ones that are soley skill bonuses are meh.
     
  16. Nirran

    Nirran Vault Senior Citizen
    Modder

    Apr 15, 2007
    ive written a mod that has tons of settings for lots of perks,check my sig,if anything look at the source code and write ur own perks
     
  17. Magnus

    Magnus Weapons Manufacturer Modder

    Dec 6, 2007
    You need to download the sfall modders pack. It has a perks.ini in a folder I believe is called Configuration files.