Presentation on theme: "Killboard overview Last updated 18/11/2005 The table structure in this document is incomplete (missing fields), however relations are correct This document."— Presentation transcript:
Killboard overview Last updated 18/11/2005 The table structure in this document is incomplete (missing fields), however relations are correct This document is provided for reference only, and may not represent accurate information about the killboard at any given time, especially function references.
Killboard Database Structure Kill KillID PlayerID CorpID ShipID SystemID Time Date Player PlayerID PlayerName Corp CorpID CorpName AllianceID Alliance AllianceID Alliance Name Destroyed DestoryedID KillID ItemID Ship ShipID ShipName ClassID Item ItemID ItemName Involved InvolvedID KillID PlayerID CorpID ShipID ItemID FinalBlow (Yes/No) ShipClass ClassID ClassName System SystemID System Name SecStatus Implemented Not Implemented
Killboard File Structure index.php / Decides which part of the website to show database.php Provides the datbase login details invovled.php Processes the list of involved parties ready to enter them into the datbase frontend.php Allows people to search the kills for Corp/Player and Alliance, plus has stats etc… backend.php Processes the first part of killmails ready to add them, to the database, takes finished data and adds it to the killboard Implemented Not Implemented Raw killmail data passed to involved parties parser Two dimensional array returned with pre formatted data ready to enter into involved table functions.php Provides functions to return Ship Item and PlayerIDs frontendfunctions.php Provides common functions for the frontend to operate correctly backport.php Recalculates all kill points updatecorps.php Sets all player corps to the corp of their most recent involved party / kill
First Checkpoint Goals (17 th September) Have a basic killmail parser, that can split up the top lines of the killmail Store basic player / corp information Second Checkpoint Goals (18 th September) Store the top information from the killmail Allow player data to be correctly updated, under different circumstances Store system data and allow new systems to be entered into the database Third Checkpoint Goals (20th September) Sort the invovled parties and enter them into the involved table Support alliance searching CompletedNot Complete Fourth Checkpoint Goals (21st September) Support ship data so we know who lost what ship Support ship data so we know what ship attackers used Final Checkpoint Goals (22 nd September) Support item database, so we can see what items people lost and what weapons attackers used Launch Day (23 rd September) Fix any outstanding bugs, arrising after launch Start to optmize the PHP and SQL to improve speed Post Launch Goals (October) Implement a kill point system Improve display to show more information / stats
logo welcome text search recent kill 1recent kill 4 recent kill 2recent kill 5 recent kill 3recent kill 6 last 6 kills killboard stats stats contact info Original design layout no longer valid, changed in 1.1
Front end function reference for version 1.1 These functions do not conform to proper style guidelines CreateKillTable($NextKill, $PlayerID, $CorpID, $Mode, $NumberToShow) –Draws the fancy kill tables that are used on the homepage and the player corp details page, you can specify how many kills you want to be drawn. –Example: CreateKillTable($kn,$PlayerDetails,NULL,"kill",10); $kn is a parameter from the URL, $PlayerDetails is the players ID, we use NULL for CorpID because we are doing a player based search, the mode is kill, as this function can draw tables for kills or losses for a specific person/corp. ShowPlayerStats($PlayerID) –Draws the table for the player stats, at the top of the player info page. ShowCorpStats($CorpID) –Draws the table for the corp stats.
Parser function reference for version 1.1 These functions have been updated as of version 1.1 to conform to proper style guides getPlayerID ($playerName) –Gets the player ID for a specified player name, if the name does not exist in the database it will be created and the new ID passed back getCorpID ($corpName) –Gets the corp ID for a specified corp name. getShipID ($shipName) –Gets the ship ID for a specifed ship name, does not create a new record if ship is not found in table. getItemID ($itemName) –Gets the item ID for a specified item name, creates new records if not found. getSystemID ($systemName, $systemSecurity) –Gets the system ID for a specified system name, security is passed to this function so if a new record has to be created we dont need a new function call. updateCorp ($playerID, $corpID) –Changes the recorded corp ID for the player to the one specified in this killmail, makes sure all corp lists are as up to date as possible.
Limitations of the killboard for version 1.1 Killmail tampering can cause unexpected results in the parser, the parser is simple code that assumes correct killmails will be passed to it, future version should improve error checking. Internet Explorer and Opera dont like some of the CSS/XHTML supplied in the code, it can probably be simplified. Search can only be accessed from the homepage, limitation of where the code to check if you are searching was originally placed. Would require some work to move it. Cant handle drone kills at all. This is a semi-serious problem that will be addressed in the near future.