[TUT] Battlefield 2 LAN Ranked Server mit Patch 1.50
-
Probiere bei dem Server in der Hosts-Datei anstatt 127.0.0.1 bzw. localhost mal die LAN-IP einzugeben, so wie Du es beim Client gemacht hast.
Mfg,
Battlestr1k3 -
Hallo,
ich versuche mit Hilfe dieser Anleitung einen ranked server im LAN zum Laufen zu bekommen...
Bis jetzt erfolglos.Der BF2 Server stürzt immer dann ab, wenn der Client connecten will.
Habe Battlefield und alle restlichen Programme (die mit diesem Projekt im Kontext stehen) deinstalliert.
Jetzt habe ich alles nochmal installiert und genau protokolliert, was ich gemacht habe, hoffentlich hilft es euch...~Protokoll:~
Client: Windows 7 Professional 64bit
Server: Virtual PC mit XP-Mode (XP SP3)
Server und Client haben unterschiedliche BF2 Keys.
Ping von Server zu Client funktioniert, umgekehrt auch.
Vorläufig sind die Firewalls auf beiden Rechnern während den Testläufen deaktiviert.
Außerdem kann der Client sich mit der "normalen" Version auf den "normalen" dedicated server verbinden.Server (10.0.0.1)
- Battlefield 2 Installation (deutsch):
Dir: "C:\Programme\EA GAMES\Battlefield 2"
- Ohne Addons.
- Ohne BF2-VoIP-Server.
- Mit PunkBuster.
- Ohne GameSpy Arcade.
BF2 Patch 1.41 (deutsch) installiert.
BF2 Patch 1.5 (deutsch) installiert.
- XAMPP
Installiere "xampp-win32-1.7.3" nach "C:\".
Erstelle neue Datenbank "bf2lanranking".
Importiere erfolgreich „bf2statistics.sql“ (21421 Abfragen).
Kopiere "ASP" nach „C:\xampp\htdocs".
Ändere folgendes in config.php:
[code]$dbhost = 'localhost'; // database host name
$dbname = 'bf2lanranking'; // database name
$dbuser = 'benutzer'; // database user name
$dbpass = 'pwd'; // database user password[/code]
und
[code]$allunlocks = 1; // 0=earned, 1=all (damit ich gleich sehe, ob alles fuktioniert)
[/code]
hosts-Datei
füge diese zeile an:
[code]10.0.0.1 bf2web.gamespy.com[/code]
Kopiere den Ordner „..\bf2statistics-\xpack\python_xpack\bf2“ nach "C:\Programme\EA GAMES\Battlefield 2\ python\bf2"
Da dieser Ornder schon vorhanden ist, klicke ich auf "integrieren".**Client **(10.0.0.2)
- Battlefield 2 Installation (deutsch):
Dir: "C:\Program Files (x86)\EA GAMES\Battlefield 2"
- Ohne Addons.
- Ohne BF2-VoIP-Server.
- Mit PunkBuster.
- Ohne GameSpy Arcade.
BF2 Patch 1.41 (deutsch) installiert.
BF2 Patch 1.5 (deutsch) installiert.
- bf2stats:
Habe folgendes in bf2stats.bat geändert:
[code]set BF2_ASP_SERVER=10.0.0.1
set GAMESPY_EMULATOR_SERVER=10.0.0.1[/code]
Außerdem kann er nicht das Installationsverzeichnis vpn BF2 finden.
Habe folgende Zeilen gelöscht:
[code]REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\EA GAMES\Battlefield 2" /v InstallDir >NUL 2>&1
IF %ERRORLEVEL% == 1 goto installpath[/code]
Ersetze Folgendes..
[code]echo Detecting your Battlefield 2 Install Directory . . .
FOR /F "Skip=2 tokens=2*" %%i IN ('reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\EA Games\Battlefield 2" /V "InstallDir"') do set "bf2dir=%%j"
echo Your Battlefield 2 Install Directory is: %bf2dir%
echo.[/code]
mit...
[code]set bf2dir=C:\Program Files (x86)\EA GAMES\Battlefield 2[/code]
(braucht keine "", da die später noch angefügt werden:
[code]PUSHD %bf2dir%
"%bf2dir%\BF2.exe" %bf2parameters%
echo.Reverting operations:
echo.[/code]
Wegen der oben genannten Fehlermeldung habe ich Folgendes...
[code]set bf2parameters=+modPath mods/bf2 +fullscreen 1[/code]
durch ...
[code]set bf2parameters=+modPath mods/bf2 +fullscreen 0[/code]
...ersetzt.
bf2stats.bat erstellt host.ics mit diesem Inhalt:
[code]10.0.0.1 gpcm.gamespy.com
10.0.0.1 gpsp.gamespy.com
10.0.0.1 gamestats.gamespy.com
10.0.0.1 bf2web.gamespy.com[/code]Jetzt zum Problem:
- Server
Starte Apache und MySQL Servers ("Running" steht bei beiden).
Starte launch.bat (gs_login_server_0.2.2).
Starte Battlefield Dediacted Server mit
[code]"bf2_w32ded.exe" +dedicated 1 +ranked 1[/code] - Client
Starte bf2 über bf2stats.bat (als Administrator ausführen).
Spiel startet.
Klicke auf "Konto Finden".
- Aktiviere "Benutzername".
- Benutzername: Test
- Password: pass
Klicke auf "Konto Finden".
Lande im Hauptmenü.
Klicke auf "LAN mitspielen".
Wähle Server aus und klicke beitreten.
=> BF2 hängt (auf Client)
=> Fehlermeldung (auf Server)
[code]BF2 Error
Debug assertion failed!
Version: 1.5.3153-802.0 Build date:2009-8-20 17:8
Module: Persistence
File: C:\dice\Projects\BF2Branches\Patch_1_50\Code\BF2\Game\Persistence\HTTPRequest.cpp
Line: 445Text: The request is invalid due to an invalid GameSpy URL.
Current confile:
Abbrechen | Wiederholen | Weiter[/code]
=> Dedicated Server stürzt ab.Ich bin ratlos...
Warum funktioniert es nicht?
..ungültige GameSpy URL?
Habe versucht am Client im Browser "bf2web.gamespy.com" zu öffnen.
Es wird die XAMPP-Seite (vom Server) angezeigt.Vielen Dank im Voraus!
- Battlefield 2 Installation (deutsch):
-
Habe dich config.php nochmal geändert (so wie im Tutorial):
[code]
$dbhost = 'localhost';
$dbname = 'bf2lanranking';
$dbuser = 'root';
$dbpass = ''; [/code]Der Fehler bleibt aber der selbe.
Ich glaube auch eher, dass es vielleicht an den Zugriffsrechten auf dem Server liegt.
Eine Verbindung zum Server steht, da ich in BF ein "Konto finden" kann.
Erst beim Beitreten stürzt das Spiel ab. -
Hi letssee,
bei einigen anderen Leuten tritt dieser Fehler leider auch auf.
Nach einigem Suchen bin ich auf folgenden Foren-Eintrag gestoßen:
http://www.battlefieldsingleplayer.com/ ... opic=16635Der User umgeht den Fehler, indem er einen DNS-Server (Nameserver) aufsetzt, welcher alle Requests von Gamespy (vgl. die hosts-Datei) an eien IP weiterleitet, auf der ein Proxy-Server läuft, welcher den Request an Gamespy übermittelt und die empfangenen Daten weiterverarbeitet und gegebenenfalls ändert.
Der Nachteil an dieser Methode ist die Tatsache, dass eine funktionierende Internet-Verbindung benötigt wird.Mfg,
Battlestr1k3Edit: Oder schau mal hier: http://www.bf2statistics.com/e107_plugi ... c.php?7127
-
@http://www.battlefieldsingleplayer.com/ ... opic=16635
"To summarize; to run a local server with full unlocks, all i need is a single entry in my hosts file and a running webserver. No XAMPP, no MySQL, no stat-system."
Wollte diesen Server wegen dem ranking, nicht um alle Waffen freizuschalten.@http://www.bf2statistics.com/e107_plugi ... c.php?7127
"Remove the 127.0.0.1 (or any IP) bf2web.gamespy.com from hosts file, but let it be in the hosts.ics"
host.ics existiert nur beim Client, dort habe ich aber nix in die host Datei geschrieben.
Oder meint er hier die Datei beim Server?Brauche ich überhaupt einen Eintrag beim Server in der host-datei?
Was leitet der den genau um? -
Mach mal an die Verknüpfung den Paramater +fullscreen 0 anstatt +fullscreen 1 damit Du eine eventuelle Fehlermeldung siehst.
-
Btw. habe Win 7 Pro x64
Originale BF2 Edition komplett installiert (ohne extra Gamespy Software) und danach den Patch 1.5 eingespielt.
Xamp läuft, neuere von dir bereitgestellte Datenbank eingefügt, Tutorial mehrfach gecheckt ob ich etwas falsch gemacht habe. Achja es wurden durch die Installation von BF2 Complete kein Reg Edintrag mit dem Install Dir erstellt, wesegen ich diesen selber erstellte was dann auch wunderbar ging. Das ich selber auf meinen Server connecte sehe ich im CMD Fenster.Hier die Fehlermeldung:
-
Dies ist in der Host Datei eingetragen:
127.0.0.1 gpcm.gamespy.com
127.0.0.1 gpsp.gamespy.com
127.0.0.1 gamestats.gamespy.com
127.0.0.1 battlefield2.available.gamespy.com
127.0.0.1 bf2web.gamespy.comStatt "New Account" habe ich "Account Retrieve" genutzt, da dies entegen dem Tutorial auch in den Files steht das man es so machen soll :secret:
-
Danke Dir, habs geändert, das war bei Deinen Vorpostern wahrscheinlich der Fehler.
Das Konto finden müsste gehen.Mfg,
Battlestr1k3
-
Leider stürzt das Spiel dennoch mit dieser Fehlermeldung ab:
http://www.abload.de/img/sshot-1szsh8.png
Ich wollte nur darauf hinweisen das man account retrieve nutzen muss für andere und dein Tutorial. Ich selber habe dies aus den Files des GS Emus gelesen.
Weißt du wieso das Spiel abstürzt? Die Gamespy URL scheint nicht zu stimmen, aber die Host Datei ist richtig präpariert, Der SQL und Apache Server läuft, die Datenbank wurde fehlerfrei eingefügt, Das Spiel habe ich über bs2stats.bat dankt meiner Anpassung starten können und der GS Server Emu läuft und meldet mir wenn ich darauf connecten möchte auch direkt.
Ich habe wie gesagt Win 7 x64 und die BF2 Complete Edition installiert.
-
Vielleicht handelt es sich um eine Art "Bug" von Windows 7. Probiere es eventuell mal mit der Methode, welche ich weiter oben gepostet habe. Damit müsste sich dieses Problem beheben lassen.
Mfg,
Battlestr1k3 -
hey der auf seite 6 verlinkte lanmanager ist ja ausdrücklich für 1.4, funzt der auch mit 1.5? werde mich erstmal versuchen hier durchzuwursten:)
-
Hi, der sollte auch für 1.5 funktionieren, da es ja im Prinzip das gleiche Verfahren ist ;)
-
hey cool das du hier noch unterwegs bist:) also ich hab jetzt mit 4 verschiedenen anleitungen gebastelt aber gefunzt hat bis her nix, glaub ich stell ich mich etwas glatt an. ich installier bf2 jetzt mal ohne addons neu und dann meld ich mich wieder wenn es nicht klappt^^ am samstag is lan...
-
sry war vorhin als gast unterwegs.
edit: ich bin schon sooo weit, nur noch ein kleiner rest bei dem ich hilfe brauche!!:)
mit dem lanmanager kann ich jetzt starten und mich einloggen und auf den ranked server joinen. ich bekomme abzeichen ohne abstürze aber die waffen sind nicht wie geplant freigeschaltet. außerdem wird der fortschritt nicht in der datenbank gespeichert, ich fange jedes spiel von vorne an.
irgendwas scheint noch nicht zu funktionieren. ich kann auch im rang aufsteigen, das wird aber nirgends angezeigt. das bfhq macht gar nix und auch im browser seh ich nix.
wenn wir alle offline sind können wir die dann bei einem levelup waffen freischalten oder geht das nur im bfhq mit internet?
auf das rängesystem könnte ich zur not auch verzichten wenn wenigstens alle waffen frei wären.
hosts.ics
127.0.0.1 bf2web.gamespy.com
127.0.0.1 gpcm.gamespy.com
127.0.0.1 gpsp.gamespy.com
127.0.0.1 gamestats.gamespy.com
127.0.0.1 battelfield2.avaible.gamespy.comwas ist der unterschied zwischen python und python_xpack? hab nur ein normales pythonverzeichniss und da soll das xpack rein? hab versuchshalber noch nen pfad angepasst zur htdocs/asp in der snapshot.py
mit deiner methode startet bf2 mit der batch leider nicht. staticmesh.fx not found. der betreffende ordner is tatsächlich leer, ka wieso. übern lanmanager und normal funzt bf2 aber ohne probleme, hab auch mal testweise online gezockt. hab die gesamten shader ausm clientshader rübergepackt.
wenn ich es nicht auf meinem externen bildschirm laufen lasse kommt die fehlermeldung nich und es kackt einfach so ab...das soll einer verstehen.
-
Hey Servus,
Erstmal Danke für das Klasse Tutorial. :dance4:
Ich habe folgende Probleme:
Der Server läuft und ich kann verbinden.
Problem 1: Die Waffen sind nicht unlocked obwohl ich in der config die "1" eingestellt hab.Problem 2: Sobald ich die erste Auszeichnung bekomme crashed der Client auf den Desktop. Ohne Fehlermeldung
Ich hab WinXP 32bit und BF2 1.5
Danke und Gruß
Christian -
das problem mit den unlocks hab ich auch^^ die abstürze hab ich durch korrekte adressen wegbekommen. da stimmt also iwas nicht. anschließend werden die unlocks aber nicht gespeichert. denke da kann uns nur der meister weiterhelfen.