Page 1 of 2

New species trait: fuel efficiency

Posted: Tue Mar 20, 2018 9:12 pm
by Oberlus
A new species trait that seems natural to FO (didn't find anything like that in the forum):
Bad: -1 fuel.
Good: +1 fuel.
Great: +2 fuel.

Currently every species is average.

Bad fuel would imply slower exploration (can be balanced with good detection) and expansion (can be balanced with good supply), and good fuel the opposite.

Is it worth a pull request?

Re: New species trait: fuel efficiency

Posted: Tue Mar 20, 2018 9:28 pm
by Geoff the Medio
This would effectively add a fuel tank part to ships crewed by those species. That isn't overly compelling... A multiplicative adjustment might be more interesting.

Re: New species trait: fuel efficiency

Posted: Thu Mar 22, 2018 6:28 pm
by Oberlus
Hmm... agree.

Assuming +25% (good) and +50% (great), rounding up, we have:
For +25% fuel species: +1 fuel for ships up to 4 fuel, +2 for ships with 5-8 fuel. That is, an starting +1 and +2 late game.
For +50% fuel species: +1 fuel for 1-2, +2 for 3-4... So they get from the start a +2 for almost every useful ship, and up to +4 in ships with late game fuel tanks (so something like max fuel 12 instead of 8).

Re: New species trait: fuel efficiency

Posted: Thu Mar 22, 2018 8:20 pm
by Geoff the Medio
Oberlus wrote:...rounding up...
There is currently no rounding, ceiling, or floor functions built into FOCS numeric operations, though they would be fairly easy to add, should someone be so motivated.

Re: New species trait: fuel efficiency

Posted: Thu Mar 22, 2018 8:33 pm
by Oberlus
If there is no problem with using non-integer maximum fuel capacities (e.g. 3.75), then +25% and +50% would work just fine.

Re: New species trait: fuel efficiency

Posted: Fri Mar 23, 2018 11:17 am
by Ophiuchus
Oberlus wrote:If there is no problem with using non-integer maximum fuel capacities (e.g. 3.75), then +25% and +50% would work just fine.
I think that float fuel max are fine, but balancing the game with fixed amounts is probably easier.

Ships with three fuel can do jump two jumps out of supply and return. Ship with two fuel can jump one hop out of supply and return. So:
For ships with an even meter of fuel an extra fuel also means one extra supply-equivalent-roundtrip-reach.
For ships with an odd meter of fuel it means zero supply-equivalent-roundtrip-reach.

Two extra fuel always mean one extra supply-equivalent-roundtrip-reach


Note though that it would be pretty easy to get a 9 fuel scout ship (with 2 deuterium tanks) when having +50%. We could try with the multiplication first and change later if its not good.

But actually what I would suggest though is +2 fuel for GOOD and +4 fuel for GREAT. Then it is in the same league as the supply species is (+1 for GOOD and +2 for GREAT). Supply has a lot of extra and fuel is "more efficient" for deep recon, so both have strengths.

Dont hesitate to put up a PR, i think the trait is great :)

Re: New species trait: fuel efficiency

Posted: Wed Jun 27, 2018 11:34 am
by Oberlus
Feature request (issue) open: #2187.

Re: New species trait: fuel efficiency

Posted: Wed Jun 27, 2018 1:04 pm
by Jaumito
Oberlus wrote:A new species trait that seems natural to FO (didn't find anything like that in the forum):
Bad: -1 fuel.
Good: +1 fuel.
Great: +2 fuel.
I had a WTF? moment when I first read this as I thought it was already in the game. Turns out I implemented it myself long ago to balance the playable species and completely forgot about it!
Currently every species is average.
I believe the Misiorla have always been "bad" with fuel. Probably due to reckless driving.

Re: New species trait: fuel efficiency

Posted: Wed Jun 27, 2018 1:44 pm
by Oberlus
Feel free to make a PR with it in github!

What values did you use in your implementation? +1 for good and +2 for great, double of that as suggested by Ophiuchus, multiplicative as per Geoff, other?

Re: New species trait: fuel efficiency

Posted: Wed Jun 27, 2018 3:11 pm
by Jaumito
Oberlus wrote:What values did you use in your implementation? +1 for good and +2 for great, double of that as suggested by Ophiuchus, multiplicative as per Geoff, other?
Your first suggestion (the one I quoted in my previous post), using this snippet of code from the Misiorla species file -

Code: Select all

        EffectsGroup
            description = "BAD_FUEL_DESC"
            scope = And [
                Ship
                Source
            ]
            effects = SetMaxFuel value = Value - 1
You just have to add entries for GOOD_FUEL_DESC and GREAT_FUEL_DESC in stringtables, and voilĂ  - simple!

I used the same method to make Setinon ships more stealthy, and Abaddoni ones more sturdy, among other things. Just to add a bit of flavor to natives I wouldn't otherwise give ships to command.

Re: New species trait: fuel efficiency

Posted: Wed Jun 27, 2018 8:12 pm
by Geoff the Medio
Geoff the Medio wrote:There is currently no rounding, ceiling, or floor functions built into FOCS numeric operations, though they would be fairly easy to add, should someone be so motivated.
Untested, but: https://github.com/freeorion/freeorion/ ... 89fe977aa8

Re: New species trait: fuel efficiency

Posted: Thu Jun 28, 2018 6:46 pm
by Ophiuchus
Ooops forgot about this discussion. In master actually some version of this is already implemented. Needed it to balance the Fulver.

https://github.com/freeorion/freeorion/ ... uel.macros

The bonus is now bad-1 ; good +1 ; great +2 ; ultimate +3

Reasoning: the difference between average supply and great supply is +1 supply; in order to match this distance fuel should be +2
Also bad was always -1

Note that maybe some species should get some of the bonus.
Probably the Sly should give up their gas giant refill capabilities for a good or great fuel.

Re: New species trait: fuel efficiency

Posted: Sun Jul 08, 2018 11:36 am
by Ophiuchus
One suggestion: as great supply is rated only as a single plus in the description:
  • introduce good_supply with +2 (average_ is +1)
  • downgrade great_supply species to good_supply
  • upgrade great_supply to +3, ultimate_ to +4
  • refactor _fuel to bad_ -1, average_ +0, good_ +2, great_+4, ultimate_ +6

Re: New species trait: fuel efficiency

Posted: Sun Jul 08, 2018 11:51 am
by Oberlus
Ophiuchus wrote:One suggestion: as great supply is rated only as a single plus in the description:
  • introduce good_supply with +2 (average_ is +1)
  • downgrade great_supply species to good_supply
  • upgrade great_supply to +3, ultimate_ to +4
  • refactor _fuel to bad_ -1, average_ +0, good_ +2, great_+4, ultimate_ +6
+1 For the supply changes. But for the fuel values, I still think doing it multiplicative, as suggested by Geoff, is better for late game. Also, there are rounding functions now:
Geoff the Medio wrote:
Geoff the Medio wrote:There is currently no rounding, ceiling, or floor functions built into FOCS numeric operations, though they would be fairly easy to add, should someone be so motivated.
Untested, but: https://github.com/freeorion/freeorion/ ... 89fe977aa8

Re: New species trait: fuel efficiency

Posted: Sun Jul 08, 2018 6:24 pm
by Ophiuchus
Oberlus wrote:For the fuel values, I still think doing it multiplicative, as suggested by Geoff, is better for late game.

I dont think that usefulness should necessarily scale with the number of internal slots available. Maybe the main usefulness would be for ship designs with few internal slots available.

From a balancing perspective i think additive bonus is better (translating to one free fuel tank), so I suggest rather making the bonus better with better fuel tech than increasing fuel part effectiveness; e.g.
  • good_fuel with no extra fuel tech: +2 fuel
  • good_fuel with deuterium fuel: +3 fuel
  • good_fuel with deuterium and antimatter fuel: +6 fuel
No matter if additive or multiplicative i think balancing should meet the following constraints (considering good_supply means +2 supply)
  • a good_fuel species should increase outpost/colony ships' fuel at least by one
  • a good_fuel species should increase the basic scouts reach by one (this is different from fuel+1 or fuel+2, but it should include the return trip)
It would be nice if you could come up with some constraits for later game.

edit: tried to make the basic scout constraint more clear