FreewarWiki:Bot/Skripts: Unterschied zwischen den Versionen

aus FreewarWiki, der Referenz für Freewar
Zur Navigation springen Zur Suche springen
(Die makemap.pl ist veraltet - gibt makemap.php)
 
(22 dazwischenliegende Versionen von 7 Benutzern werden nicht angezeigt)
Zeile 2: Zeile 2:


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.<br />'''Achtung:''' Windows-Systeme besitzen keinen nativen Perl-Interpreter. Der Perl-Interpreter muss manuell heruntergeladen und installiert 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.<br />'''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 ==
== NPCs ==
* [[/npclist.pl]] Erstellt eine CSV-Liste aller NPCs zur Weiterverarbeitung.<br />Verwendung: <code>perl npclist.pl > npclist.txt</code>
* [[/npclist.php]] Erstellt eine CSV-Liste aller NPCs zur Weiterverarbeitung.<br />Verwendung: <code>php npclist.php > npclist.txt</code>
* [[/npclist2fightcalcdata.pl]] Erstellt die [[Kampfrechner/Daten|NPC-Liste für den Kampfrechner]]<br />Verwendung: <code>perl npclist2fightcalcdata.pl npclist.txt > wikifightcalcdata.txt</code><br />Die Textdatei <code>wikifightcalcdata.txt</code> kann dann manuell kopiert und abgespeichert werden.
* [[/npclist2fightcalcdata.pl]] Erstellt die [[Kampfrechner/Daten|NPC-Liste für den Kampfrechner]]<br />Verwendung: <code>perl npclist2fightcalcdata.pl npclist.txt > wikifightcalcdata.txt</code><br />Die Textdatei <code>wikifightcalcdata.txt</code> kann dann manuell kopiert und abgespeichert werden.
* [[/npclist2wiki.pl]] Erstellt aus der NPC-CSV-Liste den Artikel [[NPCs (Liste)]]<br />Verwendung: <code>perl npclist2wiki.pl npclist.txt > wikinpclist.txt</code><br />Die Textdatei <code>wikinpclist.txt</code> kann dann manuell kopiert und abgespeichert werden.
* [[/npclist2wiki.pl]] Erstellt aus der NPC-CSV-Liste den Artikel [[NPCs (Liste)]]<br />Verwendung: <code>perl npclist2wiki.pl npclist.txt > wikinpclist.txt</code><br />Die Textdatei <code>wikinpclist.txt</code> kann dann manuell kopiert und abgespeichert werden.
Zeile 10: Zeile 12:


== Karte ==
== Karte ==
* [[/maplist.pl]] Erstellt eine CSV-Liste aller Kartenfelder zur Weiterverarbeitung<br />Verwendung: <code>perl maplist.pl > maplist.txt</code>
* [[/maplist.php]] Erstellt eine CSV-Liste aller Kartenfelder zur Weiterverarbeitung<br />Verwendung: <code>php maplist.php > maplist.txt</code>
* [[/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!
* [[/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.pl]] Verarbeitet die Kartenfeld-CSV-Liste zu einer Gesamtkarte<br />Verwendung: <code>perl makemap.pl maplist.txt > map.png</code><br />Die Datei map.png enthält eine Große Karte mit 50x50px 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".
* [[/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&times;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.
* [[/LocateRegion.php]] Erstellt aus dem Artikel [[Koordinaten (Liste)]] die [[Vorlage:LocateRegion/Data|Vorlage LocateRegion/Data]]<br />Verwendung: <code>php LocateRegion.php > LocateRegion.txt</code>


{{Siehe auch|[[Hilfe:Karten/Minimap-Hotspots-Scripte]]}}
== Allgemein ==
 
Hier werden Skripte und Bots gesammelt, um Bots in Betrieb zu nehmen, die automatisch Artikel erneuern oder mehrere Artikel automatisch bearbeiten.
== Charakterfähigkeiten ==
=== Frameworks ===
* [[/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.
* [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]].
=== 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]].
* [[/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==
* [[/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)]].
* [[/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==
==Sonstiges==
* [[/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.
* [[/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 [http://snigg.fwtools.de/blutProbas.php 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.
[[Kategorie:Bots|!]]
* [[/Waffenliste.php]] Erstellt [[Angriffswaffe/Data]] bzw. [[Verteidigungswaffe/Data]] anhand der entsprechenden Waffen-Kategorien.
== Archiviert ==
=== Charakterfähigkeiten ===
* [[/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.


[[Kategorie:Bots|!]]
=== 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 Textdatei wikifightcalcdata.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 Textdatei wikinpclist.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 Textdatei wikinpcbilder.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 Textdatei wikimaplist.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 Textdatei loclist.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 Textdatei arealist.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 hier convert 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]

Wartungsskripte[Bearbeiten]

Aufträge[Bearbeiten]

Sonstiges[Bearbeiten]

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 Textdatei wikimaplist.txt kann dann manuell kopiert und abgespeichert werden. Achtung, die eigentliche Liste (nach dem Artikelkopf) darf keinen Zeilenumbruch enthalten!