Dynamic MOTD
As noted in the description, this plugin allows sending of player/server info via GET vars to the MOTD url for easy customization of MOTD per player/server.
It will replace the MOTD already sent by the game via usermessage with a new one.
Cvars:
- dynamicmotd_url - Url to use, including info tokens. "" for default.
- dynamicmotd_title - Title to use for motd window (on supported games), including info tokens. "" for default.
- dynamicmotd_big - If enabled, uses a larger MOTD window on supported games. 0 - Disabled (default), 1 - Enabled. If this is enabled, MOTD is delayed until first team selection.
- dynamicmotd_custom - The value here will be used when replacing the {SERVER_CUSTOM} token.
Info Tokens:
- {STEAM_ID} (in same format shown on "status" command for the game)
- {USER_ID}
- {FRIEND_ID} ('community id', a.k.a. 64-bit steam id)
- {NAME}
- {IP}
- {LANGUAGE} (value of client's cl_language var)
- {RATE} (value of client's rate var)
- {SERVER_IP}
- {SERVER_PORT}
- {SERVER_NAME} (server hostname)
- {SERVER_CUSTOM} (value of dynamicmotd_custom)
- {L4D_GAMEMODE} (current game mode string on l4d and l4d2)
- {CURRENT_MAP}
- {NEXT_MAP}
- {GAMEDIR}
- {CURPLAYERS}
- {MAXPLAYERS}
- {BOTPLAYERS}
- {STEAM2_ID} (explicit Steam2 format, ex. STEAM_0:1:4153990 or STEAM_1:1:4153990)
- {STEAM3_ID} (explicit Steam3 format, ex. [U:1:8307981])
- {STEAM_ACCTID} (Steam account id, ex. 8307981)
- {SERVER_STEAM_ID} (server 64-bit Steam ID)
- {SERVER_STEAM3_ID} (server Steam3-formatted id, ex. [A:1293500416:8019] or [G:1:123])
- {SERVER_STEAM_ACCT_ID} (server Steam account id)
And for those with
SteamWorks or
SteamTools installed:
- {VAC_STATUS} (0/1)
- {SERVER_PUB_IP} (the server's public ip)
- {STEAM_CONNSTATUS} (0/1)
Example Url: http://example.com/motd.php?communityid={FRIEND_ID}&name={NAME}
I've only personally tested this on TF2 and CS:S, but it should work on all games that support a regular MOTD.
Note: Due to limitations in the engine, the expanded url has a max length of 255 characters.
The Get Plugin link will not work due to the SteamWorks and SteamTools includes being required at compile-time.