Initial commit
This commit is contained in:
107
lib/dproto/Readme.txt
Normal file
107
lib/dproto/Readme.txt
Normal file
@@ -0,0 +1,107 @@
|
||||
dproto is a plugin for metamod that allows p.47 and 48 no-steam clients to join the hlds-based server.
|
||||
|
||||
CURRENT VERSION: 0.9.582
|
||||
For more information and updates please check http://cs.rin.ru/forum/viewtopic.php?f=29&t=55986
|
||||
|
||||
ARCHIVE CONTAINS:
|
||||
bin directory - Binaries (libraries) for linux and windows.
|
||||
amxx directory - some AmxModX plugins that uses dproto functionality
|
||||
dproto.cfg - dproto configuration file.
|
||||
Readme.txt - This file.
|
||||
|
||||
REQUIREMENTS:
|
||||
- clean (unpatched) engine files (swds.dll for windows; engine_i686.so for linux)
|
||||
- metamod 1.19 or 1.19p32 or higher
|
||||
- currently supported builds are all p48 engines for windows and linux
|
||||
|
||||
INSTALLATION:
|
||||
1. Go to <gamedir>/addons/ and make new directory named dproto
|
||||
<gamedir> - it is a game directory; cstrike for Counter-Strike, valve for Half-Life, etc
|
||||
2. Copy dproto.dll or dproto_i386.so to <gamedir>/addons/dproto/
|
||||
3. Go to metamod installation directory (usually its <gamedir>/addons/metamod/) and edit plugins.ini:
|
||||
add this line for windows
|
||||
win32 addons\dproto\dproto.dll
|
||||
or this for linux
|
||||
linux addons/dproto/dproto_i386.so
|
||||
at the beginning of the file
|
||||
4. Copy dproto.cfg to server root or gamedir.
|
||||
5. Start the server. You should use this command on linux:
|
||||
./hlds_run -binary ./hlds_i686
|
||||
|
||||
when server loads, type "meta list" in console. You'll see something like this:
|
||||
Currently loaded plugins:
|
||||
description stat pend file vers src load unlod
|
||||
[ 1] dproto RUN - dproto_i386.so v0.9.582 ini Start Never
|
||||
[ 2] AMX Mod X RUN - amxmodx_mm_i386. v1.8.1.3 ini Start ANY
|
||||
2 plugins, 2 running
|
||||
6. If status is not "RUN", start server with "+log on +mp_logecho 1" parameters and look through console output. In 99% cases you'll find reason there.
|
||||
7. Installation of AmxModX plugins from amxx directory is not necessary.
|
||||
|
||||
HOW TO CHANGE STEAMIDS OF CLIENTS
|
||||
Use cid* options in AUTHID MANAGEMENT section of dproto.cfg
|
||||
For example, if you want to assign steamids generated by IP for p47 clients that not support unique id generation, you should set:
|
||||
cid_NoSteam47 = 3 for assigning STEAM_x:y:z steamid to these clients
|
||||
cid_NoSteam47 = 4 for assigning VALVE_x:y:z steamid to these clients
|
||||
|
||||
If you want to drop these clients, just set clientid to 5:
|
||||
cid_NoSteam47 = 5
|
||||
And all p47 clients without emulators will be dropped with message that you can customize (see next section).
|
||||
|
||||
HOW TO CHANGE REJECT MESSAGES WHEN CLIENTID IS 5 (DEPRECATED)
|
||||
This could be done using these cvars:
|
||||
dp_rejmsg_steam for legit steam (cid_Steam) clients
|
||||
dp_rejmsg_nosteam47 for no-steam p47 (cid_NoSteam47) clients
|
||||
dp_rejmsg_nosteam48 for no-steam p48 (cid_NoSteam48) clients
|
||||
dp_rejmsg_hltv for HLTV (cid_HLTV) clients
|
||||
dp_rejmsg_pending for unathorized (cid_cid_SteamPending) clients
|
||||
dp_rejmsg_revemu for revEmu (>= 9.74 && <= 9.82) clients
|
||||
dp_rejmsg_steamemu for steamEmu clients
|
||||
dp_rejmsg_oldrevemu for old revEmu clients (< 9.74)
|
||||
dp_rejmsg_avsmp for AVSMP clients
|
||||
dp_rejmsg_revemu_sc2009 for revEmu (>9.82) and SteamClient2009 clients
|
||||
dp_rejmsg_sxei for clients with sXe Injected if EnableSXEIdGeneration is set to 1
|
||||
dp_rejmsg_revemu2013 for revEmu 2013 clients
|
||||
|
||||
Just put message to them and it will be displayed for rejected clients.
|
||||
|
||||
Example, a part of server.cfg:
|
||||
dp_rejmsg_nosteam47 "Sorry, you're using old client, download a new one and come back ;)"
|
||||
|
||||
HOW TO GET CLIENT PROTOCOL IN AMXX:
|
||||
check the amxx/dp_test.sma. This is sample plugin that outputs protocol number when client connecting.
|
||||
NOTE: this is _sample_ plugin and its installation is not necessary.
|
||||
|
||||
USEFUL COMMANDS/CVARS:
|
||||
dp_ipsessions (command) - lists active connectionless sessions and info about them.
|
||||
dp_secplrinfo (command) - lists active players with some boolean options: U = Slot is used; A = Active network client; P = passed fakeplayer check;
|
||||
dp_lastthreats (command) - lists last threats.
|
||||
dp_heapinfo (command) - writes internal heap usage to <gamedir>/mem.txt.
|
||||
dp_log_msgoverflows (cvar) - enables/disables dumping contents of messages on overflow.
|
||||
|
||||
THANKS TO:
|
||||
Armind for testing, bugreporting;
|
||||
AlexALX for testing;
|
||||
bDy for testing on FreeBSD;
|
||||
Co6aka for tesing;
|
||||
Dark-Master for testing, bugreporting;
|
||||
debugger_perm for original idea and testing;
|
||||
DrilLer for testing, bugreporting;
|
||||
GoD2.0 for redirection fix idea;
|
||||
gromo for testing, bugreporting;
|
||||
ineya for Hybrid serverinfo trick;
|
||||
jamess for "deprecated" id idea;
|
||||
La_Vladimir for testing, bugreporting;
|
||||
Lev (aka Flasher) for help and testing;
|
||||
P4rD0nM3 for testing, bugreporting;
|
||||
Shidla for testing;
|
||||
SISA for hard testing of eST support and deprecated clientids;
|
||||
**$n@!ke** for testing, hlstats fix idea;
|
||||
Asmodai for help with commands order;
|
||||
Chuvi for voice init solution;
|
||||
PRoSToTeM@ for deltas processing bugfix, user info filtering and other good ideas;
|
||||
S0m3Th1nG_AwFul for testing, bugreporting;
|
||||
coolman for testing, bugreporting;
|
||||
Sanlerus (aka Freedo.m) for reproducing bug with hanging clients and testing
|
||||
Valve for good games ;)
|
||||
All people from this (http://cs.rin.ru/forum/viewtopic.php?f=10&t=50689) thread
|
||||
And all other people whom I forgot
|
||||
116
lib/dproto/amxx/dp_test.sma
Normal file
116
lib/dproto/amxx/dp_test.sma
Normal file
@@ -0,0 +1,116 @@
|
||||
/*
|
||||
This sample plugin shows how to get information about client's protocol and Steam ID. (plugin will write this info when client connecting)
|
||||
|
||||
It works only with dproto >= 0.4.4
|
||||
|
||||
*/
|
||||
|
||||
#include <amxmodx>
|
||||
#include <amxmisc>
|
||||
|
||||
|
||||
#define DP_AUTH_NONE 0
|
||||
#define DP_AUTH_DPROTO 1
|
||||
#define DP_AUTH_STEAM 2
|
||||
#define DP_AUTH_STEAMEMU 3
|
||||
#define DP_AUTH_REVEMU 4
|
||||
#define DP_AUTH_OLDREVEMU 5
|
||||
#define DP_AUTH_HLTV 6
|
||||
#define DP_AUTH_SC2009 7
|
||||
#define DP_AUTH_AVSMP 8
|
||||
#define DP_AUTH_SXEI 9
|
||||
#define DP_AUTH_REVEMU2013 10
|
||||
#define DP_AUTH_SSE3 11
|
||||
|
||||
|
||||
//
|
||||
// pointers to dp_r_protocol and dp_r_id_provider cvars
|
||||
// dproto will store information in these cvars
|
||||
|
||||
new pcv_dp_r_protocol
|
||||
new pcv_dp_r_id_provider
|
||||
|
||||
public plugin_init()
|
||||
{
|
||||
register_plugin("dproto testing", "1", "")
|
||||
|
||||
//
|
||||
// Initialize cvar pointers
|
||||
//
|
||||
pcv_dp_r_protocol = get_cvar_pointer ("dp_r_protocol")
|
||||
pcv_dp_r_id_provider = get_cvar_pointer ("dp_r_id_provider")
|
||||
|
||||
}
|
||||
|
||||
public client_connect(id)
|
||||
{
|
||||
if (!pcv_dp_r_protocol || !pcv_dp_r_id_provider)
|
||||
{
|
||||
log_amx ("cant find dp_r_protocol or dp_r_id_provider cvars")
|
||||
return PLUGIN_HANDLED
|
||||
}
|
||||
|
||||
/*
|
||||
The "dp_clientinfo" command are exported by dproto. The syntax is:
|
||||
dp_clientinfo <id>
|
||||
where id is slot index (1 to 32)
|
||||
After executing this command dproto will set dp_r_protocol and dp_r_id_provider cvars.
|
||||
The dp_r_protocol keeps client's protocol
|
||||
The dp_r_id_provider cvar will be set to:
|
||||
1: if client's steam id assigned by dproto (player uses no-steam client without emulator)
|
||||
2: if client's steam id assigned by native steam library (or by another soft that emulates this library, server-side revEmu for example)
|
||||
3: if client's steam id assigned by dproto's SteamEmu emulator
|
||||
4: if client's steam id assigned by dproto's revEmu emulator
|
||||
5: if client's steam id assigned by dproto's old revEmu emulator
|
||||
6: if client is HLTV
|
||||
7: if client's steam id assigned by dproto's SC2009 emulator
|
||||
8: if client's steam id assigned by dproto's AVSMP emulator
|
||||
9: if client's steam id assigned by SXEI's *HID userinfo field
|
||||
10: if client's steam id assigned by dproto's revEmu2013 emulator
|
||||
11: if client's steam id assigned by dproto's SmartSteamEmu emulator
|
||||
|
||||
If slot is empty, both dp_r_protocol and dp_r_id_provider cvars will be set to 0
|
||||
If slot is invalid (id < 1 or id > max players), both dp_r_protocol and dp_r_id_provider cvars will be set to -1
|
||||
*/
|
||||
|
||||
//
|
||||
// add command to queue
|
||||
//
|
||||
server_cmd("dp_clientinfo %d", id)
|
||||
|
||||
//
|
||||
// make server to execute all queued commands
|
||||
//
|
||||
server_exec()
|
||||
|
||||
//
|
||||
// now parse cvar values
|
||||
//
|
||||
new proto = get_pcvar_num(pcv_dp_r_protocol)
|
||||
new authprov = get_pcvar_num(pcv_dp_r_id_provider)
|
||||
new auth_prov_str[32]
|
||||
new user_name[33]
|
||||
|
||||
switch (authprov)
|
||||
{
|
||||
case DP_AUTH_NONE: copy(auth_prov_str, 32, "N/A") //slot is free
|
||||
case DP_AUTH_DPROTO: copy(auth_prov_str, 32, "dproto")
|
||||
case DP_AUTH_STEAM: copy(auth_prov_str, 32, "Steam(Native)")
|
||||
case DP_AUTH_STEAMEMU: copy(auth_prov_str, 32, "SteamEmu")
|
||||
case DP_AUTH_REVEMU: copy(auth_prov_str, 32, "revEmu")
|
||||
case DP_AUTH_OLDREVEMU: copy(auth_prov_str, 32, "old revEmu")
|
||||
case DP_AUTH_HLTV: copy(auth_prov_str, 32, "HLTV")
|
||||
case DP_AUTH_SC2009: copy(auth_prov_str, 32, "SteamClient2009")
|
||||
case DP_AUTH_AVSMP: copy(auth_prov_str, 32, "AVSMP")
|
||||
case DP_AUTH_SXEI: copy(auth_prov_str, 32, "SXEI")
|
||||
case DP_AUTH_REVEMU2013: copy(auth_prov_str, 32, "RevEmu2013")
|
||||
case DP_AUTH_SSE3: copy(auth_prov_str, 32, "SSE3")
|
||||
default: copy(auth_prov_str, 32, "Erroneous") //-1 if slot id is invalid
|
||||
}
|
||||
|
||||
get_user_name (id, user_name, 33)
|
||||
|
||||
server_print("User %s (%d) uses protocol %d; SteamID assigned by %s", user_name, id, proto, auth_prov_str)
|
||||
|
||||
return PLUGIN_HANDLED
|
||||
}
|
||||
206
lib/dproto/amxx/updatehint.sma
Normal file
206
lib/dproto/amxx/updatehint.sma
Normal file
@@ -0,0 +1,206 @@
|
||||
/* AMXModX Script
|
||||
*
|
||||
* Title: Update Client Hint
|
||||
* Author: Lev/Crock
|
||||
*
|
||||
* Changelog:
|
||||
*
|
||||
* 23.03.2010
|
||||
* - Added HLTV recognition
|
||||
*
|
||||
* 04.08.2010
|
||||
* - Added new emulators support (AVSMP, SC2009)
|
||||
*
|
||||
* 19.10.2010
|
||||
* - Fixed AVSMP and SteamClient2009 support
|
||||
*
|
||||
* 07.08.2013
|
||||
* - Added sXeI support
|
||||
* - Added RevEmu2013 support
|
||||
*
|
||||
* 11.04.2015
|
||||
* - Added SmartSteamEmu support
|
||||
*
|
||||
*/
|
||||
|
||||
#pragma semicolon 1
|
||||
#pragma ctrlchar '\'
|
||||
|
||||
#include <amxmodx>
|
||||
#include <amxmisc>
|
||||
#include <amxconst>
|
||||
#include <fun>
|
||||
#include <regex>
|
||||
|
||||
#define DP_AUTH_NONE 0 // "N/A" - slot is free
|
||||
#define DP_AUTH_DPROTO 1 // dproto
|
||||
#define DP_AUTH_STEAM 2 // Native Steam
|
||||
#define DP_AUTH_STEAMEMU 3 // SteamEmu
|
||||
#define DP_AUTH_REVEMU 4 // RevEmu
|
||||
#define DP_AUTH_OLDREVEMU 5 // Old RevEmu
|
||||
#define DP_AUTH_HLTV 6 // HLTV
|
||||
#define DP_AUTH_SC2009 7 // SteamClient 2009
|
||||
#define DP_AUTH_AVSMP 8 // AVSMP
|
||||
#define DP_AUTH_SXEI 9 // sXe Injected
|
||||
#define DP_AUTH_REVEMU2013 10 // RevEmu 2013
|
||||
#define DP_AUTH_SSE3 11 // SmartSteamEmu
|
||||
|
||||
new const PLUGIN[] = "UpdateHint";
|
||||
new const VERSION[] = "1.3";
|
||||
new const AUTHOR[] = "Lev";
|
||||
|
||||
const BASE_TASK_ID_HINT = 3677; // random number
|
||||
const BASE_TASK_ID_KICK = 6724; // random number
|
||||
const MIN_SHOW_INTERVAL = 20; // minimum constrain for hint show interval
|
||||
const MAX_URL_LENGTH = 70; // max length of the URL
|
||||
|
||||
new bool:playerPutOrAuth[33]; // Player was put in server or auth.
|
||||
|
||||
new pcvar_uh_url;
|
||||
new pcvar_uh_interval;
|
||||
new pcvar_uh_kickinterval;
|
||||
new pcvar_dp_r_protocol;
|
||||
new pcvar_dp_r_id_provider;
|
||||
|
||||
public plugin_init()
|
||||
{
|
||||
register_plugin(PLUGIN, VERSION, AUTHOR);
|
||||
register_cvar("updatehint", VERSION, FCVAR_SERVER | FCVAR_SPONLY | FCVAR_UNLOGGED);
|
||||
|
||||
register_dictionary("updatehint.txt");
|
||||
|
||||
pcvar_uh_url = register_cvar("uh_url", "http://some.addr/somefile"); // URL where player can goto to download new client.
|
||||
pcvar_uh_interval = register_cvar("uh_interval", "60.0"); // Interval between hint shows.
|
||||
pcvar_uh_kickinterval = register_cvar("uh_kickinterval", "0"); // Interval bwfoew kick client.
|
||||
pcvar_dp_r_protocol = get_cvar_pointer ("dp_r_protocol"); // Dproto interface.
|
||||
pcvar_dp_r_id_provider = get_cvar_pointer ("dp_r_id_provider"); // Dproto interface.
|
||||
}
|
||||
|
||||
public client_connect(id)
|
||||
{
|
||||
playerPutOrAuth[id] = false;
|
||||
}
|
||||
|
||||
public client_authorized(id)
|
||||
{
|
||||
if (playerPutOrAuth[id])
|
||||
{
|
||||
return check_client_type(id);
|
||||
}
|
||||
playerPutOrAuth[id] = true;
|
||||
return PLUGIN_CONTINUE;
|
||||
}
|
||||
|
||||
public client_putinserver(id)
|
||||
{
|
||||
if (playerPutOrAuth[id])
|
||||
{
|
||||
return check_client_type(id);
|
||||
}
|
||||
playerPutOrAuth[id] = true;
|
||||
return PLUGIN_CONTINUE;
|
||||
}
|
||||
|
||||
stock NeedShowUpdateMsg(proto, authprov) {
|
||||
if (authprov == DP_AUTH_HLTV)
|
||||
return false;
|
||||
|
||||
if (proto < 48)
|
||||
return true;
|
||||
|
||||
if (authprov == DP_AUTH_STEAM ||
|
||||
authprov == DP_AUTH_REVEMU ||
|
||||
authprov == DP_AUTH_SC2009 ||
|
||||
authprov == DP_AUTH_AVSMP ||
|
||||
authprov == DP_AUTH_SXEI ||
|
||||
authprov == DP_AUTH_REVEMU2013 ||
|
||||
authprov == DP_AUTH_SSE3)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
check_client_type(id)
|
||||
{
|
||||
if (!pcvar_dp_r_protocol || !pcvar_dp_r_id_provider)
|
||||
return PLUGIN_CONTINUE;
|
||||
|
||||
server_cmd("dp_clientinfo %d", id);
|
||||
server_exec();
|
||||
|
||||
new proto = get_pcvar_num(pcvar_dp_r_protocol);
|
||||
new authprov = get_pcvar_num(pcvar_dp_r_id_provider);
|
||||
|
||||
switch(authprov)
|
||||
{
|
||||
case DP_AUTH_DPROTO:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "DPROTO");
|
||||
case DP_AUTH_STEAM:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "STEAM");
|
||||
case DP_AUTH_REVEMU:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "REVEMU");
|
||||
case DP_AUTH_STEAMEMU:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "STEAMEMU");
|
||||
case DP_AUTH_OLDREVEMU:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "OLDREVEMU");
|
||||
case DP_AUTH_HLTV:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "HLTV");
|
||||
case DP_AUTH_SC2009:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "SteamClient2009/revEmu");
|
||||
case DP_AUTH_AVSMP:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "AVSMP");
|
||||
case DP_AUTH_SXEI:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "SXEI");
|
||||
case DP_AUTH_REVEMU2013:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "REVEMU2013");
|
||||
case DP_AUTH_SSE3:
|
||||
console_print(0, "Protocol: %d, authprovider: %s", proto, "SSE3");
|
||||
}
|
||||
|
||||
if (NeedShowUpdateMsg(proto, authprov))
|
||||
{
|
||||
set_task(get_uh_interval(), "show_update_hint", BASE_TASK_ID_HINT + id, _, _, "b");
|
||||
new kick_interval = get_pcvar_num(pcvar_uh_kickinterval);
|
||||
if (kick_interval > 0)
|
||||
set_task(float(kick_interval), "kick_client", BASE_TASK_ID_KICK + id);
|
||||
}
|
||||
|
||||
return PLUGIN_CONTINUE;
|
||||
}
|
||||
|
||||
public client_disconnect(id)
|
||||
{
|
||||
remove_task(BASE_TASK_ID_HINT + id);
|
||||
remove_task(BASE_TASK_ID_KICK + id);
|
||||
}
|
||||
|
||||
Float:get_uh_interval()
|
||||
{
|
||||
new interval = get_pcvar_num(pcvar_uh_interval);
|
||||
// Check to be no less then minimum value
|
||||
return float((interval < MIN_SHOW_INTERVAL ) ? MIN_SHOW_INTERVAL : interval);
|
||||
}
|
||||
|
||||
public show_update_hint(id)
|
||||
{
|
||||
id -= BASE_TASK_ID_HINT;
|
||||
if (0 > id || id > 31)
|
||||
return;
|
||||
new url[MAX_URL_LENGTH];
|
||||
get_pcvar_string(pcvar_uh_url, url, charsmax(url));
|
||||
set_hudmessage(255, 100, 100, -1.0, 0.35, 0, 3.0, 5.0, 0.1, 0.1, 4);
|
||||
show_hudmessage(id, "%L", id, "HUDHINT");
|
||||
client_print(id, print_chat, "%L", id, "CHATHINT", url);
|
||||
}
|
||||
|
||||
public kick_client(id)
|
||||
{
|
||||
id -= BASE_TASK_ID_KICK;
|
||||
if (0 > id || id > 31)
|
||||
return;
|
||||
new url[MAX_URL_LENGTH];
|
||||
get_pcvar_string(pcvar_uh_url, url, charsmax(url));
|
||||
client_print(id, print_chat, "%L", id, "CHATHINT", url);
|
||||
new userid = get_user_userid(id);
|
||||
server_cmd("kick #%d \"%L\"", userid, id, "HUDHINT");
|
||||
}
|
||||
7
lib/dproto/amxx/updatehint.txt
Normal file
7
lib/dproto/amxx/updatehint.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
[en]
|
||||
HUDHINT = Your client is outdated. Check chat and console for download URL.
|
||||
CHATHINT = Download new client @ %s
|
||||
|
||||
[ru]
|
||||
HUDHINT = TBOU KJIUEHT YCTAPEJI. CMOTPU CCbIJIKY B 4ATE U B KOHCOJIU.
|
||||
CHATHINT = Cka4au HoBbIU kJIUHT TYT: %s
|
||||
BIN
lib/dproto/bin/Linux/dproto_i386.so
Normal file
BIN
lib/dproto/bin/Linux/dproto_i386.so
Normal file
Binary file not shown.
BIN
lib/dproto/bin/Windows/dproto.dll
Normal file
BIN
lib/dproto/bin/Windows/dproto.dll
Normal file
Binary file not shown.
252
lib/dproto/dproto.cfg
Normal file
252
lib/dproto/dproto.cfg
Normal file
@@ -0,0 +1,252 @@
|
||||
# ========================================================
|
||||
# DPROTO CONFIGURATION
|
||||
# ========================================================
|
||||
|
||||
#
|
||||
# General rule for modifying this file:
|
||||
# DONT CHANGE ANYTHING IF YOU DONT KNOW WHAT IT MEANS!
|
||||
#
|
||||
|
||||
|
||||
# ========================================================
|
||||
# AUTHID MANAGEMENT
|
||||
# ========================================================
|
||||
|
||||
# ClientID types (for cid_* options)
|
||||
# 1: Real (or generated by HW) steam (STEAM_xx:xx:xx)
|
||||
# 2: Real (or generated by HW) valve (VALVE_xx:xx:xx)
|
||||
# 3: STEAM_ by IP
|
||||
# 4: VALVE_ by IP
|
||||
# 5: Deprecated - client will be rejected
|
||||
# 6: reserved for future use
|
||||
# 7: HLTV
|
||||
# 8: STEAM_ID_LAN
|
||||
# 9: STEAM_ID_PENDING
|
||||
# 10: VALVE_ID_LAN
|
||||
# 11: VALVE_ID_PENDING
|
||||
# 12: STEAM_666:88:666
|
||||
|
||||
# Use these options to set authid's for clients
|
||||
|
||||
# for HLTV (default is HLTV [7])
|
||||
cid_HLTV = 7
|
||||
|
||||
# for p.47 clients that do not support unique id generation (default is VALVE_ by IP [4])
|
||||
cid_NoSteam47 = 4
|
||||
|
||||
# for p.48 clients that do not support unique id generation (default is VALVE_ by IP [4])
|
||||
cid_NoSteam48 = 4
|
||||
|
||||
# For Legit Steam clients (default is real STEAM_xx:xx:xx [1])
|
||||
cid_Steam = 1
|
||||
|
||||
# Client recognized as pending when they sucessfully authorized, but did not get steam id
|
||||
# REMARK: Actually, it got steamid, but it is useless (STEAM_0:0:0 for example)
|
||||
# default is STEAM_ID_PENDING [9]
|
||||
cid_SteamPending = 9
|
||||
|
||||
# For players having revEmu ( >= 9.74) on client-side:
|
||||
# default is real STEAM_xx:xx:xx [1]
|
||||
cid_RevEmu = 1
|
||||
|
||||
# For players having RevEmu 2013 on client-side:
|
||||
# default is real STEAM_xx:xx:xx [1]
|
||||
cid_RevEmu2013 = 1
|
||||
|
||||
# For players having SteamClient 2009 / revEmu > 9.82 on client-side:
|
||||
# default is real STEAM_xx:xx:xx [1]
|
||||
cid_SC2009 = 1
|
||||
|
||||
# For players having old revEmu on client-side:
|
||||
# default is real STEAM_xx:xx:xx [1]
|
||||
cid_OldRevEmu = 1
|
||||
|
||||
# For players having hCupa's SteamEmu on client-side:
|
||||
# default is real STEAM_xx:xx:xx [1]
|
||||
cid_SteamEmu = 1
|
||||
|
||||
# For players having AVSMP (Cracked Steam) on client-side:
|
||||
# default is real STEAM_xx:xx:xx [1]
|
||||
cid_AVSMP = 1
|
||||
|
||||
# For players having SmartSteamEmu > 1.2.4 on client-side:
|
||||
# default is real STEAM_xx:xx:xx [1]
|
||||
cid_SSE3 = 1
|
||||
|
||||
# For SETTI ServerScanner
|
||||
# default is STEAM_xx:xx:xx generated by IP [3]
|
||||
cid_Setti = 3
|
||||
|
||||
# For SXEI Clients
|
||||
# default is real STEAM_xx:xx:xx [1]
|
||||
cid_SXEI = 1
|
||||
|
||||
# EnableSXEIdGeneration (0 / 1)
|
||||
# Turns on steamid generation based on info sent by sXeI client
|
||||
# Enable this only if you have sXeI server installed!
|
||||
EnableSXEIdGeneration = 0
|
||||
|
||||
# SC2009_RevCompatMode (0 / 1)
|
||||
# Enable fix to make steamids generated for SC2009 compatible with revEmu
|
||||
SC2009_RevCompatMode = 1
|
||||
|
||||
# SteamEmuCompatMode (0 / 1)
|
||||
# An analog for eSTEAMATiON's EnforceSteamEmuCompatIDMode option.
|
||||
# Affects only Old RevEmu and SteamEmu emulators.
|
||||
SteamEmuCompatMode = 1
|
||||
|
||||
# OldEstCompatMode (0 / 1)
|
||||
# Enables/Disables fix for steamids generated by eST in 0.3.1 version.
|
||||
# Set this to 1 if you want to make steamids generated by eST as in < 0.3.0 versions.
|
||||
OldEstCompatMode = 0
|
||||
|
||||
# SteamIdHashSalt (string)
|
||||
# Salt string for SteamIDs hashing. Irreversibly changes SteamIDs. Applies only to SteamIDs generated by emulators.
|
||||
# Should be more than 16 chars length. If string is empty, hashing is not applied.
|
||||
SteamIdHashSalt =
|
||||
|
||||
# IPGen_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids generated by IP
|
||||
IPGen_Prefix1 = 0
|
||||
|
||||
# IPGen_Prefix2 (int)
|
||||
# STEAM_a:b:c
|
||||
# second prefix (b) for authids generated by IP
|
||||
IPGen_Prefix2 = 4
|
||||
|
||||
# Native_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids generated by native auth method (Steam)
|
||||
Native_Prefix1 = 0;
|
||||
|
||||
# SC2009_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids generated by Steamclient 2009
|
||||
SC2009_Prefix1 = 0;
|
||||
|
||||
# RevEmu_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids generated by RevEmu
|
||||
RevEmu_Prefix1 = 0;
|
||||
|
||||
# RevEmu2013_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids generated by RevEmu2013
|
||||
RevEmu2013_Prefix1 = 0;
|
||||
|
||||
# OldRevEmu_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids generated by old RevEmu
|
||||
OldRevEmu_Prefix1 = 0;
|
||||
|
||||
# SteamEmu_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids generated by SteamEmu
|
||||
SteamEmu_Prefix1 = 0;
|
||||
|
||||
# AVSMP_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids assigned for AVSMP clients (Cracked steam)
|
||||
AVSMP_Prefix1 = 0;
|
||||
|
||||
# SSE3_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids assigned for SSE3
|
||||
SSE3_Prefix1 = 0;
|
||||
|
||||
# Setti_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids assigned for Setti server scanner
|
||||
Setti_Prefix1 = 0;
|
||||
|
||||
# SXEI_Prefix1 (int)
|
||||
# STEAM_a:b:c
|
||||
# first prefix (a) for authids assigned for sXeI clients
|
||||
SXEI_Prefix1 = 0;
|
||||
|
||||
|
||||
# Note that banid will use steamid WITHOUT any prefixes!
|
||||
|
||||
|
||||
# ========================================================
|
||||
# ATTACKS SUPRESSION
|
||||
# ========================================================
|
||||
|
||||
# FakePlayers_AntiReconnect (0/1)
|
||||
# Enables detection of fakeplayers that reconnects quickly (every < 10 seconds)
|
||||
# before fake players checks have completed.
|
||||
# Default is 1 (ON).
|
||||
FakePlayers_AntiReconnect = 1
|
||||
|
||||
# FakePlayers_BanTime (minutes)
|
||||
# Dproto will ban IP spamming fakeplayers for time (in minutes) specified in this variable
|
||||
# Default is 120 minutes.
|
||||
# Use 0 for permanent ban.
|
||||
# Use negative vaules to disable ban (fake players will only be kicked).
|
||||
FakePlayers_BanTime = 120
|
||||
|
||||
# Exploits_CheckDownloads (0/1)
|
||||
# Enable checking of requested download files against precached resources.
|
||||
# Default is 1 (ON).
|
||||
Exploits_CheckDownloads = 1
|
||||
|
||||
# Exploits_DisableUploads (0/1)
|
||||
# Disable file uploads (not customizations) to the server.
|
||||
# Default is 1 (ON).
|
||||
Exploits_DisableUploads = 1
|
||||
|
||||
|
||||
# ========================================================
|
||||
# OTHER STUFF
|
||||
# ========================================================
|
||||
|
||||
# LoggingMode:
|
||||
# 0 = None
|
||||
# 1 = Console
|
||||
# 2 = Log Files
|
||||
# 3 = Both
|
||||
LoggingMode = 2
|
||||
|
||||
# ThreatsLoggingMode (0/1)
|
||||
# Enable logging of threats details.
|
||||
# Default is 0 (OFF).
|
||||
ThreatsLoggingMode = 0
|
||||
|
||||
# DisableNativeAuth (0/1)
|
||||
# Disables valve/steam auth system.
|
||||
# For p.47 Based: Server will not connect to auth servers.
|
||||
# For All: Server will not call authorization functions.
|
||||
# This is a fix for startup freeze for old (p.47) servers.
|
||||
DisableNativeAuth = 0
|
||||
|
||||
# ServerInfoAnswerType (0/1/2)
|
||||
# Sets server answer type for query requests
|
||||
# 0 = New style (Source Engine)
|
||||
# 1 = Old Style (Fix favorites list for p.47 clients)
|
||||
# 2 = Hybrid mode (Old Style sent first)
|
||||
# Default is 0 (Source Engine).
|
||||
ServerInfoAnswerType = 0
|
||||
|
||||
# Game_Name (string)
|
||||
# Sets game name displayed for clients
|
||||
# If Game_Name is empty, native game name will be used
|
||||
Game_Name =
|
||||
|
||||
# Enables fix for proper player id displaying on HLStats server monitoring
|
||||
# Enable this only if you have HLStats
|
||||
HLStatsPlayerIdFix = 0
|
||||
|
||||
# Enables spreading of user setinfo topcolor and bottomcolor settings.
|
||||
# Disable this if mod doesn't support coloring of player models.
|
||||
SpreadUserInfoColors = 1
|
||||
|
||||
# ExportVersion (0/1)
|
||||
# Enables/Disables exporting of dp_version cvar
|
||||
# 1 = dp_version cvar will be exported to server rules. It will be visible in server monitoring tools (like HLSW)
|
||||
# 0 = dp_version cvar will not be exported to server rules.
|
||||
ExportVersion = 1
|
||||
|
||||
# HLTVExcept_IP (ip addr)
|
||||
# HLTV from this IP will be able to join the server even if cid_HLTV is set to 5 (deprecated)
|
||||
HLTVExcept_IP = 127.0.0.1
|
||||
Reference in New Issue
Block a user