Equivalent Exchange 3

Equivalent Exchange 3

2M Downloads

Dynamic Emc Issues

Unknown-88 opened this issue · 7 comments

commented

When extra utilities is installed, the dynamic emc system dosent like the painted ___ recipes, so anything that is crafted with cobble, glass, stone, wood, etc. dosent have an emc value is generated.

commented

It does, if you check the algorithm. This has to do with items belonging to more than one OreDictionary entry and those entries having disparate items in them. OreDictionary items are not always equivalent so there is some special casing there.

It's part of a problem with ExtraUtils that I still need to sort out.

commented

OK, I'm going to preface this with the fact that I'm not skilled enough in Java to understand the inner workings of the DYNEmc system; but how hard would it be to, if an item has more than one OreDictionary entry to which it is assigned, check those all and assign it an EMC value equal to the lowest of those entries?

commented

The code is already complex, pahimar is not able to predict what other mods
will do with the ore dictionary so he can not just add emc to each and
every thing.

He hard codes only a few basic values which makeup the emc system.

When a mod adds different ways to craft something or adds things to the ore
dictionary which are equal yet greater or smaller than the emc value
standard set, then dynemc has issues.

Ex: extra utilitys has colored cobble which is ire dict with regular cobble.

Colored cobble is worth like 3.3 emc and regular cobble is 1 emc

So u cant make a furnace because u can mix and match either to make a
furnace.

So just set the emc value yourself and restart the instance.

When you restart ee3 may gind new emc values for items that ise a furnace
in the recipes which may save you time.

I need a better editor on my phone...
On May 11, 2015 11:33 AM, "WolfAmaril" [email protected] wrote:

OK, I'm going to preface this with the fact that I'm not skilled enough in
Java to understand the inner workings of the DYNEmc system; but how hard
would it be to, if an item has more than one OreDictionary entry to which
it is assigned, check those all and assign it an EMC value equal to the
lowest of those entries?


Reply to this email directly or view it on GitHub
#828 (comment)
.

commented

Well, that dosent actually seem that difficult, but you would have to use the highest value, ee3 already has a cached ore dictionary of some sort set up, and ore dictionary has a method something like getIDs(itemStack) and then getName(id), so with a simple iterator, you could on each pass just check if this ids emc is the smallest, and then add this entry to the cached ore dictionary, so each entry could also have a value (Hash map maby?) that shows the greatest possible emc for this oredic name. The. When calculating recipes check if the block has an oredic entry, and if so, for crafting purposes, defer the the cached oredic highest value. This could potentially have a significant impact on load time.

commented

Is there currently any workaround of this? Just added EE3 to my pack, and it is infeasible to manually add EMC values for every item of every mod that uses cobble or wood or glass (which is the absolute majority of them). Can't take Extra Utilities out either, I already use it everywhere in my world...

commented

You can.
http://www.minecraftforum.net/forums/mapping-and-modding/minecraft-mods/2442409-ee3-helper-2-2a-in-game-emc-value-management-emc

This is a mod that you add missing values and will force regenerate emc. You can also find it in curse client

commented

Closing in order to track issues on the unified ticket #990