Skip to content

[TF2] Festivizer Support for Throwables, Sappers, and Lunchboxes#1967

Open
Piogre wants to merge 3 commits into
ValveSoftware:masterfrom
Piogre:festivizer-throwables-sappers-lunchboxes
Open

[TF2] Festivizer Support for Throwables, Sappers, and Lunchboxes#1967
Piogre wants to merge 3 commits into
ValveSoftware:masterfrom
Piogre:festivizer-throwables-sappers-lunchboxes

Conversation

@Piogre

@Piogre Piogre commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

The Festivizers workshop submission that added Festivizer support to numerous weapons last Smissmas included models for several additional weapons that would have required extra implementation to work correctly.

This PR includes in-code support for Festivized throwable weapons, heavy lunchbox items, and spy sappers, to properly set the hard-coded models generated in-world when the weapons are used.

image image image image

The full list of weapons supported with this PR:
-Mad Milk
-Mutated Milk
-Flying Guillotine
-Gas Passer
-Jarate
-Self-Aware Beauty Mark
-Sandvich
-Robo-Sandvich
-Dalokohs Bar
-Fishcake
-Buffalo Steak Sandvich
-Second Banana
-Sapper
-Ap-Sap
-Snack Attack
-Red-Tape Recorder

The model filepaths referenced in these code changes refer to models already included in the original workshop submission (and included for convenience in the tf_festives shared dropbox).

Many of these weapons do require other tweaks (to the weapon base model, item schema, etc) unrelated to the source code -- I'm working on those notes still in the new "2026 Implementation Notes" spreadsheet in the dropbox; the notes for these weapons in particular are still a work-in-progress but I will update that sheet as I go.

Piogre added 3 commits July 1, 2026 19:30
Rewrites the portion of the lunchbox code that sets the plate model for the thrown medpack for sandwiches et al, to account for the possibility of the item being festivized and set an alternate model if it is.

This rewrite has the minor side-effect of always setting team-color skin for the plate model, even for weapons that don't normally have different skins per-team.  This won't break anything (since the system already accounts for setting a non-existent skin and will default to skin zero) and actually solves the issue faced by authors of custom skins who find some weapons don't allow team-color skins for the dropped medpack model (the current live version breaks team-color on client-side customs for no reason).
Adds a check to the code that generates the filenames for placed/placement sapper models to see if the sapper in question is festivized, and modify the model filename accordingly if it is.
Adds a check to the code that sets the projectile models for thrown weapons to see if the weapon in question is festivized, and set an alternate model if it is.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant