EVE Online: Manufacturing Formula

I was working on fixing my manufacturing spreadsheets for EVE Online to make it a bit more automated.  And in order to do that, I needed to be able to calculate production time and material costs for blueprints straight from the raw BP data.  Anyway, it turns out that the formula at EVEDev is close, but not quite right.  Following are the formulas that actually work.

Time To Build

First, calculate the PTM modifier, which is usually going to just be your industry skill;

\displaystyle PTM = (1-0.04 * industrySkill) * installationModifier * implantModifier

Then, run the following formula to determine the time (in seconds) to build one run of the BP.  Variables can be extracted from the EVE Database Dump.

For PE >= 0

\displaystyle time = baseProductionTime + \frac{productivityModifier}{(1 + peLevel)}

For PE < 0

\displaystyle time = baseProductionTime * (1 - \frac{productivityModifier}{baseProductionTime} * (peLevel-2))

Required Materials

For each material required for a blueprint, there’s the materialQuantity, which comes from the invTypeMaterials table for that BP (it’s the quantity column).  This value is affected by ME research and skills.  Then there’s the extra materials, which come from the ramTypeRequirements table for that BP.  Next, any materials in ramTypeRequirements which are marked as recyclable have their recycled materials (which you extract from looking them up in invTypeMaterials) subtracted from the list of materials required for the produced item.  The remaining materials from invTypeMaterials are then modified by skills and ME research as follows;

For ME >= 0

\displaystyle meWaste = ROUND(\frac{materialQuantity * (wasteFactor / 100)}{meLevel + 1})

For ME < 0

\displaystyle meWaste = ROUND(\frac{materialQuantity * (wasteFactor / 100)}{1 - meLevel})

Other Wastage

\displaystyle skillWaste = ROUND((0.25 - 0.05 * productionEfficiencySkill) * materialQuantity)

Installation wastage is likely calculated the same way, ie at 10% waste you’d multiply the materialQuantity by 0.10 to give the wastage.  But I haven’t tested that, sorry.

Total Material Required

\displaystyle finalQuantity = materialQuantity + meWaste + skillWaste

And there you go.  Let me know if there’s any errors.  The above formula work fine with all the stuff I’m building, which are a mix of various positive and negative ME and PE values.