Fixed a bug introduced in 2.1.2 that wouldn't automatically enable the mapvote the very first game due to dvars initialization time. The mapvote is now properly enabled by default on all games
Added the ability to find players by typing a part of their name (starting from the beginning of their names) instead of having to type their full names all the time.
For example to kill Resxt you can now just type !kill res
If there is a player named Resxt and another named Resxtola then typing !kill resxt will kill Resxt because we got an exact match. If you type !kill Resx it won't kill anyone because there are two potential players found so we can't be sure who the command should be run on. If you type !kill Resxto it will kill Resxtola
The mapvote is now enabled by default (mapvote_enable set to 1 by default instead of 0)
The default rotation system now has an additional dvar dedicated to enabling/disabling it, it no longer relies on the player count dvar to be enabled or disabled which allows it to work with the min and max dvars set to 0 (only rotate the default rotation if there's no human player)
Fix commands not working on dedicated servers
The newly added ExecuteCommand function already exists (on dedicated servers only) and therefore it was always called the game's function instead of the chat commands function.
Simply renaming them to a more specific name fixed the issue
Added an alias system so that a command can be called with different names.
The alias commands respects the permission system and can be used seemingly with the help and alias command.
The commands command still only lists the original/full command name, it doesn't list aliases
CreateCommand now has an addition argument commands can use: commandAliases
Added a new !alias or !aliases command
With these commands you can get the available alias(es) of a command by its original name or one of its alias
For example !alias god or !alias godmode
Some refactor to make the ChatListener function easier to read along with some comments to separate each command logic (built-in commands and "any other command")
Added CommandAliasesDoesNotExistError
Added GetCommandNameFromAlias util function
Fixed some wrong attachments being listed. For example pistol would list "silencer_shotgun" when the expected name is "silencer". Now all listed attachments only contain the content before the first underscore, which works.
Added print of the attachments to the console if the debug mode is on
Fixed weapon not given to the proper player in some scenarios
Fixed player not switching to the weapon automatically in some scenarios
Fixed multiple attachments not working
Only create variables for the port currently in-use
For example: there's no need to create level.chat_commands["4977"] if the currently used port is 4976. This simply adds a bunch of variables and child variables for no reason, this was a flawed implementation that create an array per port on every server. Now it will only create an array for its own port as expected
Removed 3074 from the default ports
This port is not actively used by net_port, this was just a misunderstanding on my part
Added instructions to make zombies++ and the ZM mapvote work together
Zombies++ overrides end game stuff so it conflicted with the ZM mapvote making it no work properly
This is a port of my MW3 chat_commands script (version 1.3.2)
ba1322b933
The array declarations such as array = ["value"] were changed to use the array function
The tell function (player chat) was changed IPrintLnBold. More explanation in the README
Support for clantags was added. Clantags were changing the player's name which would then make the script fail to find the player when typing his name. This has been tested and fixed. More explanation in the README
Errors and util functions related to camo were removed. The way camo works seems to be really different than MW3 so work is required to implement these again
Just a refactor that doesn't affect any script or add anything new.
Plutonium T6 now supports loading source scripts so compiling them isn't needed anymore
https://plutonium.pw/docs/changelog/#r3408
[Refactor]
Removed all compiled scripts
Moved all source scripts to the main folder instead of a source folder
Renamed all source scripts to remove the source tag at the end
Removed notions of compiled and source scripts in the repository's README