In diesem Beispiel wird die „UN“ von dem Mod AIX in die BF2Statistics eingeführt und zwar mit der Nr.12.
Für andere Armeen muss dann eine andere Nummer verwendet werden, die Nummer ist frei Wählbar.
zum Beispiel für die Armee „Canadian“ aus dem Mod Hard Justice die Nummer 13.
Hierfür müssen nachfolgende Dateien geändert werden.
- Die Datenbank selbst
- python\bf2\stats\Constansy.py
- ASP/bf2statistics.php
- bf2statistics/BF2Stats-keys.php
- python\bf2\stats\snapshot.py
- ASP\getplayerinfo.aspx
Die Datenbank wird geändert
Das wird eine Operation am offenen Herzen der Statistik, also vorher unbedingt ein vollständiges Backup anlagen |
In der Datenbank unter der Tabelle „army“ müssen die Felder time12, win12, loss12, score12, best12, worst12 und brnd12 erstellt werden. Für eine andere Armee, als in diesem Beispiel, muss die Nummer 12 mit der neuen Nummer ersetzt werden.
Öffne die Datenbank mit „phpmyadmin“ oder einem anderen Programm und führe nachfolgendes SQL aus.
ALTER TABLE `army` ADD COLUMN `time12` int( 10 ) unsigned NOT NULL default '0', ADD COLUMN `win12` int( 10 ) unsigned NOT NULL default '0', ADD COLUMN `loss12` int( 10 ) unsigned NOT NULL default '0', ADD COLUMN `score12` int( 10 ) unsigned NOT NULL default '0', ADD COLUMN `best12` int( 10 ) unsigned NOT NULL default '0', ADD COLUMN `worst12` int( 10 ) unsigned NOT NULL default '0', ADD COLUMN `brnd12` int( 10 ) unsigned NOT NULL default '0'
Die Datei python\bf2\stats\Constansy.py wird geändert.
den Eintrag:
ARMY_UKR = 11 NUM_ARMIES = 12
ändern auf
ARMY_UKR = 11 ARMY_UN = 12 NUM_ARMIES = 13
NUM_ARMIES ist immer eine Nummer größer als die zuletzt aufgeführte Armee.
und unter armyMap = {
den Eintrag:
# booster pack 1 "eu" : ARMY_EURO, "ger" : ARMY_GER, "ukr" : ARMY_UKR,
ändern auf
# booster pack 1 "eu" : ARMY_EURO, "ger" : ARMY_GER, "ukr" : ARMY_UKR, # AIX "un" : ARMY_UN
Der letzte Eintrag vor der Geschweiften Klammer bekommt kein Komma. Alle anderen haben ein Komma am Ende.
Die Datei ASP/bf2statistics.php wird geändert.
Unter: * Process ‚Army‘
Hinter der Abfrage // Check for missing EU Army
// Check for missing UN Army if (!$data["ta12_$x"]){ $data["ta12_$x"] = 0; }
Sollte eine andere Armee als in diesem Beispiel benutzt werden, dann daran Denken die 12 zu ändern.
einfügen
Bei // Insert information den Eintrag:
time10 = " . $data["ta10_$x"] . ", time11 = " . $data["ta11_$x"] . " "; if ($army < 12) { // Ignore Unknown Army
ändern auf
time10 = " . $data["ta10_$x"] . ", time11 = " . $data["ta11_$x"] . ", time12 = " . $data["ta12_$x"] . " "; if ($army < 13) { // Ignore Unknown Army
Das bei dem Eintrag time12 ein Komma am ende fehlt ist gewollt. Die Zahl 13 zeigt an das es keine Armee mit einer größeren Nummer gibt.
Bei // Update information den Eintrag
time10 = `time10` + " . $data["ta10_$x"] . ", time11 = `time11` + " . $data["ta11_$x"] . " "; if ($army < 12) { // Ignore Unknown Army
ändern auf
time11 = `time11` + " . $data["ta11_$x"] . ", time12 = `time12` + " . $data["ta12_$x"] . " "; if ($army < 13) { // Ignore Unknown Army
Das bei dem Eintrag time12 ein Komma am ende fehlt ist gewollt. Die Zahl 13 zeigt an das es keine Armee mit einer größeren Nummer gibt.
Die Datei bf2statistics/BF2Stats-keys.php wird geändert.
unter: // ARMY DESIGNATORS den Eintrag
"7" => "REBELS", "8" => "INSURGENTS" );
ändern auf
"7" => "REBELS", "8" => "INSURGENTS", "12" => "UN" );
Der letzte Eintrag vor der Geschweiften Klammer bekommt kein Komma. Alle anderen haben ein Komma am Ende.
Unter: $this->statsKey = array(
Suche die Einträge die mit abs-8,aws-8,alo-8,atm-8,awn-8 beginnen und füge die Zeile aus der nachfolgenden Auflistung ein. Beispiel:
In dieser Auflistung wurden die Einträge wie z.B. abs-8 nur als Wegweiser mit aufgeführt.
"abs-8" => array('type' => "N",'friendly' => "Best round score (INSURGENTS)"), "abs-12" => array('type' => "N",'friendly' => "Best round score (UN)"), "aws-8" => array('type' => "N",'friendly' => "Worst round score (INSURGENTS)"), "aws-12" => array('type' => "N",'friendly' => "Worst round score (UN)"), "alo-8" => array('type' => "N",'friendly' => "# losses (INSURGENTS)"), "alo-12" => array('type' => "N",'friendly' => "# losses (UN)"), "atm-8" => array('type' => "E",'friendly' => "Time played (INSURGENTS)"), "atm-12" => array('type' => "E",'friendly' => "Time played (UN)"), "awn-8" => array('type' => "N",'friendly' => "# wins (INSURGENTS)"), "awn-12" => array('type' => "N",'friendly' => "# wins (UN)"),
es werden nur die Zeilen die eine 12 beinhalten eingetragen.
Die Datei python\bf2\stats\snapshot.py wird geändert.
Unter dem Code def getPlayerSnapshot(playerStat): diesen Eintrag suchen
#POE2 Stuff ("ta10", int(playerStat.timeAsArmy[ARMY_GER])), ("ta11", int(playerStat.timeAsArmy[ARMY_UKR])),
ändern auf
#POE2 Stuff ("ta10", int(playerStat.timeAsArmy[ARMY_GER])), ("ta11", int(playerStat.timeAsArmy[ARMY_UKR])), #AIX ("ta12", int(playerStat.timeAsArmy[ARMY_UN])),
Hier bekommen alle Einträge ein Komma am Ende, also auch der letzte Eintrag.
Die Datei ASP\getplayerinfo.aspx wird geändert.
unter // Army
den Eintrag:
$rowa = array(); for ($i = 0; $i <= 11; $i++) { $rowa["time$i"] = '0';
ändern auf
$rowa = array(); for ($i = 0; $i <= 12; $i++) { $rowa["time$i"] = '0';
Jetzt wird es ein wenig kompliziert.
Suche nach folgenden Einträgen, hiervon gibt es je zwei.
- $rowa[‚time9‘] . „\t“ .
- $rowa[‚win9‘] . „\t“ .
- $rowa[‚best9‘] . „\t“ .
- $rowa[‚brnd9‘] . „\t“ .
und füge unter jede Zeile den gleichen Code ein wie die Gesuchte, nur ändere die Zahl (z.B. $rowa[‚time9‘] . „\t“ .) auf 12 (z.B. $rowa[‚time12‘] . „\t“ .)
Suche nach folgenden Einträgen, hiervon gibt nur jeweils einen.
- $rowa[‚loss9‘] . „\t“ .
- $rowa[‚worst9‘] . „\t“ .
und füge unter jede Zeile den gleichen Code ein wie die Gesuchte, nur ändere die Zahl (z.B. $rowa[‚loss9‘] . „\t“ .) auf 12 (z.B. $rowa[‚loss12‘] . „\t“ .)
Suche nach folgenden Einträgen, hiervon gibt es je zwei.
- atm-9\t
- awn-9\t
- abr-9\t
und füge hinter jeden Eintrag das gleich ein und ersetzte die Nummer 9 durch die 12.
Suche nach folgenden Einträgen, hiervon gibt nur jeweils einen.
- alo-9\t
- abrnd-9\t
- abs-9\t
- aws-9\t
und füge hinter jeden Eintrag das gleich ein und ersetzte die Nummer 9 durch die 12.