Planetarion Database Dump: Difference between revisions

From Planetarion Wiki
Jump to navigationJump to search
No edit summary
 
(12 intermediate revisions by 8 users not shown)
Line 1: Line 1:
== Description ==
The '''Planetarion Database Dumps''' are files with ingame information from [[Planetarion]].
The '''Planetarion Database Dumps''' are files with ingame information from [[Planetarion]].
They show [[planet]], [[galaxy]] and [[alliance]] information, such as [[score]], [[size]] and [[value]].  
They show [[planet]], [[galaxy]] and [[alliance]] information, such as [[score]], [[size]] and [[value]]. They are generated at the end of the [[tick]] and will usually be available at xx:01. Changes to the format are posted on the [[Forums]] [https://pirate.planetarion.com/showthread.php?t=177834 here].


These dump file(s) are usually used in [[Arbiter]]'s and the various [[Category:Tool Kits|tool kits]].
These dump file(s) are usually used in [[Arbiter]]s and the various [[:Category:Resources|tool kits]].


==Location==
The dumpfiles are available at:
The dumpfiles are available at:


http://jpaweb01.planetarion.com/botfiles/planet_listing.txt
http://game.planetarion.com/botfiles/planet_listing.txt
 
http://game.planetarion.com/botfiles/galaxy_listing.txt
 
http://game.planetarion.com/botfiles/alliance_listing.txt


http://jpaweb01.planetarion.com/botfiles/galaxy_listing.txt
==Structure==
Each file starts with information about what the file contains.  eg:


http://jpaweb01.planetarion.com/botfiles/alliance_listing.txt
Content: Planetarion Planet Listing (sorted by x, y, z)
Author: Appocomaster <appocomaster@planetarion.com>
Version: 1.04
Tick: 97
Separator: '  '
EOF: 'EndOfPlanetarionDumpFile'
 
====Planets====
Format: 'id    x      y      z      "planet name"  "ruler name"    race    size    score  value  xp      "special"'
 
====Galaxies====
Format: 'x    y      "galaxy name"  size    score  value  xp'
 
====Alliances====
Format: 'rank  "alliance name" size    members counted_score  points  total_score    total_value'


== Tools ==
== Tools ==
Many alliances write their own tools using these dumpfiles and sites such as [[Sandmans]] also utilize them.


Many alliances write their own tools using these dumpfiles, and sites such as [[sandmans]] and [[pilkara]] also utilize them.
Below are some basic php code examples on how to use them. ''Note: these are untested.''
 
Here are some basic php code examples on how to use em:


  <?
  <?
  mysql_connect( "host", "user", "pass" );
  mysql_connect( "host", "user", "pass" );
  mysql_select_db( "database" );  
  mysql_select_db( "database" );
 
  $planetList = file_get_contents( "http://jpaweb01.planetarion.com/botfiles/planet_listing.txt" );
  $planetList = file_get_contents( "http://game.planetarion.com/botfiles/planet_listing.txt" );
 
  preg_match_all( "/(\d+)\t(\d+)\t(\d+)\t\"(.+)\"\t\"(.+)\"\t(.+)\t(\d+)\t(\d+)/i",  
  preg_match_all( "/(\d+)\t(\d+)\t(\d+)\t\"(.+)\"\t\"(.+)\"\t(.+)\t(\d+)\t(\d+)\t(\d+)\t(\d+)/i",
  $planetList,  $planetArray, PREG_SET_ORDER );
  $planetList,  $planetArray, PREG_SET_ORDER );
 
  mysql_query( "TRUNCATE TABLE planets" );
  mysql_query( "TRUNCATE TABLE planets" );
 
  foreach ( $planetArray as $planet )
  foreach ( $planetArray as $planet )
  {
  {
mysql_query( "INSERT INTO planets VALUES ( $planet[1], $planet[2],  
        mysql_query( "INSERT INTO planets VALUES ( $planet[1], $planet[2],
         $planet[3], '$planet [4]', '$planets[5]', '$planet[6]', $planet[7], $planet[8] )" );  
         $planet[3], '$planet [4]', '$planets[5]', '$planet[6]', $planet[7],
        $planet[8],  $planet[9],    $planet[10] )" );
  }
  }
  ?>
  ?>


Line 50: Line 65:
   `ruler` varchar(70) NOT NULL default '',
   `ruler` varchar(70) NOT NULL default '',
   `race` varchar(15) NOT NULL default '',
   `race` varchar(15) NOT NULL default '',
   `roids` bigint(20) unsigned NOT NULL default '0',
   `size` bigint(20) unsigned NOT NULL default '0',
   `score` bigint(20) NOT NULL default '0',
   `score` bigint(20) NOT NULL default '0',
  `value` bigint(20) NOT NULL default '0',
  `xp` bigint(20) NOT NULL default '0',
   PRIMARY KEY  (`planet`)
   PRIMARY KEY  (`planet`)
  ) TYPE=MyISAM;
  ) TYPE=MyISAM;


==Usage notes==
Employing an overly aggressive polling policy is frowned upon and [[PA Team]] reserves the right to revoke your access to the dump files.


 
[[Category:Terminology]][[Category:Resources]]
 
[[Category:Terminology]]

Latest revision as of 18:16, 22 January 2018

The Planetarion Database Dumps are files with ingame information from Planetarion. They show planet, galaxy and alliance information, such as score, size and value. They are generated at the end of the tick and will usually be available at xx:01. Changes to the format are posted on the Forums here.

These dump file(s) are usually used in Arbiters and the various tool kits.

Location

The dumpfiles are available at:

http://game.planetarion.com/botfiles/planet_listing.txt

http://game.planetarion.com/botfiles/galaxy_listing.txt

http://game.planetarion.com/botfiles/alliance_listing.txt

Structure

Each file starts with information about what the file contains. eg:

Content: Planetarion Planet Listing (sorted by x, y, z)
Author: Appocomaster <[email protected]>
Version: 1.04
Tick: 97
Separator: '   '
EOF: 'EndOfPlanetarionDumpFile'

Planets

Format: 'id    x       y       z       "planet name"   "ruler name"    race    size    score   value   xp      "special"'

Galaxies

Format: 'x     y       "galaxy name"   size    score   value   xp'

Alliances

Format: 'rank  "alliance name" size    members counted_score   points  total_score     total_value'

Tools

Many alliances write their own tools using these dumpfiles and sites such as Sandmans also utilize them.

Below are some basic php code examples on how to use them. Note: these are untested.

<?
mysql_connect( "host", "user", "pass" );
mysql_select_db( "database" );
$planetList = file_get_contents( "http://game.planetarion.com/botfiles/planet_listing.txt" );
preg_match_all( "/(\d+)\t(\d+)\t(\d+)\t\"(.+)\"\t\"(.+)\"\t(.+)\t(\d+)\t(\d+)\t(\d+)\t(\d+)/i",
$planetList,  $planetArray, PREG_SET_ORDER );
mysql_query( "TRUNCATE TABLE planets" );
foreach ( $planetArray as $planet )
{
       mysql_query( "INSERT INTO planets VALUES ( $planet[1],  $planet[2],
       $planet[3], '$planet [4]', '$planets[5]', '$planet[6]', $planet[7],
       $planet[8],  $planet[9],    $planet[10] )" );
}
?>

And here is the MySQL table structure to go with it:

CREATE TABLE `planets` (
 `x` int(10) unsigned NOT NULL default '0',
 `y` int(10) unsigned NOT NULL default '0',
 `z` int(10) unsigned NOT NULL default '0',
 `planet` varchar(70) NOT NULL default ,
 `ruler` varchar(70) NOT NULL default ,
 `race` varchar(15) NOT NULL default ,
 `size` bigint(20) unsigned NOT NULL default '0',
 `score` bigint(20) NOT NULL default '0',
 `value` bigint(20) NOT NULL default '0',
 `xp` bigint(20) NOT NULL default '0',
 PRIMARY KEY  (`planet`)
) TYPE=MyISAM;

Usage notes

Employing an overly aggressive polling policy is frowned upon and PA Team reserves the right to revoke your access to the dump files.