Gameserver oder einfach Grundsatzprobleme

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Benutzeravatar
tonibj82
Beiträge: 66
Registriert: 11.06.2010 08:59:16
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Gameserver oder einfach Grundsatzprobleme

Beitrag von tonibj82 » 28.11.2010 22:52:38

Hallo zusammen.

Nach und Nach bekomme ich immer mehr graue Haare ^^ Also mein Problem ist folgendes.

Ich soll für eine LAN einen Cod4-Server aufsetzen und soweit läuft er auch und die Einrichtung ging sehr schnell. Nur habe ich Probleme beim einbinden der Mods.

Fakten:
  • OS = Lenny
    Webserver = Apache2
    Netzwerk = staticIP
    Nameserver = Bind9
Erreichbar ist der Server und spielen kann man auch, nur bindet er nicht der weilen aus der

Code: Alles auswählen

server.cfg
ein. Bemerkbar macht sich das, weil alle Mod-ordner auf dem Client leer sind und beim Spielen nur das minimalste zur Verfügung steht.

Ich habe mal das Start-Script und eine Server.CFG in den NOPASTE getan. EVt findet ihr den Fehler.

Startscript:
NoPaste-Eintrag35140
Server.cfg:
NoPaste-Eintrag35141

Ich hoffe es gibt unter den Debianern auch ein oder zwei (oder mehr) die mir dabei weiterhelfen können.

Ich danke euch schonmal im voraus.

LG Toni
copy-past ersetzt das Denken nicht

Colttt
Beiträge: 3012
Registriert: 16.10.2008 23:25:34
Wohnort: Brandenburg
Kontaktdaten:

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von Colttt » 29.11.2010 13:47:31

ist im promodlife-ordner den die server.cfg drin?

ist der Ordner Mods auch gross geschrieben im Ordner oder nur in der config-file?!
Debian-Nutzer :D

ZABBIX Certified Specialist

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von rendegast » 29.11.2010 18:48:57

server.cfg:
Laß den Server mit strace starten,
daraus solltest Du ersehen können, wo er nach den *.cfg sucht,
wenn er die dann verarbeitet, wo er nach den Mods sucht.

Bsp für Format sv_wwwBaseURL:
//seta sv_wwwBaseURL "http://localhost/base_folder"
seta sv_wwwBaseURL "ftp://anonymous:anonymous@127.0.0.1/COD4"
"file:/Pfad" gilt nur lokal? oder liefert der cod-Server dann die Dateien aus? ist überhaupt valid?
... +set net_ip x.x.x.x. ...
Ist das nötig? Normalerweise horchen Netzwerkdienste doch automatisch an allen verfügbaren IP.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
tonibj82
Beiträge: 66
Registriert: 11.06.2010 08:59:16
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von tonibj82 » 29.11.2010 19:50:15

Danke für eure Antworten.
Also der Mod Ordner ist groß geschrieben, der war aus dem Serverpaket so schon vorgegeben.

und die cfg-datei liegt im Mod-Ordner drin.


Wie soll ich den Server starten, mit strace? was is das denn? sry aber so confirm in Sachen Linux bin ich noch nicht.
OK verfolgt die Startprozesse, (Google), aber wie schreibe ich das dann?

Code: Alles auswählen

 strace ./startblabla.sh 
oder wie?


thx
copy-past ersetzt das Denken nicht

Benutzeravatar
tonibj82
Beiträge: 66
Registriert: 11.06.2010 08:59:16
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von tonibj82 » 29.11.2010 19:57:31

So hab das Strace mal installiert und ausgeführt.


Ergebnis= NoPaste-Eintrag35142
copy-past ersetzt das Denken nicht

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von rendegast » 29.11.2010 22:24:15

So hast Du das Startskript beobachtet, sehr schön.

Code: Alles auswählen

man strace
Um die Unterprozesse der Skriptes zu beobachten (den gestarteten Server halt)

Code: Alles auswählen

strace -o /tmp/LOG -e trace=file -f ./start_stop_restart.sh start
('-e trace=file' um den Output einzugrenzen)

Nach wenigen Sekunden dürftest Du abbrechen können.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
tonibj82
Beiträge: 66
Registriert: 11.06.2010 08:59:16
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von tonibj82 » 02.12.2010 08:38:48

ja so hatte ich das beobachtet ^^

war wohl nüscht . sry aber jetz mit deiner hilfe ^^

LOG:
NoPaste-Eintrag35144
copy-past ersetzt das Denken nicht

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von rendegast » 02.12.2010 12:32:35

Jetzt in dem strace nach "cfg" gesucht:

Code: Alles auswählen

$ grep -i cfg cod4_35144.txt 
4452  stat64("/home/cod4/main/promod-esl.cfg", {st_mode=S_IFREG|0777, st_size=11992, ...}) = 0
4452  open("/home/tg/.callofduty4/mods/promodlive/fileSysCheck.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/fileSysCheck.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/fileSysCheck.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/mods/promodlive/default_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/default_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/default_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main/default_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main_shared/default_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/players/default_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/mods/promodlive/default_mp_controls.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/default_mp_controls.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/default_mp_controls.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main/default_mp_controls.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main_shared/default_mp_controls.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/players/default_mp_controls.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/mods/promodlive/default_mp_gamesettings.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/default_mp_gamesettings.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/default_mp_gamesettings.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/mods/promodlive/server_map.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/server_map.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/server_map.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/mods/promodlive/language.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/language.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/language.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/mods/promodlive/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main_shared/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/players/profiles/rankedserver/config_mp.cfg", O_RDONLY) = 24
4452  open("/home/tg/.callofduty4/mods/promodlive/promod-esl.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/promod-esl.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/promod-esl.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main/promod-esl.cfg", O_RDONLY) = 25
und darin nach wirklich vorhandenen Dateien:

Code: Alles auswählen

$ grep -i cfg cod4_35144.txt | grep -iv "no such file"
4452  stat64("/home/cod4/main/promod-esl.cfg", {st_mode=S_IFREG|0777, st_size=11992, ...}) = 0
4452  open("/home/cod4/players/profiles/rankedserver/config_mp.cfg", O_RDONLY) = 24
4452  open("/home/cod4/main/promod-esl.cfg", O_RDONLY) = 25
Deine server.cfg wird nicht referenziert.
Möglichkeit wäre, sie aus der promod-esl.cfg noch aufzurufen,
oder mit einem 'exec' aus dem Startskript heraus,
oder sie dem cod4 unterzuschieben als eine der oben per default aufgerufenen Dateien
(Sollte halt an passender Stelle im Ablauf geschehen,
auch weil beim Map-Wechsel einige Settings verloren gehen können, also dann nachgeladen werden müßten.)




Nochmal eine direkte Gegenprobe mit einer Suche nach "server":

Code: Alles auswählen

$ grep -i server cod4_35144.txt 
4452  stat64("/home/cod4/players/profiles/rankedserver", {st_mode=S_IFDIR|0777, st_size=4096, ...}) = 0
4452  open("/home/tg/.callofduty4/mods/promodlive/server_map.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/server_map.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/server_map.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/mods/promodlive/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/mods/promodlive/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/tg/.callofduty4/main/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/main_shared/profiles/rankedserver/config_mp.cfg", O_RDONLY) = -1 ENOENT (No such file or directory)
4452  open("/home/cod4/players/profiles/rankedserver/config_mp.cfg", O_RDONLY) = 24
nix "[Ss]erver.cfg".
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
tonibj82
Beiträge: 66
Registriert: 11.06.2010 08:59:16
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von tonibj82 » 02.12.2010 13:02:55

In meinem Startscript steht die cfg doch drin

Code: Alles auswählen


PARAMETERS="+set loc_language 2 +set net_ip x.x.x.x. +set net_port MeinePortNR +set dedicated 0 +set fs_game Mods/promodlive +exec promod-esl.cfg +map_rotate +set sv_maxclients 20 +set ttycon 0 +set developer 0"
Hatte ich wohl falsch gepostet, aber is doch auch egal wie ich die cfg nenne, hauptsache im startscript steht diese drin.
selbst wenn ich die cfg in den "main" ordner rein schmeiße liest er sie nicht aus. er hat zwar die passwörter etc drin aber wie gesagt der client kann die daten nicht vom Server ziehen und die Mod-Ordner sind immer wieder leer.
den richtigen Pfad hab ich hoffentlich angegeben.

Code: Alles auswählen

set sv_allowDownload "1"
set sv_wwwDownload "1"
set sv_wwwBaseURL "file:http://192.168.2.9../cod4" #<!!========Hier scheint was nicht zu stimmen!!!!!!!!!!!
set sv_wwwDlDisconnected "0"
set g_deadChat "1"
set voice_deadChat "1"
set g_gravity "800"
set sv_disableClientConsole "0"
set sv_floodProtect "1"
set g_no_script_spam "1"
set sv_reconnectlimit "4"
set sv_timeout "240"
set sv_connectTimeout "240"
set g_inactivity "0"
set sv_zombietime "0"
set sv_voice "0"
set sv_voiceQuality "0"
habe es auch schon mit

Code: Alles auswählen

localhost/mods
probiert. hab da extra nen Apache installiert und aus dem Browser (server & client) ist der Ordner erreichbar.
copy-past ersetzt das Denken nicht

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von rendegast » 02.12.2010 19:45:42

Code: Alles auswählen

... +exec promod-esl.cfg ...
Hatte ich wohl falsch gepostet, aber is doch auch egal wie ich die cfg nenne, hauptsache im startscript steht diese drin.
selbst wenn ich die cfg in den "main" ordner rein schmeiße liest er sie nicht aus.
Das ist nicht so egal, wenn es Dir um die oben ganannte promod-esl.cfg geht,
denn diese wird eingelesen:
rendegast hat geschrieben:und darin nach wirklich vorhandenen Dateien:

Code: Alles auswählen

$ grep -i cfg cod4_35144.txt | grep -iv "no such file"
4452  stat64("/home/cod4/main/promod-esl.cfg", {st_mode=S_IFREG|0777, st_size=11992, ...}) = 0
4452  open("/home/cod4/players/profiles/rankedserver/config_mp.cfg", O_RDONLY) = 24
4452  open("/home/cod4/main/promod-esl.cfg", O_RDONLY) = 25
Wenn die Einstellungen darin im Betrieb des cod4 nicht greifen,
wird sie zur falschen Zeit eingelesen?
mit anderen Einstellungen überschrieben?

Code: Alles auswählen

set sv_wwwBaseURL "file:http://192.168.2.9../cod4" #<!!========Hier scheint was nicht zu stimmen!!!!!!!!!!!
müßte wohl sein (ala obigem Beispiel):

Code: Alles auswählen

set sv_wwwBaseURL "http://192.168.2.9/cod4"
(Format des Parameters und der IP sind nicht valide)
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Benutzeravatar
tonibj82
Beiträge: 66
Registriert: 11.06.2010 08:59:16
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von tonibj82 » 03.12.2010 19:07:32

die url hatte ich auch schon. hab schon einige varianten probiert. bislang nüscht.

mit der cfg wusste ich nicht,werde ich testen, danke.


ich schreibe wenn ich es getestet habe.

:THX:
copy-past ersetzt das Denken nicht

Cholericker
Beiträge: 34
Registriert: 08.11.2010 20:44:36
Wohnort: Göttingen

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von Cholericker » 08.12.2010 08:39:29

Hey,

hast du auch schonmal versuch die server.cfg in den Main ordner zu tun ?
Mein Startbefehl von COD4 sieht ähnlich aus, nur ich habe die server.cfg im Main ordner drinn.
Wenn ich es richtig gelesen habe hast du Sie doch im mods/promodlive drin oder ?

Lg Cholericker

Benutzeravatar
tonibj82
Beiträge: 66
Registriert: 11.06.2010 08:59:16
Lizenz eigener Beiträge: GNU Free Documentation License
Kontaktdaten:

Re: Gameserver oder einfach Grundsatzprobleme

Beitrag von tonibj82 » 08.12.2010 21:53:11

Ja habe ich auch schon probiert.

Habe mir nun was anderes überlegt.

Wäre es sinnvoll einen Indianer laufen zu lassen, dem Benutzer dort ein Verzeichnis an zu legen und das Game aus dem /var/www heraus zu starten? Zumindest klappt dann der Download zu 50%. (Also wenn es nicht sein muss mache ich es rückgängig)
Dabei ist das Problem folgendes: Der Client (Lokal als auch vom www) kann die Mod-Dateien zwar laden, aber bleibt immer hängen und muss das Game mehrmals neu starten und sich neu aufschalten. Das is dann nich der Sinn des Ganzen.
Was kann die Ursache dafür sein?

URL-Angabe ist dann :

Code: Alles auswählen

/mods/promodlive
/code]



Im übrigen, möchte ich mich hier auch gleich entschuldigen für meine Noobheit, Der Ordner Mods(groß geschrieben) wie er im Original-Download war, MUSS klein geschrieben werden! (SRY Linux-Grundlagen ^^)
copy-past ersetzt das Denken nicht

Antworten