Every weapon in TF2 is just an
entity. As such, you can strip players of certain weapons by sending the proper entity classes the kill input, even dynamically spawned entities that aren't placed by a mapper. To create your weapon blacklist, just create a logic_relay, and fill it with outputs to kill whatever
weapon classes you want. Your outputs should look like this:
My Output|Target Entity|Target Input|Parameter|Delay|Only Once
OnTrigger|<Weapon class>|Kill|<none>|0|No
Just copy and paste this output for each weapon class you wish to get rid of. Note that similar weapons, such as most flamethrowers, all share an entity class. So you don't need to create a new output for each independent flamethrower, but you can't, for example, strip players of just the Phlogistinator but no other flamethrower, as the Phlogistinator shares a weapon class with most of the other flamethrowers.
Now name your logic_relay something that you can remember. Unfortunately, we can't just fire this relay at the start of a round and let that be it, as players regain all their weapons upon respawning. So you'll need to trigger this relay every time players respawn. I would recommend placing a trigger_multiple over the entire playable space, and using this input:
My Output|Target Entity|Target Input|Parameter|Delay|Only Once
OnStartTouch*|<Weapon-stripping logic_relay>|Trigger|<none>|0|No
*Do
not use OnStartTouchAll! This will cause the output to only fire after all players leave the trigger, as in, when all players die.
Note, however, that this will not override the Medieval Mode blacklist, rather it will just add another blacklist on top of it. Aside from not enabling Medieval Mode, I don't know how to overcome the Medieval Mode blacklist.