The Perfect Energy System

  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord

Omicron

New Member
Jul 29, 2019
2,974
0
0
That's all fine, but if you want to use something that uses a lot of power (like the engines) you notice the issue with the system. For 'real' power setups (the ones we currently use BC and IC power for) it's pretty much useless.

That's due to the conversion process. Blutricity works on a different power plane and has a different scaling paradigm than the Buildcraft and IC2 networks. Just one example: a Thermal Expansion basic machine eats 2-4 MJ/t, a basic IC2 machine eats 3 EU/t, but a basic blulectric machine eats the conversion equivalent of 1 MJ/t. Everything in the system is much lower power. You can't rate the system by how well it converts into a different system... that makes about as much sense as calling a combustion engine useless because it can't properly power a mass fabricator through a converter. It's the highest tier Buildcraft engine versus the highest tier IC2 consumer... clearly the two don't fit together by any stretch of the imagination. IC2 howerver offers its own high-end energy producer which can very well run a mass fab properly.

Each system has its own base values and imposes its own scaling paradigms over its own progression tree. That's precisely why Power Converters is horribly broken and will always remain broken - it allows you to exploit the difference in scaling by setting a fixed conversion that completely disregards how the different power systems develop in relation to each other during the different gameplay phases, or even when these phases happen or how long they last.

TL;DR - You want MJ? Then build a boiler, not a blutricity solar panel. ;)

(Not that the blulectric engine can't easily run at 24 MJ/t, three times faster than even Railcraft's highest tier, if you simply build it right...)
 

frederikam

New Member
Jul 29, 2019
836
0
1
I've been seeing, and maybe contributing, a lot of criticism towards the EU and MJ systems and some of the new changes coming out, and that got me wondering:

What would make a good energy system? I'm curious to see what people think would make for a good system as opposed to hearing what people hate about existing systems. :)

Most importantly, though, is what would make a fun energy system to play with. :p


What actually popped into my head, was to make a completely new energy system that's a crossover between EU and MJ. But meh, that ruins the fun of having a power gen system for both.
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
What actually popped into my head, was to make a completely new energy system that's a crossover between EU and MJ. But meh, that ruins the fun of having a power gen system for both.

Why? A power system in itself is useless. What would make your system better than the current MJ system that TE brings?
 

Belone

New Member
Jul 29, 2019
417
0
0
Just a quick comment: I'm a power engineer - I work with real electricity every day. There's a really good reason I didn't write a new system, especially a "realistic" one.
It's rather interesting then that you went for MJ rather than EU as your energy system, as EU is more electrical based whilst MJ is more mechanical based (in my opinion). Purely out of interest what was it that made you pick that energy system?
 

Omicron

New Member
Jul 29, 2019
2,974
0
0
Well, you can always strike a balance between realism and playability, right?

At first and foremost, it should be usable. That's where UE for example really struggles. And adding complexity is fine, then, so long as it doesn't significantly impact the user experience.
 

Belone

New Member
Jul 29, 2019
417
0
0
Well, you can always strike a balance between realism and playability, right?

At first and foremost, it should be usable. That's where UE for example really struggles. And adding complexity is fine, then, so long as it doesn't significantly impact the user experience.

It does slightly hinge of course on the players. Some people in the community will enjoy an insanely complex power system akin to UE or Rotary Craft, whilst others (probably the majority) prefer an unrealistic and yet simple power system.
 

King Lemming

New Member
Jul 29, 2019
664
0
0
It's rather interesting then that you went for MJ rather than EU as your energy system, as EU is more electrical based whilst MJ is more mechanical based (in my opinion). Purely out of interest what was it that made you pick that energy system?

Neither one is anywhere close to realistic. IC2's is packet based, BC is tick-based. Of the two, BC's was less onerous at the time, could potentially be made far more performant, and felt more Minecrafty.

Real power systems use differential equations. It's overkill for Minecraft.
 

SatanicSanta

New Member
Jul 29, 2019
4,849
-3
0
Yup. Lack of documentation is what keeps me away from UE. Same goes for Electrodynamics. Nothing infuriates me more than a mod that expects me to try it out without even knowing what's in it.
That's what experimentation is for![DOUBLEPOST=1377872747][/DOUBLEPOST]
Just a quick comment: I'm a power engineer - I work with real electricity every day. There's a really good reason I didn't write a new system, especially a "realistic" one.
Yeah, but I think having a system that requires adapters to get power into a machine would be cool, as would having machines not explode, rather have them short circuit.
 

draeath

New Member
Jul 29, 2019
456
0
0
My idea: get rid of the idea of packets or flows. When a "line" is changed, do an A* search to find connected devices and establish a link. Only re-evaluate that when nodes in the list are altered. Then, directly transmit "energy" from sources to destinations without simulating a flow.

If you want an analog to resistance (eg electrical resistance or heat loss), store the graph length as you calculate the A* pathing and then reference that when you perform the transfer.

This offloads calculation to line-placement instead of resource transfer, meaning this would be lag-friendly. The use of A* or a similar pathing algorithm almost guarantees shortest-path links and makes loops impossible.
 
  • Like
Reactions: SpitefulFox

Uristqwerty

New Member
Jul 29, 2019
48
0
0
Forge addition idea (too lazy to try coding it myself): A power dictionary. Register your mod's power type, how much energy there is in one unit of that power, plus a default conversion efficiency. So, I could say that "MinecraftJoules" are each worth 1000 units of power, and any conversion from them is only 90% efficient by default. Then I could add that "EnergyUnits" are worth 400 units of power, and convert 95%.

Finally, I could then query the power dictionary: "convert 200 MinecraftJoules into EnergyUnits", 200 MJ * 1000 MJ/u * 0.9 = 180000 u, 180000 u * 0.95 / 400 EU/u = 427.5 EU.

Providing a common base type to compare each power system to ensures that a converter mod that properly uses it will never create an infinite power loop, and allowing mods to specify a default conversion efficiency allows higher tech mods to provide better conversion rates that still don't create free power (consider: ["FurnaceFuel", 100, 20%], then asking for one coal's worth of FurnaceFuel power converted to EU at 1.2x default rate, getting a conversion of Math.min(100%, (20% * 95%) * 120%), the dictionary clamping the conversion so that it is never more than 100%)

It wouldn't be the perfect energy system, but it would help all of the existing systems interact without mods having to explicitly support other power systems, and keep conversions balanced.
 

King Lemming

New Member
Jul 29, 2019
664
0
0
My idea: get rid of the idea of packets or flows. When a "line" is changed, do an A* search to find connected devices and establish a link. Only re-evaluate that when nodes in the list are altered. Then, directly transmit "energy" from sources to destinations without simulating a flow.

If you want an analog to resistance (eg electrical resistance or heat loss), store the graph length as you calculate the A* pathing and then reference that when you perform the transfer.

This offloads calculation to line-placement instead of resource transfer, meaning this would be lag-friendly. The use of A* or a similar pathing algorithm almost guarantees shortest-path links and makes loops impossible.

This is how conduits work, more or less. However, A* is used for optimization; for a network you really need an exhaustive Depth First Search, there's no real way around that. Still, it does front-load all of the calculation.

As far as resistive calculation, given that you have multiple sources of generation and consumers, path length doesn't quite work - you have parallel pathways and multiple injections. That's why real power systems boil down to matrix math and PDE's. The alternative is to limit any given transaction to a single producer/consumer, which seems off. Conduits circumvent this by essentially having two transactions - producers power the network, the network powers other things.


Ack please no. Ores and Fluids make sense, energy is very much a core part of a mod's identity.
 

SpitefulFox

New Member
Jul 29, 2019
1,235
0
0
make the system tiered,
the bottom tier would be to use animals and wooden gear assemblies to provide a low amount of power to your ore grinder. enough to slowly grind ore into dust, or to run a pump for pumping up liquids. a wood & canvas windmill or waterwheel would also be an option.

Reminds me of Better Than Wolves, minus the cult of "GRIND IS FUN!"

Forge addition idea (too lazy to try coding it myself): A power dictionary.

Still doesn't really account for what Omicron mentioned about how cross-system conversions don't take into account how different mods scale with themselves.
 
  • Like
Reactions: Pokefenn

AlanEsh

New Member
Jul 29, 2019
907
0
0
From the first time I laid eyes on the IC2 Water Mill and Wind Mill implementation I've felt disappointment at modded minecraft's limited view on these types of power. I want to drop a line of "dam" blocks across a rive and add some turbines for power gen. I want giant multi-block wind farms that actually produce enough power that I don't have to stack 48 of them to notice.
Give me reactors that make "heat" that must be run through a heat exchanger to boil water for steam.
Giveme steam boilers that power turbines which can be coupled to mechanical gearboxes (running drive shafts and chain/belt driven machines) or spin generators for electrical power.
I'd even like to see multi-block steam engines like these old beasts:

Hook a brutha up!
 

Malexion

New Member
Jul 29, 2019
263
0
0
One without cables where nearby nodes can beam energy to the machines sounds kinda ideal to me, except that might suit a magic machine setup more.
 

the_j485

King of the Wicked
Dec 19, 2012
2,964
3,099
298
Look behind you
One without cables where nearby nodes can beam energy to the machines sounds kinda ideal to me, except that might suit a magic machine setup more.

Have a look at Resonant Electricity, a soon-to-be UE mod!
(I think that's what it does at least in part)
 

Malexion

New Member
Jul 29, 2019
263
0
0
Have a look at Resonant Electricity, a soon-to-be UE mod!
(I think that's what it does at least in part)

I have and it comes close, although I want wireless transmission without having to place something next to a machine.

Which would be closer in nature to Calclavia's MFFS 3.0 where you could pinpoint exact coordinates of where blocks will move, only in this case the transfer of energy.

It could also be comparable to the transmission of ars magica essence.