Fuel Efficiency Tips and Tricks

So long story short I have an electric car, solar panels broke, need to change to gas powered.

Now in order to do this I need to get faaar across the map in hopes of finding new weapons so I can take over a public works, as I mentioned, solar panels are dead, And my electric car is very low on battery, so just wanna know the best way to travel long distances for my Mpg or whatever equivalent for electricity, Should I go slow at 9-19 mph and just wait till im there or go up to 39-49 cuz the trip would take less time?

General Fuel Efficiency Tips and Tricks always welcome as well, Such as upgrades, tires, different engines.

i’m so glad you asked this because it seems completely boolean to me. maybe someone else knows better, but i think everything ingame uses flat power, not depending on load.

but in your situation why not just look for some small engine, a gas tank and all the alternators you can install on that engine. charge it by running the gas engine with the solar engine removed, then retire your ‘charger’ by removing the gas tank. that will get you places. lawmowers seem to have inadequate motors for this (needs more science from me), but they work.

engines… put your car right in front of a bush and ‘engage’. does it push through? you have a usable engine setup.

tires… wish i knew! there’s the friction coefficient but i think that applies to skidding and stability. i just lamely use armored (eg ultrawide) tires for stuff that drives me and that’s that. more info sure’d be welcome.

ok, go looking for a fridge for a piece of rubber tubing for applying to all the gas cars you can find… and whatever you do, stay alive out there!

Cool thanks for the input guy, but the reason I cannot do that Is because I lack the materials required to weld or ductape the new parts in, and the public work has many many batteries, delicious… precious batteries.

I do however believe the more engines you have in a car the more fuel it eats up (Who would have guessed right?)

There is a value in the vehicle building screen about fuel consumption. Eg, for an electric engine, I believe its 3 per tick. My understanding is that it isnt currently changed by how fast you go, so hammering about at full speed is probably more fuel efficient than just crawling along. Happy to be corrected by someone more informed than me though.

Tires and the like dont change fuel efficiency other than weight, the heavier your car, the slower it is, though it doesnt seem to affect it by heaps, so unless you arent piling heaps of armor on, its not a big deal.

My plan would be to grab a normal car engine and a few alternators, take out your electric motor and put it in the trunk, install your gas motor then get a rubber hose by smashing up a fridge and some big containers, jerrycan if you can carry it, gallon jugs, biggest waterskins you can carry, etc. Loot up some fuel and then start driving to your destination, my understanding is there is no point just idling the engine to charge batts when you can just be driving for the same charge.

One trick I use if im having trouble with power for my car is carrying a small electric motor in my cargo space, it will keep the car moving, but only use 1 charge per tick. You also want pretty much your whole car covered in solar panels to keep your car running at a useful level.

You can find upgraded solar panels on solar cars on roads out in the wilds, if you have spare and high enough skills, you can pull them apart to learn the recipe (there is also a book that has it). With your car fully kitted out with them and a few spares in the cargo space, you are gold. You can also get quantum panels from lab finales, but they are super rare.

According to source code:

  1. Fuel consumption isn’t correct. They show 1/100 part of true consumption and always show 1 when it’s equal or less than 100.
    int fuel_usage = veh->basic_consumption(fuel_types[i]);
    if (fuel_usage > 0) {
        fuel_name_length = std::max(fuel_name_length, utf8_width(ammo_name(fuel_types[i]).c_str()));
        fuel_usage = fuel_usage / 100;
        if (fuel_usage < 1) {
            fuel_usage = 1;


  • Power for batteries are in W, but usage for rest is in 0.5*HP, so coeff is 373
  • This does not seem to match up for consumption, as old coeff is 100
  • Keeping coeff of 100, but should probably be adjusted later
  • http://en.wikipedia.org/wiki/Energy_density -> 46MJ/kg, 36MJ/l for gas
  • Gas tanks are 6000 and 30000, assuming that’s in milliliters, so 36000J/ml
  • Battery sizes are 1k, 12k, 30k, 50k, and 100k. present day = 53kWh(200MJ) for 450kg
  • Efficiency tank to wheel is roughly 15% for gas, 85% for electric
    void vehicle::consume_fuel( double load = 1.0 )
    ammotype ftypes[3] = { fuel_type_gasoline, fuel_type_battery, fuel_type_plasma };
    int ftype_coeff[3] = { 100, 1, 100 };
    for( int ft = 0; ft < 3; ft++ ) {
    double amnt_precise = double(basic_consumption(ftypes[ft])) / ftype_coeff[ft];
    float st = strain() * 10;
    amnt_precise = load * (1.0 + st * st);
    int amnt = int(amnt_precise);
    // consumption remainder results in chance at additional fuel consumption
    if( x_in_y(int(amnt_precise
    1000) % 1000, 1000) ) {
    amnt += 1;
    for( size_t p = 0; p < fuel.size(); p++ ) {
    if( part_info(fuel[p]).fuel_type == ftypes[ft] ) {
    if( parts[fuel[p]].amount >= amnt ) {
    // enough fuel located in this part
    parts[fuel[p]].amount -= amnt;
    } else {
    amnt -= parts[fuel[p]].amount;
    parts[fuel[p]].amount = 0;

int vehicle::basic_consumption (const ammotype & ftype)
int fcon = 0;
for( size_t p = 0; p < engines.size(); ++p ) {
if(ftype == part_info(engines[p]).fuel_type && parts[engines[p]].hp > 0) {
if(part_info(engines[p]).fuel_type == fuel_type_battery) {
// electric engine - use epower instead
fcon += abs(epower_to_power(part_epower(engines[p])));
else {
fcon += part_power(engines[p]);
return fcon;

int vehicle::epower_to_power (int epower) {
// Convert epower units (watts) to power units
// Used primarily for calculating battery charge/discharge
// TODO: convert batteries to use energy units based on watts (watt-ticks?)
const int conversion_factor = 373; // 373 epower == 373 watts == 1 power == 0.5 HP
int power = epower / conversion_factor;
// epower remainder results in chance at additional charge/discharge
if (x_in_y(abs(epower % conversion_factor), conversion_factor)) {
power += epower >= 0 ? 1 : -1;
return power;

power += epower >= 0 ? 1 : -1;
WTF is that?

hey, ok, i feel moderately clued in.

can we summarize as follows…

for any given mass and speed the auto-pilot will run the engine just enough to make you run at that speed. the engine is then either on or off. the heavier your car… and/or the more friction??? … the more often the engine needs to tick on.

if that’s an ok understanding, then have you seem anything about if and how the wheels/tire setup affects friction? 'cause if there’s some hidden efficiency mechanic, it might be hiding out there.

@jimbo … yes on the driving while charging of course just need to bring in a large enough gas engine, maybe a 4 or 6 cyl.

[quote=“EditorRUS, post:5, topic:5770”]

power += epower >= 0 ? 1 : -1;

WTF is that?[/quote]

If epower is more than or equal to 0, add 1 to power, otherwise remove 1 from power. I think…

If epower is more than or equal to 0, add 1 to power, otherwise remove 1 from power. I think...
[me=EditorRUS]facepalms[/me] I didn't see it's enclosed in { } as well.