Skip to content

Commit c7ef30e

Browse files
committed
Added changes for v9.3
Details can be found in changelog.
1 parent 71c1341 commit c7ef30e

File tree

107 files changed

+74553
-51551
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

107 files changed

+74553
-51551
lines changed

CHANGELOG.md

Lines changed: 526 additions & 109 deletions
Large diffs are not rendered by default.

INFORMATION.md

Lines changed: 13455 additions & 14097 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 86 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@
1111
<details>
1212
<summary>Click to expand!</summary>
1313
14-
Mutant Tanks: a L4D/L4D2 SourceMod Plugin
15-
Copyright (C) 2024 Alfred "Psyk0tik" Llagas
14+
Mutant Tanks: A L4D/L4D2 SourceMod Plugin
15+
Copyright (C) 2017-2025 Alfred "Psyk0tik" Llagas
1616

1717
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
1818

@@ -61,8 +61,8 @@ Originally an extended version of Super Tanks, Mutant Tanks combines Last Boss,
6161
6. Store up to 500 Mutant Tank types.
6262
7. Administration system designed for access and immunity to Mutant Tanks.
6363
8. Custom target filters for targeting survivors, special infected, and Mutant Tanks.
64-
9. Over 1,500 optional settings to configure.
65-
10. Over 70 unique abilities to choose from.
64+
9. Over 3,000 optional settings to configure.
65+
10. Over 30 unique abilities to choose from.
6666
11. Choose which abilities to install.
6767
12. Add custom abilities and features through the use of forwards and natives.
6868
13. Create all kinds of combinations of abilities.
@@ -71,6 +71,10 @@ Originally an extended version of Super Tanks, Mutant Tanks combines Last Boss,
7171
16. Detects idle or bugged Tanks.
7272
17. Toggle damage scaling based on difficulty.
7373
18. Fully customizable reward system.
74+
19. Fully customizable punishment system.
75+
20. Fully customizable passive system.
76+
21. Fully customizable spawn protection.
77+
22. And many more!
7478
</details>
7579

7680
## Commands
@@ -86,26 +90,50 @@ sm_mt_list - View a list of installed abilities.
8690
sm_mt_reload - Reload the config file.
8791
sm_tank - Spawn a Mutant Tank.
8892
sm_mt_tank - Spawn a Mutant Tank.
93+
sm_smoker - Spawn a Mutant Smoker.
94+
sm_mt_smoker - Spawn a Mutant Smoker.
95+
sm_boomer - Spawn a Mutant Boomer.
96+
sm_mt_boomer - Spawn a Mutant Boomer.
97+
sm_hunter - Spawn a Mutant Hunter.
98+
sm_mt_hunter - Spawn a Mutant Hunter.
99+
sm_spitter - Spawn a Mutant Spitter.
100+
sm_mt_spitter - Spawn a Mutant Spitter.
101+
sm_jockey - Spawn a Mutant Jockey.
102+
sm_mt_jockey - Spawn a Mutant Jockey.
103+
sm_charger - Spawn a Mutant Charger.
104+
sm_mt_charger - Spawn a Mutant Charger.
89105
sm_mt_version - Find out the current version of Mutant Tanks.
90106
91107
// Accessible by the developer only.
92108
sm_mt_dev - Used only by and for the developer.
93109
94110
// Accessible by all players.
95111
sm_mutanttank - Choose a Mutant Tank. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
112+
sm_mtank - Choose a Mutant Tank. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
113+
sm_mutantsmoker - Choose a Mutant Smoker. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
114+
sm_msmoker - Choose a Mutant Smoker. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
115+
sm_mutantboomer - Choose a Mutant Boomer. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
116+
sm_mboomer - Choose a Mutant Boomer. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
117+
sm_mutanthunter - Choose a Mutant Hunter. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
118+
sm_mhunter - Choose a Mutant Hunter. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
119+
sm_mutantspitter - Choose a Mutant Spitter. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
120+
sm_mspitter - Choose a Mutant Spitter. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
121+
sm_mutantjockey - Choose a Mutant Jockey. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
122+
sm_mjockey - Choose a Mutant Jockey. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
123+
sm_mutantcharger - Choose a Mutant Charger. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
124+
sm_mcharger - Choose a Mutant Charger. (This command only works if the "Spawn Mode" setting under the "Plugin Settings/Human Support" section is set to 0.)
96125
sm_mt_info - View information about Mutant Tanks.
97126
sm_mt_prefs - Set your Mutant Tanks preferences.
98127
99128
// Packaged
100-
sm_mt_ability - View information about each ability (A-L).
101-
sm_mt_ability2 - View information about each ability (M-Z).
129+
sm_mt_ability - View information about each ability (A-J).
130+
sm_mt_ability2 - View information about each ability (L-Z).
102131
103132
// Standalone
104133
sm_mt_absorb - View information about the Absorb ability.
105134
sm_mt_acid - View information about the Acid ability.
106135
sm_mt_aimless - View information about the Aimless ability.
107136
sm_mt_ammo - View information about the Ammo ability.
108-
sm_mt_blind - View information about the Blind ability.
109137
sm_mt_bomb - View information about the Bomb ability.
110138
sm_mt_bury - View information about the Bury ability.
111139
sm_mt_car - View information about the Car ability.
@@ -127,27 +155,21 @@ sm_mt_god - View information about the God ability.
127155
sm_mt_gravity - View information about the Gravity ability.
128156
sm_mt_gunner - View information about the Gunner ability.
129157
sm_mt_heal - View information about the Heal ability.
130-
sm_mt_hit - View information about the Hit ability.
131158
sm_mt_hurt - View information about the Hurt ability.
132159
sm_mt_hypno - View information about the Hypno ability.
133160
sm_mt_ice - View information about the Ice ability.
134161
sm_mt_idle - View information about the Idle ability.
135162
sm_mt_invert - View information about the Invert ability.
136-
sm_mt_item - View information about the Item ability.
137163
sm_mt_jump - View information about the Jump ability.
138-
sm_mt_kamikaze - View information about the Kamikaze ability.
139164
sm_mt_lag - View information about the Lag ability.
140165
sm_mt_laser - View information about the Laser ability.
141-
sm_mt_leech - View information about the Leech ability.
142166
sm_mt_lightning - View information about the Lightning ability.
143167
sm_mt_medic - View information about the Medic ability.
144168
sm_mt_meteor - View information about the Meteor ability.
145169
sm_mt_minion - View information about the Minion ability.
146-
sm_mt_necro - View information about the Necro ability.
147170
sm_mt_nullify - View information about the Nullify ability.
148171
sm_mt_omni - View information about the Omni ability.
149172
sm_mt_panic - View information about the Panic ability.
150-
sm_mt_pimp - View information about the Pimp ability.
151173
sm_mt_puke - View information about the Puke ability.
152174
sm_mt_pyro - View information about the Pyro ability.
153175
sm_mt_quiet - View information about the Quiet ability.
@@ -157,28 +179,19 @@ sm_mt_regen - View information about the Regen ability.
157179
sm_mt_respawn - View information about the Respawn ability.
158180
sm_mt_restart - View information about the Restart ability.
159181
sm_mt_rock - View information about the Rock ability.
160-
sm_mt_rocket - View information about the Rocket ability.
161-
sm_mt_shake - View information about the Shake ability.
162182
sm_mt_shield - View information about the Shield ability.
163183
sm_mt_shove - View information about the Shove ability.
164184
sm_mt_slow - View information about the Slow ability.
165185
sm_mt_smash - View information about the Smash ability.
166-
sm_mt_smite - View information about the Smite ability.
167-
sm_mt_spam - View information about the Spam ability.
168-
sm_mt_splash - View information about the Splash ability.
169-
sm_mt_splatter - View information about the Splatter ability.
170186
sm_mt_throw - View information about the Throw ability.
171187
sm_mt_track - View information about the Track ability.
172188
sm_mt_ultimate - View information about the Ultimate ability.
173189
sm_mt_undead - View information about the Undead ability.
174-
sm_mt_vampire - View information about the Vampire ability.
175190
sm_mt_vision - View information about the Vision ability.
176191
sm_mt_warp - View information about the Warp ability.
177192
sm_mt_whirl - View information about the Whirl ability.
178193
sm_mt_witch - View information about the Witch ability.
179-
sm_mt_xiphos - View information about the Xiphos ability.
180194
sm_mt_yell - View information about the Yell ability.
181-
sm_mt_zombie - View information about the Zombie ability.
182195
```
183196
</details>
184197

@@ -232,6 +245,17 @@ mt_enabledgamemodes ""
232245
// Maximum: "15.000000"
233246
mt_gamemodetypes "0"
234247
248+
// Sets the graphics level of the plugin to help with server performance.
249+
// 0: OFF
250+
// 1: Low
251+
// 2: Medium
252+
// 3: High
253+
// -
254+
// Default: "3"
255+
// Minimum: "0.000000"
256+
// Maximum: "3.000000"
257+
mt_graphicslevel "3"
258+
235259
// Enable Mutant Tanks on listen servers.
236260
// 0: OFF
237261
// 1: ON
@@ -1232,6 +1256,21 @@ forward void MT_OnRockThrow(int tank, int rock);
12321256
**/
12331257
forward void MT_OnSettingsCached(int tank, bool apply, int type);
12341258
1259+
/**
1260+
* Called when a passive is given to or taken away from a survivor.
1261+
* Use this forward to give or take away passives.
1262+
*
1263+
* @param survivor Client index of the survivor.
1264+
* @param type 1 = Health, 2 = Damage boost, 4 = Speed boost, 8 = Ammo, 16 = Item, 32 = God mode, 64 = Health and ammo refill, 128 = Respawn,
1265+
* 255 = All eight passives, 256-2147483647 = Reserved for third-party plugins
1266+
* @param apply True if the passive is given, false otherwise.
1267+
* @param weaponOnly True if the passive is given to weapons only, false otherwise.
1268+
* @param weaponIndex Type index of the weapon.
1269+
*
1270+
* @return Plugin_Handled to prevent giving or taking passives, Plugin_Continue to allow.
1271+
**/
1272+
forward Action MT_OnToggleSurvivorPassive(int survivor, int &type, bool apply, bool weaponOnly, int weaponIndex);
1273+
12351274
/**
12361275
* Called when a Mutant Tank type has been chosen.
12371276
* Use this forward to check or change the chosen type.
@@ -1281,6 +1320,18 @@ native void MT_DeafenPlayer(int player);
12811320
**/
12821321
native void MT_DetonateTankRock(int rock);
12831322
1323+
/**
1324+
* Returns if a certain survivor has a passive type active.
1325+
*
1326+
* @param survivor Client index of the survivor.
1327+
* @param type 1 = Health, 2 = Damage boost, 4 = Speed boost, 8 = Ammo, 16 = Item, 32 = God mode, 64 = Health and ammo refill,
1328+
* 128 = Respawn, 255 = All eight passives, 256-2147483647 = Reserved for third-party plugins
1329+
*
1330+
* @return True if the survivor has the passive type active, false otherwise.
1331+
* @error Invalid client index, client is not in-game, or type is 0 or less.
1332+
**/
1333+
native bool MT_DoesSurvivorHavePassiveType(int survivor, int type);
1334+
12841335
/**
12851336
* Returns if a certain survivor has a reward type active.
12861337
*
@@ -1368,6 +1419,13 @@ native int MT_GetGlowRange(int tank, bool mode);
13681419
**/
13691420
native int MT_GetGlowType(int tank);
13701421
1422+
/**
1423+
* Returns the current graphics level.
1424+
*
1425+
* @return The current graphics level.
1426+
**/
1427+
native int MT_GetGraphicsLevel();
1428+
13711429
/**
13721430
* Returns the current immunity flags set by the core plugin.
13731431
*
@@ -1670,10 +1728,11 @@ native void MT_ShoveBySurvivor(int player, int survivor, float direction[3]);
16701728
*
16711729
* @param tank Client index of the Tank.
16721730
* @param type Mutant Tank type.
1731+
* @param specType Special Infected type.
16731732
*
16741733
* @error Invalid client index, client is not in-game, or type is 0 or less.
16751734
**/
1676-
native void MT_SpawnTank(int tank, int type);
1735+
native void MT_SpawnTank(int tank, int type, int specType = 0);
16771736
16781737
/**
16791738
* Staggers a player from a certain direction.
@@ -2581,7 +2640,7 @@ Whatever each button activates is entirely up to your configuration settings.
25812640

25822641
4. How do I change the buttons or add extra buttons?
25832642

2584-
Edit lines `104-107` of the `mutant_tanks.inc` file and recompile each ability plugin.
2643+
Edit lines `107-110` of the `mutant_tanks.inc` file and recompile each ability plugin.
25852644
</details>
25862645
<details>
25872646
<summary>Question 5</summary>
@@ -2659,7 +2718,7 @@ That setting is a special mode setting for players, which can determine how some
26592718

26602719
10. Is there any way players can view information about this feature in-game?
26612720

2662-
Yes, use the `sm_mt_ability`/`sm_mt_ability2` commands.
2721+
Yes, use the `sm_mt_ability` command.
26632722

26642723
The commands will each provide a menu that players can use to display certain information in chat.
26652724

@@ -2753,7 +2812,7 @@ Set the values in `Execute Config Types`.
27532812

27542813
**honorcode23** - For the [[L4D & L4D2] New Custom Commands](https://forums.alliedmods.net/showthread.php?t=133475) plugin.
27552814

2756-
**panxiaohai** - For the [[L4D & L4D2] We Can Not Survive Alone](https://forums.alliedmods.net/showthread.php?t=167389), [[L4D & L4D2] Melee Weapon Tank](https://forums.alliedmods.net/showthread.php?t=166356), [[L4D & L4D2] Tank's Power](https://forums.alliedmods.net/showthread.php?t=134537), and [[L4D & L4D2] Automatic Robot](https://forums.alliedmods.net/showthread.php?t=130177) plugins.
2815+
**panxiaohai** - For the [[L4D & L4D2] We Can Not Survive Alone](https://forums.alliedmods.net/showthread.php?t=167389), [[L4D & L4D2] Melee Weapon Tank](https://forums.alliedmods.net/showthread.php?t=166356), [[L4D & L4D2] Tank's Power](https://forums.alliedmods.net/showthread.php?t=134537), [[L4D & L4D2] Automatic Robot](https://forums.alliedmods.net/showthread.php?t=130177), and [[L4D2] Variable Size Of Infected and Witch](https://forums.alliedmods.net/showthread.php?t=165905) plugins.
27572816

27582817
**strontiumdog** - For the [[ANY] Evil Admin: Mirror Damage](https://forums.alliedmods.net/showthread.php?t=79321), [[ANY] Evil Admin: Pimp Slap](https://forums.alliedmods.net/showthread.php?t=79322), [[ANY] Evil Admin: Rocket](https://forums.alliedmods.net/showthread.php?t=79617), and [Evil Admin: Vision](https://forums.alliedmods.net/showthread.php?t=79324) plugins.
27592818

@@ -2843,7 +2902,7 @@ Set the values in `Execute Config Types`.
28432902

28442903
**Princess LadyRain, Nekrob, fig101, BloodyBlade, user2000, MedicDTI, ben12398, AK978, ricksfishin, Voevoda, ur5efj, What, moekai, weffer, AlexAlcala, ddd123, GL_INS, Slaven555, Neki93, kot4404, KadabraZz, Krufftys Killers, thewintersoldier97, Balloons, George Rex, swofleswof, bedildewo, Dudus1st** - For reporting issues.
28452904

2846-
**Electr000999, foquaxticity, foxhound27, sxslmk, FatalOE71, zaviier, RDiver, BHaType, HarryPotter, jeremyvillanueva, DonProof, XXrevoltadoXX, XYZC, JustMadMan, DARG367, zonbarbar, Unfellowed** - For suggesting ideas.
2905+
**Electr000999, foquaxticity, foxhound27, sxslmk, FatalOE71, zaviier, RDiver, BHaType, HarryPotter, jeremyvillanueva, DonProof, XXrevoltadoXX, XYZC, JustMadMan, DARG367, zonbarbar, Unfellowed, maclarens** - For suggesting ideas.
28472906

28482907
**Marttt** - For helping with many things and the pull requests.
28492908

0 commit comments

Comments
 (0)