Skip to main content

Settings

ReUnion is configured entirely through reunion.cfg. The default file is heavily commented — this page summarizes each section.

warning

The file itself opens with "don't change anything if you don't know what it means" for a reason — most defaults are already tuned. Change values deliberately, one at a time.

Client ID types (cid_*)

Each cid_* option assigns an ID type to a category of client. The available type codes are:

CodeMeaning
1Real (or hardware-generated) Steam ID (STEAM_xx:xx:xx).
2Real (or hardware-generated) Valve ID (VALVE_xx:xx:xx).
3STEAM_ ID generated from the client's IP.
4VALVE_ ID generated from the client's IP.
5Deprecated — the client is rejected.
6Reserved for future use.
7HLTV.
8STEAM_ID_LAN.
9STEAM_ID_PENDING.
10VALVE_ID_LAN.
11VALVE_ID_PENDING.
12STEAM_666:88:666.
OptionDefaultApplies to
cid_Steam1Legitimate Steam clients.
cid_SteamPending5Clients that authorized successfully but didn't receive a usable Steam ID.
cid_HLTV5HLTV relays.
cid_NoSteam475Protocol 47 clients without unique ID generation support.
cid_NoSteam485Protocol 48 clients without unique ID generation support.
cid_RevEmu1revEmu ≥ 9.74.
cid_RevEmu20131RevEmu 2013.
cid_SC20091SteamClient 2009 / revEmu > 9.82.
cid_OldRevEmu1Older revEmu versions.
cid_SteamEmu1hCupa's SteamEmu.
cid_AVSMP1AVSMP (cracked Steam).
cid_Setti3SETTI server scanner.
cid_SXEI1sXeI clients.

HLTVExcept_IP (default 127.0.0.1) lets an HLTV from a specific IP join even when cid_HLTV rejects HLTV clients.

Auth settings

OptionDefaultDescription
AuthVersion4Authorization protocol version: 1 DProto (deprecated), 2 Reunion 2015–2018, 3 Reunion 2018–2024, 4 current (recommended).
SteamIdHashSalt(empty)Salt for hashing generated Steam IDs, irreversibly changing them to prevent ID stealing. Recommended length 32+ characters, minimum 16. With AuthVersion >= 3 an empty value makes ReUnion fail to initialize — set 0 explicitly to disable hashing (not recommended) instead of leaving it empty.
SC2009_RevCompatMode1Makes SC2009-generated IDs compatible with revEmu. Cannot be disabled when AuthVersion >= 3.
EnableSXEIdGeneration0Enables ID generation based on sXeI client data. Only enable this if you actually run an sXeI-compatible setup.
EnableGenPrefix20Adds a second ID prefix to reduce collision chance for generated IDs. Only effective with SteamIdHashSalt set; cannot be disabled with AuthVersion >= 3.

Legacy authid prefixes

The IPGen_Prefix1/2, Native_Prefix1, RevEmu*_Prefix1, SC2009_Prefix1, OldRevEmu_Prefix1, SteamEmu_Prefix1, AVSMP_Prefix1, Setti_Prefix1, and SXEI_Prefix1 options only apply when AuthVersion is 1 or 2. With the recommended AuthVersion = 4, this whole section is ignored — leave it at its defaults.

Regardless of version, banid always uses the SteamID without any prefix.

Server queries

OptionDefaultDescription
ServerInfoAnswerType00 new-style (Steam) answers (recommended), 1 old-style GoldSrc answers, 2 hybrid — visible to both, but answers every query 3 times.
FixBuggedQuery1Fixes clients with a buggy server browser that would otherwise hang on connect.
EnableQueryLimiter1Rate-limits server queries (TSource, player list, etc.). Set 0 if you already rate-limit externally.
QueryFloodBanLevel400Queries/second that triggers an IP ban. Range 3202048; legitimate traffic rarely exceeds ~80/sec.
QueryFloodBanTime10Ban duration in minutes for query flooding, 060. 0 blocks without banning.
QueryLimiterExceptIP(section, empty)List of IPs (one per line under [QueryLimiterExceptIP]) excluded from the query limiter.
AllowSplitPackets0Allow splitting outgoing packets larger than 1400 bytes, as the original Steam client does. Some monitoring tools don't support this.
IDClientsLimit1Max simultaneous clients from the same Steam ID, 032. 0 disables the limit. Useful when debugging with multiple client instances.

Logging

OptionDefaultDescription
LoggingMode00 none, 1 console, 2 log files, 3 both.

Frequently asked

  • I set SteamIdHashSalt like in DProto, but players get different SteamIDs. ReUnion uses a different, more secure hashing algorithm. Knowing a player's SteamID from before SteamIdHashSalt was enabled doesn't help reproduce it afterward.
  • Can I do anything about SteamID changers? No — ID changers generate valid authorization tickets, so the server can't tell an ID was substituted. Setting SteamIdHashSalt at least prevents someone from deliberately spoofing a specific other player's ID.
  • Some server monitoring tools can't fetch the player list. They're likely using an outdated query format; use a current query library such as PHP-Source-Query or equivalent.
  • DProto had a Game_Name option; ReUnion doesn't. Change the reported game name from a plugin instead.