Dane serwerowe
Aby stworzyć eksterne statystyki, można ściągnąć sobie najważniejsze wiadomości o świecie. Właściwości wiosek, plemion i graczy można w każdej chwili ściągnąć.
Staraj się rzadko ściągać wiadomości o światach, by zapobiegać korkom. Foldery, które się ściąga częściej niż raz na godzinę, nie są dozwolone. Spróbuj w takim wypadku ściągnąć dane z eksternistycznego serwera. Dane o światach są regularnie uaktualniane. Odstępy zależą od serwera.
Pliki można ściągnąć również w wersji zapakowanej (Końcówka .txt.gz). Zapakowano je za pomocą gzip. Używaj jeżeli można, tych plików.
Istnieją w sumie trzy pliki do ściągnięcia. Każdy plik składa się z dowolnie dużej ilości linijek, które są oddzielone przecinkami. Dane są zakodowane pomocą funkcji PHP urlencode(), to znaczy przecinek jest zastąpiony %2C.
/map/village.txt – /map/village.txt.gz
W tym pliku zachowane są wiadomości o wioskach. Te dane są udostępnione w tej kolejności:
$id, $name, $x, $y, $tribe, $points, $rank
/map/tribe.txt – /map/tribe.txt.gz
W tym pliku zachowane są wiadomości o graczach. Te dane są udostępnione w tej kolejności:
$id, $name, $ally, $villages, $points, $rank
/map/ally.txt – /map/ally.txt.gz
W tym pliku zachowane są wiadomości o plemionach. Te dane są udostępnione w tej kolejności:
$id, $name, $tag, $members, $villages, $points, $all_points, $rank
Przykład
Prosty przykład w PHP, aby zapisać wioski + nazwy ze świata 1 do MySQL-Banku danych:
$lines = gzfile('http://ds1.die-staemme.de/map/village.txt.gz', 'r'); if(!is_array($lines)) die("Nie można było otworzyć pliku"); foreach($lines as $line) { list($id, $name,$x, $y, $player, $points, $rank) = explode(',', $line); $name = urldecode($name); $name = addslashes($name); mysql_query("INSERT INTO village SET id='$id', name='$name', x='$x', y='$y', player='$player', points='$points', rank='$rank'"); }