Planetarion Database Dump: Difference between revisions

From Planetarion Wiki
Jump to navigationJump to search
m (not alt-e)
m (Testing something)
Line 1: Line 1:
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 are generated at the end of the [[tick]] which is usually around xx:04, but it has been recommended that any sites wishing to use them retrieve them no earlier than xx:15 in order to allow for ticks which take longer than normal.
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]].


These dump file(s) are usually used in [[Arbiter]]s and the various [[:Category:Resources|tool kits]].
These dump file(s) are usually used in [[Arbiter]]s and the various [[:Category:Resources|tool kits]].
Line 7: Line 7:
The dumpfiles are available at:
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==
==Structure==
Wiki restrictions prevent the displaying of tab characters. The plain text can be accessed through the source of this page. Each file starts with information about what the file contains.  eg:
Each file starts with information about what the file contains.  eg:


<tt>Content: Planetarion Planet Listing (sorted by x, y, z)<br />
Content: Planetarion Planet Listing (sorted by x, y, z)
Author: Appocomaster <[email protected]><br />
Author: Appocomaste
Version: 1.01<br />
Version: 1.04
Tick: 471<br />
Tick: 97
Separator: ' '<br />
Separator: ' '
Format: 'x y z "planet name" "ruler name" race size score value xp'
EOF: 'EndOfPlanetarionDumpFile'
</tt>


====Planets====
====Planets====
<tt>x y z "planet name" "ruler name" race size score value xp</tt>
Format: 'id x y z "planet name" "ruler name" race size score value xp "special"'


====Galaxies====
====Galaxies====
<tt>x y "galaxy name" size score value xp</tt>
Format: 'x y "galaxy name" size score value xp'


====Alliances====
====Alliances====
<tt>rank "alliance name" size members score</tt>
Format: 'rank "alliance name" size members counted_score points total_score total_value'


== Tools ==
== Tools ==
Line 42: Line 36:
  mysql_select_db( "database" );  
  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",  
  preg_match_all( "/(\d+)\t(\d+)\t(\d+)\t\"(.+)\"\t\"(.+)\"\t(.+)\t(\d+)\t(\d+)\t(\d+)\t(\d+)/i",  

Revision as of 21:00, 9 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.

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

Location

The dumpfiles are available at:


Structure

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

Content: Planetarion Planet Listing (sorted by x, y, z)
Author: Appocomaste
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" ); 


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.