This is the SourceMod port of my Medic Class plugin (originally for ES).
This version is much better with smaller code and more stable.
The plugin features:
- Restriction of plugin to a particular class
- The medic's speed, ability to jump and overall health can be configured easily
- Medics can be restricted to a certain number per team
- Medics can heal up to a certain number of times before running out of supplies (medic packs)
- Messages can be turned off to the medic
- More reliable means of determining how close a medic is to the patient
- Primary weapons can be picked up and used or it can be set to remove them on first shot
Installation- Copy sm_dod_medic_class.smx to addons/sourcemod/plugins
- Unzip the folders from medic_files.zip and copy into models, sounds and materials folders - these are the medic models and bandage sound. Ensure your server is not sv_pure 2.
- Add the models, materials and sounds to your Fast download server
- Requires SourceMod 1.2+
Commands
!medic in chat (sm_medic in console)
Calls for a medic - has spam protection
!heal in chat (sm_heal in console)
If you are a medic, you can heal a player. You will need to stand close by them to perform a healing. A player can be healed up to maximum health but may take several medic packs to do so.
!class_medic in chat (sm_class_medic in console)
Changes to the medic class. If you change to another class or team or say !class_medic again, you will stop being a medic.
!medic_who in chat (sm_medic_who)
Lists the medics on your team
Configuration
- sm_dod_medic_weapon 0
default: 0
0 will set the Medic's weapon to a pistol, 1 to a M1Carbine/C96
- sm_dod_medic_ammo 14
default 14
The amount of ammo to put in the Medic's weapon
- sm_dod_medic_nades 1
default: 1
Type of nade to give to the Medic
0 is no nades (disabled), 1 is smoke nades, 2 is nades
- sm_dod_medic_nades_ammo 1
default: 1
Number of nades to give to the Medic
- sm_dod_medic_speed 1.1
default: 1.1
The speed of the Medic. Setting to 1.0 makes them run at the same speed as the other players
- sm_dod_medic_weight 0.9
default: 0.9
The weight of the Medic. Setting to 1.0 makes them lighter and thus can jump a little higher
- sm_dod_medic_health 80
default: 80
Sets the health of the Medic. Setting to 100 gives them the same health as the other players
- sm_dod_medic_maxhealing 50
default: 50
The maximum amount of healing a medic can do with one Medic Pack
- sm_dod_medic_max 2
default: 2
Maximum number of medics per team
- sm_dod_medic_packs 20
default: 20
Sets the number of Medic Packs a medic gets at spawn
- sm_dod_medic_messages 1
default: 1 (0 to disable)
1 is to display messages to the client
- sm_dod_medic_restrict 0
default: 0
The Class to restrict Medics to - often used on some servers where server ops do not want snipers or MGers playing Medic
1 = Rifleman
2 = Assault
3 = Support
4 = Sniper
5 = MG
6 = Rocket
- sm_dod_medic_useweapons 1
default: 1
1 is to allow medic to pickup weapons, 0 to remove the primary weapon on the first shot
- sm_dod_medic_minplayers 6
default: 0
Sets the minimum number of players required on the server before the Medic Class becomes available. Otherwise players can self-heal instead
- sm_dod_medic_minhealth 20
default: 20
Sets the minimum health required before self healing can occur
- sm_dod_medic_maxhealth 100
default: 100
Sets the maximum health a player can be healed to
Changelog
Version 1.0.100
SourceMod release.
Version 1.0.101
Checks to see if pistols plugin added before adding weapons
Fixed bug where medic was able to heal enemies
Fixed bug where dead players could heal
Changed the way bandage sound is delivered
Added sounds to replace spammy messages
Fixed patient selection bug
Version 1.0.102
Added self heal plus two cvars for self healing
Fixed some minor bugs
Fixed up the code for becoming a medic
Added an option that removes a Medic's Primary weapon
Version 1.0.103
Added MaxHealth cvar provided by Lebson506th
Fixed so that medic changes only at respawn
Version 1.0.104
Fixed stupid bug in dod_stats_weapon_attack where the script tried to remove a punch weapon.....
Version 1.0.105
Fixed bug where player assumed medic features without respawning
Version 1.0.106
Fixed a bug where the server would crash if there was one bullet left in a clip.
Fixed a bug where players can fill up medic slots during respawn.
Version 1.0.107
Fixed a bug where players changing class without dying, remained medics...
Version 1.0.108
Added log action for stats.
Version 1.0.109
Fixed a bug in the 'medic who' code where it looked at the number of players on the spectator team rather than the Axis team
Version 1.0.110
Added Lebson and PsychoCoder's amendments to the code.
Version 1.0.111
Fixed minor bug - thanks Lebson
Notes
Has been tested in DoDS
If your server crashes as soon as you spawn as a medic, it probably means you have not updated to the latest gamedata/sdktools.games.ep2.txt file
Selecting a M1Carbine/C96 with smoke grenades will not work as these occupy the same weapon slot
In HLStatsX or similar stats program, create a new action called "medic_heal" and assign 1pt. Every time the player heals, they can be awarded one point for healing.
Credits
Big thanks to
Lebson506th for testing and suggesting changes and updates.
Thanks to PsychoCoder for improving parts of the code.
Thanks to URF and Kamping_Killoch who did amazing medic models!