In this guide you learn how to use my TweakXL script to customize the combat behavior, weapon and scanner entry of your NPV/NPC.
First, you will need:
- TweakXL
- RED4EXT
Your result will be something similar to this :)
1. First, open NPV_Customisation\NPV_Localisation_Wkit\NPV_Localisation.cpmodproj inside Wkit. You will find only one file inside, the localisation file needed for name and affiliation. Simply double click it to open and browse its entries.
2. The entries already tell you what to change inside. Make sure that the secondaryKey entries are ALL lower case and no fancy unicode characters. It's important to change the keys, otherwise another npv might overwrite these values! So keep with the theme of username_npvname please.
Things you set here:
- Name: Name on Nameplate above head
- Full Name: Name in Scanner Entry
- Affiliation: Listed below Name in Scanner Entry
Note that femaleVariant is always the default, nvm which body type you use for your character ingame! The game will only load that text variant so no need to set up anything else. Leave primaryKey at 0.
3. Rename the json file to the same combo too. Then put it into your npv folder and repack it so it gets loaded. You can also make a separate archive but eh point of NPV is to be simple so merge it.
4. To load the localisation ingame you need to change the NPV_archive_name.xl in notepad and change the json path inside to whatever yours ends up being after the edits above.
Make sure you rename the xl to the same name your npv files archive has and place it next to it inside the mod folder.
I have included a Lua that has all additions needed. You can use this or copy paste things to your own. I won't explain everything again, you already know the usual suspects.
However, I do recommend to choose a main character as the base because some of them have combat voice lines. If you don't want any, just use a different base.
1. Here we will start our grand journey of text replace. Open the Replace dialog in Notepad and replace Username_NPVName with your name and your NPV name. !!!Make it case sensitive!!!
I made this in a format that will be very easy to adapt to your own character.
General Note: Do not change any $base or $type lines unless you know what you're doing. I draw a lot from a female tweak entry, however this DOES NOT MATTER even if your character is masculine. These entries do not edit anything gender specific!
1. First, you do two CASE SENSITIVE text replaces. It's possible to keep all lower case but for the sake of telling stuff apart a bit better please use upper and lower scale both. Readability ykno.
First text replace for Username_NPVName and the second one for username_npvname where you obviously replace both of these with your name and npv name... self explanitory.
NAME
2. Now, you already customized the name here:
These should look familiar :) They are two of the secondary keys you set up in the json in Wkit earlier.
AFFILIATION
3. The Affiliation is next. If you want to use one of the many ones already available in the game, I have written them all into the script. You can simply copy and paste it. For example to make a Mox character you would change:
affiliation : Factions.Username_NPVName_AffiliationName
to
affiliation : Factions.TheMox
If you want something that doesn't exist in the game yet, you can scroll down to # Create own Affiliation. If you followed the name convention the text replace already did your job. The affiliation is another secondaryKey in the json from earlier.
CRIMES
4. Next up is the bountyDrawTable ("Wanted in Night City" thing). The StreetCred and stuff is something I didn't bother looking into at the moment, but you can set up existing crimes or even add your own.
By default this already points to the custom generated one
bountyDrawTable : Character.Username_NPVName_CrimeRecord
so scroll down to # Create own Crime Record.
The script already explains what to do here. You remove the # in front of the line that has a Transgression you want added to your crime record. Nothing else here needs editing.
If you want, you can add your own crimes. Scroll down to # Create own Transgression (Crime) and fill in what you want. You can add more crimes by simply copying one block and pasting, then changing the CrimeName number to 3 and so on. Two are already ready to be customized in the script and you can activate them like the base game ones. If you add more, copy pase the connected lines in the Crime Record section too.
ABILITIES
5. Abilities are just as easy to customize. They are linked to AI behavior and gameplay, so you cannot create your own fancy names here at the moment. However you can add from a large variety of game ones.
Do not edit the red section nor the general section above.
Strengths and Weaknesses
6. Scroll to # Create Stat Modifiers (Weaknesses and Resistances), this edits the lowest section of the scanner entry and also changes gameplay. Simply remove # in front of the lines you think sound cool again.
WEAPONS
6. Last but not least you can set your character to use whatever weapon you want in this script.One method is to scroll up back to
primaryEquipment : Character.Username_NPVName_weapon_inline0
secondaryEquipment : Character.Username_NPVName_weapon_inline0
If you don't want any specific entry you can use the included Preset_Primary_and_Secondary_Equipment.txt. It has many of the available presets used for npcs in the game.
For eg if you want the primary weapon to be the baseball bat from The Mox you can change
primaryEquipment : Character.Username_NPVName_weapon_inline0
to
primaryEquipment : Character.the_mox_1_melee2_baseball_wa_inline0
This is taken from the txt.
If you want to use a specific (player) weapon on your character, scroll down to # Create own Equipment for weapons.
Here, simply change Items.Weapon_code to whatever spawn code your desired weapon has. You can find them in any spawn lists available, for eg this one.
Example for adding Rebecca's weapon to your NPC change
- !append TweakDBID("Items.Weapon_code")
to
- !append TweakDBID("Items.Preset_Carnage_Edgerunners")
Once you are done put your .yaml file into r6\tweaks\your_name, obviously replacing your_name with your name.
If everything worked you will see your results ingame :)
If not, hmu on servers
Happy Modding!
- xBaebsae