"Hilfe" für eine Script

crossshooter
Huhu,

also ich habe folgendes Problem... Ich hab mir ein Shell-Script geschrieben, das meine Redirect CoD2 Downloads vor "Mißbrauch" schützen soll... Das Script ändert alle x Stunden den Namen des Ordners, der den Mod -und mainordner enthält... Außerdem schreibt er diese Änderung in die "redirect.cfg", die alle Variablen für den Ingame Download enthält... Soweit funktioniert auch alles, nur muss ich es jetzt irgentwie schaffen dem Server mitzuteilen, dass er die redirect.cfg erneut ausführen soll nachdem die Pfadämderung vorgenommen wurde... Sonst könnten alle Spieler ja nichts bis zum nächsten Mapchange runterladen...

Hoffe, dass mir jemand helfen kann...
MikeTNT
Ich glaube nicht, daß es hierfür eine Lösung gibt, außer das Script kann überwachen, wann eine Map sich dem Ende nähert und wann gerade niemand am Laden ist.
Insofern finde ich diese Idee nicht gut, da du nie ausschließen kannst, daß der Pfad gerade geändert wird, wenn Leute am Downloaden sind.

Ich habe mich daher zu dem simplen Plan B entschlossen:
Mein Pfadname ist so lang, daß er im Spiel nicht mehr komplett angezeigt wird, egal welche AUflösung man wählt. Da der Pfad nicht in der Console steht, schafft es ein normalsterblicher User nicht, den kompletten Pfad zu entschlüsseln.

Beispiel:
Statt dem Pfad:
https://www.opferlamm-clan.de/mods/main

benutzt man einen ellenlangen Phantasiepfad:
https://www.opferlamm-clan.de/was/fuer/ein/schoener/tag/laberlaber/abcdefg/
mods/main

Das sollte eigentlich ausreichen, damit kein anderer den Pfad klauen kann.

cu Mike
crossshooter
Ist eigentlich kein Problem... Leute, die Laden, während der Pfad geändert wird können problemlos zuende saugen... Also muss man garnicht bis zum Mapende warten... Die Schwierigkeit ist eben nur dem Server zu sagen, dass er ein "exec redirect.cfg" machen soll.... (Und ich will das nicht jede Minute per RCon eingeben Augenzwinkern )

Das einzige was man versuchen könnte wäre in die Server.cfg ein exec download.cfg vor der maprotation einzbauen... Diese download.cfg müsste dann so aussehen...

Code einblendenCode angehängt. Klicke hier zum Ein-/Ausblenden

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
exec redirect.cfg
wait 15
exec redirect.cfg
wait 1000 (sind das 10 Sekunden??? )
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
wait 1000
exec redirect.cfg
 usw...

schutzgeist
evtl. einfach am Ende Deines shellscriptes ein kleines perl/php script aufrufen, welches einfach nur einen socket zum rcon-port öffnet, sich einloggd und den entsprechenden exec-Befehl ausführt. Für php wäre da z. B. dieser Aufruf interessant:

http://de3.php.net/manual/en/function.fsockopen.php

Das Rcon-Protokoll kannst Du Dir aus den sourcen diverser Status/Rcon-Tools abschauen, hilfreich hier: http://www.sourceforge.net

Gruß,
Schutzge!st
MIK
@Cross: Das mit dem Script hatte ich mal versucht, hatte mal ein Script gebastelt was genau bis zum Rundende mitgezählt hat und anschließend eine Statsanimation geladen hat. Hätte auch alles wunderbar funktioniert, allerdings war ich so lange wie das Script lief, Bewegungsunfähig und der Ping stieg ins Extreme! Von daher würde ich Dir von dem Script abraten, denke es sprengt die Performance vom Server.

Was Schutzgeist geschrieben hat, würde ich auch vorschlagen. Im Endeffekt musst Du ja nur ein PHP Script schreiben, was am Ende vom Ordnerumbennen aufgerufen wird, und den exec Befehl für das Script sendet. Denke das sollte klappen.
crossshooter
Jup. An sowas hatte ich auch gedacht, da ich aber von PHP 0 Ahnung habe isses daran gescheitert... Das Andere, war nur ne Notlösung Augenzwinkern