« on: March 16, 2012, 06:31:44 AM »
I dabbled with programming back in school, but I'm primarily a problem solver and critical thinker. My way of thinking says that if you want to come up with an energy management system, first take a step back and look and what you're doing: you're trying to devise and code an algorithm to manipulate a system that was, by design, intended to be operated manually. It's like youre trying to design a robot to haul buckets of water from a river to a town instead of building an aqueduct. In my opinion, rather than automating the current system, it would be better, and easier, to just re-work the way energy is handled in the game, and reduce it to a simple formula that calculates the amount of resources that are consumed by the energy requirements of active ships.
After all, when automotive engineers designed automatic transmissions, they didnt just make a computer program and extra set of mechanisms to manipulate a manual transmission, they designed a whole new transmission based upon the very concept of it being automatic. I think the same thing applies here.
In a truly automatic energy management system, there would be no reactors (at least not as we know them right now). You would simply have an amount of resources held back from your income, based on the total energy needs of all non-low power ships. In keeping with the theme of more territory = more total energy production capacity (before having to deal with inefficient reactors), there would be a soft cap to your normal cost of producing energy, based on the total number of command stations you have. After which, a mathematical curve takes effect that increases resource drain in greater proportion to energy usage (similar to how energy inefficient reactors work now) until you take more planets or turn off some ships.
A figure showing your current resource drain from active ships could be added as a line item in the metal/crystal tooltips at the top of the screen (this is something I've always wanted anyway, even with the current energy system), and what is currently the available energy figure could become your current energy use, compared to the amount you can produce before hitting the soft cap (similar to a food use display in RTS games). The tooltip for it could be the current resource drain per 10,000 energy use, or something similar.
That way, not only is energy management automated, but the player has easy-to-read figures regarding energy and the cost of powering their ships. Beyond that, the player would also not have to worry about building reactors (building reactors wouldn't be intuitive in an automatic energy management system anyway).
-Instead of energy brownouts you would have sharp increases in resource drain in certain cases where you lose control of planets
-The loss of the strategic gameplay element of protecting your reactors is inconsequential, since if the AI is blowing up your reactors, theyre usually also blowing up your command stations. Though if you really wanted to keep energy reactors in the game, you could simply have one generic energy reactor that "activates" that planet for energy production, adding to the soft cap
-Zenith power generators would become structures that greatly increase your soft cap of energy production, or possibly a structure that reduces your normal resource cost for producing energy (that would actually be really cool, as the benefit of having it would be proportional to your energy use).
Now, dont get me wrong, I think the current hamster button solution works fine, and I dont think Chris/Keith need to spend time reworking the system (I know how they feel about that already, thanks to the energy hamster's relentless sarcastic remarks). However, if an automation system were to be developed, I'd rather it be something like above. If I were a new player, it would be very confusing to me to have to figure out how many reactors to build, and what mark level, if the available energy was always at the same level due to the automation. It just wouldnt be intuitive at all unless reactors were always auto-populated similar to extractors. And if they were, then it would make even more sense to implement a system like I described above.
TLDR: Don't devise a way to automate a system that was designed to be operated manually. Rather, create a system that is designed around being automatic.