[1.7.10] Equivalent Energistics - Autocrafting with EMC!

Mordenkainen

New Member
Jul 29, 2019
368
0
0
Equivalent Energistics
gzFb4Yv.png


Equivalent Energistics is a bridge mod that adds components enabling you to add autocrafting with Equivalent Exchange 3 and ProjectE EMC to your Applied Energistics 2 autocrafting system.

The new 0.7 version is rewritten from the ground up and behaves a bit differently. Please see this video for more details. Sorry about the quality but it was done quickly. I will get a better video up when I can.


Requires:
  • Applied Energistics 2 RV2 or RV3
  • Java 8
Optional (Only one is supported at a time):
  • A recent version of Equivalent Exchange 3
  • A recent version of ProjectE
Downloads:
http://www.curse.com/mc-mods/minecraft/231853-equivalent-energistics

Source:
https://github.com/Mordenkainen/EquivalentEnergistics

Issues:
https://github.com/Mordenkainen/EquivalentEnergistics/issues

Modpacks:
I give permission for anyone to include this mod in any non-pay modpack. This mod may also be distributed via any non-pay launcher. If your pack is distributed via the Curse Launcher permission is implied since the project is published on Curse.

If possible I ask pack makers to:
1. Provide a link to this forum thread or the curse project page for the mod in their readme.
2. Include the OpenEye mod in your packs.

I understand that these requests may not be possible in all cases, but suggest that modpack makers take a serious look at including OpenEye. It has the potential to help developers improve their mods, and with the right configs can do the same for pack makers.



OLD INFO:
It adds the following:
  • EMC Crystal, Dense EMC Crystal, Super Dense EMC Crystal - A crystal that stores EMC. The ME autocrafting system will use these crystals in place of EMC in recipes. The EMC Crystals are created using the EMC Condenser, and the others by the crafting system as needed.
gzFb4Yv.png
  • EMC Condenser - This block, when connected to an ME network, will convert items piped into it into EMC Crystals of an equivalent EMC value. The crystals will then be stored into the ME network. This block requires an ME channel to function and will draw power from the ME network based on the EMC value of items being condensed. If condensing very high EMC value items, make sure your network has the power needed!
HCjQAos.png
  • EMC Assembler - This block functions as both a pattern storage and crafting unit for patterns using EMC. Connect it to your ME network and right click it with a linked "Tome of Alchemical Knowledge" (EE3) or "Alchemical Tome" (ProjectE), and autocrafting for all EMC recipes registered in that Tome will automatically be added to your ME network. Right click with an empty hand to remove the Tome, and all associated patterns. When you research new EMC values into your Tome, patterns for these items will automatically be added. Crafting CPU's/Storage/Co-Processors are still required for autocrafting to work. This block requires a channel to function.
IpdW7zP.png
  • Alchemical Tome - This tome stores a copy of all the transmutations you have learned. The transmutations stored in the book are shared between all the books you own, so adding transmutations to any of them adds it to all of them. To "teach" the tome your transmutations, Right-Click in the air with it. You will become the Tomes "owner" and the Tome will have a copy of all your transmutation knowledge, the Tome will be automatically updated with any new transmutations you learn. To clear a Tome of all owners and knowledge, Shift Right-Click it. This item is only available when using ProjectE. And yes, I know it looks like a vanilla book, I am not an artist.
Recipies:
  • EMC Condenser (EE3):
gX6qZWN.png
4x Minium Dust, 4x Ash Infused Stone, 1x Annihilation Core​
  • EMC Condenser (ProjectE):
RCBaGyS.png
4x High Covalence Dust, 4x Stone, 1x Annihilation Core​
  • EMC Assembler (EE3):
eBfBDJc.png
4x Minium Dust, 4x Ash Infused Stone Slabs, 1x Formation Core​
  • EMC Assembler (ProjectE):
BaFILks.png
4x High Covalence Dust, 4x Stone Slab, 1x Annihilation Core​
  • Alchemical Tome (ProjectE):
JXnSjkI.png
4x High Covalence Dust, 1x Book

Known Issues:
  • There is a max EMC value for a single item to be crafted. Currently it is 48,922,361,856 (Yes that is 48 Billion EMC) with the default config settings. If by some mod authors insanity you run into an item or block with a higher EMC value than this, let me know and we'll see what we can work out.
Configuration:
  • The power costs, crafting speed, number of items that can be condensed at once, EMC value of Crystals, and a few other settings can be changed in the config file. If you think this runs too fast or slow, tweak away.
  • A note about the Crystal EMC value: If the item you are crafting does not consume all EMC contained in the Crystals, the excess EMC will be stored by the assembler until it has enough excess EMC to manufacture a new Crystal. Because of this, setting the EMC value of the Crystal too high will cause the calculation of crystals needed to be more and more inaccurate the higher you go. Values that are too low may slow condensing of items, and may require larger Crafting CPU complexes to deal with the higher number of items.
  • Equivalent Energistics should autodetect if you are using EE3 or ProjectE. But if for some reason it doesn't, or you are using both, you can change this via the config.
Requires:
  • Applied Energistics 2
  • Java 8
Optional (Only one is supported at a time):
  • Equivalent Exchange 3
  • ProjectE 1.8.0 or higher
Downloads:
http://www.curse.com/mc-mods/minecraft/231853-equivalent-energistics

Source:
https://github.com/Mordenkainen/EquivalentEnergistics

Issues:
https://github.com/Mordenkainen/EquivalentEnergistics/issues

Modpacks:
I give permission for anyone to include this mod in any non-pay modpack. This mod may also be distributed via any non-pay launcher. If your pack is distributed via the Curse Launcher permission is implied since the project is published on Curse.

If possible I ask pack makers to:
1. Provide a link to this forum thread or the curse project page for the mod in their readme.
2. Include the OpenEye mod in your packs.

I understand that these requests may not be possible in all cases, but suggest that modpack makers take a serious look at including OpenEye. It has the potential to help developers improve their mods, and with the right configs can do the same for pack makers.

Future:
  • Lower tier EMC autocrafting that does not require AE2. This will allow integration with other autocrafting systems.
ChangeLog:
V0.1:
  • Initial Release
V0.2:
  • Added support for ProjectE
  • Crafting no longer stalls if patterns are changed with an active job running.
  • Fixed an issue that prevented Tomes in an Assembler from being displayed after a restart.
  • Fixed a bug that caused the condenser to always use the amount of EMC for the version of an item with a damage value of 0.
  • Fixed a crash when an item saved in the playes book has it's EMC value removed.
  • Created additional tiers of crystals that will be auto-crafted when needed. This fixes a crash when crafting items with high EMC values.
  • Added the Alchemical Tome for ProjectE. Right-Click to save or refresh your researched Transmutations, Shift Right-Click to clear the book. Use this book in the EMC Assembler to teach it crafting patterns.
V0.3:
  • Fixed crafting stalling on server restart
  • EMC Crystals are now filtered from an players learned transmutations. This solves a glitch that caused Dense Crystals to be uncraftable by AE.
  • Fixed an issue where the Client did not get updated with server state causing a crash.
  • Parallel crafting now works properly
  • EMC Assemblers now display the item they are crafting.
  • Condenser power usage has been changed to be based on the crystals output rather than the item being condensed. This should prevent the case where a network without enough power appears to "eat" high EMC value items that are pumped into the Condenser.
  • Added support for Waila
  • Some defaults in the config have been changed. You may want to delete your config and allow it to be recreated.
V0.4:
  • Fixed issue where invalid items were being added to the transmutation list
  • Rewrote crystal calculations to prevent "recipes" that required more than 9 stacks of crystals
  • Added checks for EE3 and ProjectE to stop Minecraft loading if neither is found.
  • Updated to use the ProjectE 1.8.0 API
  • API update means automatic detection of new transmutations and EMC changes for ProjectE!
V0.5:
  • A quick fix for errors about trying to load classes it shouldn't. Sorry about that
V0.6:
  • Rewrote code that builds EMC Patterns to be much more efficient. This should resolve TPS issues due to patterns being recalculated.
  • Fixed display of item being crafted in the Assembler to only show one item.
  • Added a texture for the Alchemical Tome! (Thanks AngleWyrm3!)
  • Recombined event handler.
V0.7:
  • Rewritten from scratch with too many changes to list. Check the video!
  • Required Java 8!
 
Last edited:

Mordenkainen

New Member
Jul 29, 2019
368
0
0
Ok, I have looked at the ProjectE API and I believe this should be possible.

I figure I should have an updated version with ProjectE support by the end of the week. Just have a few things to figure out.

EDIT - So I am having a problem in making the ProjectE version "not OP". ProjectE's API does not currently have an easy way to read what a players learned transmutations are, or even what all the possible Transmutations are. (or read the EMC value of an Item)

By directly accessing their code, I am able to get a list of what all the possible transmutations are. Getting player specific info is more troublesome. In some versions of ProjectE I can read an offline players Transmutations, but in the up and coming version, you can only read a players transmutations when that player is online. In both cases no capability exists to monitor for changes in the players learned transmutations.

The only thing I can do is make the Assembler support every transmutation, not just the ones a player has learned. If I did this I would want to make the "Tome" part of the recipe, but this item can be disabled in the ProjectE configs. Without the Tome, the block is just way too overpowered.
 
Last edited:
  • Like
Reactions: lolmer

averspecialblossom

New Member
Jul 29, 2019
16
0
0
Ok, I have looked at the ProjectE API and I believe this should be possible.

I figure I should have an updated version with ProjectE support by the end of the week. Just have a few things to figure out.

EDIT - So I am having a problem in making the ProjectE version "not OP". ProjectE's API does not currently have an easy way to read what a players learned transmutations are, or even what all the possible Transmutations are. (or read the EMC value of an Item)

By directly accessing their code, I am able to get a list of what all the possible transmutations are. Getting player specific info is more troublesome. In some versions of ProjectE I can read an offline players Transmutations, but in the up and coming version, you can only read a players transmutations when that player is online. In both cases no capability exists to monitor for changes in the players learned transmutations.

The only thing I can do is make the Assembler support every transmutation, not just the ones a player has learned. If I did this I would want to make the "Tome" part of the recipe, but this item can be disabled in the ProjectE configs. Without the Tome, the block is just way too overpowered.
give players a waring if they disable the tome

Sent from my Nexus 5 using Tapatalk
 

Mordenkainen

New Member
Jul 29, 2019
368
0
0
give players a waring if they disable the tome

Actually I'm doing something a little different. I am adding a "Tome" item that the player can craft, and link to their current Transmutation knowledge. This tome will store a copy of that info, that can be referenced even when the player is not online. The tome will need to be installed in an EMC Assembler in the same way as is done for EE3 to "teach" the assembler that players transmutations.

Just like the EE3 tome, the new tome I am creating is linked to all other tomes that player has created, so updating the transmutations in one of them updates them all. In addition, your Tome can be shared with other players so if you know how to transmute Nether Stars and they don't, putting your book in their AE system will allow them to autocraft Nether Stars.

This allows the ProjectE version to behave almost exactly like the EE3 version. The major differences are:
1. In the EE3 version, when a player learns a new transmutaion, it is automatically added to all tomes linked to the player. The ProjectE version will require the player to manually "update" one of their tomes.
2. In the EE3 version, when somethings EMC value is changed, all EMC Assemblers are automatically notified of the change so that the number of crystals used by the transmutation patterns can be recalculated accordingly. For the ProjectE version, crystals will not be recalculated until the server is restarted (Global), or when the chunk the Assembler is in unloads and reloads (per Assembler). I'm still trying to figure out a workaround for this issue, but may have to add an Admin command to force all Assemblers to "relearn" their patterns.

In any case, I still hope to have a version out this weekend with at least basic ProjectE support.
 
Last edited:

TomeWyrm

New Member
Jul 29, 2019
898
1
1
You have just made me very VERY happy... I've got a bit of a major feature request though. Could you maybe add in Logistics Pipes support? I've always preferred it, personally. Though I think the LP/AE integration would allow LP to request AE crafts, I could easily see EE3/PE autocrafting integration being a good thing for LP as well :)
 

Mordenkainen

New Member
Jul 29, 2019
368
0
0
You have just made me very VERY happy... I've got a bit of a major feature request though. Could you maybe add in Logistics Pipes support? I've always preferred it, personally. Though I think the LP/AE integration would allow LP to request AE crafts, I could easily see EE3/PE autocrafting integration being a good thing for LP as well :)

I haven't looked at LP in a long time.

If I remember it's crafting subsystem, it requires a crafting pipe with recipe on an autocrafting table, with the proper recipe set on it as well. I'm not sure I would be able to integrate with that.

IIIRC last time I looked LP and AE could see each others inventories, but not each others crafting (or it went one way but not the other, something like that).

That said, if I can do it I think it's a great idea. Open up a new item in the issue tracker and I'll take a peek when I can, but I am simply not sure it's possible.
 

TomeWyrm

New Member
Jul 29, 2019
898
1
1
Can do!

I haven't looked into the guts of LP either, and I do remember the mostly uni-directional integration for a while (I can't remember which way it worked either :) ).

As for implementation ideas, it wouldn't actually require much integration now that I think about it. LP would just need to know that X number of EMC crystals go in, Y item comes out. You could do individual LP patterns for the assemblers if you wanted, rather like the Tome for PE now, except limited to one EMC>item per pattern.
 

Mordenkainen

New Member
Jul 29, 2019
368
0
0
Can do!

I haven't looked into the guts of LP either, and I do remember the mostly uni-directional integration for a while (I can't remember which way it worked either :) ).

As for implementation ideas, it wouldn't actually require much integration now that I think about it. LP would just need to know that X number of EMC crystals go in, Y item comes out. You could do individual LP patterns for the assemblers if you wanted, rather like the Tome for PE now, except limited to one EMC>item per pattern.
Yes, but there are some somewhat subtle details that are not obvious at first. The system currently automatically adapts to changes in the emc value of an item, or of the crystals themselves. There are tiers of crystals that under normal usage a user will never put their hands on, but in a manual system like you describe they would need it. The requirement of the Tome is to prevent total OPness, but if I just added a crafty table type thing that interfaces with lp crafting that is out the window.

And, one of my design goals for this mod was no UI, only in-world interaction. Tough to do if i add a crafting table.

So yeah, down and dirty, perhaps not that hard. But down and dirty wouldn't meet my personal expectations.

Ok, enough standing on my soapbox.
 
Last edited:

TomeWyrm

New Member
Jul 29, 2019
898
1
1
Hmm... you would need some level of integration directly with LP then... I think the team is relatively approachable. If I remember later I'll try to get you together and see if the idea is even feasible.
 

Azzanine

New Member
Jul 29, 2019
2,706
-11
0
Also suggesting LP integration seems outside of the initial scope of this project. It's called equivalent energistics, not Equivalent Logistics.

Sent from my GT-I9100 using Tapatalk
 

subarct1c

New Member
Jul 29, 2019
3
0
0
Love the mod so far, we just added it to our server. I did notice one thing that seems like a bug. Most items condense just fine, but when we toss an octuple compressed cobble into the condenser it seems to just eat the item and not output any emc. I don't know if you have some kind of limit per item to condense into the crystals but it would be nice to be able to toss those in without having to break them down in the EE3 table first.

Just for reference, octuple compressed cobble is worth 43,046,721 emc.
 

Mordenkainen

New Member
Jul 29, 2019
368
0
0
Love the mod so far, we just added it to our server. I did notice one thing that seems like a bug. Most items condense just fine, but when we toss an octuple compressed cobble into the condenser it seems to just eat the item and not output any emc. I don't know if you have some kind of limit per item to condense into the crystals but it would be nice to be able to toss those in without having to break them down in the EE3 table first.

Just for reference, octuple compressed cobble is worth 43,046,721 emc.
Octuple compressed works as long as you are using the latest version.

Make sure your network has the power to handle the conversions. I think it costs about 43,000 ae per oct cobble.