Welcome to the SoMoE-19 documentation!
Credits
This version of SoMoE-19 is just an edited version of Marco Boogers original Soccermod. I (MK99MA) merely edited his plugin by adding stuff I thought to be useful or fixing parts that were not working as intended. This version of his plugin is also strictly limited to Counter-Strike: Source and unlike his version does not work for Counter-Strike Global Offensive.
Since I started working on my own version without any prior knowledge in SourcePawn the code might be messy and improvable, but for now I merely attempted to provide a functional release.
Some of the functions added to the plugin are based on or incorporated from other plugins:
Soccermod by Marco Boogers
Duckjump block script by Marco Boogers
Allchat (aka DeadChat) by Frenzzy
ShortSprint by walmar
Simple AFK kicker by shavit
Updater by GoD-Tony
Advanced MotD include by Dr. McKay
More Colors include by Dr. McKay
SteamWorks extension & include by KyleS
Other credits:
Original Soccermod player models by Termiii
Various members of the european soccer community for their ideas and help with tests
Features
This is a rough list of features included in SoMoE-19.
Main Features
Match mode
Start, Stop, Pause, Unpause a Match
Customizable match settings
Period length
Break length
Golden goal toggle
Optional and customizable forfeit votes
Match event logging
Score control
Cap fight
Option to move all players to spec
Option to force random players into the teams
Positions menu to inform the picking caps about your preferred positions
Spec only “position” for people who can’t play right now but might want to watch the game
Serverlock to prevent newly joining players from stealing positions in the cap
Training options
Global & personal ball cannons
Spawnable additional balls
Enabling and disabling of goal triggers
Real-life orientated punishments (Yellow / Red card)
Customizable Sprint
Duration, cooldown, speed, autobind to +use
Clientsided selection of sprinting indicators:
Sound
Message
Timer (customizable position & color)
Defuse bar
Skins set by the plugin & changeable ingame (as long as they are defined in the config)
Download handling according to a config file
Switchable access modes (Admin only, Limited, Public)
Score and Stats tracking with ranking system
Wide range of commands to quickly access certain features
- f.ex.:
!maprr to quickly reload the current map
!matchrr to quickly restart the current match
Almost every setting can be changed from within the game
Automatically generated configuration files
Updater support to automatically install the latest version
Additional Features
Ingame admin management
Distinct “admin” system only granting access to the plugins features
Customizable plugin messages
Miscellaneous Utility functions:
Connecting order list with customizable “rr” tolerance (including auto-updates whenever a player joins / leaves)
Admin online list
Toggleable damage sounds
Toggleable class selection screen
Toggleable Duckjump prevention
Toggleable and customizable Deadchat
AFK-Kick function while serverlock is active
Toggleable readychecks if the game is paused
Toggleable loading of per map defaults
Switchable ragdoll handling options
Informative options
Customizable match settings message at the start of a match
Changeable teamnames (permanent & per match)
Toggleable Gamestatus updates in the servername
Gamename change to CS:S SoccerMod - requires Steamworks
Toggleable MVP messages & stars
Ingame commands list & help
Note
The above list might be incomplete.
Installing SoMoE-19
Pre-requirements
SoMoE-19 is a Sourcemod plugin, so make sure to install Sourcemod and its pre-requirements for your OS properly.
- As such the pre-requirements are:
Metamod:Source 1.10 or higher
SourceMod 1.10 or higher
(OPTIONAL) Steamworks
(OPTIONAL) Updater.smx
The installation of Steamworks and Updater.smx is completely optional but recommended to be able to use all of the included features.
Tip
If you installed SourceMod plugins before you can probably skip most of this section.
Preparing Metamod: Source & SourceMod
First find out the OS your server is running on. Usually many gameservers are running on Linux machines, but there are exceptions.
If you can’t find any information about the OS used on the webpage of your hoster you can find out the OS by the types of certain files on the server.
.so binaries indicate it is running on Linux.
.dll binaries indicate it is running on Windows.
- After you have determined the OS download the release for your OS of
Extract the contents of both of the archives by using a tool like 7-zip or WinRar to a location of your choice.
Either continue with the (OPTIONAL) Preparing SteamWorks & Updater.smx or Preparing SoMoE-19.
(OPTIONAL) Preparing SteamWorks & Updater.smx
- 2 features of SoMoe-19 require you to install additional tools in order to use them:
Setting the game name in the serverlist to “CS:S Soccer Mod”
Automatic Updater functionality
- Both of these options depend on Steamworks, so if you want to use either one please visit
and downlod the version for your OS.
After downloading the archive, extract the contents of the archive to the same location you already extracted Metamod and Sourcemod to.
- If you want to activate the auto-update functionality you also have to download ‘Updater.smx’ from:
In the location where you extracted the archives from before should be a folder called ‘addons’. Place the downloaded .smx file in:
addons/sourcemod/plugins/
Now you can finally move on to SoMoE-19.
Preparing SoMoE-19
- If you did not install SoMoe-19 before please download the latest full archive from here:
- I do not create a full release for every subversion, so if you are not using Updater.smx also check if there is already a newer version found here:
Again extract the contents of the archive to the location you chose before.
- Usually SoccerMod Servers are using soccer related skins. A few possible skins can be found here:
The most commonly used and default ones are those created by Termi
Please note that SoMoE-19 generates a config for the skins created by Termi and thus every other chosen skin has to be added to the skins and download config files manually. More information about the relevant files can be found here <config_skins> and here <config_downloads>.
After downloading the skins of your choice again extract them to the same location as everything else. You can now proceed with the last step of the installation.
Tip
If it’s the first time you’re using SoMoE-19, you should check out the other sections of this documentation too.
Installing the prepared files
- If you downloaded and extracted everything required, you should now have 5 folders in the location you chose.
addons
cfg
materials
models
sound
Attention
To avoid alot of chat spam you might want to edit addons/sourcemod/config/core.cfg and set ‘!’ as a silent chat trigger. You can either simply swap the silent and public triggers or add ‘!’ to the silent trigger-list.
If you are running your server locally copy those folders to:
<path-to-your-server>\cstrike
else, if it is running on a hosted server upload the files to:
/home/cstrike
If the upload of the 2 .exe files in sourcemod/scripting fails, you do not have to mind them, since they’re only used when you’re actually (re-)compiling a plugin.
Attention
The installation will be completed after you restarted your server.
General Information
SoMoE-19 creates different config files at its first start or whenever one of those files is missing. Overal there are 11 files that are generated and found in
cstrike/cfg/sm_soccermod
whereas 3 of them are only used to store information and should not be edited manually.
- Most other files can be edited manually, but only
soccer_mod_GKAreas.cfg
soccer_mod_mapdefaults.cfg
soccer_mod_skins.cfg
soccer_mod_downloads.cfg
have to be edited by opening them with a text-editor of your choice.
Every other file is editable ingame.
List of generated files
Tip
Every file got its own site in this documentation. Make sure to check them out if you’re having issues!
soccer_mod.cfg
General Information
soccer_mod.cfg is the main config file for SoMoE-19 and is used to save your settings for almost every part of the plugin. Almost all of the settings can be changed ingame and a manual edit is usually not necessary.
It is divided into different sections for different aspects of the plugin
whereas the titles should be pretty self-explanatory. Below you will find more information about each of the sections and its settings.
soccer_mod.cfg Sections
Admin Settings
As the name suggests this section features settings that only admins can change ingame.
"Admin Settings" { "soccer_mod_pubmode" "1" "soccer_mod_passwordlock" "1" "soccer_mod_passwordlock_max" "12" "soccer_mod_afk_time" "100.000000" "soccer_mod_afk_menu" "20" "soccer_mod_matchlog" "0" }
Attention
Every key in this section is changeable ingame, so there is no need to edit them manually.
soccer_mod_pubmode controls the accessability of the admin portion of the menu (Allowed values: 0 - Admin only, 1 - Public Cap/Match access, 2 - Public menu).
soccer_mod_passwordlock controls the automatic serverlock when a cap is started (Allowed values: 0 - Off, 1 - On).
soccer_mod_passwordlock_max controls the number of players that has to be reached before the lock takes effect.
soccer_mod_afk_time controls the number of seconds before AFK players see the AFK-Kick captcha menu.
soccer_mod_afk_menu controls the number of seconds the captcha menu is displayed
soccer_mod_matchlog controls whether SoMoE-19 should keep track of game events in a log file(Allowed values: 0 - Off, 1 - On).
Chat Settings
As the name suggests, this section features settings related to the plugins chat messages.
"Chat Settings" { "soccer_mod_prefix" "Soccer Mod" "soccer_mod_textcolor" "lightgreen" "soccer_mod_prefixcolor" "green" "soccer_mod_mvp" "1" "soccer_mod_deadchat_mode" "0" "soccer_mod_deadchat_visibility" "0" }
Attention
Every key in this section is changeable ingame, so there is no need to edit them manually. In case of the colorselection it is even advised to do this ingame as you can access a menu with every valid colorname there.
soccer_mod_prefix controls the prefix every plugin related chatmessage will display. The given value will always be enclosed by brackets “[Soccer Mod]”.
soccer_mod_textcolor controls the color of the text of every plugin related chatmessage. There are exceptions where this is not the case.
soccer_mod_prefixcolor controls the color of the prefix for every plugin related chatmessage. Above mentioned exceptions may show the full message in the prefixcolor.
soccer_mod_mvp controls whether SoMoE-19 will display messages about MVPs in the chat (Allowed values: 0 - Off, 1 - On).
soccer_mod_deadchat_mode controls whether messages written by dead players or spectators are visible to everyone (Allowed values: 0 - Off, 1 - On, 2 - On, if sv_alltalk 1).
soccer_mod_deadchat_visibility controls who can see the messages written by dead players or spectators (Allowed values: 0 - Default, 1 - Teammates only, 2 - Everyone).
Match Settings
As the name suggests, this section features settings related to matches.
"Match Settings" { "soccer_mod_match_periods" "2" "soccer_mod_match_period_length" "900" "soccer_mod_match_period_break_length" "60" "soccer_mod_match_golden_goal" "1" "soccer_mod_teamnamect" "CT" "soccer_mod_teamnamet" "T" "soccer_mod_match_readycheck" "1" }
Attention
Every key in this section is changeable ingame, so there is no need to edit them manually.
soccer_mod_match_periods controls the number of periods a match will consist of.
soccer_mod_match_period_length controls the number of seconds a match period will take.
soccer_mod_match_period_break_length controls the number of seconds the break between periods will take.
soccer_mod_match_golden_goal controls whether a draw after the full time will result in a golden goal.
soccer_mod_teamnamect controls the CT teams name shown in messages.
soccer_mod_teamnamet controls the T teams name shown in messages.
soccer_mod_match_readycheck controls whether pausing the game will require every player to set their state to ready before unpausing the game is possible (Allowed values: 0 - Off, 1 - Automatic unpause if everyone is ready, 2 - Manual unpause is possible as soon as everyone is ready).
Match Info
As the name suggests, this section features settings related to the match info message when a match is started.
"Match Info" { "soccer_mod_period_info" "1" "soccer_mod_break_info" "1" "soccer_mod_golden_info" "1" "soccer_mod_forfeit_info" "1" "soccer_mod_forfeitset_info" "0" "soccer_mod_matchlog_info" "0" }
Attention
- Every key in this section is changeable ingame, so there is no need to edit them manually.
Each value can either be 0 - Off or 1 - On.
soccer_mod_period_info controls the display of the period length in the message.
soccer_mod_break_info controls the display of the break length in the message.
soccer_mod_golden_info controls the display of the golden goal toggle in the message.
soccer_mod_forfeit_info controls the display of the forfeit vote toggle in the message.
soccer_mod_forfeitset_info controls the display of the forfeit settings in the message.
soccer_mod_matchlog_info controls the display of the matchlog toggle in the message.
Forfeit Settings
As the name suggests, this section features settings related to the toggle-able forfeit vote.
"Forfeit Settings" { "soccer_mod_forfeitvote" "0" "soccer_mod_forfeitscore" "8" "soccer_mod_forfeitpublic" "0" "soccer_mod_forfeitautospec" "0" "soccer_mod_forfeitcapmode" "0" }
Attention
Every key in this section is changeable ingame, so there is no need to edit them manually.
soccer_mod_forfeitvote controls whether the forfeit vote is enabled.
soccer_mod_forfeitscore controls the number of goals one teams has to be in front before a vote is possible.
soccer_mod_forfeitpublic controls who is allowed to start a vote (Allowed values: 0 - Admins, 1 - Everyone).
soccer_mod_forfeitautospec controls if all players should be automatically put to spectator after a successful vote.
soccer_mod_forfeitcapmode controls whether a vote is only possible during cap matches.
Misc Settings
This section features miscellaneous settings that do not fit into any of the other sections.
"Misc Settings" { "soccer_mod_health_godmode" "1" "soccer_mod_respawn_delay" "10.000000" "soccer_mod_blockdj_enable" "1" "soccer_mod_blockdj_time" "0.45" "soccer_mod_kickoffwall" "0" "soccer_mod_damagesounds" "0" "soccer_mod_dissolver" "2" "soccer_mod_joinclass" "0" "soccer_mod_hostname" "1" "soccer_mod_rrchecktime" "90.0" "soccer_mod_loaddefaults" "1" "soccer_mod_killfeed" "0" "soccer_mod_celebrate" "0" "soccer_mod_first12" "0" "soccer_mod_otcount" "1" "soccer_mod_otfinal" "1" "soccer_mod_otsound1" "buttons/bell1.wav" "soccer_mod_otsound2" "ambient/misc/brass_bell_f.wav" }
Attention
Most keys in this section are changeable ingame. Exceptions are soccer_mod_health_godmode and soccer_mod_respawn_delay which usually should not be changed at all.
soccer_mod_health_godmode controls whether players can kill each other with the ball or knives.
soccer_mod_respawn_delay controls the number of seconds it takes before a player respawns (after joining a running game or if he used the kill-command).
soccer_mod_blockdj_enable controls whether duckjumps should be suppressed.
soccer_mod_blockdj_time controls after what timeframe ducking should be reallowed in the NEW mode.
soccer_mod_damagesounds controls whether the sound playing when a player is hit by the ball should be played or not. (Allowed values: 0 - No sound, 1 - Play sound).
soccer_mod_dissolver controls what happens to a players corpse (Allowed values: 0 - Default ragdoll, 1 - Remove ragdoll, 2 - Dissolve animation).
soccer_mod_joinclass controls whether players should see the class selection screen after joining a team.
soccer_mod_hostname controls whether SoMoE-19 should update the servers name under certain conditions (Cap started, Match running etc.)
soccer_mod_rrchecktime controls the number of seconds a player got to rejoin the server before it won’t be considered a “rr” in the connection list.
soccer_mod_loaddefaults controls whether SoMoE-19 should load default mapvalues in its soccer_mod_mapdefaults.cfg file.
soccer_mod_killfeed controls whether SoMoE-19 will block or allow the killfeed messages in the upper right corner.
soccer_mod_celebrate controls whether alive players will receive weapons after scoring a goal. Alive players will be able to hurt each other in this mode.
soccer_mod_first12 controls if players in slot 13 and following are pickable by caps.
soccer_mod_otcount controls the type of overtime countdown. (Allowed values: 0 - Off, 1 - On, 2 - Sound only, 3 - Text only).
soccer_mod_otfinal controls if a sound is played when the overtime countdown ends. (Allowed values: 0 - Off, 1 - On).
soccer_mod_otsound1 sets the sound used for the countdown.
soccer_mod_otsound2 sets the sound used for the end of the countdown and should use a different sound.
(https://github.com/sourcesounds/cstrike/tree/master/sound the sounds listed here should all work, except for sounds found in the ‘ui’ folder. Also any custom added sound can be used)
Sprint Settings
As the name suggests, this section features settings related to the sprint system.
"Sprint Settings" { "soccer_mod_sprint_enable" "1" "soccer_mod_sprint_speed" "1.250000" "soccer_mod_sprint_time" "3.000000" "soccer_mod_sprint_cooldown" "7.500000" "soccer_mod_sprint_button" "1" }
Attention
These keys are not changeable ingame. If you want to change its settings you have to manually edit this file. However most people should be used to these settings so changes are not advised.
soccer_mod_sprint_enable controls whether players are able to sprint at all.
soccer_mod_sprint_speed controls the players speed while sprint is active.
soccer_mod_sprint_time controls the time a player will sprint.
soccer_mod_sprint_cooldown controls the time before a player will be able to sprint again.
soccer_mod_sprint_button controls whether players will be able to sprint by using the +use button. This does not affect !sprint at all.
Current Skins
As the name suggests, this sections features the currently active skins.
"Current Skins" { "soccer_mod_skins_model_ct" "models/player/soccer_mod/termi/2011/away/ct_urban.mdl" "soccer_mod_skins_model_t" "models/player/soccer_mod/termi/2011/home/ct_urban.mdl" "soccer_mod_skins_model_ct_gk" "models/player/soccer_mod/termi/2011/gkaway/ct_urban.mdl" "soccer_mod_skins_model_t_gk" "models/player/soccer_mod/termi/2011/gkhome/ct_urban.mdl" }
Attention
These keys are changeable ingame and depend on the contents of your soccer_mod_skins.cfg file.
Each key determines the skin to use for either CT or T. It is also possible to set an individual Goalkeeper skin for both teams.
Stats Settings
As the name suggests, this section features settings related to the stats system.
"Stats Settings" { "soccer_mod_ranking_points_goal" "17" "soccer_mod_ranking_points_assist" "12" "soccer_mod_ranking_points_own_goal" "-10" "soccer_mod_ranking_points_hit" "1" "soccer_mod_ranking_points_pass" "5" "soccer_mod_ranking_points_interception" "3" "soccer_mod_ranking_points_ball_loss" "-3" "soccer_mod_ranking_points_save" "6" "soccer_mod_ranking_points_round_won" "10" "soccer_mod_ranking_points_round_lost" "-10" "soccer_mod_ranking_points_mvp" "15" "soccer_mod_ranking_points_motm" "25" "soccer_mod_ranking_cdtime" "300" "soccer_mod_gksaves_only" "0" "soccer_mod_rankmode" "0" }
Attention
These keys are not changeable ingame. If you want to change its settings you have to manually edit this file. The default values were not thoroughly tested, so feel free to adjust them to your needs if needed.
Each key determines the number of points a player will receive when performing the given action. soccer_mod_ranking_points_save does require you to setup Goalkeeper Areas for every map in soccer_mod_GKAreas.cfg.
soccer_mod_ranking_cdtime controls the number of seconds players have to wait between using the !rank command.
soccer_mod_gksaves_only controls whether gk skin users are the only ones able to earn saves. If no player of the team is using the gk skin everyone of the team is able to earn saves inside the gk area.
soccer_mod_rankmode controls the ranking method (0 - pts/matches, 1 - pts/rounds, 2 - pts).
Training Settings
As the name suggests, this section features settings related to the stats system.
"Training Settings" { "soccer_mod_training_model_ball" "models/soccer_mod/ball_2011.mdl" "soccer_mod_training_advpwreq" "0" "soccer_mod_training_advpw" "" "soccer_mod_training_advresettime "2.0" }
Attention
These ballmodel key is not changeable ingame. If you want to change its settings you have to manually edit this file.
soccer_mod_training_model_ball controls which model should be used for the spawnable training ball.
soccer_mod_training_advpwreq controls whether the Advanced Training Menu requires a password to access it or not.
soccer_mod_training_advpw controls the password if the above setting is active.
soccer_mod_training_advresettime controls the time in seconds before a ball will autorespawn during the goaltarget training (if enabled).
Debug Settings
As the name suggests, this section features debug settings.
"Debug Settings" { "soccer_mod_debug" "0" "soccer_mod_scoredebug" "0" }
Attention
These keys are not changeable ingame. If you want to change its settings you have to manually edit this file.
soccer_mod_debug controls whether debug mode is enabled or disabled. You should not need this option at all.
soccer_mod_scoredebug controls whether a ‘light’ debug mode is enabled or disabled. This option could help finding out what is causing the ‘scorer-bug’, but should not be needed usually.
soccer_mod_admins.cfg
soccer_mod_admins.cfg is the config storing so-called “SoccerMod Admins”. SoMoE-19 uses both, Sourcemod admins as well as it’s own admin file to determine which player can access which aspects of the plugin.
Attention
SoccerMod Admins are supposed to be added ingame. It is possible to edit the file manually, but theres no real need to do so.
The structure of the file looks like this:
"Admins" { "[U:0:0]" { "name" "Playername" "modules" { "match" "1" "cap" "1" "training" "1" "referee" "1" "spec" "1" "mapchange" "1" } } "[U:0:0]" { "name" "OtherPlayername" "modules" { "match" "0" "cap" "1" "training" "0" "referee" "1" "spec" "0" "mapchange" "1" } } }
A module set to 1 is accessible by the player with the given steamid, modules set to 0 are not. There is also no limitation regarding the number of added players.
soccer_mod_allowed_maps.cfg
soccer_mod_allowed_maps.cfg is the config storing a list of maps. If the plugin detects that the currently running map is listed in this config, all aspects of SoMoE-19 will be usable. If you notice that certain parts of the plugin are not working, make sure to check if the currently running map allows SoMoE-19. In addition to that, every map listed in this file will be added to the mapchange menu of SoMoE-19.
Attention
You can add any map the plugin can find on the server to the file using an ingame menu.
soccer_mod_downloads.cfg
soccer_mod_downloads.cfg is a config determining which subdirectories and files a client should download when joining the server. Usually you want to add every skin / model you intend to use in here but also sounds or other materials.
Attention
You have to manually edit this file!
Each line of the file has to start with soccer_mod_downloads_add_dir followed by a path. The easiest setup regarding skins would be:
soccer_mod_downloads_add_dir materials\models\player soccer_mod_downloads_add_dir models\player
This however adds EVERY file found in the player folder (and its subdirectories) to the downloadlist. So if you added 10 models to your server a player joining would have to download each of those skins first (unless he already downloaded some of them elsewhere before):
Hence it is better to only add relevant folders to the list, like this:
//adds every file & subfolder in the termi folder soccer_mod_downloads_add_dir materials\models\player\soccer_mod\termi soccer_mod_downloads_add_dir models\player\soccer_mod\termi //adds the trainingball model to the list soccer_mod_downloads_add_dir materials\models\soccer_mod soccer_mod_downloads_add_dir models\soccer_mod //adds every file & subfolder in the psl folder soccer_mod_downloads_add_dir materials\models\player\psl soccer_mod_downloads_add_dir models\player\psl
With the above setup a skin which is located in
models\player\tusharsl materials\models\player\tusharsl
as well as its contents would not be added to the downloadlist.
Generally speaking: The more precise the given path is, the less “unnecessary” files your players will have to download.
soccer_mod_GKAreas.cfg
soccer_mod_GKAreas.cfg is the config storing the coordinates spanning the box in which players will be able to receive points for saves. Ideally this box should be in front of the goals and not too small or too big.
An area that is too small could prevent the goalkeepers from receiving deserved saves, an area that is too big could reward defensive players with saves for regular interceptions. The coordinates provided in the generated configuration file are the same size as the 5m-boxes / 6yd-boxes in front of the goals and as high as the goals..
Attention
Starting with version 1.2.8 it is possible to set the areas from within the game. You can still edit the file manually, as it is possible that different maps will use the same coordinates if the creator used the same map as a template.
You can use cl_drawpos 1 to display the coordinates of your current position.
The file, in case it wasn’t generated properly should look like this:
"gk_areas" { "ka_soccer_xsl_stadium_b1" { "ct_min_x" "-313" "ct_max_x" "313" "ct_min_y" "-1379" "ct_max_y" "-1188" "ct_min_z" "0" "ct_max_z" "120" "t_min_x" "-313" "t_max_x" "313" "t_min_y" "1188" "t_max_y" "1379" "t_min_z" "0" "t_max_z" "120" } "ka_soccer_avalon_v8" { "ct_min_x" "-313" "ct_max_x" "313" "ct_min_y" "-1379" "ct_max_y" "-1188" "ct_min_z" "0" "ct_max_z" "120" "t_min_x" "-313" "t_max_x" "313" "t_min_y" "1188" "t_max_y" "1379" "t_min_z" "0" "t_max_z" "120" } }
Other known setups:
"gk_areas" { "ka_soccer_comp_2020_final_v1_fix" { "ct_min_x" "-313" "ct_max_x" "313" "ct_min_y" "-1379" "ct_max_y" "-1188" "ct_min_z" "0" "ct_max_z" "120" "t_min_x" "-313" "t_max_x" "313" "t_min_y" "1188" "t_max_y" "1379" "t_min_z" "0" "t_max_z" "120" } }
soccer_mod_last_match.txt
soccer_mod_last_match.txt isn’t a config file and should not be edited manually! Doing so does not do any harm, but the only thing this would achive would be a manipulation of the ingame display of the matchlog. In addition to that a new file will be generated as soon as a new match is started, while the old log will be moved to:
cfg/sm_soccermod/logs
An example matchlog could look like this:
"Match Log" { "CT_vs_T" { "CT" "CT" "T" "T" } "Scoresheet" { "0:1" { "Time:" "00:01" "Scorer:" "Player [U:X:XXXXXXXX]" } "0:2" { "Time:" "00:04" "Scorer:" "Playerr [U:X:XXXXXXXX]" } "0:3" { "Time:" "00:19" "Scorer:" "Playerr [U:X:XXXXXXXX]" } "0:4" { "Time:" "00:51" "Scorer:" "Player [U:X:XXXXXXXX]" } } "Playerstats" { "[U:X:XXXXXXXX]" { "Name:" "Player" "Goals:" "4" "Assists:" "0" "Owngoals:" "0" "Other Names:" "Player | Playerr" } } "Cards" { "00:14" { "Card:" "Yellow Card" "Player:" "Playerr" } } }
soccer_mod_mapdefaults.cfg
soccer_mod_mapdefaults.cfg is the config storing your per-map default values.
Attention
Except for the generated entry you have to manually add the entries for any map you intend to use.
At the time of writing this documentation there are 3 supported values:
default_periodlength
default_breaklength
default_periods
It is also used to store disabled mapsounds. While the ingame menu only allows the handling of “ambient_generic” sounds, manual addition should allow other type of entities too. The “removed sounds” section is also independent from the mapdefaults setting and will always be used.
The structure of the file should look like this:
"Map Defaults" { "ka_soccer_xsl_stadium_b1" { "default_periodlength" "900" "default_breaklength" "5" "default_periods" "2" { "removed sounds" { "soundname" { "type" "ambient_generic" } } } } "ka_soccer_avalon_v8" { "default_periods" "3" } }
As you can see you don’t have to add all 3 values to a newly added entry. Only the one you actually want to set is required.
soccer_mod_personalcannonsettings.cfg
soccer_mod_personalcannonsettings.cfg is the config storing the personal cannon settings for everyone playing on your server.
Attention
To make sure that nothing breaks I recommend to never manually edit this file as it is only intended as storage.
The structure of the file should look like this:
"Personal Cannon Settings" { "[U:0:0]" { "randomness" "50.000000" "fire_rate" "1.500000" "power" "10000.000000" } "[U:0:0]" { "randomness" "0.000000" "fire_rate" "1.500000" "power" "5000.000000" } "[U:0:0]" { "randomness" "30.000000" "fire_rate" "2.500000" "power" "10000.000000" } }
soccer_mod_skins.cfg
soccer_mod_skins.cfg is the config storing every skin you want to use ingame. While only 2 skins per team (normal + gk) can be active at a time, you can freely switch between any skins declared inside this file.
Attention
This has to be done manually for every skin you intend to use!
The generated file comes with support for Termi’s skins, which are considered the default soccer skins.
An example configuration adding support for 4 additional skinssets could look like this:
"Skins" { "Termi" { "CT" "models/player/soccer_mod/termi/2011/away/ct_urban.mdl" "T" "models/player/soccer_mod/termi/2011/home/ct_urban.mdl" "CTGK" "models/player/soccer_mod/termi/2011/gkaway/ct_urban.mdl" "TGK" "models/player/soccer_mod/termi/2011/gkhome/ct_urban.mdl" } "PSL" { "CT" "models/player/psl/public2014/ct/aus_neill.mdl" "T" "models/player/psl/public2014/t/aus_neill.mdl" "CTGK" "models/player/psl/public2014/gk/ct/aus_neill.mdl" "TGK" "models/player/psl/public2014/gk/t/aus_neill.mdl" } "Natsu" { "CT" "models/player/soccer_mod/natsu2021/away/ct_urban.mdl" "T" "models/player/soccer_mod/natsu2021/home/ct_urban.mdl" "CTGK" "models/player/soccer_mod/natsu2021/gkaway/ct_urban.mdl" "TGK" "models/player/soccer_mod/natsu2021/gkhome/ct_urban.mdl" } "teamukr" { "CT" "models/player/tusharsl/teamukr/ct_urban.mdl" "T" "models/player/tusharsl/teamukr/ct_urban.mdl" } "teamrus" { "CT" "models/player/tusharsl/teamrus/ct_urban.mdl" "T" "models/player/tusharsl/teamrus/ct_urban.mdl" } }
As you can see teamrus and teamukr could be assigned to both teams (which you would not want to do at the same time for obvious reasons). The other 3 sets are complete sets providing 2 skins per team. Ingame however you would be still able to use this example setup:
"CT" "models/player/soccer_mod/termi/2011/away/ct_urban.mdl" "T" "models/player/tusharsl/teamrus/ct_urban.mdl" "CTGK" "models/player/soccer_mod/natsu2021/gkaway/ct_urban.mdl" "TGK" "models/player/psl/public2014/gk/t/aus_neill.mdl"
As you can see this file only determines which skins are choosable ingame and in which sub-menu (the sectionname) they are listed.
soccer_mod_cap_positions.txt
soccer_mod_positions.txt isn’t a config file and should not be edited manually! Doing so does not much harm, but the file is only intended to store the position values of your players. In addition to that the plugin reads those values from this file to add the selected positions of each player behind their name in the cap pick-menu.
The structure of the file should look like this:
"capPositions" { "[U:0:0]" { "gk" "0" } "[U:0:0]" { "gk" "1" "lb" "1" "rb" "1" "mf" "1" "lw" "1" "spec" "1" } "[U:0:0]" { "spec" "0" "gk" "1" "lb" "1" "lw" "1" "mf" "1" } }
soccer_mod_matchlogsettings.cfg
soccer_mod_matchlogsettings.cfg is a config storing settings to determine when SoMoE-19 should automatically turn on its matchlog feature.
Attention
These settings can be changed ingame. Editing them manually should be fine too.
The structure of the file looks like this:
"Matchlog Settings" { "Days" { "Monday" "1" "Tuesday" "1" "Wednesday" "1" "Thursday" "1" "Friday" "1" "Saturday" "1" "Sunday" "1" } "Starttime" { "Hour" "8" "Minute" "20" } "Stoptime" { "Hour" "9" "Minute" "20" } }
The Days section determines the days on which the plugin should enable the matchlog option starting with the time given in the Starttime section. The Stoptime section is obviously used to disable the feature at a given time again. There is no individual setting per day, so a configuration like this
"Matchlog Settings" { "Days" { "Monday" "0" "Tuesday" "0" "Wednesday" "0" "Thursday" "0" "Friday" "0" "Saturday" "1" "Sunday" "1" } "Starttime" { "Hour" "18" "Minute" "0" } "Stoptime" { "Hour" "22" "Minute" "0" } }
would enable the matchlog generation every saturday and sunday between 6 pm and 10 pm.
soccer_mod_replacer.cfg
soccer_mod_replacer.cfg is the config storing every decal you want to use ingame. The decals are intended to provide a way to replace outdated grasstextures by simply overlaying them, but in theory it allows you to place logos & images wherever you want them on a map on your server.
Attention
This has to be done manually for every decal/texture you intend to use!
The generated file comes with 2 pre-configured entries. You can simply add new files following their example by providing a NAME and the PATH to the textures .vmt file
The name is of importance when adding decals to a map. Each map will generate their own config file in cfg/sm_soccermod/grassreplacer.
A properly working file could look like this:
"Positions" // DO NOT CHANGE { "grassreplacer" // the name of the texture set in soccer_mod_replacer.cfg! { "pos1" "-1024.000001 0.000001 0.031250" // each centerposition of a texture "pos2" "-512.000001 0.000001 0.031250" "pos3" "0.000001 0.000001 0.031250" "pos4" "512.000001 0.000001 0.031250" "pos5" "1024.000001 0.000001 0.031250" "pos6" "-1024.000001 -512.000001 0.031250" "pos7" "-512.000001 -512.000001 0.031250" "pos8" "0.000001 -512.000001 0.031250" "pos9" "512.000001 -512.000001 0.031250" "pos10" "1024.000001 -512.000001 0.031250" "pos11" "-1024.000001 -1024.000001 0.031250" "pos12" "-512.000001 -1024.000001 0.031250" "pos13" "0.000001 -1024.000001 0.031250" "pos14" "512.000001 -1024.000001 0.031250" "pos15" "1024.000001 -1024.000001 0.031250" "pos16" "-1024.000001 -1536.000001 0.031250" "pos17" "-512.000001 -1536.000001 0.031250" "pos18" "0.000001 -1536.000001 0.031250" "pos19" "512.000001 -1536.000001 0.031250" "pos20" "1024.000001 -1536.000001 0.031250" "pos21" "-1024.000001 512.000001 0.031250" "pos22" "-512.000001 512.000001 0.031250" "pos23" "0.000001 512.000001 0.031250" "pos24" "512.000001 512.000001 0.031250" "pos25" "1024.000001 512.000001 0.031250" "pos26" "-1024.000001 1024.000001 0.031250" "pos27" "-512.000001 1024.000001 0.031250" "pos28" "0.000001 1024.000001 0.031250" "pos29" "512.000001 1024.000001 0.031250" "pos30" "1024.000001 1024.000001 0.031250" "pos31" "-1024.000001 1536.000001 0.031250" "pos32" "-512.000001 1536.000001 0.031250" "pos33" "0.000001 1536.000001 0.031250" "pos34" "512.000001 1536.000001 0.031250" "pos35" "1024.000001 1536.000001 0.031250" } }
As you can see the setup is fairly easy since the shift from the previous set texture is simply equal to the size of the texture used. In this case the texture is 512px X 512px and therefore each change consists of adding or substracting 512 from the previous value.
Commands Information
SoMoE-19 features a row of chat commands you can use to quickly access certain features. Overall there are 38 chat commands, 15 Public Commands and 23 Admin Commands.
Admin Commands
General commands
sm_maprr / !maprr
Requires: GENERIC-flag (b or z) or SoccerMod Admin (mapchange) Reloads the currently running map
sm_rr / !rr
Requires: GENERIC-flag (b or z) or SoccerMod Admin (match) Restarts the current round
Match commands
sm_start / !start
Requires: GENERIC-flag (b or z) or SoccerMod Admin (match) Starts a match
sm_matchrr / !matchrr
Requires: GENERIC-flag (b or z) or SoccerMod Admin (match) Stops and restarts the current match
sm_pause / !pause | sm_p / !p
Requires: GENERIC-flag (b or z) or SoccerMod Admin (match) Pauses a running match
sm_unpause / !unpause | sm_unp / !unp | sm_up / !up
Requires: GENERIC-flag (b or z) or SoccerMod Admin (match) Unpauses a match
sm_stop / !stop
Requires: GENERIC-flag (b or z) or SoccerMod Admin (match) Stops a running match
sm_forcerdy / !forcerdy
Requires: RCON-flag (m or z) Forces every player to be 'ready' if the readycheck is enabled and the match was paused
sm_forceunp / !forceunp
Requires: RCON-flag (m or z) Forces the match to unpause if the readycheck is enabled, regardless of individual ready states
Misc commands
sm_addadmin / !addadmin
Requires: RCON-flag (m or z) Arguments: <#steamid> <flags> <clientname> Add an admin to the admins_simple.ini file
sm_dpass / !dpass
Requires: RCON-flag (m or z) Reset the server password to the default value set in your server.cfg
sm_gksetup / !gksetup
Requires: RCON-flag (m or z) Opens a panel to set or change the gk areas of the current map.
sm_pass / !pass
Requires: RCON-flag (m or z) Arguments: <password> Set a custom server password
sm_rpass / !rpass
Requires: RCON-flag (m or z) Sets a randomly generated server password
sm_spray / !spray
Requires: GENERIC-flag (b or z) Re-Move the spraylogo you're looking at. (Actually gets moved to another position)
sm_ungk / !ungk
Requires: GENERIC-flag (b or z) Arguments: <target> Remove the gk skin of your target. DOES NOT set the gk skin on a target that is not using a skin.
sm_wiperanks / !wiperanks
Requires: RCON-flag (m or z) Sets every value in the stats database for every entry to 0. THIS IS NOT REVERSIBLE! USE WITH CAUTION OR MAKE A BACKUP FIRST!
sm_jumptime / !jumptime
Requires: ROOT-flag (z) Arguments: <time> Set the time before you can use +duck after jumping again. Default: 0.45.
Public Commands
Menu commands
sm_menu / !menu
Opens the Soccer Mod main menu
sm_pick / !pick
Re-opens the Soccer Mod pick menu after a capfight
sm_stats / !stats
Opens the Soccer Mod statistics menu
sm_pos / !pos
Opens the Soccer Mod positions menu
sm_help / !help
Opens the Soccer Mod help menu
sm_admins / !admins
Opens a menu to display the currently active admins, separated into different lists
sm_commands / !commands
Opens the Soccer Mod commandlist menu
sm_info / !info
Opens the Soccer Mod credits menu
General commands
sm_gk / !gk
Toggles the Goalkeeper skin
sm_rdy / !rdy
Re-opens the Readycheck panel if its enabled and the game was paused
sm_lc / !lc | sm_late / !late
Displays an accurate numbered list of players. People leaving will only be completely removed from their position after being away for a specified timeframe. If a player leaves he won't be visible on the list and only reappear if he rejoins.
sm_pick / !pick
(Re-)Opens the cap pick menu.
sm_rank / !rank
Prints your match rank in the chat
sm_prank / !prank
Prints your public rank in the chat
sm_forfeit / !forfeit
Starts a forfeit vote if forfeits are enabled
sm_profile <name> / !profile <name>
Opens the steamprofile of the target in the MOTD window
sm_spec me/all/<name> / !spec me/all/<name>
Specs players depending on the given argument. 'me' specs yourself 'all' specs everyone <name> specs your target (e.g. !spec MK99 will spec the player with MK99 in his name)
Admin
The admin portion of the menu is the central place to control most of SoMoE-19’s functions and settings. It is divided into the following sub-menus:
Note
The structure of the menu you can see ingame might vary depending on your permissions. See SoMoE-19 Menu for a rundown on the menu-trees structure and the required permissions.
Admin - Settings
As the name suggests is the Settings menu your go-to point if you want to adjust certain settings of SoMoE-19.
Note
To see and access the option you require sourcemod generic admin privileges (b). However, to access every part of it you require sourcemod rcon admin privileges (z).
The structure of this menu looks like this:
Manage Admins
This sub-menu allows you to manage your admins from within the game. To access the menu rcon-flag (z) permissions are required for obvious reasons.
The structure of this menu looks like this:
Add Admin
As the name suggests, this option is used to add players as an admin. After selecting a player from the list you can select what kind of admin privileges you intend to give. You can either add them to the sourcemod admin list or the SoccerMod admin list. In case of sourcemod admins you also got the choice between adding them to the admins.cfg file or the admins_simple.ini.
Note
The option to add players to the admins_simple.ini is not advised and was superseded by the admins.cfg option.
If the target it already an admin of any kind you won’t be able to proceed.
Edit Admin
As the name suggests, this option is used to edit your admins from within the game. The editing function is divided into 3 options:
Edit SM Admin
Allows you to change the Name, Flags, Immunity and Admin Group of your target.
Edit SoccerMod Admin
Allows you to enable or disable the access to certain modules of your target. The selectable modules are identical to the sub-menus of the admin menu, except for settings.
Promote Soccer Admin
Allows you to quickly remove your target from the SoccerMod Admin list and add it to the sourcemod admin list at the same time.
Remove Admin
As the name suggests, this option is used to remove players from the admin list. It is divided into 2 options, one targeting your sourcemod admins, the other one targeting your soccermod admins.
Admin Lists
This menu provides a quick and separated overview over your admins. It is divided into 3 possible displays:
SoccerMod List which displays only your SoccerMod admins.
admins.cfg List which displays every SourceMod admin in your admins.cfg file.
admins_simple.ini which displays every SourceMod admin in your admins_simple.ini file.
Online List
This menu provides a quick overview over the admins currently on the server.
Allowed Maps
This menu is used to add or remove maps from SoMoE-19’s allowed maps list. Certain features are only enabled if the current mapname is found in this file.
The structure of this menu looks like this:
Public Mode
SoMoE-19 features 3 different access modes which can be changed with this menu.
The structure of this menu looks like this:
Admin Access Only blocks players from accessing the admin menu portion unless they’re found in any of the possible admin lists. Which parts of the menu will be visible and accessible depends on the admin type. In case of SoccerMod admins only the allowed modules will be visible. SourceMod admins will see everything by default.
Public !cap and !match is a combination of the other 2 modes. Every player can access a limited version of the admin menu, while admins can still access everything.
Public !menu allows every player to access every part a full SoccerMod admin could access whether they’re admins or not.
Misc Settings
The misc settings menu contains a collection of features that did not fit anywhere else.
The following features are toggleable or changeable:
Class Choice - Toggle - Enables or Disables the class selection screen after joining a team.
Load Map Defaults - Toggle - Enable or Disable loading per map defaults when loading that map.
Remove Ragdoll - Toggle - Select 1 of 3 modes of ragdoll handling (Do nothing / Remove ragdoll / Dissolve ragdoll).
Duckjump Block - Toggle - Enable or Disable the Duckjump preventions. Features 3 attempts at doing so.
1st attempt was created by Marco Boogers and relies on the player position. 2nd attempt blocks ducking for a configurable amount of time after jumping (autoreset as soon as you hit ground). 3rd attempt tries to block duck only at the highest point of the jump, but requires alot of testing to see its usefulness. - Hostname Info - Toggle - Enable or Disable status updates in the servers name. - !rank cooldown - Value - Change the cooldown between !rank usages - 0 to disable. - Ready Check - Toggle - Select 1 of 3 modes of unpause handling (Default / Auto-Unpause if everyone ready / Block unpause unless everyone is ready). - Damage Sounds - Toggle - Enable or Disable hurt-sounds when being hit by the ball. - Killfeed - Toggle - Enable or Disable the killfeed in the upper right corner. - GK saves only - Toggle - Enable or Disable save tracking only for players using the gk skin. If this option is enabled and no player of the team is using the gk skin, everyone will be able to earn saves in the gk area. - Rank Mode - Toggle - Select 1 of 3 ranking modes ( pts/matches, pts/rounds, pts). - Celebration - Toggle - Enable or Disable celebration weapons for the winning team. Also enables friendly fire and surpresses friendlyfire messages. - First 12 Rule - Toggle - If enabled blocks players who joined in on slot 13+ from being picked.
Skin Settings
This menu allows you to select the currently used skins from a list defined in soccer_mod_skins.cfg. Each skin can be set individually as long as its defined in the configuration file. There are 4 skinslots you can set:
CT Team
T Team
CT GK
T GK
Chat Settings
This menu allows you to adjust chat related settings. Next to the appearance of the messages (colors and prefix) you can also enable or disable MVP messages or toggle Deadchat options.
The structure of this menu looks like this:
Chat Settings
Chat Style - Allows changing the prefix, prefixcolor and textcolor for every plugin related chat message.
MVP Messages - Enable or Disable the display of MVP / MOTM messages and MVP stars.
DeadChat - Enable or Disable the display of messages written by spectators and dead players to everyone. Features 3 modes and additional visibility options.
Sound Control
This menu allows you to disable and re-enable ambient_generic sounds embedded in the map file.
A sound disabled this way will be only enabled at the specific map and will stay disabled until it gets reenabled again or is removed from the configfile. Removed sounds are stored in the mapdefault.cfg.
Re-enabling a sound will require a new round to start.
Lock Settings
Allows the configuration of any serverlock related setting. Serverlock is a feature to automatically change the servers password to a random value as soon as certain criterias are met. The main criteria is a started cap fight, a variable one is the number of players before the lock is activated. As soon as the playercount falls below the set threshold the password is reverted. This is to ensure that the required number of players for a match can still be achieved if people leave or are kicked because of inactivity. While the Serverlock is active an AFK-Kicker will also take effect, acting according to configurable time frames.
The structure of this menu looks like this:
Lock Settings
Enable Serverlock - Enable an automatic passwordchange if a cap fight is started and the number of players is higher than a set threshold.
Disable Serverlock - Disables the feature.
Player Threshold - Change the threshold of players that has to be crossed before the passwordchange takes effect.
Captcha Timer - Time of inactivity before the AFK-Kicker sends a captcha menu to inactive players to check whether they’re actually there.
Captchamenu Timer Time before the Captcha menu closes itself and considers an inactive player as AFK.
Serverlock Info (Status / Threshold value)
Shout Plugin
Access and configure settings related to shouting (playing sounds).
Debugging
Toggle the debugging modes. There are 2 possible modes. A complete debugging mode and one only checking for passes and losses.
Ranking
This submenu allows you to access certain ranking information. It also allows you to reset your ranks.
As their name s suggest, the Top 50 options will display a list of the 50 best ranked players. The personal options will allow you to review your own achievements. The Last Connected option displays a menu of everyone who connected to the server and the time since they played on the server. Reset Rank allows you to reset either your public or match rank.
Statistics
This submenu allows you to access certain statistics of the current round or match, as well as individual statistics.
The following statistics are visible in the different submenus:
Goals
Assists
Own Goals
Possession %
Saves
Passes
Rounds won
Rounds lost
Interceptions
Ball losses
Hits
(Name) in the display for individual players
Positions
The submenu used to set your positions for caps to see during the picking process. If you do not have any position set or have Spec only active the menu should open itself when a capfight start.
Help
The help submenu is kind of an ingame equvivalent of this documentation and features a commands list with a short description as well as a link to an ingame display of this docs. It also allows you to print the the urls of this documentation and the GitHub repo to your console (starting from 1.2.8).
Settings
This submenu can be used to change certain client settings. Most are resolving around the sprinting feature but you can also toggle whether you can hear shouts or see the grassreplacer.
The Sprintsettings consist of an additional submenu which features a short informational text, but is mostly used to enable or disable certain sprinting indicators such as:
Messages - Displays a chat message when you are sprinting, sprint ended or you can sprint again.
Progress Bar - Displays the defuse bar as a visual indicator for the sprint duration or cooldown.
Sound - Plays a sound when you activate sprint.
Timer - Adds a customizable numeric timer to your HUD.
The Timer also allows a range of customization. The position of the Timer is freely changeable and can be changed in the Timer Settings submenu. In this submenu is also another submenu called Color to freely adjust the timers color. The Option Display timer can be used to constantly display the timer while editing its color and position.
Shouts
Every player can access a list of enabled (per server) shouts from the main menu or by using ‘!shout’ in the chat. If the serverowner enabled it, the listed shouts can also be used as chat commands.
e.g.: A shout is called ‘holyshit’ in the list, then using ‘!holyshit’ would play the shout, as well as selecting the corresponding number in the shoutmenu.
Shoutsettings
This menu is only accessable for players with at least ‘generic’ sourcemod permissions. The menu can be used to control the general volume, pitch and so on of the shouts, as well as the playing mode and its radius if the mode allows it.
- The different available modes are:
Ambient: Plays the sound from the position the shouter was when he shouted.
Everyone: Plays the sound to everyone, no matter where they are.
Team: Plays the sound to everyone in your team, no matter where they are.
Radius: Plays the sound to everyone in a certain radius around the ‘shouter’.
Radius(Team): Same as above, but limited to your own team
Disabled: No shouts :(
You can also enable the ‘command mode’ which will allow players to bind individual sounds to keys without having to access the shout menu if they want to use that shout (see the example above).
Players with elevated sourcemod permissions will also be able to access the shout manager. Using the manager you can (re-)scan the sounds folder for newly uploaded sounds as well as managing the available shouts. Sounds added to the ‘sounds/soccermod/shout’ folder should be added automatically to the shoutlist, every other sound in the sound folder (and its subfolders) has to be added manually ingame. Next to adding shouts you can also edit and remove shouts from this menu. Editing involves the renaming of a shout (and thus changing the command if its enabled) as well as per-shout volume and pitch. It also features a list of the currently added shouts.
Attention
Please note that not every soundtype is usable. e.g. mp3 and wav are fine, m4a however are not.
Credits
This submenu displays provides a display of the plugin version and shortcut to view the credits. Please refer to credits for more information.
Changelog
1.3.2 & 1.3.3 & 1.3.4 & 1.3.5.x & 1.3.6 & 1.3.7
New
Added Pre-Cap-Join option to First12 Toggle
Added notification if a player that shouldn’t be allowed to play joins a team / gets forced
Added !aim command to find out coordinates to use with replacer configs
Added optional (default ON) sound & text notification before a period ends
Added option to disable the ‘overtime-sound’ only.
Added option to set custom sounds for the overtime countdown via config.
Added per client toggleable chat/hud information.
Added per client toggleable grassreplacer.
Added per client toggleable shout playing.
Changes
Removed match reset at mapstart - sm_maprr;sm_start combination should work again
Debug mode can be toggled from the menu now.
Main menu now leads to Settings submenu instead of directly to the sprintsettings.
Fixes
More Fixes to joinlist
Minor fixes
1.3.1
New
Added First 12 Rule toggle
Added Grassreplacer
Changes
Fixes
Fixes to joinlist
Minor fixes
1.3.0 BETA
New
Added Advanced Training Mode (Lockable with a password in settings)
Added Training Mode
Added spawnable training props (Can, Hoop, Plate) (options won’t show up without the files)
Added option to spawn static or dynamic cones
Added 2 target training modes (configurable ball respawn)
Added “!profile <name>” command to quickly display the steamprofile of a target
Added !spec command
Added built-in Shout support
Changes
Minor cleanup
Added cancel option to some cannon settings
Fixes
Fixed Duckjumpblock v3
1.2.9.*
New
Added weaponchoice for capfights (1.2.9.3)
Added random option to capfight weapon selection (1.2.9.4)
Added third alternative duckjump-block method (1.2.9.6)
Added option to enable celebration weapons after scoring a goal (1.2.9.6)
Added toggleable invisible walls at kickoff (1.2.9.7)
Added top3 player display at halftime (1.2.9.7)
Added Mapsound control (Disable / Enable ambient_generic sounds per map) (1.2.9.7)
Changes
Caps won’t lose their knife if the weapon of choice is a gun (1.2.9.3 fix)
Cap HP during a HE-Grenade fight set to 98 to allow 1-hit kills (1.2.9.3 fix)
Removed Smokegrenade from capfight weapon selection (1.2.9.4)
Improved toggleable walls at kickoff (laser indicating borders, coloring) (1.2.9.7)
Changed final matchmessage to show top3 instead of only MOTM (1.2.9.7)
Fixes
Fixed sprint config section resetting (1.2.9.1)
Fixed sprint re-enabling itself after a cap fight even if it was disabled (1.2.9.2)
Fixed “set position”-Spam at capstart if no position set (1.2.9.4)
Fixed misplaced duckjump-reset function (1.2.9.5)
1.2.9
New
Added option to track only saves done by a player using the gk skin. If no player of the team is using the gk skin everyone of the team is able to earn saves inside the gk area.
Added admin command !ungk <target> (<target> can be either a player or t/ct).
Added match tracking. Everyone who is in CT or T when a round ends during a match will have his match number increased when the end ends or it is stopped (at least played till halftime). Resetting the stats is highly recommended if you intend to use the ranking based on matches.
Added 2 alternative commands. (!late - same as !lc; !up - same as !unp / !unpause)
Added new preferred duckjumpblock-mode. Duckjumpblock setting now allows 3 settings: OFF, ON, ON (NEW). Old version remains in case of unforseen issues.
Added ROOT command to adjust resettime for new duckjumpblock.
Changes
!gk limited to one player per team.
Ranking can now be sorted by either pure pts, pts/matches (match rankings only) or pts/rounds.
Changed rank reset options to set every value to 0 instead of deleting the row.
Stats will only count in matches if it both teams have 5 players at the end of the round.
Added join number to pick menu
Added join number message for each player when cap fight starts
Added GK skin check prior to setting GK skin. Hopefully removes erroreneous entries from GK skin array.
Fixes
Fixed !pos menu being displayed everytime a cap is started instead of only if no position or “Spec only” is set again.
Fixes to rounds won / lost tracking.
Fixed gk skin being locked if a gk skin user joins spectator before leaving.
Fixed issues with !spray command.
Added missing ball entity check.
1.2.8
New
Added option to the help menu to print the url of this documentation and the github project in console.
Added option to the help menu to open this documentation in the motd.
Added command to adjust GK areas ingame (!gksetup; requires RCON-flag).
Added option to disable the killfeed (Always enabled during capfights).
Added command to ‘remove’ spraylogos (!spray; requires GENERIC-flag). Intended to remove sprays from the ball.
Changes
Saves only count if the last hit before the gk’s was done by an opponent now.
Reworked credits menu.
Reworked help menu.
Fixes
Fixed hostname status not being applied after !matchrr usage.
Fixed stoppage time not working properly on maps rotated by 90°.
Fixed !pos menu being displayed everytime a cap is started instead of only if no position or “Spec only” is set.
1.2.7
New
Added !lc command to provide an accurate overview of the join order.
adjustable rr tolerance to be used in conjunction with !lc.
Added optional hostname statuses displaying various states (f.ex. [PICKING], [HALFTIME] or the timestamp of the current match).
Added optional cooldown for !rank usage.
Added (requires Steamworks extension) a custom game description.
Added optional and configurable map defaults for periods, periodlength and breaklength.
Added option to change teamnames for the upcoming match only.
Added optional class selection screen disabler.
Changes
Reorganized settings and its submenus
Fixes
Minor fixes.
1.2.6
Changes
!rank command divided into 2 commands: !rank for match rankings and !prank for public rankings
Fixes
Various fixes related to ranking & statistics.
1.2.3 - 1.2.5
Fixes
Fixes to customizable sprint timer added in 1.2.3.
1.2.2
New
Added Duckjump toggle to settings menu.
Changes
Adjustments to the duckjump toggle command according to the menu changes.
1.2.1
Changes
Changes to the admin menu.
1.2.0
Changes
Global ballcannon should no longer ask to select a ball if there is a soccer ball found in the map.
1.1.6
New
Added modular permissions for soccermod admins
Fixes
Various minor fixes.
1.1.5
Fixes
Various text fixes.
Other minor fixes.
1.1.4
New
Added option to remove ragdolls after playerdeath.
Changes
Changes to soundhandling.
Changed default lockset value to 0.
1.1.2 - 1.1.3
Fixes
Various minor fixes.
1.1.1
New
Added customizable Hud-Timer displaying sprint duration & cooldown.
Fixes
Fixed Unpause not working after pausing the game for 5 minutes.
Other minor fixes.