EloTeamRestriction - GhoulofGSG9/NS2Stats.com GitHub Wiki

Overview

This plugin should help you to set up a skill restriction for your server if needed. Atm it uses mainly NS2Stats.com to get needed infos.

Info: ELO = a rating number for the players skill level. By default every player start with a ELO of 1500 at NS2Stats.com

Restriction Checks are done when a player joins a team. If Check fails the player can’t enter the choosen team and sees the Blockmassege.

So currently there are 3 different Restriction Modes:

Mode 0: Check if players NS2Stats.com ELO fits to the set Min-/MaxElo (default)
Mode 1: Check if players total K/D at NS2Stats.com fits to Min-/MaxK/D
Mode 2: Mode 0 + Mode 1

Players with access to sh_ignoreelo will be ignored by this plugin.

Default Config

The default config looks something like this:

{
    "RestrictionMode": 0,
    "UseSteamTime": false,
    "ForceSteamTime": false,
    "MinPlayTime": 0,
    "MaxPlayTime": 99999,
    "MaxElo": 2000,
    "KickBlockedPlayers": false,
    "MinElo": 1300,
    "MinKD": 0.5,
    "MaxKD": 3,
    "AllowSpectating": true,
    "ShowInform": true,
    "KickMessage": "You will be kicked in %s min",
    "Kicktime": 60,
    "WaitMessage": "Getting your NS2 Elo rating now, please wait",
    "InformMessage": "This Server is Elo rating restricted",
    "TeamStats": true,
    "BlockNewPlayers": false,
    "BlockMessage": "You don't fit to the Elo rating limit on this server. Your ELO: %s Server: Min %s , Max %s"
  }

The file should be called “eloteamrestriction.json” and should be placed in the directory defined as your plugin config directory (default is config://shine/plugins).

The %s playeholders will be replaced by given plugin message values.

Config Options

Option Description Message Values
RestrictionMode Which restriction mode from above should be used.
TeamStats If true plugin will use stats from each team for restriction check. Otherwise it will use players total stats
MinELO Lowest ELO with which a player pass the restriction check in given mode.
MaxELO Highest ELO with which a player pass the restriction check in given mode.
MinKD Lowest K/D with which a player pass the restriction check in given mode.
MaxKD Highest K/D with which a player pass the restriction check in given mode.
BlockNewPlayers If true players without ns2stats.com stats or not enought playtime won’t pass the restriction check.
UseSteamTime If set true the plugin will try to get and use players playtime from steam ( the players profil has to be public for this to work ) .
ForceSteamTime If set true the plugin will only use the playtime it got from steam and all players without a public steam profile will have a playtime of 0 hours. If steam should be down all player will pass the playtime check.
MinPlayTime Min time in minutes a new Player has to be tracked by NS2Stats to pass the check
MaxPlayTime Max time in minutes a new Player has to be tracked by NS2Stats to pass the check
KickBlockedPlayers If true Blocked Players will be kicked after given time. Timer resets if the try to join the other team once.
KickTime Time in secound until a player is kicked if KickBlockedPlayers is true.
AllowSpectating If true, the plugin will not check elo at access to the spectator team
showinform If true,InformMessage is shown after player has connected
InformMessage Message which is shown when player connects
KickMessage Message which is shown before a player is kicked Timeleft until kick
BlockMessage Message which is shown if a player fails the restriction check with Mode 0 PlayerElo,MinElo,MaxELO
BlockMessage Message which is shown if a player fails the restriction check with Mode 1 PlayerK/D, MinK/D,MaxK/D
BlockMessage Message which is shown if a player fails the restriction check with Mode 2 PlayerElo,PlayerK/D,MinElo,MaxELO, MinK/D,MaxK/D
⚠️ **GitHub.com Fallback** ⚠️