Skip to content

F2's SourceMod plugins for competitive Team Fortress 2

Notifications You must be signed in to change notification settings

F2/F2s-sourcemod-plugins

Repository files navigation

F2's SourceMod plugins

CI

F2's SourceMod plugins for competitive Team Fortress 2.

Download all plugins in a zip file here:

Medic Stats

  • Logs buff heals (~95% accurate)
  • Logs average time to build über
  • Logs average time the über lasts
  • Logs number of über advantages lost
  • Logs how many times the medic dies shortly after übering
  • Logs other additional medic stats
  • See example on logs.tf

Supplemental Stats 2

  • Logs damage and real damage per weapon
  • Logs damage taken
  • Logs airshots
  • Logs self-healing (eg. by blackbox)
  • Logs headshots (not just headshot kills)
  • Logs medkit pickups including amount of healing
  • Logs which medigun is used when ubering
  • Logs crits and mini crits
  • Logs non-buffed heals
  • Logs ammo pickups
  • Logs players spawning
  • Logs game pauses
  • Logs shots fired and shots hit (for certain weapons)

LogsTF

  • Note: Requires the SteamWorks (mirror) extension
  • Automatically uploads logs to logs.tf
  • Set cvar logstf_apikey to your Logs.tf API Key
  • You can see the logs in-game by typing !logs or .ss
  • Uploads logs after each round (the log will be updated on logs.tf after each round), so you can use !logs/.ss after each round
  • Fixes several bugs seen in other plugins (including the last round missing, and stats being wrong when you play two matches on the same map)

Pause

  • Shows pause information in chat (see screenshot and screenshot)
  • Use repause command to quickly unpause and pause (when someone is trying to rejoin during a pause)
  • Adds a 5 second countdown when unpausing
  • Allows everyone to chat as much as they want during the pause
  • Unpause protection (if two people write pause at the same time, it doesn't accidentally unpause)
  • Restores uber percentages when unpausing
  • Option to restore player healths when unpausing
  • Option to restore player positions when unpausing
  • Option to restore cloak meters when unpausing

ClassWarning

  • In ETF2L, class limits are not enforced by the server. This plugin warns players in chat if they are breaking the class limit (see screenshot).

RecordSTV

  • When a match starts, it starts recording a STV demo
  • When the match ends, it stops the recording
  • Set up the path and the filenames of the demos with cvars: recordstv_path and recordstv_filename
  • In both cvars you can use several placeholders. See the description of recordstv_filename for the full list of placeholders.

WaitForSTV

  • Waits up to 90 seconds when changing map
  • Doesn't wait more time than necessary

AFK

  • If a player is AFK in warmup, it shows a warning to all players on their team
  • If both teams ready up and there is an AFK player, it shows a warning to the person's team
  • Works together with TF2DM... if a player is AFK, he will be moved back to spawn

RestoreScore

  • Restores a player's score on the scoreboard when he reconnects

FixStvSlot

  • Changes the map on server start to avoid a crash related to STV slot

Automatic updates

These plugins can automatically be updated by using Updater by GoD-Tony.

Contributing

For building a plugin locally, run these commands in Powershell 6+:

git clone https://github.com/F2/F2s-sourcemod-plugins.git
cd F2s-sourcemod-plugins
./setup.ps1

compile logstf

If you would like to contribute, please follow this process:

  1. First confirm your idea with me.
    This can be done by creating a github issue, or by contacting me on Steam.
  2. Create a fork+branch with your changes
  3. Test your changes
  4. Create a Pull Request describing your changes and how you have tested it

Acknowledgements

Lange for making soap_tf2dm and mgemod, from which I borrowed code
Jean-Denis Caron for making supstats, from which I borrowed code
Duckeh for making LogUploader, from which I borrowed code
calm for sponsoring LEGO, making it possible to test these plugins
The LEGO Team for helping test the plugins and give feedback
zoob for making logs.tf and cooperating in improving TF2 stats
All contributors for keeping these plugins alive 😁