[L4D & L4D2] Reverse Friendly-Fire [v2.8.5 (07-Oct-2023)]
2 Attachment(s)
.
Reverse Friendly-Fire (l4d_reverse_ff) by Mystik Spiral Purpose: Left4Dead(2) SourceMod plugin that reverses friendly-fire...attacker takes damage, victim does not. Objectives:
Description and options: Reverses friendly-fire weapon damage on survivor team and claw attacks on infected team. Does not reverse burn/blast damage, except for grenade launcher (see Suggestion section below). Supports client language translation, currently English, French, Spanish, Russian, and Traditional Chinese. Please note the following for the true(1) / false(0) options below: · The victim never takes damage from the attacker. · 1 = friendly-fire is reversed for that option and the attacker takes damage. · 0 = friendly-fire is disabled for that option and the attacker does not take damage.
Notes: Without this plugin, if you shoot another player while they are being pulled by the Smoker (before they are choked) or while being carried by the Charger (before they are pummeled), it would trigger friendly-fire. Setting reverseff_pullcarry=0 allows you to turn this off, and is the default. If you shoot another player while they are pinned by the Hunter or Jockey, friendly-fire is blocked, regardless of the reverseff_pullcarry setting. If you set reverseff_dmgmodifier=0, it effectively disables all friendly-fire. The default setting is 1, which does not modify the damage amount, just reverses it. Setting it lower than 1 reduces the damage reversed to the attacker, and setting it higher than 1 increases the damage reversed to the attacker. The proximity feature (reverseff_proximity) compares the distance between the attacker and victim, and if the distance is less than reverseff_proximity, ignores friendly-fire. The default value is 32, which is where players bodies are so close they begin to overlap. However, you could also set it to a lower value (more body overlap before friendly-fire is ignored) or a higher value to provide a buffer around you for griefers/idiots that run through or in front of you while you are firing. Also note this feature ignores melee weapons and chainsaw... those will always generate friendly-fire (unless you have one of the other ConVars set to negate that). You can disable this feature by setting reverseff_proximity=0. If you want the opposite effect... ignore friendly-fire when the distance is greater than reverseff_proximity (instead of less than) then set reverseff_proximity to a negative value. Suggestion: To minimize griefer impact, use the Reverse Friendly-Fire plugin along with... ReverseBurn and ExplosionAnnouncer (l4d_ReverseBurn_and_ExplosionAnnouncer)
Although griefers will take significant damage, other players may not notice any difference in game play (except laughing at stupid griefer fails). Credits: CFG file requested by user2000 Victim incapacitated option requested by Shao L4D1/2 engine check fix requested by Crasher_3637/Psyk0tik Reverse accusation vocalizations requested by kooper990 Kick or ban option requested by Maku and Crasher_3637/Psyk0tik ReverseFF for infected requested by Kai0205 Short FF grace immediately after killing SI requested by Kai0205 L4D1/2 specific checks fix requested by kooper990 and Marttt Attacker incapped option and mounted gun option requested by Shao Melee and chainsaw option requested by Shao Charger carry and Smoker pull option requested by Shao Chainsaw damage fix by pan0s Damage modifier by percentage requested by TrueDarkness Promximity option requested by Shao Announcement option requested by tamasa1969 Chat option requested by kevinracer Cooldown timer requested by Shao Game modes on/off/tog by Silvers GetClientDist adapted from UndoFF by dcx2 Traditional Chinese translation by in2002 SM 11 compile warnings fix requested by S.A.S Grenade stumble effect option requested by Automage Option to reverse the logic of reverseff_proximity requested by Smeraldo Want to contribute code enhancements? Create a pull request using this GitHub repository: https://github.com/Mystik-Spiral/l4d_reverse_ff Plugin discussion: https://forums.alliedmods.net/showthread.php?t=329035 Most recent update: Code:
07-Oct-2023 v2.8.5 Update history for older versions:
Spoiler
If you are upgrading from release 2.5 or lower, please note that you will need to manually remove the "reverseff_self" entry from the l4d_reverse_ff.cfg file, or just delete the l4d_reverse_ff.cfg file and let the plugin create a new one. The phrases file changed in the 2.7 release, is REQUIRED, and must be downloaded/copied to the "addons\sourcemod\translations" directory. . |
Re: [L4D2] Reverse Friendly-Fire [v1.0 (05-Dec-2020)]
I know there are many friendly-fire plugins out there already, but it has been my experience that most of them do not work at all or have too many bugs to be useful. I had been using one of those other plugins for a while, and fixed several bugs with it, but some things just could not be fixed (hooking player_hurt), so I created this new plugin using the new (SM 1.7+) syntax. This plugin hooks SDKHook_OnTakeDamage to intercept damage, and uses SDKHooks_TakeDamage to reverse the damage. Note that if you shoot a teammate with explosive ammo, you (the attacker) will be stumbled, not the victim. Similarly, if you shoot a teammate with incendiary ammo, you (the attacker) will be lit on fire for a few seconds, not the victim.
|
Re: [L4D2] Reverse Friendly-Fire [v1.0 (05-Dec-2020)]
interesting I'm going to try it
thanks |
Re: [L4D2] Reverse Friendly-Fire [v1.0 (05-Dec-2020)]
Awesome. I'll try this :) I already have the other reverse_ff plugin; let's see the difference.
|
Re: [L4D2] Reverse Friendly-Fire [v1.1 (08-Dec-2020)]
Released v1.1...
If attacker weapon has incendiary/explosive ammo, increase damage to attacker by 12.5%. I haven't yet figured out how to tell if the grenade launcher (projectile) has incendiary/explosive ammo, so there is no extra damage for that weapon yet. All other primary weapons should be working fine with higher damage when using special ammo. The special ammo extra damage is not a true reversal, but is a good compromise until/if I figure out how to directly reverse it. |
Re: [L4D2] Reverse Friendly-Fire [v1.1 (08-Dec-2020)]
this plugin is perfect for me :up:
It would be possible to add a .cfg to activate or deactivate the immunity to the administrator or to control the weapon damage |
Re: [L4D2] Reverse Friendly-Fire [v1.1 (08-Dec-2020)]
Quote:
|
Re: [L4D2] Reverse Friendly-Fire [v1.2 (09-Dec-2020)]
I was able to get to this sooner than expected and released version 1.2...
Code:
Added dynamically changeable ConVars: !cvar reverseff_immunity 0 ...to instantly make everyone, including admins, take reverse friendly-fire damage. Another example... !cvar reverseff_multiplier 1.25 ...to instantly make explosive/incendiary ammo do 25% more damage to the attacker than regular ammo. Of course, the changes are not permanent. To make your changes permanent, edit the values in the cfg/sourcemod/l4d_reverse_ff.cfg file. |
Re: [L4D2] Reverse Friendly-Fire [v1.2 (09-Dec-2020)]
thanks for updating the plugin :)
|
Re: [L4D2] Reverse Friendly-Fire [v1.3 (13-Dec-2020)]
New version 1.3 released, see original post for download.
Added new ConVar "reverseff_bot" to determine if friendly-fire against bots should have damage reversed. Default is no. I created this option because bots often move in unpredictable and stupid ways, including walking into your line of fire even when you are crouched and not moving. With the default value, only attacks against human victims will reverse damage. The plugin now also detects when the grenade launcher has incendiary ammo and deals the appropriate (reverseff_multiplier) extra damage for it. Explosive ammo for the grenade launcher is not checked, because in my tests, there was no difference in the amount of damage between regular explosive ammo and explosive explosive ammo. I think that explosive explosive ammo for the grenade launcher may just expand the kill/stumble zone, but I'm not sure about that. If you have an older version of the plugin installed, you will need to add an entry to the "l4d_reverse_ff.cfg file to use the new ConVar, but I recommend you just delete the cfg file and let the plugin create a new one for you. |
All times are GMT -4. The time now is 11:22. |
Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.