Trace: • start • serverchanger

NFSU Server Changer

NFSU Server Changer

Mit dem Server Changer verbindet sich Need for Speed: Underground (PC, v1.4) mit einem beliebigen Community-Server statt mit dem längst abgeschalteten EA-Server - ohne die .exe des Spiels per Hex-Editor zu ändern.

Er besteht aus zwei Teilen:

  • Plugin (scripts\NFSUServerChanger.asi): sorgt dafür, dass das Spiel den Server aus NFSUServerChanger.ini benutzt. Außerdem: ein eigenes gespeichertes Login pro Server, Hole-Punching für Rennen, ein Fix für den Wine-Absturz unter Linux und der EA-Trax-Renamer. Wird gebraucht.
  • Launcher (NFSUServerChanger.exe): zeigt die Server, die online sind, stellt den angeklickten ein und startet das Spiel; installiert und aktualisiert das Plugin. Windows und Linux. Optional.

Download: GitHub Releases
Ausführliche Anleitung (englisch): GitHub Wiki

kickStart oder Launcher?

Wer kickStart benutzt, installiert und aktualisiert das Plugin dort mit einem Klick - kopieren muss man nichts, und der Launcher wird nicht gebraucht.

Der Launcher ist eine kleine Open-Source-Alternative für alle, die nur einen Server wählen und das Spiel starten wollen, und der Nachfolger des alten LAN-Tools (nfsuclient). NFSUServerChanger.exe (Linux: NFSUServerChanger) in den Spielordner legen, starten und auf Install plugin klicken - er hält das Plugin auch aktuell.

Was ist neu für Spieler

  • Rennen ohne Portweiterleitung: Auf Servern mit Hole-Punching (kickRom Speedway) klappen Rennen auch über mobiles Internet oder hinter einem strengen Router. Geht keine direkte Verbindung, läuft das Rennen über den Server.
  • Ein Login pro Server: Jeder Server merkt sich dein Konto, beim Serverwechsel musst du nichts mehr neu eintippen.
  • Server wechseln, während das Spiel läuft: ausloggen, zurück zum Konto-Bildschirm und neu einloggen.
  • Linux: kein Absturz mehr beim Online-Gehen unter Wine/Lutris.

Manuelle Installation des Plugins (ganz ohne Launcher)

  1. NFSU.Server.Changer.v<version>.zip von den Releases herunterladen.
  2. In den Spielordner entpacken (der Ordner mit der .exe des Spiels). Danach liegt dinput8.dll (der ASI-Loader) im Spielordner und NFSUServerChanger.asi, NFSUServerChanger.ini und NFSUServerChangerTrax.csv in scripts.
  3. Den Server in scripts\NFSUServerChanger.ini eintragen:
[Server]
Host = nfs.onl

Ein leerer Host nimmt den Server, der in der .exe des Spiels steht.

Unterstützt: NFSU v1.4, nordamerikanische, europäische oder russische (SoftClub-)Fassung. Andere Versionen lehnt das Plugin beim Spielstart mit einer Meldung ab.

Konten

Jeder Server hat seine eigenen Konten - ein Konto auf einem Server gibt es auf einem anderen nicht. Das Plugin speichert ein Login pro Server: Nach dem ersten erfolgreichen Login auf einem Server wird es für diesen Server gespeichert. Wird der Server gewechselt, während der Login-Bildschirm offen ist, schlägt dieses Login fehl - einfach den Login-Bildschirm neu öffnen.

Rennen und Hole-Punching

Rennen laufen direkt zwischen den PCs der Spieler. Auf Servern mit Hole-Punching (kickRom Speedway) musst du an deinem Router nichts einstellen.

Windows: Beim ersten Mal kann ein Fenster der Windows-Firewall erscheinen, das fragt, ob Need for Speed Underground in Netzwerken kommunizieren darf. Dort auf Zugriff zulassen klicken, sonst kommen Rennen nicht zustande.

Linux: siehe Linux weiter unten.

Startet ein Rennen trotzdem nicht, kannst du helfen, die Ursache zu finden: das hier in scripts\NFSUServerChanger.ini setzen, nochmal fahren und die Datei scripts\NFSUServerChanger_HolePunch.log in #nfs-underground schicken:

[HolePunch]
Log = 1

Umstieg von nfsuclient (dem alten LAN-Tool)

nfsuclient schreibt 127.0.0.1 ps2nfs04.ea.com in die Windows-hosts-Datei (braucht Admin-Rechte) und muss während des Spielens offen bleiben; EA-Nation-Server werden dort nie als online angezeigt. Der Server Changer braucht nichts davon. In nfsuclient “Use server” abhaken und das Tool schließen, damit es seinen hosts-Eintrag entfernt, dann das Plugin installieren (und den Launcher, falls du kein kickStart benutzt).

Deine eigenen Server werden übernommen: nfsuclient und der Launcher speichern sie beide in servers.dat (ein Server pro Zeile). Lag nfsuclient im Spielordner, zeigt der Launcher sie sofort an; sonst servers.dat in den Spielordner kopieren.

Linux

  • Mit einer aktiven Firewall wie ufw den Renn-Port des Spiels freigeben: sudo ufw allow 3658/udp
  • Der Linux-Launcher startet das Spiel mit den Einstellungen seines Lutris-Eintrags oder mit Wine.
  • Wer das Spiel anders startet: den DLL-Override dinput8 auf native, builtin setzen, sonst lädt Wine das Plugin nicht.
  • Damit die Pings im Spiel funktionieren (Wine 7.13 oder neuer), müssen Ping-Sockets einmalig erlaubt werden - der Launcher bietet das an, oder:
    sudo sh -c “echo 'net.ipv4.ping_group_range = 0 2147483647' > /etc/sysctl.d/99-nfsu-ping.conf && sysctl -p /etc/sysctl.d/99-nfsu-ping.conf”

Hilfe

Frag in #nfs-underground auf dem Retro Racing Point Discord.