Kategorien
Bearbeiten von „FreewarWiki:Bot/Skripts/cf.pl“
Zur Navigation springen
Zur Suche springen
Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und veröffentliche dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.
Aktuelle Version | Dein Text | ||
Zeile 1: | Zeile 1: | ||
<!-- | |||
<pre> | |||
ACHTUNG: Das Skript unbedingt vom Artikel statt Quelltext kopieren da hier versteckter Wikisyntax verwendet wird! | |||
--><pre> | |||
#!/usr/bin/perl | #!/usr/bin/perl | ||
Zeile 14: | Zeile 17: | ||
my $cfs = [ | my $cfs = [ | ||
{ "name" => "Angriffsenergie", "gw" => | { "name" => "Angriffsenergie", "gw" => 80000, "mx" => 10 }, | ||
{ "name" => "Auftragsbeziehung", "gw" => | { "name" => "Auftragsbeziehung", "gw" => 80000, "mx" => 40 }, | ||
{ "name" => "Auftragsplanung", "gw" => | { "name" => "Auftragsplanung", "gw" => 6800, "mx" => 70 }, | ||
{ "name" => "Ausgrabungswissen", "gw" => | { "name" => "Ausgrabungswissen", "gw" => 30000, "mx" => 70 }, | ||
{ "name" => "Bankwesen", "gw" => | { "name" => "Bankwesen", "gw" => 28000, "mx" => 80 }, | ||
{ "name" => "Bauwesen", "gw" => | { "name" => "Bauwesen", "gw" => 25000, "mx" => 70 }, | ||
{ "name" => "Blutwissen", "gw" => | { "name" => "Blutwissen", "gw" => 26000, "mx" => 50 }, | ||
{ "name" => "Chaosmagie", "gw" => | { "name" => "Chaosmagie", "gw" => 25000, "mx" => 90 }, | ||
{ "name" => "Diebstahlschutzwissen", "gw" => | { "name" => "Diebstahlschutzwissen", "gw" => 28000, "mx" => 50 }, | ||
{ "name" => "Getreideverarbeitung", "gw" => | { "name" => "Getreideverarbeitung", "gw" => 16000, "mx" => 30 }, | ||
{ "name" => "Gewebeforschung", "gw" => | { "name" => "Gewebeforschung", "gw" => 11600, "mx" => 50 }, | ||
{ "name" => "Goldabbau", "gw" => | { "name" => "Goldabbau", "gw" => 44000, "mx" => 30 }, | ||
{ "name" => "Glück", "gw" => 16000, "mx" => 15 }, | |||
{ "name" => "Gruppenheilung", "gw" => 7200, "mx" => 120 }, | |||
{ "name" => "Glück", "gw" => | { "name" => "Handwerkskunst", "gw" => 200000, "mx" => 14 }, | ||
{ "name" => "Gruppenheilung", "gw" => | { "name" => "Innere Macht", "gw" => 36000, "mx" => 50 }, | ||
{ "name" => "Handwerkskunst", "gw" => | { "name" => "Inspiration", "gw" => 27000, "mx" => 90 }, | ||
{ "name" => "Innere Macht", "gw" => | { "name" => "Jagd", "gw" => 23200, "mx" => 50 }, | ||
{ "name" => "Inspiration", "gw" => | { "name" => "Kochkunst", "gw" => 22000, "mx" => 80 }, | ||
{ "name" => "Jagd", "gw" => | { "name" => "Labortechnik", "gw" => 120000, "mx" => 30 }, | ||
{ "name" => "Kochkunst", "gw" => | { "name" => "Lagerlogistik", "gw" => 25000, "mx" => 90 }, | ||
{ "name" => "Labortechnik", "gw" => | { "name" => "Lebensenergie", "gw" => 26000, "mx" => 30 }, | ||
{ "name" => "Lagerlogistik", "gw" => | { "name" => "Lebenstraining", "gw" => 34000, "mx" => 50 }, | ||
{ "name" => "Lebensenergie", "gw" => | { "name" => "Lerntechnik", "gw" => 35000, "mx" => 50 }, | ||
{ "name" => "Lebenstraining", "gw" => | { "name" => "Magieverlängerung", "gw" => 48000, "mx" => 30 }, | ||
{ "name" => "Lerntechnik", "gw" => | { "name" => "Marktwirtschaft", "gw" => 10000, "mx" => 50 }, | ||
{ "name" => "Magieverlängerung", "gw" => | { "name" => "Ölverwaltung", "gw" => 26000, "mx" => 60 }, | ||
{ "name" => "Marktwirtschaft", "gw" => | { "name" => "Phasenenergieeffizienz", "gw" => 23000, "mx" => 70 }, | ||
{ "name" => "Ölverwaltung", "gw" => | { "name" => "Phasenenergiemaximierung", "gw" => 25000, "mx" => 80 }, | ||
{ "name" => "Phasenenergieeffizienz", "gw" => | { "name" => "Pflanzenkunde", "gw" => 40000, "mx" => 80 }, | ||
{ "name" => "Phasenenergiemaximierung", "gw" => | { "name" => "Phasenverständnis", "gw" => 10000, "mx" => 70 }, | ||
{ "name" => "Pflanzenkunde", "gw" => | { "name" => "Plünderung", "gw" => 37200, "mx" => 30 }, | ||
{ "name" => "Phasenverständnis", "gw" => | { "name" => "Rache", "gw" => 10000, "mx" => 80 }, | ||
{ "name" => "Plünderung", "gw" => | { "name" => "Reparaturwissen", "gw" => 12000, "mx" => 30 }, | ||
{ "name" => "Rache", "gw" => | { "name" => "Schusswaffen", "gw" => 64000, "mx" => 16 }, | ||
{ "name" => "Reparaturwissen", "gw" => | { "name" => "Seelenverbindung", "gw" => 60000, "mx" => 60 }, | ||
{ "name" => "Schusswaffen", "gw" => | { "name" => "Selbstheilung", "gw" => 32000, "mx" => 60 }, | ||
{ "name" => "Seelenverbindung", "gw" => | { "name" => "Stärketraining", "gw" => 30000, "mx" => 50 }, | ||
{ "name" => "Selbstheilung", "gw" => | { "name" => "Überzeugungskraft", "gw" => 34000, "mx" => 50 }, | ||
{ "name" => "Stärketraining", "gw" => | { "name" => "Waffenkunst", "gw" => 26000, "mx" => 30 }, | ||
{ "name" => "Überzeugungskraft", "gw" => | { "name" => "Zauberkunst", "gw" => 240000, "mx" => 8 }, | ||
{ "name" => "Waffenkunst", "gw" => | { "name" => "Zaubertruhenwissen", "gw" => 100000, "mx" => 40 } | ||
{ "name" => "Zauberkunst", "gw" => | |||
{ "name" => "Zaubertruhenwissen", "gw" => | |||
]; | ]; | ||
Zeile 83: | Zeile 82: | ||
"15" => "[[Phasenstrahlkanone]]", | "15" => "[[Phasenstrahlkanone]]", | ||
"16" => "[[Itemschleuder]]", | "16" => "[[Itemschleuder]]", | ||
}, | }, | ||
Zeile 145: | Zeile 143: | ||
"9" => "[[Dämonenblutfass]] (3.000 PE / 45.000 XP)", | "9" => "[[Dämonenblutfass]] (3.000 PE / 45.000 XP)", | ||
"10" => "[[rote Portalmaschine]] (30.000 PE / 50.000 XP)", | "10" => "[[rote Portalmaschine]] (30.000 PE / 50.000 XP)", | ||
"11" => "[[ | "11" => "[[Portalstab]] (2.000 PE / 55.000 XP)", | ||
"12" => "[[Weltenspalter]] (30.000 PE / 60.000 XP)", | "12" => "[[Weltenspalter]] (30.000 PE / 60.000 XP)", | ||
"13" => "[[Knorpel-Monster aus Draht]] (4.000 PE / 65.000 XP)", | "13" => "[[Knorpel-Monster aus Draht]] (4.000 PE / 65.000 XP)", | ||
"14" => "[[Amulett der Phasenschwemme]] (80.000 PE / 70.000 XP)", | "14" => "[[Amulett der Phasenschwemme]] (80.000 PE / 70.000 XP)", | ||
}, | }, | ||
}; | }; | ||
Zeile 168: | Zeile 163: | ||
my $ex = $extra->{$cf->{"name"}}; | my $ex = $extra->{$cf->{"name"}}; | ||
my $colspan = 11; | my $colspan = 11; | ||
open(FILE, ">".$cache_dir.lc($cf->{"name"}).".txt"); | open(FILE, ">".$cache_dir.lc($cf->{"name"}).".txt"); | ||
Zeile 176: | Zeile 170: | ||
<div id="CFcalc">$grundwert</div> | <div id="CFcalc">$grundwert</div> | ||
<div id="CFlevel"> | <div id="CFlevel"> | ||
{| | {| {{Prettytable}} | ||
|+ style="text-align: left;" | <small style="float:right;">''(Angaben in Tagen:Stunden:Minuten)''</small>'''Lernzeit pro Stufe, | |+ style="text-align: left;" | <small style="float:right;">''(Angaben in Tagen:Stunden:Minuten)''</small>'''Lernzeit pro Stufe, abhängig von der Lerntechnik: ''' | ||
|- | |- | ||
| | | | ||
Zeile 209: | Zeile 203: | ||
for (my $lerntech = 0; $lerntech <= $maxlt; $lerntech += 5) | for (my $lerntech = 0; $lerntech <= $maxlt; $lerntech += 5) | ||
{ | { | ||
my $lernfaktor = 0. | my $lernfaktor = 0.97 ** $lerntech; | ||
my $sekunden = ($stufe-1) * $grundwert * $lernfaktor; | my $sekunden = ($stufe-1) * $grundwert * $lernfaktor; | ||
printf FILE "|bgcolor=#%s|%02d:%02d:%02d\n", | printf FILE "|bgcolor=#%s|%02d:%02d:%02d\n", | ||
Zeile 225: | Zeile 219: | ||
</div> | </div> | ||
<div id="CFtotal"> | <div id="CFtotal"> | ||
{| | {| {{Prettytable}} | ||
|+ style="text-align: left;" | <small style="float:right;">''(Angaben in Tagen:Stunden:Minuten)''</small>'''Gesamtlernzeit bis zur jeweiligen Stufe, | |+ style="text-align: left;" | <small style="float:right;">''(Angaben in Tagen:Stunden:Minuten)''</small>'''Gesamtlernzeit bis zur jeweiligen Stufe, abhängig von der Lerntechnik: ''' | ||
|- | |- | ||
| | | | ||
Zeile 249: | Zeile 243: | ||
print FILE "!bgcolor=#$bgcolor_block|".$ex->{"head"}."\n" if (defined($ex)); | print FILE "!bgcolor=#$bgcolor_block|".$ex->{"head"}."\n" if (defined($ex)); | ||
my $step = 1; | |||
$step = 5 if ($maxstufe > 14); | |||
my $zeile = 0; | my $zeile = 0; | ||
my $LetzteStufe = $step; | my $LetzteStufe = $step; | ||
Zeile 256: | Zeile 252: | ||
$LetzteStufe = $stufe; | $LetzteStufe = $stufe; | ||
} | } | ||
if ( $LetzteStufe < $maxstufe) { | if ( $LetzteStufe < $maxstufe) { | ||
print_zeile($maxstufe, ++$zeile, $grundwert, $maxlt, $ex); | print_zeile($maxstufe, ++$zeile, $grundwert, $maxlt, $ex); | ||
Zeile 280: | Zeile 275: | ||
for (my $lerntech = 0; $lerntech <= $maxlt; $lerntech += 5) | for (my $lerntech = 0; $lerntech <= $maxlt; $lerntech += 5) | ||
{ | { | ||
my $lernfaktor = 0. | my $lernfaktor = 0.97 ** $lerntech; | ||
my $sekunden = reihe($stufe-1) * $grundwert * $lernfaktor; | my $sekunden = reihe($stufe-1) * $grundwert * $lernfaktor; | ||
printf FILE "|bgcolor=#%s|%02d:%02d:%02d\n", | printf FILE "|bgcolor=#%s|%02d:%02d:%02d\n", |