Fixed SV Rocket/Plasma damage-per-shot reduced when firing multiple

Discussion in 'Fixed (Read Only)' started by ravien_ff, Dec 8, 2020.

  1. ravien_ff

    ravien_ff Rear Admiral

    Joined:
    Oct 22, 2017
    Messages:
    8,389
    Likes Received:
    15,716
    Build:
    Mode: Survival
    Mode: Dedicated multiplayer

    SERVER NAME: NA
    SEED-ID: Any

    If applicable:
    MODIFIED PLAYFIELDS: No

    Reproducibility: Always
    Severity: Major

    Type: Weapons

    Summary: The damage dealt by each individual SV rocket launcher or plasma cannon is reduced when multiple launchers are fired simultaneously on a dedicated server.

    Description:
    When firing more than one SV T1 or homing rocket launcher or plasma cannon at a time, the damage of each individual rocket or plasma projectile is reduced while in multiplayer.

    In other words, firing two rockets does not do double the damage of 1 rocket.
    Firing four rockets does not do 4x the damage of 1 rocket.
    Seems to only affect weapons with a significant blast damage. Does not affect pulse lasers, for example.
    Only happens on multiplayer. Single player testing gives correct damage amounts.

    Tested on my brother's private dedicated server (plenty of hardware, memory, and bandwidth, no other server issues, etc). As well as Spanj's server.
    Tested in default survival and Reforged Eden scenario.
    Tested in both single player and multiplayer.

    This may contribute to significant balance issues on dedicated servers, effectively making it much harder for SVs to destroy POI turrets than intended in multiplayer compared to single player.
    Unsure if it also affects coop games.


    Steps to Reproduce:
    Reproduce on a dedicated server running default survival.
    Set up a practice dummy blueprint with either some combat steel blocks or turrets to shoot at.
    Get a SV and perform tests firing 1 rocket launcher, 2 launchers, 4 launchers, etc. And note the damage to the target each time.
    The damage per missile will be lower the more missiles you fire at once in multiplayer.
    In single player, the damage per missile will remain consistent.

    Screenshots, Crash Logs, any other Relevant Information or Download links:

    My brother performed all tests.
    Here are the raw numbers from my brother's testing that he sent me:

    Vanilla--
    Single player:
    --Against Combat Steel
    1 railgun: 185, 185 per railgun
    2 railguns: 370, 185 per railgun
    4 railguns: 740, 185 per railgun
    6 railguns: 1110, 185 per railgun
    8 railguns: 1480, 185 per railgun

    --Against Combat Steel
    1 rocket direct: 251, 63 splash, 251 per rocket
    2 rockets direct: 502, 126 splash, 251 per rocket
    4 rockets direct: 1004, 252 splash, 251 per rocket
    6 rockets direct: 1506, 378 splash, 251 per rocket
    8 rockets direct: block destroyed, block behind 504 damage, 504 splash damage, 251 per rocket

    Multiplayer:
    --Against Combat Steel
    1 railgun: 185, 185 per railgun
    2 railguns: 370, 185 per railgun
    4 railguns: 740, 185 per railgun
    6 railguns: 1110, 185 per railgun
    8 railguns: 1480, 185 per railgun

    --Against a player BA laser turret
    1 railgun BA Laser turret: 185, 185 per railgun
    2 railguns BA Laser turretD: 370, 185 per railgun
    4 railguns BA Laser turret: 740, 185 per railgun
    6 railguns BA Laser turret: 1110, 185 per railgun
    8 railguns BA Laser turret: 1480, 185 per railgun

    --Against a player BA laser turret
    1 pulse laser BA Laser turret: 26, 26 per laser
    2 pulse laser BA Laser turret: 52, 26 per laser
    4 pulse laser BA Laser turret: 104, 26 per laser
    6 pulse laser BA Laser turret: 156, 26 per laser
    8 pulse laser BA Laser turret: 208, 26 per laser

    --Against a player BA laser turret
    1 plasma BA Laser turret: 302, 302 per plasma cannon
    2 plasma BA Laser turret: 343, 172 per plasma cannon
    4 plasma BA Laser turret: 425, 107 per plasma cannon
    6 plasma BA Laser turret: 507, 85 per plasma cannon
    8 plasma BA Laser turret: 589, 74 per plasma cannon

    --Against Combat Steel
    1 rocket direct: 251, 63 splash, 251 per rocket
    2 rockets direct: 407, 126 splash, 204 per rocket
    4 rockets direct: 718, 252 splash, 180 per rocket
    6 rockets direct: 1031, 378 splash, 172 per rocket
    8 rockets direct: 1343, 504 splash, 168 per rocket

    --Against Combat Steel
    1 homing direct: 221, 52 splash, 221 per rocket
    2 homing direct: 364, 104 splash, 182 per rocket
    4 homing direct: 650, 208 splash, 163 per rocket
    6 homing direct: 936, 312 splash, 156 per rocket
    8 homing direct: 1222, 416 splash, 153 per rocket

    --Against a player BA laser turret
    1 homing direct BA Laser turret: 611, 611 per rocket
    2 homing direct BA Laser turret: 754, 377 per rocket
    4 homing direct BA Laser turret: 1040, 260 per rocket
    6 homing direct BA Laser turret: 1326, 221 per rocket
    8 homing direct BA Laser turret: 1612, 202 per rocket


    Reforged Eden--
    Single player:
    --Against Combat Steel
    1 rocket direct: 127, 46 splash, 127 per rocket
    2 rockets direct: 254, 92 splash, 127 per rocket
    4 rockets direct: 508, 184 splash, 127 per rocket
    6 rockets direct: 762, 276 splash, 127 per rocket
    8 rockets direct: 1016, 368 splash, 127 per rocket

    Multiplayer:
    --Against Combat Steel
    1 rocket direct: 127, 46 splash, 127 per rocket
    2 rockets direct: 162, 92 splash, 84 per rocket
    4 rockets direct: 232, 184 splash, 58 per rocket
    6 rockets direct: 302, 276 splash, 50 per rocket
    8 rockets direct: 372, 368 splash, 47 per rocket
     
    #1
    Last edited: Dec 8, 2020
  2. SteveEmpyrion

    SteveEmpyrion Lieutenant

    • Developer
    Joined:
    Oct 25, 2016
    Messages:
    13
    Likes Received:
    34
    Hey Ravien, thanks for that report.
    For v1.4 we are reworking the splash damage of explosions. The main change will be to fix the problem that the splash damage is currently travelling through thin blocks or wedged blocks into structures.
    But while improving it, it makes sense to fix other bugs :)

    Can you update the link with f.e. a savegame so I can reproduce the problem easily?
     
    #2
    Germanicus, Vermillion and ravien_ff like this.
  3. pantheis

    pantheis Ensign

    Joined:
    Nov 14, 2015
    Messages:
    4
    Likes Received:
    5
    Target is setup as a base with 5 identical SVs at the same distance from 5 identical targets. Attached is the save game for a default survival scenario multiplayer dedicated server. Head to the orbit of Uoen (starter temperate) and look for the Scythe SVs.

    --
    Target is a 3 high, 3 wide, 2 deep combat steel, aiming for center block
    All targets are undamaged at start of test (showing 2000 hp)

    --
    1 missile
    (before relogging)
    center block: 1749/2000
    surrounding blocks: 1937/2000

    (after relogging)
    center block: 1749/2000
    surrounding blocks: 1937/2000

    --
    2 missiles
    (before relogging)
    center block: 1593/2000
    surrounding blocks: 1874/2000

    (after relogging)
    center block: 1593/2000
    surrounding blocks: 1874/2000

    --
    4 missiles
    (before relogging)
    center block: 1281/2000
    surrounding blocks: 1748/2000

    (after relogging)
    center block: 1281/2000
    surrounding blocks: 1748/2000

    --
    6 missiles
    (before relogging)
    center block: 969/2000
    surrounding blocks: 1622/2000

    (after relogging)
    center block: 969/2000
    surrounding blocks: 1622/2000

    --
    8 missiles
    (before relogging)
    center block: 657/2000
    surrounding blocks: 1496/2000

    (after relogging)
    center block: 657/2000
    surrounding blocks: 1496/2000

    -- results for multiplayer
    --Against Combat Steel
    1 rocket direct damage: 251, 63 splash, equivalent direct damage of 251, 63 splash per rocket
    2 rockets direct damage: 407, 126 splash, equivalent direct damage of 204, 63 splash per rocket
    4 rockets direct damage: 719, 252 splash, equivalent direct damage of 180, 63 splash per rocket
    6 rockets direct damage: 1031, 378 splash, equivalent direct damage of 172, 63 splash per rocket
    8 rockets direct damage: 1343, 504 splash, equivalent direct damage of 168, 63 splash per rocket

    -- compared to previously tested single player with the same setup
    --Against Combat Steel
    1 rocket direct damage: 251, 63 splash, equivalent damage of 251, 63 splash per rocket per rocket
    2 rockets direct damage: 502, 126 splash, equivalent damage of 251, 63 splash per rocket per rocket
    4 rockets direct damage: 1004, 252 splash, equivalent damage of 251, 63 splash per rocket per rocket
    6 rockets direct damage: 1506, 378 splash, equivalent damage of 251, 63 splash per rocket per rocket
    8 rockets direct damage: block destroyed, block behind 504 damage, equivalent damage of 251 per rocket

    While the numbers differ, I can confirm with previous testing that regular rockets, homing rockets, and plasma cannons all experience the drop off in damage, whereas guns like Railguns and pulse lasers do not.

    I have not figured out a good way to test this issue with CV turrets (missile, plasma, artillery) and do not know if they also experience the damage falloff, but should also be reviewed if a proper testing method can be determined.

    Please let me know if you have any questions or need additional information.

    Thank you!
    - Pantheis
     

    Attached Files:

    #3
  4. SteveEmpyrion

    SteveEmpyrion Lieutenant

    • Developer
    Joined:
    Oct 25, 2016
    Messages:
    13
    Likes Received:
    34
    Hey pantheis,

    thanks for the detailed analysis and the savegame. I was able to reproduce the problem and found out that it is (only) the damage of the center block that is different in SP and MP. The reason is that the impact/direct damage is applied by the client on client side and the splash damage is applied on the server side. Now the client calculates the new health of the block on first impact of the rocket and sends it to the server together with the explosion position of the first explosion. While the server calculates the splash damage and sends this back to the client, the client does the impact/direct damage of the second rocket and sends the health to the server, not taking in account that there is also a splash damage coming back from the server. I hope this is not too confusing, the solution was to switch from absolue damage values to additive damage values.

    I fixed that for B3226. Do you have access to the closedalpha group and time to recheck it? Now the damage values in SP and MP should be the same (except maybe 1 or 2 points that come from rounding errors).

    Btw: I am currently moving the splash damage calculation from full blocks to 0.5 meter voxels to avoid that the splash damage can travel into structure through solid blocks. With that change, the damage affected blocks will slightly change. Also the damage distribution of the splash damage will (slightly) change. So maybe you wait until this change is done before you start with the splash damage balancing. I am ready to get it into one of the next builds.
     
    #4
    Germanicus and ravien_ff like this.
  5. SteveEmpyrion

    SteveEmpyrion Lieutenant

    • Developer
    Joined:
    Oct 25, 2016
    Messages:
    13
    Likes Received:
    34
    UPDATE: with B3227 we changed the explosion calculation from full blocks to voxels (we did that with the O2 calculation some time ago). The result should be less (none?) problems with explosion damage travelling through solid blocks. We also added parameters for the console command 'di expv' and 'di expr' to show the damaged voxels and the explosion rays.
    The calculation of the damage values should be roughly the same as before but might differ slightly as a block is now visited more often (on a per voxel base) as before. The damage calculation on SV/HV is still done on a per block base.
     

    Attached Files:

    #5
    ravien_ff likes this.

Share This Page