Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.
Sign upEffective engagement ranges #17643
Comments
mugling
added
the
Game: Balance
label
Jul 11, 2016
This comment has been minimized.
This comment has been minimized.
|
Finally someone pointed on this issue. |
This comment has been minimized.
This comment has been minimized.
TempestMaiden
commented
Jul 11, 2016
|
Hold on. Isn't "sight dispersion" a cap on how low the player can reduce recoil, not an additional source of fixed dispersion of its own? But in general I'd have to agree that gun ranges leave something to be desired - throwing daggers shouldn't have significantly longer lethal ranges than SMGs. |
This comment has been minimized.
This comment has been minimized.
Good point - I've updated the above charts to represent this |
This comment has been minimized.
This comment has been minimized.
|
Using the following definitions: effective range maximum range The current situation is as follows:
Note this is for the first shot only - subsequent shots will be much worse due to What should these values be? |
This comment has been minimized.
This comment has been minimized.
|
Not sure for the close range weapons, but for the longer range weapons its straight out silly that you cannot hit at longer distances. 15-20 squares at least for the rifles. |
This comment has been minimized.
This comment has been minimized.
One possible route is to bump |
This comment has been minimized.
This comment has been minimized.
|
Pistols are probably fine as is. Making aiming considerably more effective on longer ranged weapons is another good way of handling this. At 20 squares or so you have enough time. |
This comment has been minimized.
This comment has been minimized.
That's nearly a 10-fold increase on the current values and possibly too much although at maximum range your typical damage output is only 20% of effective range |
This comment has been minimized.
This comment has been minimized.
Agree that it is probably too much though. My terminal wouldn't even be big enough to see what I'm shooting unless I displace my screen horizontally all the way. You should definitely be able to hit mobs ~20 or so tiles away with aiming an a good rifle though. |
This comment has been minimized.
This comment has been minimized.
Sorry my bad, I had compared the wrong numbers |
This comment has been minimized.
This comment has been minimized.
|
Maybe high skilled shooter should have effective range equal to maximum range (but only if shooter have time to aim). I mean maybe it will be easier and much more logically to just increase effect of weapon skill on ability to hit target and at the same time increase aiming time. |
This comment has been minimized.
This comment has been minimized.
|
In general I agree, but I think you're "overshooting" a bit, in particular The balance point should be around "aimed" shots (potentially also The raison d'etre for the current aiming system is to limit firing rate, Use cases (and ideally unit tests) around firing accuracy/range/etc should If we're making any comparisons to real-world distances, we also need a This is a lot of parameters, but neglecting some if these is going to A basic example: Target: brute Increasing max aim and requiring much more time to aim for long distance |
This comment has been minimized.
This comment has been minimized.
This is the intention behind the definitions S1, S2, S3 etc and effective and maximum range. I'd like to work out agreed definitions...
...then connect these to the stats dumper - especially as it can output to TSV for spreadsheet-fu. This should allow us to quickly identify any regressions as we work on this. Once it's worked out I might look at doing formal unit tests.
It's probably one of the most common use cases - a zombie suddenly appears. One possible option to maintain sane balance is to make more use of
Might be best to avoid to avoid absolute distances as tiles vary in scale if their indoor vs outdoor. We can try and maintain relative proportion between different guns though.
I don't think it's actually the cause of the problem. It's reasonable to have both a rail laser and scope. The issue is that the system isn't very intuitive to the player. It might be worth converting a lot of our display units from arc minutes to tiles or something of that nature |
This comment has been minimized.
This comment has been minimized.
TempestMaiden
commented
Jul 11, 2016
|
One obvious use case that should be considered: It should be entirely possible for a gun-armed player to kill shockers or spitters from beyond their special attack range, at some level of skill; for throwing daggers this is possible at (and probably a bit before) throwing 7. What requirements (in skills and equipment) should there be for firearms to do the same? |
This comment has been minimized.
This comment has been minimized.
|
That really depends on the weapon. A survivor with relatively good weapon. say a rifle with a scope, should clearly if given time be able to take out such zombies. In fact this might be one of very few reasons I'd ever chose something like a rifle at all. And also one of the reason I only ever use sniper-ish weapons at immobile targets like turrets as it is now. |
This comment has been minimized.
This comment has been minimized.
Yep, just trying to clarify things.
Unit tests should come first. It validates our assumptions about how stats
Just because players want to react immediately doesn't mean they should
Absolutely, pistols should mitigate the aim speed penalty somewhat, but
Tile sizes do not vary, ever. Yes our map features have wacky sizes, but
The only reasonable way to do this I know of is to link weapon ranges to
I don't think it's a cause, but it's a confounding variable and it reduces
I'm against, MoA is a standard when talking about gun accuracy, and it
Yes, but this should happen by scaling shocker/spitter ranges, not gun |
This comment has been minimized.
This comment has been minimized.
To clarify these would be failing unit tests that we then adjust the code to pass? If so that could work well.
Sure but I can't do that amount of trig in the preamble without a calculator. MOA is a good comprative unit for guns, gunmod and ammo but perhaps an additional display along the lines of 'this gun has an effective range of x and maximum range of y' would be very helpful for new players. |
This comment has been minimized.
This comment has been minimized.
Yes, precisely this, the tests would be assertions of how we think it
I thought you meant replacing it, effective and maximum range derived stats |
This comment has been minimized.
This comment has been minimized.
|
Reminder that this exists:
This means that any gun with "expected range" of 4 must have volume no larger than 12. Also, the biggest problem here is not absolute accuracy being too low/too high. It's the fact that accuracy itself is a sum rather than a product (or result of some other kind of accumulation) and is then multiplied by range (linearly).
We really need a dodge penalty on ranged attacks vs. dodgy critters. The one that calculates off bullet speed doesn't count, it isn't implemented properly yet since it is calculated off bullet speed. |
This comment has been minimized.
This comment has been minimized.
|
What is the magic constant |
This comment has been minimized.
This comment has been minimized.
|
A way of preserving balance when changing units. Before, it was there in an implicit form, only indicated in a comment. Now it's explicit. |
This comment has been minimized.
This comment has been minimized.
|
What was the change from and to? I'm trying to rework it as more standard isosceles trig so I wanted to either drop or rename that constant. |
This comment has been minimized.
This comment has been minimized.
|
Not sure, it "was always there". If you want to drop it, make sure the results don't get worse (less accurate) in the process. They're wild enough as it is, so magic constant is better than replacing it by 1. |
This comment has been minimized.
This comment has been minimized.
It approximates |
This comment has been minimized.
This comment has been minimized.
|
On Jul 11, 2016 5:22 PM, "Coolthulhu" notifications@github.com wrote:
I'd be perfectly happy with this being replaced by something more sensible
Need an alternative that still makes sense, "it shouldn't be a sum" by
This should be the case. The only down side to firing at point blank is
To snipe, you need:
This is because grips and some other gunmods have gotten a pass on the
You're saying make aiming slower with higher recoil, or faster with higher
Agreed, I thought we had one based on monster speed too, as an analogue for BTW, it's laundry lists of issues like this that make me want to base any |
This comment has been minimized.
This comment has been minimized.
A moving target close up needs faster movement to keep the aim on the target, can predict where you aim and avoid that and makes it impossible to rely on sights. Point blanks shouldn't be the best thing around vs. dodgy enemies that, when up close, move faster than you can aim. For example, manhacks.
Even something as simple as "25% of base dispersion" would be fine. The problem is only really bad for very accurate guns, such as shotguns.
This would work if it got really high by the end.
We have/had it in 3 different "incarnations":
|
This comment has been minimized.
This comment has been minimized.
My mistake, I was over focusing on dispersion from gun/skill versus aim This could either be an effect acquired when moving, or a passive property
Yeah, simple is fine, and it's certainly not worth a new gun stat.
Yeah, it could get all the way out to a turn or more to extend effective |
This comment has been minimized.
This comment has been minimized.
Agreed, I have a near-working branch I'm hoping to push today that wraps some of the trig math into the startings of unit tests |
This was referenced Aug 7, 2016
This comment has been minimized.
This comment has been minimized.
|
Done |
mugling commentedJul 11, 2016
•
edited
Summary
Effective range of guns is too low and unaffected by weapon type, skill, gunmods or aiming
If we define effective range as a 50% chance of a good hit on the first shot then effective range for the following guns used at different stages of the game is:
This explains why in DDA everyone walks around with a shotgun and a big handgun and engages targets at point-blank range. Rifles in particularly are especially useless.
The algorithm (with code sources) is set out below or otherwise skip to Plan.
Proof
Dispersion (σ) is expressed in minutes of arc and is the sum of penalties from
the player and their weapon. Player penalties are calculated as follows:
An additional penalty applies for recoil. The default is
MIN_RECOILof 150with lower values achieved by aiming and higher values resulting from recoil.
We can calculate player dispersion (σ) for some typical survivors:
*safety goggles, light survivor mask, heavy survivor mask^fingerless leather gloves, light survivor gloves, survivor glovesWeapon dispersion (Wσ) is simply the sum of the gun and ammo dispersion:
Chance to hit (k) is calculated in
Creature::projectile_attackas:Excluding monster dodges this is applied in
Creature::deal_projectile_attack:Dispersion is applied randomly so resuming an even distribution the typical
effective dispersion (x̄σ) will be half and is calculated as follows:
The below shows average dispersion (x̄σ) for some combinations:
*G1-G3 'from the hip' whereas G4 is after maximum aimingIf we define effective range as a 50% chance to yield a good hit (k<0.4) on the
first shot each of the following combinations has the following effective ranges:
These values are of course all (much) lower on subsequent shots due to the effects of
recoil. I've includedG4as it illustrates both gunmods and aiming having very little overall effect.Plan
Comments as to the following or alternative suggestions:
pistolandshotgunare already well balanced having both limited range and being reasonably controllable insemi-automode.smgneeds a small increase in range and a meaningful ability to useautomode within this range.rifleneeds an increase in range relative to all of the other groupssightsneed to have more of an effect.Implementation
TODO