tf2classic / tf2classic-feature-proposals

Have an idea for a new addition to the game? Post it here!
2 stars 0 forks source link

[Live Parity] Add rudimentary support / fixes for Live TF2 animations #16

Open SilentFox3 opened 2 years ago

SilentFox3 commented 2 years ago

This is INCREDIBLY low priority, I understand, but there is a small demand for the ability to use certain Live TF2 playermodel animations for various things. Most might not be TERRIBLY relevant for TF2C content - but I feel as if it'd be nice to have this active in the background, passively. This requires very little upkeep once set up, anyway.

I'll even offer suggestions as to how to fix / implement these with as little work / labor as possible.


Playermodel Anim Includes:

There already is some sort of compatibility for this in TF2C, but it's verrryyy inconsistent between classes and doesn't work entirely as intended right now. Ideally, it should be a block that looks something like this for every playermodel + HWM playermodel, no other changes there;

$IncludeModel "player/heavy_animations_custom.mdl" // For modders to mount custom animations; OPTIONAL
$IncludeModel "player/heavy_animations_tf2c.mdl" // TF2C's default animations; by default, these are the only ones loaded
$IncludeModel "player/heavy_animations.mdl" // Live TF2's animations, if present (like via mounting or something)

Alternatively, if you don't feel like you want to rename class_animations.mdl,

$IncludeModel "player/heavy_animations_custom.mdl" // For modders to mount custom animations; OPTIONAL
$IncludeModel "player/heavy_animations.mdl" // TF2C's default animations; by default, these are the only ones loaded
$IncludeModel "player/heavy_animations_live.mdl" // Live TF2's animations, if present

Compile 10 x 2 times, then done. Very low impact and effort.

Renaming TF2C's animations to class_animations_tf2c.mdl has the benefit of seamlessly allowing Live TF2's animations to mount if the player has that set up or just dragged stuff over, but I could imagine it might be shaky for one patch cycle if switching over to it now. Something to consider.

NOTE; As it is right now, TF2C's animations are class_animations.mdl, but the file is setup as in the first example. This is more than a little messy if a player wants Live TF2 animations - they have to not only copy / rename TF2C's class_animations to class_animations_tf2c, but also replace TF2C's base animations with Live TF2's. A lot of room for error - it'd be wise to use one or the other.


Item Conflict fixes:

Due to its age, the Nailgun's Animations are identified as "ITEM2" in its activity names. This means, even all else not conflicting, the animations for the Nailgun and the Force-a-Nature from Live will conflict and alternate between eachother. To fix this, I'd imagine just rename all of the Nailgun's activity names from "_ITEM2" to something like "_ITEM3", or "_NG". I believe TF2C supports up to ITEM3, or you even might be able to label them as _ALT in a manner similar to the Hunting Revolver's animations. Food for thought.

There are a few other minor issues - Demoman's sword animations are visually awkward and snappy, and Pyro's ITEM4 slot animations (Thermal Thruster) don't load even if forced to, but those are mostly able to be swept aside as engine quirks. They aren't really on TF2C's side to worry about!