BF2Statistics Neue Army einfügen
Aus SGiersch WIKI
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.
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
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
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;
}
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
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
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" );
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:
"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)"),
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])),
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.
