[1.10.2] Universal Cables
oryfoxer opened this issue ยท 17 comments
Issues with power transfer between Clockwork Engine from Forestry with universal cables. This issue shows up with other mods also.
Additional info - Energy Cubes can transmit and receive RF energy directly from RF generators, capacitor banks, etc. As i think, EnderIO now uses Tesla. You should take a look at that https://github.com/Darkhax-Minecraft/Tesla
Also took a look at this one and found the culprit. Mekanism doesn't follow the Tesla guidelines regarding to sending and receiving power.
From the standard page of the Tesla github:
Power sources are responsible for pushing power to nearby machines. Machines and wires should NOT pull power from other sources.
Mekanism cables currently look for energy providers (TeslaProducer capability, IEnergyProvider RF, IEnergySource EU and own CableOutputter capability). It should look for energy consumers and push the energy towards them.
Current situation is that producers (like a Capacitor Bank) pushes power into a universal cable, the cable pulls power from the Capacitor Bank (thus receiving twice every tick). The cable doesn't output to a consumer (like a Power Buffer) and the consumer expects the cable to push it to it.
This requires a rewrite of how energy is handled in Mekanism. Cables should not pull, it should be pushed in and it should push not pulled out.
@thommy101 you should just steal mekanism ;p
@ThatGamerBlue I'm not gonna steal it ;) Maybe help with a rewrite which I may or may not already have plans for.
First getting through the semester and then I'll take a look on if it's possible at all (time, licenses, permission of Aidan, and did I already mention time?)
Already took a look to update to 1.11, but there's a lot of stuff which is deprecated in the latest version of 1.10.2 which is removed in 1.11. Requires a total rewrite of every machine that handles fluids.
FWIW, I logged this same issue quite some time ago and @aidancbrady replied it was due to EnderIO not having proper Tesla support which then one of the EnderIO devs [Henry] threw a fit about how Tesla was shit and he would never implement it.
Glad to hear EnderIO finally implemented it. ;)
Sad to hear we still have Mek issues with it. I had taken a break from MC and came back recent to see the same bugs. You'll run into this trying to use EnderIO conduits into induction matrix, etc as well. You can put power IN to it ok but they can't take power OUT. Various other scenarios. Dimensional Matrix from EnderIO can't seem to output to Mek cables so I had to put in a hack using Immersive Engineering HV cables which worked fine [dim matrix -> hv cond -> hv wire -> hv cond -> mek energy pipes].
So are you saying you installed Tesla API and it works now? Just clarifying.
Cheers
@Utildayael No, Tesla didn't fixed that.
I only said that behaviour is changed. Before install, Universal cables can only Push to EnderIO machinery, after install Pull only from EnderIO machinery.
Mods that adds it's own port of RF works differently (broken in various ways).
But, mods that are same at Universal Cable behaviour,
mods that supports RF but not Tesla can pull power from Universal Cable, but can not push power into it. When mod support Tesla, it can Push power into cable, but they can't pull power from it
Words about Mekanism machinery:
you can push/pull power to any Mekanism energy storage directly (no cables or conduits)
You can't charge RF based tools (only from EnderIO for some reason, DraconicEvolution works fine) in Mekanism Energy Cubes or Induction Matrix, but you can charge Mekanism tools in EnderIO Capacitors
as a coder, even without any experience with Minecraft modding, i should say: Tesla looks much better for me than EU or RF systems
@ThatGamerBlue One advice, take a look at the takePower and givePower methods of TeslaIntegration, it's totally ignoring the simulated argument. This could also mess with a lot of mods. If you're going to tackle the whole Tesla/power issue, please solve that one also.
If you need any help, let me know ;)
@thommy101 noted, if you want to help there's a repo on my github ;)