XCOM 2
76 ratings
Earn That Nickname
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
266.495 KB
20 Apr, 2021 @ 4:03pm
1 Change Note ( view )
You need DLC to use this item.

Subscribe to download
Earn That Nickname

Description
Do you feel that your Character Pool Units are getting special treatment? Do you feel that they need to work up the ranks before they get that super intimidating nickname and hockey mask? Like cosmetic RP but don't have the time or patience to partake? If so, this mod is for you!

Character Pool Characters are restricted from having nicknames and veteran cosmetic options, prior to the Sergeant Rank, and are removed when added into your unit. Once reaching the rank of Sergeant, the unit receives their Character Pool-assigned Nickname and their Veteran Cosmetics.

This mod requires Community Highlander and overrides X2SimpleBodyPartFilter.

How the Mod actually works
The mod will remove Veteran marked items and nicknames, based on the cosmetics slots (VetLock) flags in the XComGame.ini file (see below), and replace them with either the blank option or a random default option (i.e. hair). This happens when a unit is added to the roster or at the beginning of a campaign.

Note: Because of the insertion point, potential recruits, in their profile picture, and VIP units, on mission, might have veteran cosmetics before the cosmetics removed when added to the XCom roster. This is a known flaw, and I have a few ideas how to fix this in the future.

When any unit reaches Sergeant, the mod will then find the unit in the character pool, using their full first and last name and if there is a match, the mod add their nickname and veteran cosmetics.

IMPORTANT INFORMATION: Veteran Cosmetics in WotC
By default, Nicknames are the only thing that are removed and later reapplied on rank up. This mod uses the bVeteran flag to determine if an item is considered a Veteran Cosmetic, and with WotC, all cosmetics have their bVeteran flags set to false.

You can manually edit these config files and personally determine which cosmetics are considered Veteran Cosmetics. You will want to modify a "BodyPartTemplateConfig" entry, by changing the bVeteran flag from false to true, or by adding "bVeteran=true"

For base game cosmetics, you want to edit the DefaultContent.ini file which can be found here:
..\Steam\steamapps\common\XCOM 2\XCom2-WarOfTheChosen\XComGame\Config

For the rest of the cosmetics, you want to edit the XComContent.ini files, which can be found in the following...
For DLC and Tactical Legacy Pack cosmetics:
..\Steam\steamapps\common\XCOM 2\XCom2-WarOfTheChosen\XComGame\DLC\[DLC name]\Config

For Steam Workshop mods:
..\Steam\steamapps\workshop\content\268500\[Workshop ID]\Config

For other mods:
...\Steam\steamapps\common\XCOM 2\XCom2-WarOfTheChosen\XComGame\Mods\[Mod name]\Config

After editing these Content.ini files, you will want to refresh your config files. One of the ways this can be done is by deleting all the config files (or just XComContent.ini) found in this folder within My Games:
[Most likely Documents]\My Games\XCOM2 War of the Chosen\XComGame\Config

Mod Options
There are multiple options for this mod, all which can be changed in the mod's XComGame.ini file found here:
..\Steam\steamapps\workshop\content\268500\2463438684\Config

The defaults are listed below:
FullResetOnRankUp = false
If true, changes all cosmetics to match character pool design when reaching sergeant, including non-veteran options. For example, if you change a unit's eye color, the unit will revert back to the original eye color when reaching sergeant

OnlyResetVeteranItems = true
If false, non-veteran cosmetics selected in the character pool will overwrite any changes made to the character in-game. Otherwise, only veteran cosmetics will overwrite the slots. Only VetLock cosmetics slots will be overwritten at all.

OnlyRemoveSoldierChar = true
Only removes soldier cosmetics, as opposed to engineers and scientist

Choose which cosmetic options will be truly locked to veteran units; options set to true will be removed pre-veteran, and reapplied post-veteran
NicknameVetLock = true
HairstyleVetLock = false
LowerFaceVetLock = true
UpperFaceVetLock = true
HelmetVetLock = true
PatternVetLock = false
TattooVetLock = true
ScarVetLock = false
FacepaintVetLock = true
WeaponColorVetLock = false
WeaponPatternVetLock = true


FAQs

What does the bVeteran flag do?
The bVeteran flag is only used by the UI and the random character generator. It determines what cosmetics the player can select for their unit inside a campaign (prior to Sergeant rank) and what cosmetics the random character generator can select for a soldier or civilian (there is also a 'bCanUseOnCivilian' flag).

Could changing the bVeteran flag take away features, or screw up my existing characters or the game?
The cosmetic parts are still selectable to a veteran (Sergeant and higher) units, and when using the character pool. In a campaign, a non-veteran unit could have a bVeteran flagged cosmetic, no problem, but the player will find that they can't select it again if they remove it and then try to reapply it. You can screw up the game if you set all items to bVeteran, so that civilians and randomly generated units have no cosmetic options to choose from (armless units if you make the 'none' tattoo 'bVeteran=true').

Is this compatible with base XCOM 2?
Theoretically, yes, though I haven't tested it. I have only used listeners, hooks, and an override of X2SimpleBodyPartFilter.

Is this okay to use on ongoing campaigns
Yes, however, existing characters in your roster will not be affected. I thought about automatically applying the 'deveteranize' function, via the OnLoadedSavedGame() function that can be toggled on and off with a config option, but there's flaws to this method. I rather have the option via button or console command to 'deveteranize' the low ranked units, which I hopefully will get around to making in the future.

This character had veteran cosmetics on their VIP rescue mission or recruitment photo, and only had them removed when they joined XCOM.
Yes, this is a known flaw. My insertion point for my code is when a unit is added to XCOM. Otherwise, I would have to likely override more game classes to accomplish my desired effect.

I switched my unit to an old armor set and reverted back to their pre-veteran cosmetics.
This is not a flaw of my mod but of the base game, itself. Cosmetics are snapshotted every armor set, so reverting to a previous armor set will revert to the previous cosmetics.
15 Comments
Lux Manifestus 23 Sep, 2021 @ 11:26am 
Does this mod only work with characters from a character pool? I think it would be fun to have a mod that makes all rookies and squaddies have a uniform look (crewcut hair style, no face paint, similar armor dress and color, no patterns) but when they achieve Sargent, the customization options from a randomizer mod (like Rookie Customization Options - WotC + Classic) take effect and the soldier shows their personality (as well as the nickname). Would such options be possible?
MrCloista 4 Aug, 2021 @ 5:37pm 
@cowfish13 I need to report a Conflict (which isn't highlighted by the AML) - When used with [WOTC}Choose My Class https://steamproxy.net/sharedfiles/filedetails/?id=1467643380 this mod causes loadouts of the chosen class to default to completely blank. I've advised @shiremct of the conflict as well. Hopefully a fix can be found.
cowfish13  [author] 19 Jun, 2021 @ 8:45pm 
@LeyShade Sorry for the late response. Removing the engine override lines should have 0 effect on the nicknames function. My nickname overwriting code strictly uses hooks instead of overrides.
LeyShade 1 Jun, 2021 @ 3:03pm 
@Cowfish13 - As of your last reply to Yzane, does removing those Engine lines from your mods INI files make this mod only effect the Veteran Nicknames, or is that a unique case for use only for that individual conflict?
yzane 9 May, 2021 @ 11:38pm 
Thanks for the response @cowfish13
cowfish13  [author] 9 May, 2021 @ 10:47pm 
Yes, that is an expected conflict as they both overwrite X2SimpleBodyPartFilter. The overwrite in my mod is to allow for Veteran Filtering, so theoretically, if all you desire is Nickname for veterans, you can remove the following line, and the mod will function with some filters not working (I believe tattoos and face paint):

[Engine.Engine]
+ModClassOverrides=(BaseGameClass="X2SimpleBodyPartFilter", ModClass="X2SimpleBodyPartFilter_Veteran")
yzane 9 May, 2021 @ 1:04pm 
AML reports conflict:

Conflict found for 'X2SimpleBodyPartFilter':
Cosmetic Filter
Earn That Nickname
cowfish13  [author] 22 Apr, 2021 @ 12:53pm 
Hello, it's best I get ahead of this now instead of later, but currently the mod doesn't support hero classes yet. I think it will be a relatively simple addition: a simple unitclass check. I was uncertain if people wanted to make an exception for the hero units, seeing that they are specially-trained badass troops right-out-of-the-box, but it would be better if I let the player decide, via config option.

Secondly, the options for my veteran checks are limited to the ones listed above, which I believe are all the things that had Veteran Flags in the original XCOM 2 release. However, I think it's possible to add the Veteran flags to things like armor. However, in some cases, the bVeteran flag gets ignored by the UI and Random Character Generator systems, so some further modifications might be needed if it were to be added as a feature.

Overall, I'm thankful for the enthusiasm and support. Please feel free to voice anything else you would like to see.
Dai 22 Apr, 2021 @ 10:33am 
Definitely adding it to collection
Robert McCall 22 Apr, 2021 @ 7:14am 
I thank you