Fallout New Vegas

This article is addressed to modding community; modders who want to make their own content for playable super mutant race. This is still a WIP article, if you have any questions or need help— feel free to comment here.

New armors

Want to add new super mutant equipment? To make your armors equippable to super mutant race, model meshes have to be placed in

data\meshes\creatures\smspinebreaker\
or
data\meshes\creatures\smspinebreakerplayer\

Open your armor in GECK and set Biped Objects (biped slots) as necessary for your armor, lastly select BodyAddOn3 biped slot for your armor.



Note that Super mutant equipment cannot be used by human NPCs (or companions).

Skin shaders & textures

Like any playable race in Gamebryo engine, super mutant body meshes use skin shaders and FaceGen data.

In NifSkope, set BSShaderPPLightingProperty shader type to SHADER_SKIN and enable FaceGen shader flag for super mutant body parts.



1st person hand textures are located inside Mariposa.bsa archive:

textures\creatures\smspinebreakerplayer\hand_1st.dds
textures\creatures\smspinebreakerplayer\hand_nightkin_1st.dds


Scripting functions

Global variable PosaState can be used in conditions to check whether player is a super mutant.



This is useful for dialogue options where you need to check if player is either a regular super mutant or a Nightkin in one condition, instead of using GetIsRace function multiple times. PosaState returns 0 if player is neither a super mutant nor Nightkin.

For example:

If PosaState > 0
PrintC "player is a super mutant or Nightkin"
EndIf


If PosaState == 1
PrintC "player is a regular super mutant"
EndIf


If PosaState == 2
PrintC "player is a Nightkin"
EndIf


Alternatively, you can use PosaSysGetIsPlayerSuperMutant function to do the same. For example:

If Eval (Call PosaSysGetIsPlayerSuperMutant)
PrintC "player is a super mutant or Nightkin"
EndIf


Mariposa can replace human armor models with super mutant ones by using Auxiliary Variables. Say, you made super mutant leather armor model and want human leather armor to use your custom mesh, you can do that with Auxiliary Variables.

For example, you can change the model path of Leather Armor to your super mutant armor model:

AuxiliaryVariableSetString "*_POSA_MODEL_PATH" "creatures\smspinebreakerplayer\posa_armor_light02.nif" 0 ArmorLeather

Leather Armor will now visually appear as a super mutant Salvaged Grunt Armor (posa_armor_light02.nif) This way you can set super mutant model paths for human armors without directly changing armors themselves.

Note that this will only affect super mutant player character, other races or NPCs will still use regular (Human) model path.

You can do the same with armor addons:

AuxiliaryVariableSetRef "*_POSA_ARMOR_ADDON" ARMASuperMutantSpikedKnuckles 0 WeapSpikedKnuckles

Spiked Knuckles will now use our custom armor add-on with super mutant weapon model.

Auxiliary Variables must be set once every game restart. For example:

If GetGameRestarted
AuxiliaryVariableSetString "*_POSA_MODEL_PATH" "creatures\smspinebreakerplayer\posa_armor_light02.nif" 0 ArmorLeather
AuxiliaryVariableSetRef "*_POSA_ARMOR_ADDON" ARMASuperMutantSpikedKnuckles 0 WeapSpikedKnuckles
EndIf


Endnotes & misc

In GECK, everything from Mariposa has a prefix 'Posa'

Super mutant vendor lists are PosaVendorJacobstown for Glen and PosaVendorBlackMountain for Nocturne. If you want your armor to appear in their stock, you have to add your armor to one of these leveled lists.



For example:

If GetGameRestarted
LeveledListAddForm PosaVendorBlackMountain AntNectar 1 1 1
EndIf


Ant Nectar was added to Nocturne's vendor inventory. LeveledListAddForm function has to be called once every game restart.

Article information

Added on

Edited on

Written by

genin32

1 comment

  1. ZerotheDuke
    ZerotheDuke
    • member
    • 0 kudos
    Dunno if you use nifskope, but I was attempting to use it to extract stuff to modify, but the mod refuses to open in nifskope. Any clue why?

    PS - great mod