Mekanism Additions

Mekanism Additions

21M Downloads

ic2 enet compatiblity

DbpGaming opened this issue · 6 comments

commented

Issue description:

mekanism cables cannot explode ic2classic machines, in any case they would, they just don't send energy

image: https://cdn.discordapp.com/attachments/422478424637177856/647814105108840449/unknown.png

on the left is the different tiered cables with all LV producers works fine, the middle is scaling the cables with the producers, anything after LV doesnt work, the right is all basic cables with the different tiers of producers, again only LV does anything, which in every case but LV there should be an explosion

if need be i can also test this with ic2exp, ic2exp has a version of classics eu api that is broken, this broken api is the reason for stuff like the AE2 controller exploding if you use HV on it with ic2classic, but shouldn't be the cause of this as this is straight up halting power if it would explode

Steps to reproduce:

  1. use any high voltage power provider
  2. plug it into an lv furnace
  3. watch it not do anything

Version:

Forge:14.23.5.2847
Mekanism:9.8.2.389
IC2Classic:1.5.4.5

commented

Our IC2 support is for IC2 Exp, so as long as it doesn't crash with classic it's fine.

I don't think our cables cause any explosions in IC2 anyway?

commented

Personally I don't really have an opinion on if it causes explosions or not (I can see both sides of the argument), and I probably won't touch it soon anyways given I am working on the 1.14/1.15 branch. But One issue I see is even if we made it so our different tiers correspond to different tier IC2 powers, then all that would be needed is at the end of a network using a different cable for example a basic universal cable. Mekanism has no concept of what types of cable it has gone through along the way. So it is similar to glass fibre cables in that it can transfer any type of power, the big issue with if we wanted to make it explode is we have no concept of where the power came from.

commented

yeah sorry for not commenting on this, been busy, "cables cause any explosions in ic2 anyway" thats the issue, they dont nor do the machines, from conversations on the discord i thought this wasnt intentional? if it is this issue is pointless, but id argue that this shouldn't be something youd want,as it can break ic2 balance, and cause headaches for anyone on the ic2 side, when someone thinks ic2 doesnt have these mechanics because mekanism cables avoid them, but when they say place an ic2 machine next to another one they get an explosion, and yeah ill check exp tomorrow to see the behavior with it

commented

The thing about IC2 is that its the E-Net itself that does the exploding, and while we do register with the net, I think we tend to directly push power into the receiver via the interface (Java) directly.

So it's a bit of a grey area I suppose, especially as pup mentioned that we don't have the same restrictions on cable tier.

It's probably not worth spending a lot of time on, but if someone did want to PR something that meshes better with the E-Net I wouldn't say no.

commented

ah i had forgot about that, mekanism cables basically store power in a buffer and pass it along, it doesnt go from point a to point b, but thinking about it, dont think that should matter? machines would only explode if a higher tier cable pushed energy into them at a higher rate, but a low tier cable couldnt ever accept a higher tier anyway, so you only get this one edge case where if you use a more expensive cable for lower tiers stuff explodes, kinda feel like it's gonna be messy both ways currently, and yeah thats what i was afraid of initially is the enet not being fully utilized

commented

When I designed IC2 compat years ago I did so in a way that would dynamically distribute power so explosions would not occur. Maybe we’ll re-approach this when adding IC2 support for 1.15, but for now I’m happy with the way things are designed.