The world of 'Kixeye maths'. An explanation of DPS.

Blazing_Darkness
Blazing_Darkness
Unicorn Overlord
Joined Nov 2010 Posts: 8,162

DPS is damage per second. But how is it calculated?

There are two types of weapons, those based off accuracy and those based of spread/splash. They'll need to be calculated differently.
Secondly what I call the base DPS of a weapon is the DPS is has without factoring in anything from the ships involved. It's the base DPS the weapon itself has with just using its own stats to calculate it and you would use this to compare weapons.
Lets see how complicated DPS truly is. Yes, I'm that bored.

Accuracy based Weapons.

Base DPS.

To start with we'll simply say DPS = Damage/Reload.
To keep this short (as it'll get pretty large fairly fast), I'll call Damage 'D' and Reload 'R'.
D/R = DPS

But that is terribly inaccurate as there are many other aspects of the game that'll affect it. So let's add these other aspects into the formula one by one.

Accuracy is a percentage amount of the shots that hit. For an average valve of the amount of damage that is done, we can simply times it by the damage. I'll call Accuracy 'A'.
We then end up with (D*A)/R = DPS

Some weapons have a secondary damage of a different damage type. This is just additional damage on top of the normal damage so just add them together to get:
((D+SD)*A)/R = DPS

Next up we have Salvos. The salvo is the number of shots fired by the weapon before it starts to reload. The damage is split between the shots so no effect there. However since the weapon doesn't start to reload until after the last shot in the salvo is fired and that there is a 0.1 second delay between shots in the salvo being fired, we'll need to add the delay to the reload time to get the time between the start of each salvo.
If the salvo is 1 then it'll instantly reload after the shot is fired without delay. So the delay is actualy 0.1*(S-1), S being the number of shots in the salvo.
When we add that into what we have already we get:
((D+SD)*A)/(R+0.1*(S-1)) = DPS

Just a note, remember the order of calculations. Multiplication before addition. In some cases I'll add additional un-needed brackets just to make it easier to figure out instead of constantly checking what gets done first.

Now it's worth pointing out that if you truly want the most accurate formula possible you'll have to factor in some unlisted aspects. One of which is that all weapon damage stats is double that of the damage the weapon actually does[1].
We therefore need to halve the end result (or times by 0.5). But I'll add it straight to the damage stats themselves to keep related parts of the equation together. SO:
(((D/2)+(SD/2))*A)/(R+0.1*(S-1)) = DPS

That formula will calculate the DPS of an accuracy based weapon firing against a ship that has no defensive bonuses and doesn't factor in any bonuses the ship it's equipped to has.
Let's add those in next.

Factoring in everything.

Where to start... Damage bonuses! Specials like concussive warheads increase the damage of specific weapon types.
The damage type could be different for the primary damage (D) that's of the damage type of the weapon listed in the weapon's stats (Type: Penetrating) and the secondary damage (SD) which will state its damage type (Ballistic Damage: 300). So we'll add two new stats to the formula, DB (damage bonus) and SDB (secondary damage bonus).
The percentage damage bonus is the amount of the current damage it'll add.
So new damage = D + D*DB which when you factorise it becomes new damage = D*(1+DB)
So all we really need to do is multiply the damage by (1+DB) and thus we get:
(((D/2)*(1+DB)+(SD/2)*(1+SD))*A)/(R+0.1*(S-1)) = DPS

Now what about the enemy ship's damage reduction?
Remember both primary and secondary damage types could be different so we'll need to add separate reductions to both.
Let's take the overall damage reduction (I'll call it 'DR' and 'SDR'). You'll be best working out the overall damage reduction separately.
Now using the damage reduction, we can work out how much of the damage is kept by simply taking away the damage reduction from 1, in other words 1-DR. So 1 - 60% = 40% damage is dealt. We would then just need to multiply the damage by that just like we did with the damage bonus.
(((D/2)*(1+DB)*(1-DR)+(SD/2)*(1+SDB)*(1-SDR))*A)/(R+0.1*(S-1)) = DPS

As you guessed it, we'll end up with adding a load of (1+[value]) and (1-[value]) to the formula.

Next stop would be the reload. Certain hulls and specials provide reload bonuses as well as the ship's rank.
Take the current reload as a fire rate of 100%. Then add the total of the reload bonuses (I'll call it RB in the formula) with that initial 100%. The weapon is now firing at a rate of 1+RB (the initial fire rate + the increase) as fast as it was before.
So since it's firing 1+RB faster, we simply divivde the reload by 1+RB to get the new reload, R/(1+RB).
R/(1+RB) when put into the formula ends up as:
(((D/2)*(1+DB)*(1-DR)+(SD/2)*(1+SDB)*(1-SDR))*A)/((R/(1+RB))+0.1*(S-1)) = DPS

Just accuracy bonuses and evade left, both of these have some issues...

When adding accuracy bonuses to a weapon with 100% accuracy, it'll still be a 100% accurate. Some suggest that accuracy over 100% is possible and negates some evade. However the only thing kixeye has ever confirmed about accuracy and evade is that they are calculated separately so that suggestion is false and accuracy over 100% is the same as 100% accuracy.
What hasn't been confirmed is exactly how accuracy bonus (AB) works out of 3 possible suggested ways.
1. The percentage bonus is added to the percentage accuracy. 70% + 50% = 120%.
2. The bonus is a percentage increase of the accuracy percentage. 70% + (50% * 70%) = 105%.
Accuracy can go over 100% in the above two options and we would need to add a max value of 100% for it (I'm using a spread sheet for this so the MIN function could work for this).
3. The accuracy bonus reduces the amount of that misses, calculated in the same way as damage resistances to avoid going over 100%.
The fact that it seems to be possible with the right combination of specials to make some weapons with less than 100% accuracy have 100% accuracy and never miss makes me think that it's not the 3rd option. Also the fact that accuracy reduction (AR, so far only engine specials give reductions) couldn't possibly work in the same way and that I'm sure Kixeye would have both accuracy bonus and reduction working in the same way.
I would like to assume it's option 2 as other bonuses/reductions work in that manner and it would make the most sense for accuracy to follow suit.
Therefore the overall accuracy would be A*(1+AB)*(1-AR).
As mentioned before that could potentially go over 100% and thus we'll need to limit it to a max of 100%. Since I'm putting this into excel I could use the MIN function. It'll give the smallest of the two entered values, one being 100% and the other being the overall accuracy, MIN(1,A*(1+AB)*(1-AR)). So if the accuracy is lower than 100%, it'll return the accuracy otherwise the accuracy is over 100%, it'll return 100%.
Once that is put into the formula we have:
(((D/2)*(1+DB)*(1-DR)+(SD/2)*(1+SDB)*(1-SDR))*MIN(1,A*(1+AB)*(1-AR)))/((R/(1+RB))+0.1*(S-1)) = DPS

Evade, what's the issue here? Negative evade! The question is, does negative evade do anything?
A lot of people will say negative evade increases accuracy, we know that accuracy and evade are calculated separately (as stated by Kixeye). So does that mean that negative does not give shots that are going to miss, a chance of hitting?
I'll go with no. But until kixeye says something else we won't know exactly way or what negative evade does or is for. I believe it could just be to limit the maximum evade ship hulls can have.
Just like damage reduction, the enemy's evade (E) can be treated as a percentage of the damage lost so we want to find the percentage we keep which is basically 100% - E. But since I personally think negative evade does nothing, I would need to put a minimum value of 0% for evade to avoid negative evade causing an increase of accuracy[2]. Again since I'm using Excel I could use the MAX function to return the evade, or if it is lower than 0, return 0.
(1-MAX(0,E)) alternate using the MIN function MIN(1,(1-E))
Now we just multiply by that and I'll place it next to accuracy in the formula as they are similar things after all. Doesn't matter which order you multiply in.
(((D/2)*(1+DB)*(1-DR)+(SD/2)*(1+SDB)*(1-SDR))*MIN(1,A*(1+AB)*(1-AR))*(1-MAX(0,E)))/((R/(1+RB))+0.1*(S-1)) = DPS

There we have it. A formula that'll calculate the DPS of a single accuracy based weapon on one ship will do to another ship factoring in every bonus that could affect the DPS from either ship as well as the weapon's stats. Oh, hang on a minute, modules on arbiters... The formula requires you to use the overall damage reduction which I'm sure you can calculate yourself, I hope, unless you're relying on the in-game value given to you in the shipyard.


Splash based weapons.

Base DPS.

I'll start back at the base DPS stage as I want a base DPS formula for it to compare weapons.

Splash and spread is alternative to accuracy/evade. Accuracy and evade doesn't affect weapons based of splash and spread. We can therefore start by talking the base DPS formula for the accuracy based weapon and just removing accuracy. Splash and spread determine the proportion of damage dealt so we need to insert something in place of accuracy that involves splash an spread, but how do they work is the question.
(((D/2)+(SD/2))*[Splash and Spread Stuff here])/(R+0.1*(S-1)) = DPS

Splash is easy. It's the radius of the area around the impact point that will receive damage. The damage dealt is equal to have close the target is.
The very edge of the splash area and beyond would receive 0% damage with the exact point of impact receiving 100%. We can assume that the rate at which the damage decreases is consistent between the two points, so a point half of the splash radius away from the impact would take 50% damage.

Spread could be the radius of the area of which the projectile could land. The problem would then be how the point of which the projectile will land is randomized.
1. A random point is generated so that all points within the area is equally likely and thus more will less will land within a short distance of the target compared to a large distances due to the outer edges cover a larger area then the inner does. This would involve a lot of maths and makes high spread give an insanely low DPS to the point that it just blatantly incorrect compared to in-game results. Thus I highly doubt this is the way it is done.
2. A random direction from the target and a distance (between 0 and the value of spread) away from the target are generated. Therefore there will be an even spread of projectiles landing at each distance. More projectiles will appear to land near the center of the area near the target. This is what I assume is the way it is done.
But spread could also be the area of the projectiles land in. But that would mean reducing spread wouldn't make nearly as much of a difference as it does in-game so this also looks to be wrong.

An additional problem is that splash and spread don't work off the same range scale. 20 splash is equal to the distance of a land tile, the same and 20 range for a weapon. However spread isn't on the same scale, 20 spread is not equal in distance to that of a land tile or 20 weapon range or 20 splash.
Since when did people leave things unknown? Welcome the people I consider the greats of BP, those who are willing to spend time testing everything to its fullest to gain an understanding how things actually work.
Schmee did some great testing explained in his simulator thread in the player guides section (link to schmee's simulator). The results were that 1 spread seems to be 3/8 (0.375) splash. So we have our conversion factor, something that links the two, now we can do something.

Back to the calculations side of things, maybe. I'll need to split things up again into two. If splash is greater or equal to 0.375 spread, then splash will always cause damage to the target. But if it is smaller than splash wouldn't always hit the target. The proportion of damage dealt would need to be calculated differently for each scenario.

Splash < 0.375*Spread
The projectiles are assumed to be spread evenly at each possible distance from the target as explained earlier.
So when the projectile does land within distance to do splash damage, the likelihood of doing 0% damage is the same as 100% damage and thus on average will do half damage.
OK, the percentage of projectiles that do damage will on average do half damage. So what is the percentage that will do damage?
To get that we simply need to divide the distance it needs to land within to do damage (Splash) by the max distance it could land within (0.375*Spread). We then get Splash/(0.375*Spread) The possible max distance it could land away from the target is 0.375*Spread. We just need to divide that by Splash  to determine the chance of it landing within the distance of splash from the target.
We've got our chance of doing damage as Splash/(0.375*Spread) and the fact that when it does, it'll do on average 50%.
So when Splash < 0.375*Splash, the accuracy/proportion of damage taken is (Splash/(0.375*Spread))*0.5 Yes I know there is no need for the second lot of brackets... I just think it's easier to understand with them in.

Splash > 0.375*Spread
In this case splash will always do damage. It won't on average be 50% due to the smaller spread causing it always to land within a closer area.
Let’s work out the average distance the projectile will land from the target. That'll simply be 0.375*Spread*0.5 (or (0.375*Spread)/2 ).
Then we can find the proportion of splash radius this is away from the target by dividing it by Splash. (0.375*Spread*0.5)/Splash
Splash does max damage at the center and minimum at the edge. In other words it does the inverse, the higher the distance the smaller the damage. So we also need to inverse the proportional distance of splash from the target to get the proportion of damage dealt (on average as it's average distance). We end up with:
1 - (0.375*Spread*0.5)/Splash

So now we now the calculations needed for splash. But we need to add to the formula a way of figuring out which method is to be used.
Good old IF functions. As before I'm putting this in excel so using the IF function to combine the two I get:
IF(Splash<0.375*Spread,(Splash/(0.375*Spread))*0.5,1-(0.375*Spread*0.5)/Splash)
That's what we need to insert in place of accuracy. But before I do that, I'm going to replace Spread with SPR and Splash with SPL just to shorten it down.
IF(SPL<0.375*SPR,(SPL/(0.375*SPR))*0.5,1-(0.375*SPR*0.5)/SPL)

Here's the formula from before for the base DPS.
(((D/2)+(SD/2))*[Splash and Spread Stuff here])/(R+0.1*(S-1)) = DPS
The final result for a formula that works out the base DPS of a splash/spread based weapon is as follows:
(((D/2)+(SD/2))*IF(SPL<0.375*SPR,(SPL/(0.375*SPR))*0.5,1-(0.375*SPR*0.5)/SPL))/(R+0.1*(S-1)) = DPS

Factoring in everything.

Time to factor in all bonuses again...
We already know how to implement the bonuses for damage reductions, damage bonuses and reload bonuses. So I'll just put those in straight off without explaining them again to get this:
(((D/2)*(1+DB)*(1-DR)+(SD/2)*(1+SDB)*(1-SDR))*IF(SPL<0.375*SPR,(SPL/(0.375*SPR))*0.5,1-(0.375*SPR*0.5)/SPL))/((R/(1+RB))+0.1*(S-1)) = DPS
You know how to add a percentage increase and decrease bonus by now.
The Splash bonus (SPLB) is a percentage increase, so we need to multiply each SPL by (1+SPLB).
The Spread bonus (SPRB) is a percentage decrease, so we need to multiply each SPR by (1-SPRB). This assumes you enter the percentage spread bonus as a positive, not a negative as listed in the stats. If you want to enter it into the formula as a negative then use (1+SPRB) instead. I just simply prefer entering in all values as positives so I don't have to mess around with negative values.
Anyway, we end up with this:
(((D/2)*(1+DB)*(1-DR)+(SD/2)*(1+SDB)*(1-SDR))*IF(SPL*(1+SPLB)<0.375*SPR*(1-SPRB),((SPL*(1+SPLB))/(0.375*SPR*(1-SPRB)))*0.5,1-(0.375*SPR*(1-SPRB)*0.5)/(SPL*(1+SPLB))))/((R/(1+RB))+0.1*(S-1)) = DPS
A formula that'll calculate the DPS that a Splash/Spread based weapon from one ship will deal to another ship which factors in all stats involved from bonuses each ship has as well as the weapon's own stats.


That last part was fairly quick. Why not combine the two, the accuracy and spread/splash based weapon formulas to create a general formula.
I would just need to stick an IF function into it to determine which of the two is used.
IF(SPL=0,[If true use accuracy base weapon formula],[else use splash/spread based weapon formula])  Simple enough?

General formula for the base DPS of a weapon.
IF(SPL=0,(((D/2)+(SD/2))*A)/(R+0.1*(S-1)),(((D/2)+(SD/2))*IF(SPL<0.375*SPR,(SPL/(0.375*SPR))*0.5,1-(0.375*SPR*0.5)/SPL))/(R+0.1*(S-1))) = DPS

General formula for the DPS of a single weapon in a given scenario factoring in everything but the speed of the enemy.
IF(SPL=0,(((D/2)*(1+DB)*(1-DR)+(SD/2)*(1+SDB)*(1-SDR))*MIN(1,A*(1+AB)*(1-AR))*(1-MAX(0,E)))/((R/(1+RB))+0.1*(S-1)),(((D/2)*(1+DB)*(1-DR)+(SD/2)*(1+SDB)*(1-SDR))*IF(SPL*(1+SPLB)<0.375*SPR*(1-SPRB),((SPL*(1+SPLB))/(0.375*SPR*(1-SPRB)))*0.5,1-(0.375*SPR*(1-SPRB)*0.5)/(SPL*(1+SPLB))))/((R/(1+RB))+0.1*(S-1)))

D = Damage
DB = Damage Bonus
DR = Damage Reduction
SD = Secondary Damage
SDB = Secondary Damage Bonus
SDR = Secondary Damage Reduction
A = Accuracy
AB = Accuracy Bonus
AR = Accuracy Reduction
E = Evade
R = Reload
RB = Reload Bonus
S = Salvo
SPL = Splash
SPLB = Splash Bonus
SPR = Spread
SPRB = Spread Bonus

Exceptions and faults with the formula.
Siege cannon D35-S, an accuracy weapon that also has splash. Solved with its own special formula, I'll post that tomorrow if I remember.
Halo missile and Arc missile. The projectiles land at fixed unknown distances from the target. Requires some guess work.
Doesn't factor in movement of ships which would affect splash/spread based weapons. Needs to figure out the time the projectile spends in the air and the relation between combat speed and distance in terms of splash.

 

[1]I'll come back to this at some point.
[2]If negative evade does allow shots that miss to hit, then it would need to be placed with the accuracy bonuses within the MIN function to prevent it effectively causing more than 100% chance to hit.

TOME Name: Blaze    Favourite Guardians: Osric (Pusher), Malbus (Tank), Talia (Slayer), Erebus (Tactician)
The Battle Pirate Glossary - Forum Rules - Support form
  • Blazing_Darkness
    Blazing_Darkness
    Unicorn Overlord
    Joined Nov 2010 Posts: 8,162
    TL:DR **** might go boom haha

    I think there becomes a point where "I was bored" just isn't a good enough excuse. I might of just about reached it with this.

    All I have to say is "Kixeye, did you really have to make DPS so complicated to work out?".
    TOME Name: Blaze    Favourite Guardians: Osric (Pusher), Malbus (Tank), Talia (Slayer), Erebus (Tactician)
    The Battle Pirate Glossary - Forum Rules - Support form
  • Shane McKenna
    Shane McKenna
    Unicorn Overlord
    Joined Sep 2012 Posts: 6,314
    The M said:
    TL:DR **** might go boom haha

    I think there becomes a point where "I was bored" just isn't a good enough excuse. I might of just about reached it with this.

    All I have to say is "Kixeye, did you really have to make DPS so complicated to work out?".
    The look on your face when you have to make a new one for Vega because that incorporates projectile speed  :)) If in doubt ask Anthony hes a GD so he knows this **** he helped me understand EV training.

  • jono.chisholm
    jono.chisholm
    Skilled Warrior
    Joined Mar 2013 Posts: 537
    What i want to know is how some bonuses stack
    I understand how Damage reduction bonuses and Evade stack. The percentage of damage dealt is taken, and with each item that adds resistaance the percentage is multiplied by (1-DR)
    Eg  a HH with 3 D4-M armour and RA3
    Initially, 100 percent is taken. 100 x 0.34 for the RA = 34
    34 x 0.9 = 30.6(D4M-1
    30.6 x 0.9= 27.54
    27.54 x 0.9 = 24.786
    Thus, RA3 and 3 D$-4-M gives 72.214% protection vs missiles, although one might think it would be 96%
    For reload though, im not so sure. I experimented using a Weapon with 5 reload, divising the reload by (RB+1) for each step, on a Starred MCX with a 7.7% reload bonus from alliance
    5 / 1.65 = 3.03...
    3.03.. / 1.25 = 2.42...
    2.42... / 1.077 = 2.251(4DP)
    So, while the sum of the reload bonuses was 97.1%, the reload rate was more than halved, is this right?
    Also, thanks for clarification on the Evade and Accuracy, i have been seeking the answer to that for a while. Just for confirmation, an accuracy over 100 has the same affect as 100, regardless of the other ships evade, and ship with evade below 0 does not recieve more blows than an evade of 0?
    So for example, adding DUS3 to Javelins will not allow them to hit a Strike cruiser with 40% evade any more?



  • Blazing_Darkness
    Blazing_Darkness
    Unicorn Overlord
    Joined Nov 2010 Posts: 8,162
    edited 21 Apr 2013, 11:21PM
    What i want to know is how some bonuses stack
    For reload though, im not so sure. I experimented using a Weapon with 5 reload, divising the reload by (RB+1) for each step, on a Starred MCX with a 7.7% reload bonus from alliance
    5 / 1.65 = 3.03...
    3.03.. / 1.25 = 2.42...
    2.42... / 1.077 = 2.251(4DP)
    So, while the sum of the reload bonuses was 97.1%, the reload rate was more than halved, is this right?
    Also, thanks for clarification on the Evade and Accuracy, i have been seeking the answer to that for a while. Just for confirmation, an accuracy over 100 has the same affect as 100, regardless of the other ships evade, and ship with evade below 0 does not recieve more blows than an evade of 0?
    So for example, adding DUS3 to Javelins will not allow them to hit a Strike cruiser with 40% evade any more?


    For the reload bonus I should of made it clear. RB in the formula is the total reload bonus.
    You don't calculate the reload bonus separately like damage resistance. That's only done for stats which are percentages to prevent them going over 100% such as evade and damage resistances. Other stats like reload and splash where the stat it is affecting is a integer or real number (in your example a reload of 5, not a percentage), you simply add together the bonuses then calculate the effect it has all in one go.

    R/(1+RB)
    RB would be the 0.25 + 0.65 + 0.077 = 0.977 or 97% as you said.
    5/(1+0.977) = 2.529
    So the new reload time would be 2.529 seconds.

    You'll notice a proof of this in the in-game shipyard if you were to see how it stacks splash or spread bonuses compared to evade/damage resistance bonuses.


    I want to note that there is currently more than one way that has been suggested for how accuracy and evade are calculated. None of them have been confirmed by kixeye and testing it in-game proves extremely difficult due to the fact you'll have to build very specific ships to do so and finding two people willing to waste shipyard time to test something these days is almost impossible (due to the ever increasing list of ships to build).
    I've explained each different way and why I think a certain way is the correct one, but please remember that I could be wrong.

    TOME Name: Blaze    Favourite Guardians: Osric (Pusher), Malbus (Tank), Talia (Slayer), Erebus (Tactician)
    The Battle Pirate Glossary - Forum Rules - Support form
  • Ichabod
    Ichabod
    Incursion Leader
    Joined Jun 2012 Posts: 1,401
    Basically you just wrote down all the crap between my spreadsheets and my brain. 

    I love it.
    [seen_range]=( ( [sonar range] * [ECM reduction factor] + [visible range] ) * ( 1 + ( 1.5 * [missile quantity] ) ) ) * ( (1- [cloak efficiency] )
    DPS = [damage] / ( [reload] * ( 1 - [rank%] ) ) / ( 1 + [hullbonus%] )
    *Yes, the protonemesis is still available.
    *Irradiated cutthroats works on drac bases, dredges, elite salvages and (level dependent) standard salvages. It does not work on campaigns, forsaken missions, events or other 'awarded' uranium.


  • Charles Parham
    Charles Parham
    Skilled Warrior
    Joined Sep 2011 Posts: 413
    i read the first three words a scrolled down and said ff that lol
                                          |__
    |\/
    ---
    / | [
    ! | |||
    _/| _/|-++'
    + +--| |--|--|_ |-
    { /|__| |/\__| |--- |||__/
    +---------------___[}-_===_.'____ /\
    ____`-' ||___-{]_| _[}- | |_[___\==-- \/ _
    __..._____--==/___]_|__|_____________________________[___\==--____,------' .7
    | BearingSeaGold /
    \__SEC 73________________User ID is: 832510__________ ______________________ __|
  • absolutely_pissed
    absolutely_pissed
    Skilled Warrior
    Joined May 2011 Posts: 529
    you should be getting paid more M
    "I assume they cut off all outside contact and put bars on the windows, feed the devs white bread and salt water all weekend till they snap and crap out a new lab...."

  • Kaptin Ugrosh
    Kaptin Ugrosh
    Skilled Warrior
    Joined Nov 2011 Posts: 553
    Thanks for providing this M.

    There should be an effective way to test the accuracy and evade calculations shortly using a slightly modified version of fleets people already have now. Take a BC, add layered armour, speed sys and evade armour for 61% evade and good ballistic resistance and let it get shot by a friend who's built 1 javelin with DUS3. Record the number of misses over several attacks and you should have a good idea of whether accuracy is capped at 100% for calculating evade, or if the bonus accuracy above 100% reduces the effective evade.

    If accuracy is capped, you would expect 39% of shots to hit. If it's uncapped, 54.6% of shots will hit.

    You'd probably want D4E on the BC to survive long enough to get the data. It's got almost 80% mitigation with LA3, but those javelin shots are still going to hurt.
    Give a man some res, and he'll build for a day.
    Teach a man to pirate, and he can build forever!
  • PirateKing-no1
    PirateKing-no1
    Master Tactician
    Joined Jul 2012 Posts: 2,224
    well i forgot what you said think i fell asleep twice there. my battlecruisers do fine i dont need to scale it down this much but hey you want to gl with it

  • Arma-Get-It-On
    Arma-Get-It-On
    Unicorn Overlord
    Joined Apr 2012 Posts: 4,418
    My head hurts ... I'll take two Aspirin and try reading it again tomorrow :p
  • Its_3lackHavvk
    Its_3lackHavvk
    Skilled Warrior
    Joined May 2012 Posts: 386
    too much math + wall of text = braindead
    Raid Hulls - Battleship, Juggernaut, Sea Scorpion A, Mercury, SuperFortress, Hurricane, Battlecruiser, Mauler
    Raid Weapons -  Phalanx 1, 2,  Poesidon DC 1, Hail A, B, D91-S, D93-S, D95-S, Piranha DC 1, 2, Shredder Cannon 1, 2
    Raid Specials - Countermeasure Equipment 2, 3
    Raid Turrets - Arc Missiles 1,2,3
    Raid Tactical Modules - Siege Drone 1,2,3, Blitz Drone 2
    Raid Armors - D1-X, D1-C, D1-M, D2-V, D2-S, D2-E, D2-C, D2-M, D3-M, D3-T, D3-E
    Level: 50
  • 00zau
    00zau
    Unicorn Overlord
    Joined Feb 2012 Posts: 6,403
    We have confirmed that acc greater than 100% counters evades, so MIN(1,A*(1+AB)*(1-AR))*(1-MAX(0,E)) needs to change to MIN(1,A*(1+AB)*(1-AR)*(1-MAX(0,E))). That change adds in the evade to the accuracy before Min-ing to 1, which is still needed to prevent total accuracy above 100%. We'll be confirming whether or not negative evades boost accuracy soon, if it does that will be simply MIN(1,A*(1+AB)*(1-AR)*(1-E)).
  • Lt_Caine
    Lt_Caine
    Skilled Warrior
    Joined Jan 2012 Posts: 311
    Is it possible that Accuracy Bonus and Accuracy Reduction simply offset?  in above equations: (1+AB-AR) instead of (1+AB)*(1-AR)
  • limkopi
    limkopi
    Potential Threat
    Joined Oct 2011 Posts: 40
    For the combined formula, why not put IF(Accuracy>0....)
  • Raizer_Of_Hell
    Raizer_Of_Hell
    Minor Nuisance
    Joined Aug 2012 Posts: 151
    i read the first 3 then skimmed and started laughing near the bottom. I will not dispute anything here but just say this..... you sir have some time. Or just a love of math. At any rate there are so many variables in this game which is why its so interesting. 


    At the same time
    GO FACTOR IS ROUGUE CREWS 
  • msvturner
    msvturner
    Greenhorn
    Joined Feb 2013 Posts: 19
    edited 4 Jul 2013, 9:50PM

    Love the formulas.  Thought through Evade too.  The original formula considers the effects of negative evade.  However, it can be positive or negative based on weapon, hull & armor.  However, evade is how your ship averts your attacker's accuracy, not yours.  So I believe, evade has nothing to do with your attacking, just your defending.  Therefore, it should not be part of DPS, which is attacking.

    And agree with Lt_Caine (should be (1+AB-AR) instead of (1+AB)*(1-AR).  For example, if you have a 20% accuracy bonus and a 20% accuracy reduction, logic says accuracy should not be impacted.  However with order of operations, (1+AB)*(1-AR) would mean you have 96% of original accuracy.  Whereas (1+AB-AR) leaves you with original accuracy.  Obviously agree that accuracy can't be over 100%, so MIN function is needed.

     

    If you agree Accuracy combining, same can be said for Damage Bonus & Reduction & Secondary Damage too, namely it should be (D/2 * (1+DB-DR)) & (SD/2 * (1+SDB-SDR))

     

    All this results in a total formula of: (Note I dropped a few parentheses to make it easier to read and order of operations makes it work right)

    ( ( D/2*(1+DB-DR) + SD/2*(1+SDB-SDR) ) * MIN(1,A*(1+AB-AR)) )   /   ( R/(1+RB) + 0.1*(S-1) ) = DPS

     

    Obviously the Splash version needs to have same changes

    IF(SPL=0,(( D/2*(1+DB-DR) + SD/2*(1+SDB-SDR))*MIN(1,A*(1+AB-AR))) / ((R/(1+RB))+0.1*(S-1)), (( D/2*(1+DB-DR) + SD/2*(1+SDB-SDR)) * IF(SPL*(1+SPLB)<0.375*SPR*(1-SPRB),((SPL*(1+SPLB))/(0.375*SPR*(1-SPRB)))*0.5,1-(0.375*SPR*(1-SPRB)*0.5)/(SPL*(1+SPLB))))/((R/(1+RB))+0.1*(S-1)))

  • Unnamed_1
    Unnamed_1
    Potential Threat
    Joined Feb 2013 Posts: 26
    What the crap just happened to my brain :(
    BP IGN: Demon-Hunter
    BP ID#: 660747
    Current Level: 58
    Current Sector: Find me if you can!
    Cracker Jack Toys: A couple of things here and there...
  • Aaron Mostofi
    Aaron Mostofi
    Potential Threat
    Joined Jul 2011 Posts: 27
    If a Hailstorm salvo "misses" on a single mortar shell but has "left over" salvos, will it attempt to knock out that same shell or will it only ever fire one shot at the mortar regardless of whether it hits or misses?
  • Schmee
    Schmee
    Skilled Warrior
    Joined May 2011 Posts: 457
    Wow, M!  I would hate to have to write all of that out.  ;)
     - - -
  • bepeco
    bepeco
    Minor Nuisance
    Joined Feb 2013 Posts: 240
    If a Hailstorm salvo "misses" on a single mortar shell but has "left over" salvos, will it attempt to knock out that same shell or will it only ever fire one shot at the mortar regardless of whether it hits or misses?
    It will keep firing until it hits the mortar shell or runs out of rounds. This is different logic from the way Phalanx anti-missiles work, which only target an incoming missile once, or Bombard turrets, which again fire at each incoming mortar shell once. Therefore 2 Hailstorm Bs are better in all circumstances at stopping mortars than a single Hailstorm C, but you can't always say the same about 2 Phalanx 2s vs a single Phalanx 3.  














    Be who you are and say what you feel, because those who mind don't matter, and those who matter don't mind. ― Bernard M. Baruch 

  • GrandGouda
    GrandGouda
    Minor Nuisance
    Joined Jun 2013 Posts: 274
    edited 23 Jul 2013, 4:54PM
    Either I'm doing something wrong, or the formulas are wrong, because if this is correct, then Mortars would suck beyond compare to any other weapon.

    Take two basic weapons for example, Strike Missile D51A and Shockwave D71A.

    Strike D51A, basic DPS, no enhancements to keep things simple, and neglecting Salvos:
    ((D+SD)*A)/R = DPS where SD=0 for D51A --> D*A/R
    D=72, A=90, R=3  --> 72*.9/3 --> 21.6 DPS

    Shockwave D71A, basic DPS, no enhancements, and Splash 10, Spread 80, so using SPL<0.375*SPR:
    (((D+SD)*(SPL/(0.375*SPR))*0.5/R = DPS  where SD=0 for D71A --> D*(SPL/0.375*SPR)*0.5/R
    D=367 (Buildings), SPL=10, SPR=80, R=7 --> 367*(10/30)*0.5/7 --> 8.7 DPS

    So you're telling me that Strike D51A does 2.5x the damage of Shockwave D71A?  Something does not compute...

    Help me out here.

    I'm thinking that Splash Based weapons base DPS should be:
     (D+(D*(SPL/0.375*SPR)*0.5))/R

    Which would give you base damage plus Splash Damage, and Shockwave D71A would become
    (367+(367*(10/30)*0.5))/7 = 61.2 DPS
  • 00zau
    00zau
    Unicorn Overlord
    Joined Feb 2012 Posts: 6,403
    cbeattie said:
    Either I'm doing something wrong, or the formulas are wrong, because if this is correct, then Mortars would suck beyond compare to any other weapon.

    Take two basic weapons for example, Strike Missile D51A and Shockwave D71A.

    Strike D51A, basic DPS, no enhancements to keep things simple, and neglecting Salvos:
    ((D+SD)*A)/R = DPS where SD=0 for D51A --> D*A/R
    D=72, A=90, R=3  --> 72*.9/3 --> 21.6 DPS

    Shockwave D71A, basic DPS, no enhancements, and Splash 10, Spread 80, so using SPL<0.375*SPR:
    (((D+SD)*(SPL/(0.375*SPR))*0.5/R = DPS  where SD=0 for D71A --> D*(SPL/0.375*SPR)*0.5/R
    D=367 (Buildings), SPL=10, SPR=80, R=7 --> 367*(10/30)*0.5/7 --> 8.7 DPS

    So you're telling me that Strike D51A does 2.5x the damage of Shockwave D71A?  Something does not compute...

    Help me out here.

    I'm thinking that Splash Based weapons base DPS should be:
     (D+(D*(SPL/0.375*SPR)*0.5))/R

    Which would give you base damage plus Splash Damage, and Shockwave D71A would become
    (367+(367*(10/30)*0.5))/7 = 61.2 DPS
    That's because without mods the Shocks only have 33% accuracy, which cripples their DPS. Your simplification meant that the mortar was performing sub-optimally while the missile was the same. Try doing it with HE3 on the mortar and SFB on the missile (same number of specials used); the mortar is about twice as effective. Put it on a ship with spread/splash bonuses (SC in this case) and you nearly double the effectiveness again.
  • GrandGouda
    GrandGouda
    Minor Nuisance
    Joined Jun 2013 Posts: 274
    00zau said:

    That's because without mods the Shocks only have 33% accuracy, which cripples their DPS. Your simplification meant that the mortar was performing sub-optimally while the missile was the same. Try doing it with HE3 on the mortar and SFB on the missile (same number of specials used); the mortar is about twice as effective. Put it on a ship with spread/splash bonuses (SC in this case) and you nearly double the effectiveness again.
    So without specials, mortars completely suck?  I just can't imagine this is how it works.  The base DPS with no specials can't have a Tier 2 BP that requires a Level 6 Lab be 1/3 as effective as a Tier 1 BP that requires a Level 3 Lab.  Just doesn't make any sense.  
  • 00zau
    00zau
    Unicorn Overlord
    Joined Feb 2012 Posts: 6,403
    But you're still ignoring specials. Those strike missiles have much less range than the shocks if you don't have SFB3 or equivalent on the ship, using up a special slot. Using that same special slot for HE3 or whatever makes the shockwaves effective as well. And even with the lower DPS, the splash means they ignore evade and damage multiple targets; a straight DPS comparison doesn't work due to the major differences. Mortars without specials and/or ship mods have terrible accuracy.
  • GrandGouda
    GrandGouda
    Minor Nuisance
    Joined Jun 2013 Posts: 274
    edited 24 Jul 2013, 11:26AM
    00zau said:
    But you're still ignoring specials. Those strike missiles have much less range than the shocks if you don't have SFB3 or equivalent on the ship, using up a special slot. Using that same special slot for HE3 or whatever makes the shockwaves effective as well. And even with the lower DPS, the splash means they ignore evade and damage multiple targets; a straight DPS comparison doesn't work due to the major differences. Mortars without specials and/or ship mods have terrible accuracy.

    There needs to be a way to compare the effectiveness of a Missile Fleet vs a Mortar fleet.  Specials can't make that much of a difference.  If I were higher level and could burn the resources I'd run a test, but you're telling me that if you put a ship out there with one Shockwave on it, only 1/3 of the shots from it will do damage?  And that shot will only do 50% damage?  I highly doubt that.  Yet, that is what the formula is saying.  Break it down for yourself, don't just accept it because a Mod posted it.  I think the formula is only calculating the splash damage, not the total damage.  If only 1/3 of the shots from each Shockwave did any damage they would completely suck.
  • jono.chisholm
    jono.chisholm
    Skilled Warrior
    Joined Mar 2013 Posts: 537
    edited 24 Jul 2013, 11:49AM
    Spread calculations do seem a bit wide.. my Hammers with shock As have 80 Spread and 13.5 splash. This would mean that the spread in range units, in any direction is 30 units, so more than half of the shots would completely miss a stationary target, and the spread on the mortars would be 1-.5 land tiles in any direction 
  • 00zau
    00zau
    Unicorn Overlord
    Joined Feb 2012 Posts: 6,403
    cbeattie said:
    00zau said:
    But you're still ignoring specials. Those strike missiles have much less range than the shocks if you don't have SFB3 or equivalent on the ship, using up a special slot. Using that same special slot for HE3 or whatever makes the shockwaves effective as well. And even with the lower DPS, the splash means they ignore evade and damage multiple targets; a straight DPS comparison doesn't work due to the major differences. Mortars without specials and/or ship mods have terrible accuracy.

    There needs to be a way to compare the effectiveness of a Missile Fleet vs a Mortar fleet.  Specials can't make that much of a difference.  If I were higher level and could burn the resources I'd run a test, but you're telling me that if you put a ship out there with one Shockwave on it, only 1/3 of the shots from it will do damage?  And that shot will only do 50% damage?  I highly doubt that.  Yet, that is what the formula is saying.  Break it down for yourself, don't just accept it because a Mod posted it.  I think the formula is only calculating the splash damage, not the total damage.  If only 1/3 of the shots from each Shockwave did any damage they would completely suck.
    I know what the formula says. I don't really know how well they work without specials, because I don't build them without specials. Hell, these days I don't even use them on ships without bonuses. My SC fleet kicks **** with mortars, and thats because I use Combustion System and the SCs inbuilt mods to get great precision. Complaining about something being bad without specials is dumb. Everything but torps is pretty bad without specials. Missiles have too short a range. Mortars have terrible accuracy and thus lower DPS. Add the requisite specials and they're both usable. And I'm not using the formula just because the mod posted it. I more or less made the same formula on my own, based on the metagames understanding of how spread/splash's effective accuracy works.

    Basically, you're saying "mortars have bad damage" when they don't have a special while ignoring the fact that "missiles have bad range" when they don't have special creates the same issue in making them unusable. The problem you're seeing is that no-special mortars have an obvious defect (crap accuracy and thus damage) while the lack of range on no-special missiles doesn't create as noticeable a deficiency.
  • GrandGouda
    GrandGouda
    Minor Nuisance
    Joined Jun 2013 Posts: 274
    So SCHMEE's ship vs ship calculator is completely wrong then, at least according to you.  Head over there (http://www.feralland.com/bp/) and build a ship with all Mortars and no specials.

    6x Shockwave D71A and no specials gives you DPS of 166.6 and 374.3 vs buildings.  

    Single Shockwave D71A with no specials gives you DPS of 27.8 and 62.4 vs buildings.

    My adjusted formula gives a DPS for D71A of 61.2, which is a heck of a lot closer to SCHMEE's 62.4 than the 8.7 DPS from M's formula.
  • 00zau
    00zau
    Unicorn Overlord
    Joined Feb 2012 Posts: 6,403
    Schmee's isn't accounting for the fact that the damage falls off (the .5 multiplier for the effective accuracy). Thus, Schmee's would actually be 11.55 DPS, which is the same DPS you would have gotten had you used the fvf damage instead of the building damage (which is why you got 8.7). I don't know where you got 27.8 from, the DPS for an unmodified D71-A is 23.3 in Schmee's. I think you accidentally the Mauler. Ignore the building damage in Schmee's he's got spread/splash weapons using perfect accuracy against buildings again (so yes, in some cases Schmee's is wrong). You need to do a better job of picking building damage or fvf damage, you've switched back and forth several times. Looking at the fvf damage, the only error difference between Schmee's and math you did up above (replacing building damage with fvf damage, of course) is that one is half the other.
Sign In or Register to comment.