Had to recreate my custom FGD after a recent TF2 update, which meant going through this FGD to grab the parts I like. here's a buncha minor things I spotted (and stuff that got changed after recent updates):
- tf_logic_cp_timer has a teamnum keyvalue now so it "works for team RED"
- func_nobuild now has a keyvalue to allow it to destroy buildings when it turns on
- no point in having item_sodacan
- why is ai_goal_injured_follow here? it isn't even functional in EP1.
- since TF2 uses NextBots, there's no point in the NPCHintGroup or NPCSquadName KVs on npc_maker
- no point in any of the ai_ entities since TF2 doesn't use NPCs
- color_correction_volume and env_screeneffect don't work in TF2
- is there any point to globals in TF2?
- env_soundscape is erroneously listed as having a "Disabled" input, but even "Disable" is unnecessary because it inherits EnableDisable
- func_nav_avoidance_obstacle is an L4D entity
- info_overlay can save itself some KVs by inheriting FadeDistance
- info_powerup_spawn and item_powerup_crit/uber/rune define fademin/maxdistance helpers despite not having such KVs
- shouldn't hightower_teleport_vortex's SetModelScale input be a float? and shouldn't its SetAdvantageTeam input be an integer?
- point_push, base_boss, and point_velocitysensor can save themselves some inputs & a KV by inheriting EnableDisable
- tf_generic_bomb has a PassActivator KV now
- func_nav_avoid and func_nav_prefer can inherit EnableDisable and Toggle
- func_nav_blocker defines BlockNav/UnblockNav twice; also defines the Affects Flow KV, which only exists in L4D2
- func_precipitation causes problems in multiplayer games
- Light and light_environment can use Toggle to save an input
- light_glspot is identical to light_spot but only supported by HL2 beta builds of VRAD
- RobotDestruction is a blank base class; tf_logic_robot_destruction shouldn't include it
- tf_zombie now has an OnDeath output
- point_hurt now has a second spawnflag to let it bypass uber, but this isn't defined in the FGD ('cuz it's a base entity), so it needs to be re-defined
I recognize this is a lot. there are probably reasons for some of these, but just in case, I'm listing all the things that stick out to me.