View Single Post
Author Message
ddhoward
Veteran Member
Join Date: May 2012
Location: California
Old 04-12-2013 , 01:48   [TF2] Friendly Mode (v. 16.0112)
Reply With Quote #1

[TF2] Friendly Mode
v. 16.0112
"Why did Valve put guns in this game? So weird."

Friendly Mode allows users to become invulnerable to damage from other players, while at the same time being unable to damage other players. Useful for certain servers where combat is something that some players don't want to partake in, such as trade servers, achievement servers, hangouts, etc.

The plugin is very effective at stamping out potential abuse of Friendly Mode; Friendly players can have almost 0 effect on the actual gameplay around them. By default, Friendly players:
  • Cannot damage or be damaged by other players.
  • Cannot even take out weapons that can affect gameplay in non-damaging ways (such as the Short Circuit, Holiday Punch, etc.)
  • Cannot taunt with taunt-stunning weapons (Huntsman, Gunslinger, Ubersaw, etc)
  • Cannot block enemy players; they are non-solid, and can be walked right through.
  • Cannot Goomba Stomp or RTD, provided that your Goomba and RTD plugins are up-to-date.
  • Are practically invisible, so non-Friendly players do not get confused.
  • Are invisible to sentries.
  • Cannot go AFK for too long while Friendly.
  • Cannot pick up Ammo, Health, or MvM cash, nor do they drop ammo pickups upon death.
  • Cannot cap points, push carts, or capture flags.
  • All the appropriate restrictions also apply to Engie buildings as well.
  • Etc.

This plugin is highly configurable, and features 56 cvars. This can be overwhelming to configure at first. Just remember that the default value is generally the "best" value for that particular cvar. Don't change it unless you feel you need to, based on the needs of your particular server/map.

This plugin provides several natives and forwards for interacting with other plugins. Please see the .inc file for more information.

COMMANDS
Spoiler


CVARS, shown with default values:
This plugin loads its cvars from tf/cfg/sourcemod/friendly.cfg, if the file exists. It is recommended that you place this file in that location, renaming it to simply friendly.cfg, commenting out any settings you want to place elsewhere (such as in map-specific settings). Remember, when in doubt, just use the default settings.
Spoiler


Changelog
Spoiler




Plans, goals, and dreams:
I am mostly using this plugin as a way to learn this stuff. As such, modifications and updates will come slowly, unless I have assistance. That being said, I hope to one day include:
  • A cvar that, when enabled, will clear the domination/revenge status of a player entering friendly mode.
  • A way to distinguish Friendly players without alpha changing.
  • A way to make Friendly players invisible to bosses.
  • Menu support?
Notes, Known Issues, Known Bugs, Known Exploits:
  • If a Friendly player/building's invuln cvar is not set to godmode or buddha, it can still be damaged by other players through non-normal means, such as the RTD effects Toxic and Timebomb.
  • Friendly players can still damage non-Friendly players through non-normal means, such as RTD Toxic, RTD Timebomb, etc.
  • Bosses will still attempt to attack Friendly players, regardless of any inability to actually do damage.
  • A Friendly player, when headshotted with the Bazaar Bargain, grants the sniper a "head," regardless of the fact that the victim never dies or even takes damage.
  • Friendly players can still be heard by all nearby players. Footsteps, voice commands, weapon use, etc. This can be confusing to your more attentive players who are taking the combat more seriously than others.
  • If a Friendly player accidentally walks into a non-friendly cloaked enemy spy, he may accidentally reveal the spy's location.

Installation:
To install, simply ensure that your Sourcemod installation is up to date (at least v1.5), and place the SMX in your plugins folder. You should also put friendly.txt into your gamedata folder. Optionally, place the cfg in tf/cfg/sourcemod/.

Please also consider installing Updater. This will let you automatically keep your plugins up-to-date.
Compiling:
The plugin source is available here.

The plugin requires custom includes. As such, it does not compile here on the forums. Includes required to compile the plugin are:Optional includes are:



If you like what you see here, please consider donating~
__________________

Last edited by ddhoward; 01-31-2016 at 16:43.
ddhoward is offline