Physics

by ElAdamo
All power is not created equal.
a month ago
0.17
410
Owner: ElAdamo
Source: N/A
Homepage: https://forums.factorio.com/viewtopic...
License: The Unlicense (Public Domain)
Created: 2 months ago
Latest Version: 0.0.7 (a month ago)
Factorio version: 0.17
Downloaded: 410 times

Updates the physics for many types of entities. It does this programmatically, and so should be compatible with any other mod that introduces applicable entities. On its own, this mod introduces few immediately-obvious changes, but combined with my nuclear mod and/or my cinefaction mod, or any other mod that introduces new energy production methods, it creates efficiency differentials between energy_source types, improving the realism of chemical and nuclear energy production, while maintaining vanilla ratios and blueprint compatibility.

Many of the changes will be invisible to the player; vanilla ratios and blueprints will work with this mod. The goal of this mod is to add realism to the Factorio chemical and nuclear energy physics and to model efficiency differences between fuel types that aren't accessible in the vanilla game. For example, if you have a mod that adds a fluid-based generator (like KS Power), this mod will set the energy_source efficiencies such that while both the fluid-based generator and the boiler are available to make electrical power, the boiler will be more efficient (by about 6.5%). All of the fuel values have been adjusted so that you still get the same "bang for your buck" in terms of the electrical energy produced by burning fuels you are already familiar with in the vanilla game, and again, all vanilla ratios have been maintained.

Physics introduces efficiencies for applicable boilers, generators, reactors, and burner-powered machines. These values have been chosen to roughly match real-world average values of advanced modern technology. Physics slightly improves the throughput of mega-reactors by increasing the height of vanilla pipes, pumps, generators, and boilers by their associated efficiency quotient. Heat-pipe throughput and specific heat is also increased by an effective efficiency quotient. All power values and temperatures have been adjusted to maintain balance with the vanilla ratios. Interestingly, balancing this by normalizing temperature brought the burner boiler temperature more in-line with real-world coal boiler steam operating temperatures!

The uranium fuel cell is modified in two ways. The recipe is modified to reflect a high-enriched uranium ratio, such as would be used in a liquid-metal reactor represented in the nuclear-reactor graphic. The energy per cell has also been increased. The total increase in energy of the uranium fuel cell on a per-ore basis should be about 5 times. This is partly to off-set the loss in solar, and to reflect the fact that nuclear fuel cells are magical power orbs, even in real life.

Solar panels are severely nerfed. Their output power has been reduced to what I consider about the maximum theoretically-possible power output for the given solar panel entity size within any atmosphere that can support liquid water. The total storage capacity of batteries remains unchanged, but their input and output limits are scaled along with solar power to maintain vanilla blueprint ratios. The drain on laser turrets is reduced by a factor of 24 as a partial offset; this changes the laser turret challenge from "providing a constant amount of power" to "providing sufficient on-demand power".

This mod also updates the physics of rockets, making them a more viable weapon due to an increased projectile speed (real-world rockets are very fast). It does not increase the speed of the nuclear bomb.

I appreciate any feedback, especially if someone finds energy production cases that become unbalanced due to my changes.

The values currently applied (as of 2019-09-13):
-- Temps determined to maintain blueprint compatibility.
-- Applied by my physics mod.
boiler_eff = 0.85
gen_eff = 0.5
furnace_eff = 0.65
reactor_eff = 0.80
chem_temp_max = 315
nuke_temp_max = 990
reactor_consump_mult = 2.01
chem_fuel_quotient = boiler_eff * gen_eff
nuke_fuel_quotient = reactor_eff * gen_eff
-- Based on theoretical max throughput
-- of a 3 meter^2 solar panel (5.1kW).
solar_panel_eff = 1/10 -- should be 6 kW
accumulator_power_quotient = 1/solar_panel_eff