These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

EVE Technology Lab

 
  • Topic is locked indefinitely.
 

Some way to obtain a sample of daily kills?

Author
Nhanderu Mbaekuaa
Tribal Liberation Force
Minmatar Republic
#1 - 2014-03-31 01:46:44 UTC
A useful info for players in the industrial side of EVE could be the daily destruction of ships and components, so they can plan what repositions are needed.

This could be gor in principle by taking a good sample of the ships listed in the killboards and then using the local kill statistics, from CREST, to scale the sample to get an estimate of the total destruction and decompose it into raw materials.

Now, is some of the killboards offering itself an API to obtain such sample, or can you think another technique? Perhaps some RSS feed of recent kills?
Steve Ronuken
Fuzzwork Enterprises
Vote Steve Ronuken for CSM
#2 - 2014-03-31 11:44:35 UTC
take a look at the zkill api

Woo! CSM XI!

Fuzzwork Enterprises

Twitter: @fuzzysteve on Twitter

KnifeOrSpoon
Contraposition Industries Inc
#3 - 2014-03-31 20:22:34 UTC
As Steve said, leverage the kill mails from zKill. To decompose into raw materials is a trickier function.

Depending on whether or not the item destroyed was buildable from a blueprint you need to determine what the ideal Material Efficiency of said item's blueprint was. Or you could nominate an ideal ME, or a set limit to the value itself.

T2 items would need to have such things as the adjusted ME/PE after invention (unless you have T2 BPOs on hand) accounted for, and if you wanted to get tricky the invention success rate (ideal or nominal) divided by the cost of the datacores to have a ballpark indication of how many datacores and invention attempts would equal one successful invention.

To do all of this, you will need to store the kill data on a local database server, use the EVE Static Data Dump and write either timed events to into SQL to generate a daily brief of kills and ships/modules destroyed and then use said daily data to calculate the materials required to build the destroyed items.

Big job, but I can see where and how it would be used too.
KnifeOrSpoon
Contraposition Industries Inc
#4 - 2014-03-31 20:24:02 UTC
Steve Ronuken wrote:
take a look at the zkill api


Steve, I have to say a big THANK YOU mate. Your blogs and Data Dump SQL posts have saved not only a crap load of time, but prevented me from going crazy with relational databases.

Big smile
Nhanderu Mbaekuaa
Tribal Liberation Force
Minmatar Republic
#5 - 2014-04-02 00:34:01 UTC
About the zkill API, has somebody got an estimate of how deep its coverage is? I guess that most PvP killings are in the list; but I can not think how to get same info (or any info at all) for the ships losts in PvE missions.


KnifeOrSpoon wrote:
As Steve said, leverage the kill mails from zKill. To decompose into raw materials is a trickier function..


Well, both things are tricky, it seems, in the same recursive way, but I think I can work with it. On the raw material side, it is a bit of inconvenience that Capital Ships are actually built from subcomponentes plus minerals, so two steps are needed to recover the initial composicion. And in the killmails, I notice that besides the ship I should add all the fittings which are destroyed too, plus the no recovered cargo.

As for ME, I favor the diea of an ideal ME. I guess that most of the production is run under optimal ME, isn't it?

The static database is an incredible resource. invTypeMaterials table seems all I need to run the decomposition.

KnifeOrSpoon
Contraposition Industries Inc
#6 - 2014-04-02 03:30:28 UTC
Nhanderu Mbaekuaa wrote:
invTypeMaterials table seems all I need to run the decomposition.


To a degree yes. There is also a ramTypeRequirements table which has a bunch of material requirements too. To get an SQL query to handle any blueprintTypeID I gave it (without writing logic to handle T1 or T2 with PHP), I had to encapsulate a number of methods into a query with several UNIONS. The end result worked flawlessly and calculated based on whatever ME/PE and Char Skill you threw at it, but it was a debuggers nightmare with that many queries nested into each other.
Nhanderu Mbaekuaa
Tribal Liberation Force
Minmatar Republic
#7 - 2014-04-02 17:29:58 UTC
Ok, here is a first try, and a couple of questions:

https://gist.github.com/arivero/9938726

1) I wonder which is the best method to query zkillboard for all the kills. At the moment, there is a loop for all the known GroupIDs that can be killed, and I am not sure if it is complete. The alternative was to loop for Solar Systems or Regions, but the Regional query does not seem to work (or needs extra parameters).

2) I am in doubt about the full decomposition of some materials. In a test run, the final decomposition is as follows:


Quote:
------fully reduced----
964 Metallofullerene Plating 30
964 Neurovisual Output Analyzer 2
18 Morphite 2208
964 Nanowire Composites 40
964 Fulleroferrocene Power Conduits 4
429 Crystalline Carbonide 1035034
429 Titanium Carbide 2102728
429 Tungsten Carbide 136788
429 Fernite Carbide 226534
18 Tritanium 200656192
18 Pyerite 41054137
18 Mexallon 12126633
18 Isogen 2383938
18 Nocxium 591936
429 Fullerides 72500
18 Megacyte 48079
429 Nanotransistors 47215
429 Hypersynaptic Fibers 7770
429 Ferrogel 7208
964 Fullerene Intercalated Sheets 16
1041 Broadcast Node 8
1041 Recursive Computing Module 8
1041 Self-Harmonizing Power Core 8
1041 Wetware Mainframe 8
429 Sylramic Fibers 753380
18 Zydrine 141872
429 Phenolic Composites 96119
1034 Construction Blocks 1955


Some products seem to be finals according the table invTypeMaterials but not according the Evelopedia. For instane, "Construction Blocks", aka typeID=3828, is not in invTypeMaterials. I guess here I need some of the UNIONS that KnifeOrSpoon was mentioning, do I?
Squizz Caphinator
The Wormhole Police
#8 - 2014-04-02 17:48:11 UTC
Nhanderu Mbaekuaa wrote:
the Regional query does not seem to work (or needs extra parameters).


I had to disable the regional query because some scrapers were treating zkb like fingernails on a chalkboard.

Various projects I enjoy putting my free time into:

https://zkillboard.com | https://evewho.com

Nhanderu Mbaekuaa
Tribal Liberation Force
Minmatar Republic
#9 - 2014-04-02 17:58:50 UTC
Squizz Caphinator wrote:
Nhanderu Mbaekuaa wrote:
the Regional query does not seem to work (or needs extra parameters).


I had to disable the regional query because some scrapers were treating zkb like fingernails on a chalkboard.


I see Sad In this case only a sample from time to time is needed, and I guess I could minimize the queries by grouping the groupIDs.
KnifeOrSpoon
Contraposition Industries Inc
#10 - 2014-04-02 22:43:26 UTC
Nhanderu Mbaekuaa wrote:

Some products seem to be finals according the table invTypeMaterials but not according the Evelopedia. For instane, "Construction Blocks", aka typeID=3828, is not in invTypeMaterials. I guess here I need some of the UNIONS that KnifeOrSpoon was mentioning, do I?



I'm interstate on a training course and am using my laptop, when I get back to home on Sunday I will post the enormous query I have to calculate the material requirements for T1 and T2 in a single query. It's a good start point to get accurate build materials per blueprint, and a rewrite may be able to get you sub-components too.