Difference between revisions of "Static Data Export"
Mae Asanari (talk | contribs) (→What each table contains: add description of invMarketGroups) |
m (Change heading levels to avoid using lvl1 in the article content. Change external links to interwiki links.) |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | CCP provides developers a series of static files, known as the Static Data Export(SDE), which contains static data from the Tranquility server. The SDE is currently exported as .yaml and .static files, however, different and easier to use formats(mentioned below) are made by the community. The SDE can be found at the EVE developers [https://developers.eveonline.com/resource/resources resource] page. All resources provided by CCP are subject to the [https://developers.eveonline.com/resource/license-agreement license agreement] linked on page. | + | CCP provides developers a series of static files, known as the Static Data Export(SDE), which contains static data from the Tranquility server. The SDE is currently exported as .yaml and .static files, however, different and easier to use formats(mentioned below) are made by the community. The SDE can be found at the EVE developers [https://developers.eveonline.com/resource/resources resource] page. All resources provided by CCP are subject to the [https://developers.eveonline.com/resource/license-agreement license agreement] linked on the page. |
− | = Fuzzwork SDE Conversions = | + | == Fuzzwork SDE Conversions == |
− | To aide fellow developers and players in consuming this data without having to extract or convert from YAML or static format every time Steve Ronuken has hosted conversions in PostgreSQL, SQLite, MySQL, MSSQL, and CSV formats. They can be found at [https://www.fuzzwork.co.uk Fuzzwork] under SDE or more directly at [https://www.fuzzwork.co.uk/dump www.fuzzwork.co.uk/dump]. Individual table data can be found in [ | + | To aide fellow developers and players in consuming this data without having to extract or convert from YAML or static format every time Steve Ronuken has hosted conversions in PostgreSQL, SQLite, MySQL, MSSQL, and CSV formats. They can be found at [https://www.fuzzwork.co.uk Fuzzwork] under SDE or more directly at [https://www.fuzzwork.co.uk/dump www.fuzzwork.co.uk/dump]. Individual table data can be found in [[:wikipedia:Comma-separated values|CSV]] and [[:wikipedia:SQL|SQL]] (MySQL) formats here [https://www.fuzzwork.co.uk/dump/latest www.fuzzwork.co.uk/dump/latest]. |
− | |||
− | |||
− | = | + | === Opening a file from Fuzzwork SDE Conversions === |
− | + | To extract data from compressed files, use [https://ss64.com/bash/tar.html tar] for <code>.tar.bz2</code> files or [https://ss64.com/osx/bzip.html bunzip2] for <code>.bz2</code> files in Linux, and something like [https://www.7-zip.org/ 7-zip] for either format in windows. Once extracted the files can be opened in the appropriate application that supports the file format. | |
− | = How to | + | == How does the ESI fit into all this? == |
+ | The [[EVE Swagger Interface]] intends to have endpoints to account for all of the SDE, currently, it's not quite there yet, and the SDE is needed for many projects. The progress can be tracked [https://github.com/esi/esi-issues/issues/1103 here]. | ||
− | == Step 0: Preface == | + | == How to implement the original SDE into your application == |
+ | |||
+ | === Step 0: Preface === | ||
This is not a guide to Python or programming, if you don't know how to program, there are tons of resources to learn to code, there are a few of my favorites in the External Links section down below, if your having issues, contact me at [[User:Asgore Astroficus|Asgore Astroficus]] ([[User talk:Asgore Astroficus|talk]]). | This is not a guide to Python or programming, if you don't know how to program, there are tons of resources to learn to code, there are a few of my favorites in the External Links section down below, if your having issues, contact me at [[User:Asgore Astroficus|Asgore Astroficus]] ([[User talk:Asgore Astroficus|talk]]). | ||
− | == Step 1: Opening the file == | + | === Step 1: Opening the file === |
Firstly, find the file containing the data you need, for this example, I'm going to use fsd/blueprints.yaml. This file contains all the information required to build an industry cost predictor. Next, open the file using your desired programming language, I'm going to use python, so to open this I'll run ''with open("fsd/blueprints.yaml", "r") as f:''. The file is open! To the next step! | Firstly, find the file containing the data you need, for this example, I'm going to use fsd/blueprints.yaml. This file contains all the information required to build an industry cost predictor. Next, open the file using your desired programming language, I'm going to use python, so to open this I'll run ''with open("fsd/blueprints.yaml", "r") as f:''. The file is open! To the next step! | ||
− | == Step 2: Reading the file == | + | === Step 2: Reading the file === |
− | === Step 2.1: Installing PyYAML === | + | ==== Step 2.1: Installing PyYAML ==== |
− | Assuming | + | Assuming you're using pip, this should be as simple as ''pip install pyyaml''. If you having issues, contact me at [[User:Asgore Astroficus|Asgore Astroficus]] ([[User talk:Asgore Astroficus|talk]]) or have a look at [https://stackabuse.com/reading-and-writing-yaml-to-a-file-in-python/ this article]. |
− | === Step 2.2: Interpreting the file === | + | ==== Step 2.2: Interpreting the file ==== |
Now that PyYAML is installed, we need to use it to parse our file, we have already opened it, so it should just be a matter of parsing it with PyYAML, which can be done by ''blueprints = yaml.load(f, Loader=yaml.FullLoader)'', remember to have ''import yaml'' at the top of your .py file. Hopefully now if you print out the blueprints variable, your console will be filled with sweet, sweet data and the taste of success. The data will be a dictionary, and the rest from here should be relatively simple, it should just be navigating through the data as if it was a dictionary. | Now that PyYAML is installed, we need to use it to parse our file, we have already opened it, so it should just be a matter of parsing it with PyYAML, which can be done by ''blueprints = yaml.load(f, Loader=yaml.FullLoader)'', remember to have ''import yaml'' at the top of your .py file. Hopefully now if you print out the blueprints variable, your console will be filled with sweet, sweet data and the taste of success. The data will be a dictionary, and the rest from here should be relatively simple, it should just be navigating through the data as if it was a dictionary. | ||
− | == Step 3: Postface == | + | === Step 3: Postface === |
− | I hope this short guide helped you somewhat | + | I hope this short guide helped you somewhat get into the SDE, I might write one for the Fuzzwork conversions soon. If you have any issues, pop me a message here [[User:Asgore Astroficus|Asgore Astroficus]] ([[User talk:Asgore Astroficus|talk]]). |
− | = What each table contains = | + | == What each table contains == |
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
|- | |- | ||
Line 84: | Line 85: | ||
| [https://www.fuzzwork.co.uk/dump/latest/eveUnits.csv.bz2 eveUnits.csv.bz2]|| | | [https://www.fuzzwork.co.uk/dump/latest/eveUnits.csv.bz2 eveUnits.csv.bz2]|| | ||
|- | |- | ||
− | | [https://www.fuzzwork.co.uk/dump/latest/industryActivity.csv.bz2 industryActivity.csv.bz2]|| Contains the | + | | [https://www.fuzzwork.co.uk/dump/latest/industryActivity.csv.bz2 industryActivity.csv.bz2]|| Contains the number of seconds it takes to create a blueprint product |
|- | |- | ||
| [https://www.fuzzwork.co.uk/dump/latest/industryActivityMaterials.csv.bz2 industryActivityMaterials.csv.bz2]|| Contains the materials required to create a blueprint product | | [https://www.fuzzwork.co.uk/dump/latest/industryActivityMaterials.csv.bz2 industryActivityMaterials.csv.bz2]|| Contains the materials required to create a blueprint product | ||
Line 128: | Line 129: | ||
| [https://www.fuzzwork.co.uk/dump/latest/invTypeReactions.csv.bz2 invTypeReactions.csv.bz2]|| | | [https://www.fuzzwork.co.uk/dump/latest/invTypeReactions.csv.bz2 invTypeReactions.csv.bz2]|| | ||
|- | |- | ||
− | | [https://www.fuzzwork.co.uk/dump/latest/invTypes.csv.bz2 invTypes.csv.bz2]|| Defines the types in the game like market items | + | | [https://www.fuzzwork.co.uk/dump/latest/invTypes.csv.bz2 invTypes.csv.bz2]|| Defines the types in the game like market items and celestial objects. Contains typeID, name, description, marketGroupID, ... |
|- | |- | ||
| [https://www.fuzzwork.co.uk/dump/latest/invUniqueNames.csv.bz2 invUniqueNames.csv.bz2]|| | | [https://www.fuzzwork.co.uk/dump/latest/invUniqueNames.csv.bz2 invUniqueNames.csv.bz2]|| | ||
Line 204: | Line 205: | ||
| [https://www.fuzzwork.co.uk/dump/latest/trnTranslations.csv.bz2 trnTranslations.csv.bz2]|| | | [https://www.fuzzwork.co.uk/dump/latest/trnTranslations.csv.bz2 trnTranslations.csv.bz2]|| | ||
|- | |- | ||
− | | [https://www.fuzzwork.co.uk/dump/latest/warCombatZones.csv.bz2 warCombatZones.csv.bz2]|| A small file that updates regularly. | + | | [https://www.fuzzwork.co.uk/dump/latest/warCombatZones.csv.bz2 warCombatZones.csv.bz2]|| A small file that updates regularly. It contains information about combat zones (FW I think?) |
|- | |- | ||
| [https://www.fuzzwork.co.uk/dump/latest/warCombatZoneSystems.csv.bz2 warCombatZoneSystems.csv.bz2]|| | | [https://www.fuzzwork.co.uk/dump/latest/warCombatZoneSystems.csv.bz2 warCombatZoneSystems.csv.bz2]|| | ||
|} | |} | ||
− | = External | + | == External links == |
− | * [ | + | * [https://codecademy.com CodeCademy] |
* [https://www.youtube.com/channel/UCCezIgC97PvUuR4_gbFUs5g Corey Schafer] | * [https://www.youtube.com/channel/UCCezIgC97PvUuR4_gbFUs5g Corey Schafer] | ||
* [https://discord.gg/csvQt9 EVE Online Discord Dev Chat] - I read most messages sent here, if you need help that StackOverflow can't provide, here is your best bet. | * [https://discord.gg/csvQt9 EVE Online Discord Dev Chat] - I read most messages sent here, if you need help that StackOverflow can't provide, here is your best bet. | ||
[[Category:Applications]] | [[Category:Applications]] |
Latest revision as of 12:29, 13 July 2024
CCP provides developers a series of static files, known as the Static Data Export(SDE), which contains static data from the Tranquility server. The SDE is currently exported as .yaml and .static files, however, different and easier to use formats(mentioned below) are made by the community. The SDE can be found at the EVE developers resource page. All resources provided by CCP are subject to the license agreement linked on the page.
Fuzzwork SDE Conversions
To aide fellow developers and players in consuming this data without having to extract or convert from YAML or static format every time Steve Ronuken has hosted conversions in PostgreSQL, SQLite, MySQL, MSSQL, and CSV formats. They can be found at Fuzzwork under SDE or more directly at www.fuzzwork.co.uk/dump. Individual table data can be found in CSV and SQL (MySQL) formats here www.fuzzwork.co.uk/dump/latest.
Opening a file from Fuzzwork SDE Conversions
To extract data from compressed files, use tar for .tar.bz2
files or bunzip2 for .bz2
files in Linux, and something like 7-zip for either format in windows. Once extracted the files can be opened in the appropriate application that supports the file format.
How does the ESI fit into all this?
The EVE Swagger Interface intends to have endpoints to account for all of the SDE, currently, it's not quite there yet, and the SDE is needed for many projects. The progress can be tracked here.
How to implement the original SDE into your application
Step 0: Preface
This is not a guide to Python or programming, if you don't know how to program, there are tons of resources to learn to code, there are a few of my favorites in the External Links section down below, if your having issues, contact me at Asgore Astroficus (talk).
Step 1: Opening the file
Firstly, find the file containing the data you need, for this example, I'm going to use fsd/blueprints.yaml. This file contains all the information required to build an industry cost predictor. Next, open the file using your desired programming language, I'm going to use python, so to open this I'll run with open("fsd/blueprints.yaml", "r") as f:. The file is open! To the next step!
Step 2: Reading the file
Step 2.1: Installing PyYAML
Assuming you're using pip, this should be as simple as pip install pyyaml. If you having issues, contact me at Asgore Astroficus (talk) or have a look at this article.
Step 2.2: Interpreting the file
Now that PyYAML is installed, we need to use it to parse our file, we have already opened it, so it should just be a matter of parsing it with PyYAML, which can be done by blueprints = yaml.load(f, Loader=yaml.FullLoader), remember to have import yaml at the top of your .py file. Hopefully now if you print out the blueprints variable, your console will be filled with sweet, sweet data and the taste of success. The data will be a dictionary, and the rest from here should be relatively simple, it should just be navigating through the data as if it was a dictionary.
Step 3: Postface
I hope this short guide helped you somewhat get into the SDE, I might write one for the Fuzzwork conversions soon. If you have any issues, pop me a message here Asgore Astroficus (talk).
What each table contains
Table name | What it contains |
---|---|
agtAgents.csv.bz2 | Contains information regarding agents such as location, corporation, type, level, and locator (boolean) |
agtAgentTypes.csv.bz2 | |
agtResearchAgents.csv.bz2 | |
certCerts.csv.bz2 | |
certMasteries.csv.bz2 | What ships have what certificates. In this case, typeID is the ship, and certID is the certificate. See certSkills |
certSkills.csv.bz2 | |
chrAncestries.csv.bz2 | |
chrAttributes.csv.bz2 | |
chrBloodlines.csv.bz2 | Contains information on what race each bloodline belongs to, descriptions. |
chrFactions.csv.bz2 | Faction IDs, name, and description. Also what race each faction belongs to, and some other misc. information. |
chrRaces.csv.bz2 | raceID and raceName, iconID and a long and short description (side note, ORE is a race) |
crpActivities.csv.bz2 | IDK, maybe names of NPC sturcture groups? |
crpNPCCorporationDivisions.csv.bz2 | |
crpNPCCorporationResearchFields.csv.bz2 | Unknown |
crpNPCCorporations.csv.bz2 | |
crpNPCCorporationTrades.csv.bz2 | Information on what each NPC corp sells. |
crpNPCDivisions.csv.bz2 | Information on NPC divisions, mostly deprecated. |
dgmAttributeCategories.csv.bz2 | What each categoryID is, and a categoryName |
dgmAttributeTypes.csv.bz2 | Defines attributes of types (like CPU Load, Powergrid Usage, EM damage) |
dgmEffects.csv.bz2 | Information regarding effects, such as launching missiles, scaling damage, and the effects skills have. |
dgmExpressions.csv.bz2 | Information regarding expressions |
dgmTypeAttributes.csv.bz2 | Provides values for the attributes of a type (how much EM damage does the Mjolnir Cruise Missile do) See dgmAttributeTypes and |
dgmTypeEffects.csv.bz2 | effectID that each typID had, see also dgmEffects.csv.bz2 |
eveGraphics.csv.bz2 | Information regarding grapics such as graphicID, graphic location, race, and description. |
eveIcons.csv.bz2 | |
eveUnits.csv.bz2 | |
industryActivity.csv.bz2 | Contains the number of seconds it takes to create a blueprint product |
industryActivityMaterials.csv.bz2 | Contains the materials required to create a blueprint product |
industryActivityProbabilities.csv.bz2 | Contains the outcome and the probability of an invention |
industryActivityProducts.csv.bz2 | Shows what processes create what (such as what products a blueprint creates) |
industryActivityRaces.csv.bz2 | |
industryActivitySkills.csv.bz2 | Contains information about the skills required to manufacture any blueprint. |
industryBlueprints.csv.bz2 | Contains the base maximum amount of BPC runs |
invCategories.csv.bz2 | Category IDs and category names |
invContrabandTypes.csv.bz2 | |
invControlTowerResourcePurposes.csv.bz2 | |
invControlTowerResources.csv.bz2 | |
invFlags.csv.bz2 | |
invGroups.csv.bz2 | Contains information on inventory groups, such as groupID, categoryID, and other metadata |
invItems.csv.bz2 | Information about itemID and typeID, and some others |
invMarketGroups.csv.bz2 | Defines the market group hierarchy |
invMetaGroups.csv.bz2 | A small file about meta group ids, such as Tech I, Tech II, Faction, Officer, etc |
invMetaTypes.csv.bz2 | typeID, parentTypeID, metaGroupID |
invNames.csv.bz2 | itemID for everything. Not that itemID is not typeID. |
invPositions.csv.bz2 | |
invTraits.csv.bz2 | |
invTypeMaterials.csv.bz2 | |
invTypeReactions.csv.bz2 | |
invTypes.csv.bz2 | Defines the types in the game like market items and celestial objects. Contains typeID, name, description, marketGroupID, ... |
invUniqueNames.csv.bz2 | |
invVolumes.csv.bz2 | |
mapCelestialStatistics.csv.bz2 | |
mapConstellationJumps.csv.bz2 | |
mapConstellations.csv.bz2 | Constellation position, faction, name, region, name, and radius. |
mapDenormalize.csv.bz2 | Position, radius, and security status of moons, planets, solar systems, all the way to regions. As such, a very large CSV with more than half a million lines. |
mapJumps.csv.bz2 | |
mapLandmarks.csv.bz2 | |
mapLocationScenes.csv.bz2 | |
mapLocationWormholeClasses.csv.bz2 | Each location's wormholeClassID |
mapRegionJumps.csv.bz2 | |
mapRegions.csv.bz2 | |
mapSolarSystemJumps.csv.bz2 | |
mapSolarSystems.csv.bz2 | |
mapUniverse.csv.bz2 | Possibly to differentiate between K-space and J-space? (speculation) |
planetSchematics.csv.bz2 | schematicID, name, and time it takes to complete that schematic. |
planetSchematicsPinMap.csv.bz2 | |
planetSchematicsTypeMap.csv.bz2 | |
ramActivities.csv.bz2 | Describes what each R.A.M. does. See Manufacturing |
ramAssemblyLineStations.csv.bz2 | |
ramAssemblyLineTypeDetailPerCategory.csv.bz2 | Information on R.A.M. |
ramAssemblyLineTypeDetailPerGroup.csv.bz2 | |
ramAssemblyLineTypes.csv.bz2 | |
ramInstallationTypeContents.csv.bz2 | |
skinLicense.csv.bz2 | |
skinMaterials.csv.bz2 | |
skins.csv.bz2 | |
skinShip.csv.bz2 | What skins can be used on what ships |
staOperations.csv.bz2 | |
staOperationServices.csv.bz2 | Information about what station types offer what services (speculation) |
staServices.csv.bz2 | |
staStations.csv.bz2 | Information about stations, their security level, location, name, reprocessing level, and much more. |
staStationTypes.csv.bz2 | |
translationTables.csv.bz2 | Appears to be empty |
trnTranslationColumns.csv.bz2 | |
trnTranslationLanguages.csv.bz2 | |
trnTranslations.csv.bz2 | |
warCombatZones.csv.bz2 | A small file that updates regularly. It contains information about combat zones (FW I think?) |
warCombatZoneSystems.csv.bz2 |
External links
- CodeCademy
- Corey Schafer
- EVE Online Discord Dev Chat - I read most messages sent here, if you need help that StackOverflow can't provide, here is your best bet.