Login

russian armor

A corrected model for infantry DPS

6 Apr 2021, 09:34 AM
#21
avatar of Hannibal
Senior Moderator Badge

Posts: 2933 | Subs: 2

jump backJump back to quoted post6 Apr 2021, 09:26 AMMMX
just to chime in quickly because you mentioned burst duratiin. from what i know this is always at least 1 frame, even if can_burst is 0), as is aim time. hence even if you set all delays to 0 (for a ballistic weapon at least) the maximum number of shots per second is 4, or one every 2 frames

Yes, that's one way to explain it. In hindsight it maybe is the more elegant one. I started testing single fire weapons first and since the editor says they don't use burst at all, I neglected all burst stats. After that, the easiest explanation was to add 0.125 somewhere, which I then added to the fire_aim time.

I will think about this later and maybe change the formulas/descriptions.

Did you make some tests after the 64 bit update? I still find it odd that a game that is based on tick rate doesn't care about it for many of its stats and I somehow suspect the update to have changed something.
6 Apr 2021, 16:21 PM
#22
avatar of Klement Pikhtura

Posts: 767


As an example:
wind_up is 0 seconds -> 0
wind_up is 1 second -> 1.125
wind_up is 1.1 seconds -> 1.125
..

So here are numbers form Serelia's website from DP-28. I added presumable adjusted numbers in brackets:

Those numbers AFAIK were taken from in-game files. Does all this means they are incorrect (except cooldown)?
Also If I understood you right there is literally no difference between delay of 0.51 and 0.625.
6 Apr 2021, 18:04 PM
#23
avatar of Hannibal
Senior Moderator Badge

Posts: 2933 | Subs: 2


So here are numbers form Serelia's website from DP-28. I added presumable adjusted numbers in brackets:

Those numbers AFAIK were taken from in-game files. Does all this means they are incorrect (except cooldown)?

fire aim time does not get corrected, so the values in serealia are okay. Ready aim time I have not tested (this value is also exceptionally hard to test). The CDs get all 0.125 added.
Also If I understood you right there is literally no difference between delay of 0.51 and 0.625.

This is true for wind_up and wind_down.
MMX
7 Apr 2021, 07:19 AM
#24
avatar of MMX

Posts: 999 | Subs: 1


Did you make some tests after the 64 bit update? I still find it odd that a game that is based on tick rate doesn't care about it for many of its stats and I somehow suspect the update to have changed something.


the last test i've done must have been a couple of weeks ago when you mentioned you're working on the improved DPS formula in Cruzz's thread. so that should've been 64 bit already.

back then i've tried to figure out how the game handles aim time values that aren't multiples of 0.125 s, which led to some strange results and might be interesting in your case as well (details in the spoiler).

7 Apr 2021, 10:42 AM
#25
avatar of Hannibal
Senior Moderator Badge

Posts: 2933 | Subs: 2

jump backJump back to quoted post7 Apr 2021, 07:19 AMMMX


the last test i've done must have been a couple of weeks ago when you mentioned you're working on the improved DPS formula in Cruzz's thread. so that should've been 64 bit already.

back then i've tried to figure out how the game handles aim time values that aren't multiples of 0.125 s, which led to some strange results and might be interesting in your case as well (details in the spoiler).


Just to make sure: you're talking about fire aim time, not ready aim?
Still wouldn't fully explain that. But also how and how often did you measure those 4 frames differenve? When I stop time, I regularly get 0.1 and sometimes 0.2 seconds of difference. The only way is to measure at least a couple of cycles so that they cancel out.
MMX
7 Apr 2021, 11:00 AM
#26
avatar of MMX

Posts: 999 | Subs: 1

yeah that wasn't very clear, sorry. i was talking about fire aim time. ready aim is set to the default 0.125 in both cases, but as you said this doesn't matter in this case.
as to the timekeeping, i've used the shooting sound and projectile animation as cues. the 0.125 fire aim tank serves basically as the reference clock since it always fires 1 round every 2 frames. with both tanks starting the firing animation at exactly the same time and firing precisely 100 rounds before reloading, you can count the number of rounds fired after the reference tank has stopped firing. in this case the 0.130 s fire aim tank shot 2 extra rounds, which translates into at least 4 frames for the whole firing sequence to finish.
sorry if this sounds overly convoluted, but i hope you understand what i mean.

EDIT i haven't done more than 3 fire-reload-cycles, but from what i can tell the extra frames add up. but i definitely need to test that again more rigorously.
7 Apr 2021, 11:44 AM
#27
avatar of Hannibal
Senior Moderator Badge

Posts: 2933 | Subs: 2

jump backJump back to quoted post7 Apr 2021, 11:00 AMMMX
yeah that wasn't very clear, sorry. i was talking about fire aim time. ready aim is set to the default 0.125 in both cases, but as you said this doesn't matter in this case.
as to the timekeeping, i've used the shooting sound and projectile animation as cues. the 0.125 fire aim tank serves basically as the reference clock since it always fires 1 round every 2 frames. with both tanks starting the firing animation at exactly the same time and firing precisely 100 rounds before reloading, you can count the number of rounds fired after the reference tank has stopped firing. in this case the 0.130 s fire aim tank shot 2 extra rounds, which translates into at least 4 frames for the whole firing sequence to finish.
sorry if this sounds overly convoluted, but i hope you understand what i mean.

EDIT i haven't done more than 3 fire-reload-cycles, but from what i can tell the extra frames add up. but i definitely need to test that again more rigorously.

-> I'll move this to PM. Not sure if others are that interested at the moment.
13 Apr 2021, 09:48 AM
#28
avatar of Hannibal
Senior Moderator Badge

Posts: 2933 | Subs: 2

UPDATE 21.04.21
Merge with infantry power calculator

Downloadable here.

Contains:
1 .ipynb file with the script for interactive python
1 .csv file (weapon_report export for attribute editor)
1 .xlsx file to define squads

Needed: Interactive Python 3.X + numpy, pandas, math, plotly.express libraries

Changes:

13 Apr 2021, 10:13 AM
#29
avatar of Vipper

Posts: 13374 | Subs: 1

Good work. well done
MMX
13 Apr 2021, 11:48 AM
#30
avatar of MMX

Posts: 999 | Subs: 1

awesome, time to dedust my old python install i suppose.

python-based infantry combat simulator when? :D

j/k, although i think with the accurate dps formulae you developed this could be in the realm of possible.

anyway, great work as usual!
13 Apr 2021, 12:32 PM
#31
avatar of Hannibal
Senior Moderator Badge

Posts: 2933 | Subs: 2

jump backJump back to quoted post13 Apr 2021, 11:48 AMMMX
awesome, time to dedust my old python install i suppose.

python-based infantry combat simulator when? :D

j/k, although i think with the accurate dps formulae you developed this could be in the realm of possible.

anyway, great work as usual!

Thank you very much.

I thought about simulations, but they don't make much sense. The DPS of a single weapon is surprisingly constant across multiple tests if you measure at least 30-45 seconds. The variance in infantry fights comes - I think - from model focusing. For this we'd have to know how models target one another. From the AE there seems to be a "danger" value assigned to each unit, as well as a range component. But even in a squad 1 on 1, range is not the only thing. I don't think infantry targets only the nearest model, for example in Tightropes PPSh test you can see how they often target something further away (although I think it is recommended to use smoke instead of just switching the ownership to enemy, but apparently there are situations where they target models further away). And from my games I also have the feeling that there are exceptions. Otherwise it would be damn near impossible to have a low health squad with almost all models left, yet I see it regularly.

I have done some calculations that have a completely different approach. On the plus side they work very quickly (sims can take ages as you know), but I don't know if I want to publish them because I also don't know if they are really "true".
15 Apr 2021, 09:40 AM
#32
avatar of Hannibal
Senior Moderator Badge

Posts: 2933 | Subs: 2

Sorry for bumping this up again, it is not my intention to keep "my thread" relevant but:

I have seen that a lot of people downloaded the initial script, whereas so far only three got the updated version.

I can only urge everyone that is using the first version to get the newest one if they use it for forum discussion. While most of the changes are not that important, weapons that had a maximum range greater than the far range will have 0 DPS displayed at long ranges. For some like PPSh this is not a huge deal, but for others it is. This was a coding error on my side, the weapon actually does deal damage. It is fixed in the new version.
15 Apr 2021, 17:26 PM
#33
avatar of Descolata

Posts: 486

Ill bump now and review the new script after work. Its too cool to not explore.
7 Jul 2022, 10:14 AM
#34
avatar of YRon²y

Posts: 220

U guys still working on this? Or is this completely outdated by now?
7 Jul 2022, 10:38 AM
#35
avatar of Hannibal
Senior Moderator Badge

Posts: 2933 | Subs: 2

U guys still working on this? Or is this completely outdated by now?


TLDR: I am currently not working on it anymore, because I don't have any feature worth implementing. Due to scrapping of originally intended features that turned out to be bad, version 0.7 has basically become 1.0.

Technically, it is a finished version, it correctly calculates weapon DPS and squad DPS, as well as the "power" model and has acceptable accessibility if you know a bit of python. I haven't done further large scale testing for the power model. With this in mind: I think the model's predictions are decent in most circumstances, but I have encountered some issues. E.g. Riflemen do very well in the model, in the game you should however not spam them due to bleed. Overall, it is good enough that I'd call it helpful and not misleading, but bear in mind that it is based on my personal assumptions and abstractions.

Regarding "finishing" the script:
I scrapped one feature that was initially planned, since it did not turn out to be a good one on second thought. I also intended to try some combat simulation, but here as well I found out that I'd need to make a ton of assumptions and whatever comes out of it would be impossible to verify for correctness. Implementing it would only lead to people using it as a back up that is based on my unverified assumptions and probably do more bad than good.
1 user is browsing this thread: 1 guest

Ladders Top 10

  • #
    Steam Alias
    W
    L
    %
    Streak
Data provided by Relic Relic Entertainment

Replay highlight

VS
  • U.S. Forces flag shadics ARG.
  • U.S. Forces flag TüMe
  • Ostheer flag The101stAirBorne
  • Ostheer flag Clororaa
uploaded by TüMe

Board Info

279 users are online: 1 member and 278 guests
gunther09
10 posts in the last 24h
133 posts in the last week
852 posts in the last month
Registered members: 37679
Welcome our newest member, britney6
Most online: 1221 users on 25 Feb 2020, 12:03 PM