Creating a new perk in the game

Discussion in 'Fallout General Modding' started by I Must Be Crazy 2, Jun 10, 2003.

  1. I Must Be Crazy 2

    I Must Be Crazy 2 First time out of the vault

    77
    Apr 9, 2003
    If I intend to make this perk obtainable through a quest, then:

    1. Is there any restriction on the number that I assign to the perk in the perks.msg file?

    2. Will I need anything else other than a new *.frm picture file and an editted perks.msg file for the perk?

    3. How would I link the *.frm picture to the perk on the character screen?
     
  2. jargo

    jargo Where'd That 6th Toe Come From?

    492
    May 25, 2003
    Perks are hardcoded in game so youc an't add them so simply.
    Sorry
     
  3. Wild_qwerty

    Wild_qwerty Sonny, I Watched the Vault Bein' Built!

    Feb 2, 2004
    Yes, I am well aware that this is an old thread ...

    But what would be the method for doing this?

    *EDIT*
    This perk does not need to be one that can be assigned to a player but rather to a peice of armour. This is how the Power armour adds it strength and Radiation resistance. I need to get too make two new perks for

    Evironmental Armour
    +60% Rad resistance
    +60% Poision resistance

    Evironmental Armour MKII
    +90% Rad resistance
    +90% Poision resistance

    Note: the above figures are the same as used in FOT
     
  4. DarkUnderlord

    DarkUnderlord Water Chip? Been There, Done That

    965
    Apr 6, 2003
    Temaperacl has a thing he found out about the perk system recently. Not sure if he's posted it here yet already. Either way, here it is:

     
  5. Wild_qwerty

    Wild_qwerty Sonny, I Watched the Vault Bein' Built!

    Feb 2, 2004
    OK thanks, I've only just noticed this :)
     
  6. Raven_2

    Raven_2 First time out of the vault

    39
    Mar 2, 2005
    Well, maybe this is not a news. I've just added my new perk into the game.

    Yes, this is for Mapper only (but all needed offsets can be found in FO too). Yes, this is not "adding" but "replacing unused". But it works.

    The main idea is to replace unused "Mental block" with something that would be more use. Mental block was not comletely removed, BIS simply put 310 as needed level for this perk :-) How to change this:
    1. 0x15abb4: replace [36 01] with [01 00] (min_level=1) or greater
    2. replace fields with stats/skills being modified and modified ammount (see table two posts up). For example, replace this:
    -----------------------------------------------
    00 00 00 00-00 00 00 00 63 00 00 00
    01 00 00 00 36 01 00 00-FF FF FF FF 00 00 00 00
    FF FF FF FF 00 00 00 00-00 00 00 00 FF FF FF FF
    00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
    00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
    -----------------------------------------------
    with this:
    -----------------------------------------------
    00 00 00 00-00 00 00 00 63 00 00 00
    01 00 00 00 03 00 00 00-09 00 00 00 0A 00 00 00
    FF FF FF FF 00 00 00 00-00 00 00 00 FF FF FF FF
    00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
    00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
    -----------------------------------------------
    This add 10 AC, perk has no stats/skills requrment and would be apear on level 3.

    3. modify perk.msg by replacing lines 128/1128 with your perk name/description

    4. replace .frm

    This way you can only add the stats/skills bonus perks. Perks like Bonus Rate of Fire are strictly hardcoded and used directly in game algorithms.

    I`m sure there is weapon perks somewhere in this perk table...

    [EDIT]

    Some additions to Temaperacl work:
    >>[00] - ? (Always 0000 0000)
    >>[04] - ? (Always 0000 0000)

    This fields contains pointer on strings with perk name/description. Of course, they initialize only when game starts, in exe this fields are always filled with 0.

    >>[08] - ID (Appears to be ID in PERK.MSG -29)

    It`s a number of .frm for perk from art\skilldex\skilldex.lst (started from 0).

    Now I search for this Type field. Seems to me that it`s a flag, which says to engine how other fields (stat/skill_1/skill_2) should be parsed.
     
  7. Raven_2

    Raven_2 First time out of the vault

    39
    Mar 2, 2005
    Well, I checked out item perks. They work somewhat differ. Fields [30]-[48] for it is not requriments but bonuses/penalties to stats. Penalties:
    0xFFFFFFFF == -1
    0xFFFFFFFE == -2
    0xFFFFFFFD == -3
    and so on.

    Still only on non-basic stat can be altered by perk so increase both rad and poiso resistances with one perk is not possible.

    Example (Mapper.exe):
    0x15b900 - start entry of unused item perk Armor Charisma
    -----------------------------------------------
    00 00 00 00 00 00 00 00 9A 00 00 00 FF FF FF FF
    01 00 00 00 FF FF FF FF 00 00 00 00 FF FF FF FF
    00 00 00 00 00 00 00 00 FF FF FF FF 00 00 00 00
    00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 00
    00 00 00 00 00 00 00 00 00 00 00
    -----------------------------------------------
    replace with
    -----------------------------------------------
    00 00 00 00 00 00 00 00 9A 00 00 00 FF FF FF FF
    01 00 00 00 20 00 00 00 64 00 00 00 FF FF FF FF
    00 00 00 00 00 00 00 00 FF FF FF FF 00 00 00 00
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    00 00 00 00 FE FF FF FF 00 00 00 00
    -----------------------------------------------

    This perk increase char poison resist (20h=32=STAT_poison_resist) by 100 (64h=100) up to 95 and decrase his AG by 2 (FE FF FF FF=-2) and can be placed on any armor.
     
  8. dude_obj

    dude_obj Vault Senior Citizen
    Moderator

    Oct 19, 2004
    A new perk can be added by scripting too. Use a global variable to set the perk on or off. Use script commands to mod skills or traits or whatever. Then use the ununsed perk messages. There was some discussion about this:

    http://www.nma-fallout.com/forum/viewtopic.php?t=11358&start=38

    That would probably be easier than patching the executable to add new perks. However, you wouldn't be able to pick that perk on level up. If you can figure out how to add new ones that allow this, that would be very cool.
     
  9. Raven_2

    Raven_2 First time out of the vault

    39
    Mar 2, 2005
    to dude_obj

    >>A new perk can be added by scripting too.

    You don`t understood. Script, added by *this* way is showed itself up into "Select new perk" window you gain every 3/4 levels. Its a real, full featured perk, not emulation like we did in New Vision with Shaman/Warior thing. I`m script a lot and I know how stuff like this can be organized :-)

    >>That would probably be easier than patching the executable to add new perks. However, you wouldn't be able to pick that perk on level up.

    Hm. Sorry for stupid line-by-line comments :-) Forgot all above :-)

    How to add perks? Well, I think that is impossible. BUT. There is: Mental Block, Animal Friend, Children of Flowers, Alcogol_raised/lowered_HP (I think, this is a bug that was forgotten by BIS, don`t think that they planned this in final version), Autodoc_raised/lowered_HP (it`s a bug. There is no description for this perks).

    It`s a 7 slots for your own perks. Also we can use perk, that used only in scripts or not used at all: Cult of Personality, Excriment Expiditor, Lte Step (forgot the name. Perk for avoiding traps). Also we can replace/modify unpopular ones: Snakeeater, Pack rat, Strongback and so on.

    BTW, in Russia now moders make not addons but standalone mods - new mini games, that used fallout engine, resources and atmosphere but with new, standalone scenario, quests and so on. So ability to edit is apprecaited not less than ability to add.
     
  10. dude_obj

    dude_obj Vault Senior Citizen
    Moderator

    Oct 19, 2004
    Cool! Well show us what to patch and how to use it, and we'll all be smiling. Hmmm, since we have virtual patchers, ideally the perk could be configured in a text file of some sort, which lists what traits are modified.

    I have plans for one of these too. You start as a child before the bombs drop, you're the NACHLD character, out playing with other kids, when the sirens go off and adults take you to the vault. You spend some time there as a child, you fix a broken hover bot which becomes your "pet", and then gfade out and in ... time goes by and you're an adult about to leave the vault to do a bunch of quests. I didn't even plan to do this FO2 expansion, but I wanted something people can play right away and get replay value.
     
  11. Mario_Dweller

    Mario_Dweller It Wandered In From the Wastes

    153
    Apr 9, 2004
    Hi. I've tried to add new perk according to Fallout Modification FAQ. Everything works but...
    I have to modify 3 skills. And there are only two skill entries.

    So I've decided to try it via OBJ_DUDE's critter_p_proc. It's very easy. But if dude chooses that perk, that skills are modified AFTER closing character window. Does anybody have an idea ?
     
  12. Mario_Dweller

    Mario_Dweller It Wandered In From the Wastes

    153
    Apr 9, 2004
    And We've crossed out one perk only for nitwits (IQ < 4). I think it's impossible isn't it ?
     
  13. Mario_Dweller

    Mario_Dweller It Wandered In From the Wastes

    153
    Apr 9, 2004
    Where are that entries with the same id ?
     
  14. Pipboy2000

    Pipboy2000 Companion to the Last Proton
    Orderite

    Sep 29, 2003
    I don't know if this will have any relevance, but what about setting is as a karmic trait?
     
  15. Glovz

    Glovz Vault Dweller
    Modder

    737
    Sep 16, 2005
    Hmmm - this might be something for Timeslip to look into. Having an easier way to add/replace perks/traits.
     
  16. Mario_Dweller

    Mario_Dweller It Wandered In From the Wastes

    153
    Apr 9, 2004
    That would be cool. 8-)
     
  17. farlard

    farlard It Wandered In From the Wastes

    121
    May 29, 2007
    A Couple of new perks would be cool 8-)