Hallo Leute!
Ich hatte eine Idee: Man kann Maps von allen möglichen Servern runterladen, die der User in einer Datei definiert (also wie bei Ubuntu mit APT in der /etc/apt/sources.list). Ich hab mal nachgedacht, eventuell ist das sogar möglich!
Wenn ich wieder an den PC darf, dann werde ich mal ein Script basteln.
Also, eine solche Datei sähe so aus:
Hier oben steht eine Anleitung zum Reinbasteln neuer Einträge, Sicherheitshinweise etc.
//~Gesamtzahl
//Gesamtzahl der Einträge (muss User eintragen)
//~1server
http://www.server1.de
//~1ort
/maps.php
//~2server
http://www.server2.de
//~2ort
/list.php
//.....
Die Trennung zwischen „Ort“ und „Server“ ist wegen der Syntax des Befehls callcript so.
Dann gibt eine Einzelspieler-Map, auf der nur Maps runtergeladen werden. Dort hat man dann ein Schild (kommt gleich).
Diese Map liest beim Start mit einer Schleife diese Liste aus (daher die Gesamtzahl) und legt Buttons in einer msgbox an , je nachdem, welchen Button man wählt, wird die entsprechende Server-Adresse mit dem Pfad in einer globalen Variable gespeichert (Knackpunkt 1: Es gibt nur 10 Buttons pro Seite...).
Dann wählt man als Spieler das Schild. Dort kommt ein neues Fenster, das die Datei auf dem Server ausliest, die dann so aussieht
map1.s2
map2.s2
map3.s2...
Die wird dann per callscript erst in den Buffer, und dann häppchenweise ausgelesen (Knackpunkt 2: Geht das überhaupt? Evtl. muss DC noch was ändern, wird so schwer ja nicht sein...) und es werden wieder Buttons erzeugt. Dort sieht der Spieler, wie die Dateien heißen (damit er nur *.s2 und nicht *.exe holt) und kann sie dann zum DL auswählen. Map kommt in eine zweite globale Variable.
Dann wählt er nochmal das Schild, die Map wird mit downloadfile geladen und das „Spiel“ beendet. (Knackpunkt 3: Man braucht noch irgendwie den Pfad zur Datei...)
Eventuell braucht man das Schild gar nicht, weiß nicht, ob „dialogue“ mit den globalen Variablen auch sauber umgeht...
Meint ihr das ist möglich?
Für einiger der Knackpunkte die ich gefunden habe, hätte ich schon Lösungsansätze:
Punkt 1: Man erstellt auf der Insel halt viele Schilder. Wenn man es wählt, dann bekommt man eine msgbox mit der Serveradresse und ner Frage, ob man diesen Server wählen will. Wenn man mit „Ja“ antwortet werden alle Schilder wieder gelöscht und es geht weiter.
Punkt 3: Eventuell kann man ja in seiner Server-Datei anstatt des Ortes einen Ordner angeben, der dann als Pfad fungiert. Dort ist dann eine index.php drin, die dann auf den meisten Servern ja DirectoryIndex ist und somit bei callscript aufgerufen werden müsste...
Vielen Dank fürs Lesen und schreibt eure Meinung! Hoffentlich schaffe ich das Script und hoffentlich kommt sowas dann in die ExtMod