Team Fortress 2

Team Fortress 2

[FIX] [V2] Bazaar Bargain Lens on Albedo-Tinted War Paints [OBSOLETE]
12 Comments
twunny phaiv 24 Jul @ 9:14pm 
absolutely wild how this was RIGHT HERE but valve decided to break all these skins instead.
MeatwadMeatwad 24 Jul @ 8:13pm 
"fix"
MeatwadMeatwad 24 Jul @ 8:13pm 
they removed overrides for all bazaar skins now in that update. that was the fix
Woshee 1 May @ 5:19pm 
WHY WASN'T THIS ADDED BUT THEY RATHER DISABLE SELF-ILLUM on the one war paint instead...
Piogre  [author] 25 Jan @ 10:35pm 
In order to fix this, Valve has two viable options:

(1) The cleanest option, but which would require the most effort from Valve, would be to change the functionality of the code that implements the material_override tag. Potentially, another optional variable could be added to the function that allows passing a regular expression to filter which materials get overridden. I cannot submit a fix to do this since I don't have access to the source code.

(2) What I've done here is change the Bazaar Bargain's model and entry in the items_game.txt to resemble how the Rescue Ranger (whose screen doesn't have this issue) is implemented -- the animated screen on the Ranger (and the lens on the Bargain, in my fix here) is not part of the main weapon model, but is a separate attachment model called by the item definition (the pilot light on flamethrowers also does this). This is a less clean solution but should at the very least fix this issue.
Piogre  [author] 25 Jan @ 10:34pm 
However, they re-used this functionality and allowed it to be called by decorated/warpaint code as well, to let warpaint code specify a different VMT for reflectivity. This is why it doesn't matter if the VMTs don't have the "Weapon_Skin" proxy -- every VMT is ignored completely by the engine and replaced with the new one if this tag is called, and to enable albedo tinting, it needs to be called. That's why MOST Bazaar Bargains do not have albedo tinting even on warpaints that have it on every other weapon, and the five that do (Elfin, Saccharine, Detail, Gobi, Charged) have the broken lens.

(/contd...)
Piogre  [author] 25 Jan @ 10:34pm 
For decorated weapons, they added the "Weapon_Skin" proxy in the material/VMT file, which allows the base texture/VTF component of the material to be programmatically replaced by the engine on render, enabling the decoration patterns. This allows full control over the base texture by the warpaint code, and also works fairly well, but does not allow the engine to alter other parts of the VMT (specifying numerous variables related to reflectivity). If you want to alter that, there's a third option...

The "material_override" tag was previously used by the golden wrench to add a special skin to an item without adding a whole new skinfamily to the model. It is called in that case from the items_game.txt, and acts like a hacksaw, making it so every material called by the model is replaced by the specified material. It didn't really cause problems with the golden wrench (although I'm pretty sure the golden wrench can't be festivized and I suspect this is why).

(/contd...)
Piogre  [author] 25 Jan @ 10:34pm 
@Flpstrike unfortunately it's not that simple. It's not a matter of fixing many individual skins, it's a matter of getting around one poorly-thought-out tag.

The "old" way of adding new skins to a weapon was the "skinfamilies" QC tag, which is built into the weapon's model/MDL file, and allows the game to programmatically select different sets of materials for the model. This works fairly well, and is used for things like team color, australiums, and a couple other variations on weapons. However, it does not scale well enough to use for decorated/warpainted weapons.

(/contd...)
Flpstrike 25 Jan @ 4:04pm 
I made a list of War-Paints have this issue... Valve should update those and make each one respect .vmts that don't have a "Weapon_Skin" Proxy:

Blackout, Bomb Carrier, Bonzo Gnawed, Broken Bones, Business Class, Coffin Nail, Deadly Dragon, Dragon Slayer, Elfin Enamel, Gobi Glazed, Helldriver, High Roller, Kiln and Conquer, Macaw Masked, Necromanced, Party Phantoms, Polter-Guised, Raving Dead, Saccharine Striped, Sacred Slayer, Smissmas Camo, Starlight Serenity, Stealth Specialist, Steel Brushed, Sunriser, Swashbuckled, Team Charged, Team Detail, Warborn, Winterland, Yeti Coated.
Reimu 20 Apr, 2024 @ 1:07pm 
Hell naw
Tromingus 18 Apr, 2024 @ 4:30pm 
yes
ShadowMan44 14 Apr, 2024 @ 4:27pm 
I think the only way Valve's going to accept this is if the original creator (svdl) is a contributor on there because that's his weapon.