[GI] Speed modules calculating formula

Discussion in 'General Archive' started by Darkne67, May 24, 2020.

Dear forum reader,

if you’d like to actively participate on the forum by joining discussions or starting your own threads or topics, please log into the game first. If you do not have a game account, you will need to register for one. We look forward to your next visit! CLICK HERE
Thread Status:
Not open for further replies.
  1. Darkne67

    Darkne67 User

    Hi! How speed modules are calculated? from base ship speed?. Lets say theres module for goliath which gives 3% more speed. for example Goliath have 300 base speed, 3% from it is 309, so Goliath with module, speed gens and promerium [But without formation] will have max speed 549? Or its calculated from base speed + speed gens [So its 450 + 13,5 module] = 553/554 with module and promerium?
     
  2. Mod-Rogue

    Mod-Rogue User

    Hello @Darkne67

    With the 300 normal speed from standard and you add the fastest gen with 10+ speed on the Goliath (15slot gen) you will get
    450Speed without the prom on ... If you put prom on that give you 20% better performance you will end on 540 in total if you put wheel on you get 5% on the 540 you already have … You will end on 566 speed :)

    I hope this help on your question

    Regards Rogue
     
    Last edited: May 24, 2020
  3. Darkne67

    Darkne67 User

    Thats right, but i was asking how its calculated with speed modules, and without formation. If i have on goliath for example 3% speed module, how its calculated then? From base goliath speed? [So it should be 549, because 3% from 300 is 9, so 9+300+150+90 (90 is promerium from 450)], or from base speed + speed gens [so its 450, 3% from it is 13,5, so 463,5 + 90 (Because 20% with promerium from 450 is 90] = 553/554, or am i wrong? Sadly i dont have any speed module, so i cant check it by itself :/
     
  4. Speed calculation is inconsistent because there is early rounding at play. While it is impossible to know the exact process for this, I have come up with a solution that seems to satisfy all cases that I have been able to test.

    For speed, all speed bonuses are compounded into a single modifier:
    Code:
    $mSpeed = 1.2 * 1.05 * 1.05; // promerium, wheel formation, ship module
    
    Then this modifier is applied to your speed generators, and then your base ship speed, which are each rounded down (truncated/floored) and then added together to get your final speed:
    Code:
    $baseSpeed = 300;
    $bonusSpeed = 150; // speed gens
    
    $finalSpeed = floor($baseSpeed * $mSpeed) + floor($bonusSpeed * $mSpeed);
    
    Plugging in the numbers:
    Code:
    $finalSpeed = floor(300 * 1.323) + floor(150 * 1.323);
    = floor(‭396.9‬) + floor(‭198.45‬);
    = 396 + 198
    = 594
    
    Note that this "rounding down" is probably an effect of float values being cast to integers, which causes the decimals to be completely ignored.
     
    Darkne67 likes this.
  5. Darkne67

    Darkne67 User

    Thank you very much for help :)
     
  6. Mod-Rogue

    Mod-Rogue User

    Hello @Darkne67

    Thanks for your time again @Thaumanovic

    I'm glad we found the right number of speed and calculation :)

    I will close the Thread as Resolved, Have a nice Sunday

    Regards Rogue
     
Thread Status:
Not open for further replies.