FreewarWiki:Bot/Skripts: Unterschied zwischen den Versionen
SniGG (Diskussion | Beiträge) (+ == Allgemein ==) |
Bwoebi (Diskussion | Beiträge) (Die makemap.pl ist veraltet - gibt makemap.php) |
||
(4 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 13: | Zeile 13: | ||
== Karte == | == Karte == | ||
* [[/maplist.php]] Erstellt eine CSV-Liste aller Kartenfelder zur Weiterverarbeitung<br />Verwendung: <code>php maplist.php > maplist.txt</code> | * [[/maplist.php]] Erstellt eine CSV-Liste aller Kartenfelder zur Weiterverarbeitung<br />Verwendung: <code>php maplist.php > maplist.txt</code> | ||
* [[/maplist2wiki. | * [[/maplist2wiki.php]] Erstellt aus der Kartenfeld-CSV-Liste den Artikel [[Koordinaten (Liste)]]<br />Verwendung: <code>php maplist2wiki.php > wikimaplist.txt</code><br />Die Textdatei <code>wikimaplist.txt</code> kann dann manuell kopiert und abgespeichert werden. Achtung, die eigentliche Liste (nach dem Artikelkopf) darf keinen Zeilenumbruch enthalten! | ||
* [[/loclist.pl]] Erstellt aus [[:Kategorie:Orte]] den Artikel [[Orte (Liste)]]<br />Verwendung: <code>perl loclist.pl > loclist.txt</code><br />Die Textdatei <code>loclist.txt</code> kann dann manuell kopiert und abgespeichert werden. | * [[/loclist.pl]] Erstellt aus [[:Kategorie:Orte]] den Artikel [[Orte (Liste)]]<br />Verwendung: <code>perl loclist.pl > loclist.txt</code><br />Die Textdatei <code>loclist.txt</code> kann dann manuell kopiert und abgespeichert werden. | ||
* [[/arealist.java]] Erstellt aus [[Koordinaten (Liste)]] den Artikel [[Gebiete (Liste)]]<br />Verwendung: <code>javac arealist.java && java arealist</code><br />Die Textdatei <code>arealist.txt</code> kann dann manuell kopiert und abgespeichert werden. | * [[/arealist.java]] Erstellt aus [[Koordinaten (Liste)]] den Artikel [[Gebiete (Liste)]]<br />Verwendung: <code>javac arealist.java && java arealist</code><br />Die Textdatei <code>arealist.txt</code> kann dann manuell kopiert und abgespeichert werden. | ||
* [[/makemap. | * [[/makemap.php]] Verarbeitet die Kartenfeld-CSV-Liste zu einer Gesamtkarte<br />Verwendung: <code>php makemap.php</code><br />Die Datei map.png enthält eine große Karte mit 50×50px pro Feld und sollte mittels geeigneter Programme verkleinert werden (15x15px, also 30%, für [[:Bild:Gesamtkarte Kontinent (automatisch generiert).jpg]]) und ggf. zu JPEG konvertiert werden. Für eine Batchverarbeitung bietet sich hier <code>convert</code> aus der ImageMagick-Programmsammlung an:<br /><code>convert map.png -resize 30% 'Gesamtkarte Kontinent (automatisch generiert).jpg'</code><br />Am besten überlässt man dies dem Shell-Skript "makemaps.sh". | ||
* [[/npcmap.pl]] Erzeugt eine [[Jäger/NPC-Karte|NPC-Karte]] für [[Jäger]]<br />Verwendung: <code>perl npcmap.pl -source map.png -maplist maplist.txt -npclist npclist.txt > npc_map.png</code><br />Erzeugt aus einer Gesamtkarte, einer NPC-Liste und einer Koordinaten-Liste eine NPC-Karte. Am besten überlässt man dies dem Shell-Skript "makemaps.sh". | * [[/npcmap.pl]] Erzeugt eine [[Jäger/NPC-Karte|NPC-Karte]] für [[Jäger]]<br />Verwendung: <code>perl npcmap.pl -source map.png -maplist maplist.txt -npclist npclist.txt > npc_map.png</code><br />Erzeugt aus einer Gesamtkarte, einer NPC-Liste und einer Koordinaten-Liste eine NPC-Karte. Am besten überlässt man dies dem Shell-Skript "makemaps.sh". | ||
* [[/makemaps.sh]] Führt die Konvertierung für Kartendaten automatisch aus<br />Verwendung: <code>sh makemaps.sh</code><br />makemap.pl und npcmap.pl werden automatisch ausgeführt und die Ausgabe automatisch verwertet. Die Bildnamen entsprechen denen im Wiki. | * [[/makemaps.sh]] Führt die Konvertierung für Kartendaten automatisch aus<br />Verwendung: <code>sh makemaps.sh</code><br />makemap.pl und npcmap.pl werden automatisch ausgeführt und die Ausgabe automatisch verwertet. Die Bildnamen entsprechen denen im Wiki. | ||
Zeile 22: | Zeile 22: | ||
== Allgemein == | == Allgemein == | ||
Hier werden Skripte und Bots gesammelt, um Bots in Betrieb zu nehmen, die automatisch Artikel erneuern oder mehrere Artikel automatisch bearbeiten: | Hier werden Skripte und Bots gesammelt, um Bots in Betrieb zu nehmen, die automatisch Artikel erneuern oder mehrere Artikel automatisch bearbeiten. | ||
=== Frameworks === | |||
* [https://github.com/eldur/jwbf JavaWikiBotFramework], ein in Java geschriebenes Media-Wiki Botframework. | |||
* [[/botclass]], [https://www.mediawiki.org/wiki/Manual:Chris_G's_botclasses ein in PHP geschriebens Media-Wiki Botframework von Chris G] mit kleinen Veränderungen von [[Benutzer:SniGG]]. | * [[/botclass]], [https://www.mediawiki.org/wiki/Manual:Chris_G's_botclasses ein in PHP geschriebens Media-Wiki Botframework von Chris G] mit kleinen Veränderungen von [[Benutzer:SniGG]]. | ||
=== Wartungsskripte === | |||
* [[/AllPagesBot.php]], basierend auf <code>botclass.php</code>, listet alle Seitentitel aus einem gegebenen Namespace auf. [https://www.mediawiki.org/wiki/Manual:Chris_G's_botclasses/AllPagesBot.php Author: Chris G], angepasst ans FWW von [[Benutzer:SniGG]]. | * [[/AllPagesBot.php]], basierend auf <code>botclass.php</code>, listet alle Seitentitel aus einem gegebenen Namespace auf. [https://www.mediawiki.org/wiki/Manual:Chris_G's_botclasses/AllPagesBot.php Author: Chris G], angepasst ans FWW von [[Benutzer:SniGG]]. | ||
* [[/rss_feed.php]] erzeugt aus dem [http://forum.freewar.de/feed.php?mode=news offiziellen FW-Forenfeed] die Tabelle für [[Aktuell]]. Nutzt <code>botclass.php</code>. | * [[/rss_feed.php]] erzeugt aus dem [http://forum.freewar.de/feed.php?mode=news offiziellen FW-Forenfeed] die Tabelle für [[Aktuell/Tabelle]]. Nutzt <code>botclass.php</code>. | ||
* [[/rss.php]] trägt mit <code>botclass.php</code> und <code>rss_feed.php</code> die aktuellen Ereignisse unter [[Aktuell/Tabelle]] an den Anfang der Tabelle ein. | |||
* [[/forum_crawler.php]] erstellt für gegebene Forenbereiche eine Tabelle aller Threads mit Titeln, Datum und Beschreibungstext für [[Aktuell/Archiv]]. | |||
==Aufträge== | ==Aufträge== | ||
Zeile 42: | Zeile 47: | ||
* [[/cf.pl]] Erzeugt Dateien mit den Lernzeit-Tabellen für [[Charakterfähigkeit]]en<br />Verwendung: <code>perl cf.pl</code><br />Die Lernzeit-Tabellen sind keine vollständigen Charakterfähigkeits-Artikel! Sie müssen unter die Layout-Vorlage des entsprechenden Artikels eingefügt werden. | * [[/cf.pl]] Erzeugt Dateien mit den Lernzeit-Tabellen für [[Charakterfähigkeit]]en<br />Verwendung: <code>perl cf.pl</code><br />Die Lernzeit-Tabellen sind keine vollständigen Charakterfähigkeits-Artikel! Sie müssen unter die Layout-Vorlage des entsprechenden Artikels eingefügt werden. | ||
=== Karte === | |||
* [[/maplist2wiki.pl]] Erstellt aus der Kartenfeld-CSV-Liste den Artikel [[Koordinaten (Liste)]]<br />Verwendung: <code>perl maplist2wiki.pl maplist.txt > wikimaplist.txt</code><br />Die Textdatei <code>wikimaplist.txt</code> kann dann manuell kopiert und abgespeichert werden. Achtung, die eigentliche Liste (nach dem Artikelkopf) darf keinen Zeilenumbruch enthalten! |
Aktuelle Version vom 7. Februar 2019, 01:24 Uhr
Dieser Artikel listet eine Reihe von lesenden Skripts auf, die einzelne Artikel oder Bilder (zum Beispiel Karten) erstellen. Diese Skripte sind zum größten Teil in Perl geschrieben. Zur Ausführung dieser Skripte wird kein eigener Botaccount benötigt, sie erfordern lediglich ein wenig Know-How. Sie greifen nicht schreibend ins Wiki ein, ihre Ausgabe muss manuell eingetragen werden.
Wird die Ausgabe eines Skripts verändert, so sollten, falls nötig, auch stets alle anderen angepasst werden, damit der gesamte Satz immer aktuell heruntergeladen und verwendet werden kann, ohne ihn vorher anpassen zu müssen.
Achtung: Windows-Systeme besitzen keinen nativen Perl-Interpreter. Der Perl-Interpreter muss manuell heruntergeladen und installiert werden.
Unter FreewarWiki:Bot/Skripts/Anleitung findet sich eine allgemeine Anleitung zur Verwendung der verschiedenen Programme.
NPCs[Bearbeiten]
- /npclist.php Erstellt eine CSV-Liste aller NPCs zur Weiterverarbeitung.
Verwendung:php npclist.php > npclist.txt
- /npclist2fightcalcdata.pl Erstellt die NPC-Liste für den Kampfrechner
Verwendung:perl npclist2fightcalcdata.pl npclist.txt > wikifightcalcdata.txt
Die Textdateiwikifightcalcdata.txt
kann dann manuell kopiert und abgespeichert werden. - /npclist2wiki.pl Erstellt aus der NPC-CSV-Liste den Artikel NPCs (Liste)
Verwendung:perl npclist2wiki.pl npclist.txt > wikinpclist.txt
Die Textdateiwikinpclist.txt
kann dann manuell kopiert und abgespeichert werden. - /npclist2wikibilder.pl Erstellt aus der NPC-CSV-Liste den Artikel NPC-Bilder
Verwendung:perl npclist2wikibilder.pl npclist.txt > wikinpcbilder.txt
Die Textdateiwikinpcbilder.txt
muss dann manuell kopiert und im Artikel NPC-Bilder abgespeichert werden.
Karte[Bearbeiten]
- /maplist.php Erstellt eine CSV-Liste aller Kartenfelder zur Weiterverarbeitung
Verwendung:php maplist.php > maplist.txt
- /maplist2wiki.php Erstellt aus der Kartenfeld-CSV-Liste den Artikel Koordinaten (Liste)
Verwendung:php maplist2wiki.php > wikimaplist.txt
Die Textdateiwikimaplist.txt
kann dann manuell kopiert und abgespeichert werden. Achtung, die eigentliche Liste (nach dem Artikelkopf) darf keinen Zeilenumbruch enthalten! - /loclist.pl Erstellt aus Kategorie:Orte den Artikel Orte (Liste)
Verwendung:perl loclist.pl > loclist.txt
Die Textdateiloclist.txt
kann dann manuell kopiert und abgespeichert werden. - /arealist.java Erstellt aus Koordinaten (Liste) den Artikel Gebiete (Liste)
Verwendung:javac arealist.java && java arealist
Die Textdateiarealist.txt
kann dann manuell kopiert und abgespeichert werden. - /makemap.php Verarbeitet die Kartenfeld-CSV-Liste zu einer Gesamtkarte
Verwendung:php makemap.php
Die Datei map.png enthält eine große Karte mit 50×50px pro Feld und sollte mittels geeigneter Programme verkleinert werden (15x15px, also 30%, für Bild:Gesamtkarte Kontinent (automatisch generiert).jpg) und ggf. zu JPEG konvertiert werden. Für eine Batchverarbeitung bietet sich hierconvert
aus der ImageMagick-Programmsammlung an:convert map.png -resize 30% 'Gesamtkarte Kontinent (automatisch generiert).jpg'
Am besten überlässt man dies dem Shell-Skript "makemaps.sh". - /npcmap.pl Erzeugt eine NPC-Karte für Jäger
Verwendung:perl npcmap.pl -source map.png -maplist maplist.txt -npclist npclist.txt > npc_map.png
Erzeugt aus einer Gesamtkarte, einer NPC-Liste und einer Koordinaten-Liste eine NPC-Karte. Am besten überlässt man dies dem Shell-Skript "makemaps.sh". - /makemaps.sh Führt die Konvertierung für Kartendaten automatisch aus
Verwendung:sh makemaps.sh
makemap.pl und npcmap.pl werden automatisch ausgeführt und die Ausgabe automatisch verwertet. Die Bildnamen entsprechen denen im Wiki. - /LocateRegion.php Erstellt aus dem Artikel Koordinaten (Liste) die Vorlage LocateRegion/Data
Verwendung:php LocateRegion.php > LocateRegion.txt
Allgemein[Bearbeiten]
Hier werden Skripte und Bots gesammelt, um Bots in Betrieb zu nehmen, die automatisch Artikel erneuern oder mehrere Artikel automatisch bearbeiten.
Frameworks[Bearbeiten]
- JavaWikiBotFramework, ein in Java geschriebenes Media-Wiki Botframework.
- /botclass, ein in PHP geschriebens Media-Wiki Botframework von Chris G mit kleinen Veränderungen von Benutzer:SniGG.
Wartungsskripte[Bearbeiten]
- /AllPagesBot.php, basierend auf
botclass.php
, listet alle Seitentitel aus einem gegebenen Namespace auf. Author: Chris G, angepasst ans FWW von Benutzer:SniGG. - /rss_feed.php erzeugt aus dem offiziellen FW-Forenfeed die Tabelle für Aktuell/Tabelle. Nutzt
botclass.php
. - /rss.php trägt mit
botclass.php
undrss_feed.php
die aktuellen Ereignisse unter Aktuell/Tabelle an den Anfang der Tabelle ein. - /forum_crawler.php erstellt für gegebene Forenbereiche eine Tabelle aller Threads mit Titeln, Datum und Beschreibungstext für Aktuell/Archiv.
Aufträge[Bearbeiten]
- /auftraglist.php Erstellt eine Liste von allen Aufträgen in der Kategorie:Aufträge, die auch im AuftragsNS zu finden sind. Ausgegeben wird das Ergebnis in einer Datei als fertiger Wikiartikel Aufträge (Liste).
- /auftragsbeziehungen.php Erstellt eine Tabelle aller Items/Dienstleistungen und ihrer Kosten in Abhängigkeit von der Stufe Auftragsbeziehungen.
Sonstiges[Bearbeiten]
- /parasearch.php Erstellt eine Liste mit Artikeln aus einer Kategorie, die einen zu suchenden Parameter enthalten, der nicht auf none gesetzt ist und gibt aus, wieviele Artikel den Parameter beinhalten und wie viele ihn auf none haben.
- Benutzer:SniGG/Skripte/Blutproben Erstellt die Blutwesenliste. Dafür wird ein externes Skript genutzt. Inhalt aus beliebiger Quelle einfügen und den unteren Text dann in die Liste einfügen. Wenn als Quelle Folianten genutzt werden, entsprechend markieren.
- /Waffenliste.php Erstellt Angriffswaffe/Data bzw. Verteidigungswaffe/Data anhand der entsprechenden Waffen-Kategorien.
Archiviert[Bearbeiten]
Charakterfähigkeiten[Bearbeiten]
- /cf.pl Erzeugt Dateien mit den Lernzeit-Tabellen für Charakterfähigkeiten
Verwendung:perl cf.pl
Die Lernzeit-Tabellen sind keine vollständigen Charakterfähigkeits-Artikel! Sie müssen unter die Layout-Vorlage des entsprechenden Artikels eingefügt werden.
Karte[Bearbeiten]
- /maplist2wiki.pl Erstellt aus der Kartenfeld-CSV-Liste den Artikel Koordinaten (Liste)
Verwendung:perl maplist2wiki.pl maplist.txt > wikimaplist.txt
Die Textdateiwikimaplist.txt
kann dann manuell kopiert und abgespeichert werden. Achtung, die eigentliche Liste (nach dem Artikelkopf) darf keinen Zeilenumbruch enthalten!