HAllo,
Ich hatte mal einen Gameserver der das automatisch eingetragen hat.
Wie geht das??
THX
Maps automatisch eintragen. im Maplist
-
-
Hi,
ähhmmmm...was ist denn das für eine Frage??? Also ich verstehe das so, dass du meinst, dass ein Tool die Maps im "maps"-Ordner ausliest und dann automatisch in den Mapcycle einträgt...?
mFg -=|XiCoN|[FJS]=-
-
Man nehme eine riesen Mapliste wie z.B.
http://forum.ylabs.de/viewtopic.php?t=102
und trägt alle Maps in der maps.cfg von Clanmod ein.
Sobald nun eine der Maps, die in dieser Liste eingetragen sind auf den Server hochgeladen wird, wird diese automatisch in der Mapliste von Clanmod angezeigt.
Die Maps, welche nicht installiert sind aber eingetragen sind, werden nicht angezeigt.
Ich hoffe, dass das deine Frage war.
-
Ich versuche mich auch gerade darin ein bash script zu schreiben, welches automatisch die .bsp files aus dem maps ordner liest und diese in die maplist.txt schreibt...
mit folgendem command bin ich sicher mal auf dem richtigen weg:
- Die Dateiendung ".bsp" ist aber überall noch dran. Das kann ich aber im Notfall in einem zweiten script rauslöschen....
Wäre nett, wenn jemand gleich eine Lösung hätte, wie ich die filenamen schon im find query removen kann...
-
jetzt hab ichs grade selber geschafft...
Für alle, die es interessiert... Einfach ein bash file im cstrike ordner erstellen mit folgendem Inhalt:
Bash
Alles anzeigen#!/bin/bash rm maplist.txt find cstrike/ -name *.bsp -printf "%f\n" > search.txt cat search.txt | while read line do IFS="." set -- $line echo "$1" >> maplist.txt echo "$1 wurde eingefügt" done
Wenn ihr wollt, könnt das gleiche dann natürlich auch gleich in die mapcycle und votemaplist schreiben.
Funktioniert wunderbar *stolzsei*
PS. Das ganze führt ihr am besten per crownjob einmal im tag aus. So können z.b die clanmitglieder ihre maps auf einen ftp stellen, in der nacht werden sie in den maps ordner kopiert und anschliessen gleich die maplist erstellt....
-
-
Ich denk mal normale datei erstellen und dann zu *.sh umbenennen
-
-
-
-
Danke es funktioniert !!
Wie geht das mit dem chronjob ? -
-
und wenn ich das in eine bestimmten ordner haben will...
find cstrike/ -name *.bsp -printf "%f\n" > verzeichnis/datei ??
geht das?? -
Hab das ausprobiert, aber erstens sagt er bei mir auch am Anfang:
Zitat
rm: Entfernen von maplist.txt nicht möglich: Datei oder Verzeichnis nicht gefundenerstellt aber trotz allem die Maplist.txt, aber halt in dem Ordner vor CSTRIKE oder HL2MP, habs für beide gemacht jeweils. Er packt die Maplist.txt nicht in den CSTRIKE oder HL2MP Ordner sondern in den gleichen wo das Script ist.
-
-
Vielen Dank. :wink: Funtz prima.
-
habe die .sh datei erstellt und in cstrike ordner gepackt was muss ich nun machen damit das script z.b. alle 12 stunden sich von alleine ausführt?
-
Zitat von FoXy666
habe die .sh datei erstellt und in cstrike ordner gepackt was muss ich nun machen damit das script z.b. alle 12 stunden sich von alleine ausführt?
du musst einen cronjob erstellen. wurde eine seite früher schon gesagt....
aber hier nochmals für alle direkt:Nun wird das script jeden Tag um 06:02 ausgeführt. [/quote]
-
Ich möchte euch noch einen weg mit awk aufzeigen wie ich es eine Zeitlang benutzt habe.
find cstrike/maps -name *.bsp | awk -F / '{print $3}' | awk -F . '{print $1}' > cstrike/maplist.txt
Vorteil: Funktioniert ohne den umweg über die zweite Datei.
'dibs
-
Ich möchte mein obenstehendes script ein bischen erweitern. und zwar möchte ich ein zweites txtfile hinzuziehen, in dem alle maps stehen, die NICHT in die Maplist aufgenommen werden sollen. Damit soll erreicht werden, dass die standard maps (de_dust, de_aztec, usw...) nicht in die Maplist aufgenommen werden. Habe aber leider kein plan, wie ich sowas machen könnte, ausser das file vorgängig in ein array zu lesen...
Jemand eine idee? Der IF sollte dann etwa so aussehen:
if [$maplisteintrag NOT IN exlude_liste.txt]; then
echo "$maplisteintrag" >> maplist.txt
fiDas "NOT IN" müsste jetzt halt mit irgendetwas ersetzt werden... Jemand eine Idee??
Vielen Dank im Voraus!
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!