CS2 Server mit Metamod:Source 2.0 und CounterStrikeSharp
CS2 hat das Plugin-Ökosystem von CS:GO grundlegend umgebaut. Dieser Beitrag dokumentiert den aktuellen Stand: Wie man einen CS2-Dedicated-Server aufzieht, Metamod:Source 2.0 integriert und CounterStrikeSharp (CS#) für C#-Plugins zum Laufen bringt.
Serverinstallation via SteamCMD
steamcmd +force_install_dir /opt/cs2server +login anonymous +app_update 730 validate +quit
CS2 hat App-ID 730 — identisch mit CS:GO. SteamCMD erkennt anhand der installierten Dateien automatisch, welche Version zu laden ist. Anonymous-Login reicht für den Dedicated Server.
Der gameinfo.gi-Patch — kritisches Detail
Ohne diesen Patch startet der Server, aber Metamod:Source wird nicht geladen. Die Datei game/csgo/gameinfo.gi muss manuell angepasst werden:
// In den SearchPaths-Block einfügen, direkt nach "Game_LowViolence":
Game csgo/addons/metamod
Dieser Eintrag sagt der Source-2-Engine, wo sie Addons suchen soll. Nach jedem CS2-Update wird die Datei überschrieben — der Patch muss erneut angewendet werden.
Metamod:Source 2.0
Metamod:Source 2.0 ist eine komplette Neuentwicklung für die Source-2-Engine. Die Dev-Builds werden täglich auf sourcemm.net veröffentlicht. Entpacken nach game/csgo/addons/metamod/, dann in der Serverkonsole bestätigen:
meta list
// Ausgabe sollte Metamod:Source 2.x.x anzeigen
CounterStrikeSharp
CS# ersetzt SourceMod für CS2 — Plugins werden in C# geschrieben und via .NET-Runtime geladen. Das ermöglicht moderne Entwicklung mit Typsicherheit und voller IDE-Unterstützung.
# Release von GitHub entpacken nach:
# game/csgo/addons/counterstrikesharp/
# Minimales Plugin-Grundgerüst (C#):
public class MyPlugin : BasePlugin
{
public override string ModuleName => "MyPlugin";
public override string ModuleVersion => "1.0.0";
public override void Load(bool hotReload)
{
Logger.LogInformation("Plugin geladen!");
}
}
Bekannte Tücken
- gameinfo.gi nach Updates: Automatisch neu patchen via Update-Skript
- .NET Runtime: CS# erfordert eine passende .NET-Version auf dem Host — beim ersten Start prüfen
- Tickrate: CS2 läuft intern mit 64-Tick, Server-seitiges Überschreiben ist eingeschränkt
- Konsolenvariablen: Viele CS:GO-Cvars existieren in CS2 nicht mehr oder wurden umbenannt
Fazit
CS2-Server-Betrieb ist anspruchsvoller als CS:GO — das Ökosystem ist jung, Updates kommen häufig, und der gameinfo.gi-Patch bleibt eine Dauerbaustelle. Wer bereit ist, diesen Overhead zu tragen, bekommt eine moderne Plattform mit C#-Plugin-Entwicklung und aktiver Community.