HomeWildfire Games

Increase projectile speed slightly across the board.

Description

Increase projectile speed slightly across the board.

This bumps arrows from 75 to 100, slingers to 90 and javelins from 62.5 to 70. It's both slightly more realistic and helps with dancing, since the problem is the ratio of unit speed vs projectile speed.

Further increases would reduce dancing, but also make it harder to see projectiles which isn't desirable.

Refs #5106

Differential Revision: https://code.wildfiregames.com/D3179

Event Timeline

bb added a subscriber: bb.EditedDec 27 2020, 1:05 PM

Expressed my concerns many times. Assuming m/s unit this makes arrows fly 360km/h. According to some quick search arrows had speeds between 150-200mph when leaving the bow. This will yield 66-83m/s. Considering some friction, to first order, you should lower these speeds further. Also consider that this is the horizontal speed so there is a factor cos(pi/4) in the equation too. So the original values made much more sense to me. If you wish to compare with unit speeds, you should rather lower the unit speeds.

The claim dancing is fixed by this is false, since dancing had been made impossible prior.

Ratio with unit speed is not the interesting value. Turnlength much more relevant for the problem at hand, if there is any problem left.

Expressed my concerns many times.

Not on the diff, not that it matters much.


In rP24458#46534, @bb wrote:

If you wish to compare with unit speeds, you should rather lower the unit speeds.

I don't understand why you say that. Reducing unit movement speed will completely change the feel of the game, and the units are entirely arbitrary. It's not like our "meters" are any realistic right now? "Realism" above can only refer to ratios of unit walk speed to arrow speed, and the change here indeed makes it more realistic.

The claim dancing is fixed by this is false, since dancing had been made impossible prior.

I factually demonstrated that faster arrows help with dancing (see ticket), and now you're just asserting that dancing is impossible when actual players have raised concerns on the turning diff. I don't think we can actually ignore other factors.

Ratio with unit speed is not the interesting value. Turnlength much more relevant for the problem at hand, if there is any problem left.

Except it's not ? Turn lengths could be 10ms, and fast units with slow projectiles would lead to dancing.

Nescio added a subscriber: Nescio.Dec 28 2020, 11:28 AM

To have nice arcs, <Gravity> ought to be about half the <Speed> value; boltshooters are perhaps an exception.

bb added a comment.Dec 28 2020, 2:32 PM

Expressed my concerns many times.

Not on the diff, not that it matters much.

Haven't seen any comment on the diff...


In rP24458#46534, @bb wrote:

If you wish to compare with unit speeds, you should rather lower the unit speeds.

I don't understand why you say that. Reducing unit movement speed will completely change the feel of the game, and the units are entirely arbitrary. It's not like our "meters" are any realistic right now? "Realism" above can only refer to ratios of unit walk speed to arrow speed, and the change here indeed makes it more realistic.

Our ranges make perfect sense, in meters. Our attacktimes make perfect sense, in seconds. That are the values one should consider for realism in this case, not another concept as motion. Secondly iirc you have said multiple times you found the game to fast, you just missed an opportunity...

The claim dancing is fixed by this is false, since dancing had been made impossible prior.

I factually demonstrated that faster arrows help with dancing (see ticket), and now you're just asserting that dancing is impossible when actual players have raised concerns on the turning diff. I don't think we can actually ignore other factors.

Players have reason concerns about issues already present in the game, just highlighted by the turning. That is not turning fault, is the fault of other bugs (and yes we should fix those).

Ratio with unit speed is not the interesting value. Turnlength much more relevant for the problem at hand, if there is any problem left.

Except it's not ? Turn lengths could be 10ms, and fast units with slow projectiles would lead to dancing.

UnitSpeed should be compared to spread: both determine a distance by which we will/can miss. The arrrowSpeed largely determines the time till hit, by which predict the estimated target, the speed doesn't matter in this (we know the speed so we can account for it). The opportunity to change course does matter and this is largely determined by turnlength. Do note that the shorter the turn, the worse it gets.

Our ranges make perfect sense, in meters.

Our meters are completely arbitrary units, and whether units fire at 80 or 10 meters is entirely dependent on how big our maps, units, buildings are, not on the 'real' range of bows. So I don't see how arrow speed should be 80 just because in real life they travel around 80m/s.

Our attacktimes make perfect sense, in seconds.

Archers don't fire at 60 hertz. I'm not sure what your point is either.


In rP24458#46599, @bb wrote:

the speed doesn't matter in this (we know the speed so we can account for it).

This is incorrect, since the speed can change, which is the whole reason why we're in this mess in the first place. Even with D3225 or D3255, it's a somewhat relevant factor.

The opportunity to change course does matter and this is largely determined by turnlength

And that makes it not a great backbone for a fix, since it's ultimately arbitrary.


Increasing projectile speed reduces time-to-hit, which of course increases the likelihood of a hit. It's rocket science, but not really the idiom kind.

bb added a comment.Dec 29 2020, 2:17 PM

Our ranges make perfect sense, in meters.

Our meters are completely arbitrary units, and whether units fire at 80 or 10 meters is entirely dependent on how big our maps, units, buildings are, not on the 'real' range of bows. So I don't see how arrow speed should be 80 just because in real life they travel around 80m/s.

Ofcourse we can rescale everything. And yes buildings are much to big compared to units. But related things, especially values of the same component, should be scaled in the same way. So since we have ranges which can be thought of in meters, we should consider the unit to be meters and work with that.

Our attacktimes make perfect sense, in seconds.

Archers don't fire at 60 hertz. I'm not sure what your point is either.

You can't do like that? Search in some prominent video platform, ppl will perform it. Ofcourse in battles with groups of archers, they would synchronise shoots and thus shoot slower. But our units are mostly individuals, so they would shoot much faster.

In rP24458#46599, @bb wrote:

the speed doesn't matter in this (we know the speed so we can account for it).

This is incorrect, since the speed can change, which is the whole reason why we're in this mess in the first place. Even with D3225 or D3255, it's a somewhat relevant factor.

Thats entirely the point, the speed vector can change. But the length of it is not the relevant factor, the direction is much more relevant.

The opportunity to change course does matter and this is largely determined by turnlength

And that makes it not a great backbone for a fix, since it's ultimately arbitrary.

You mean changing arrowspeed is?

Increasing projectile speed reduces time-to-hit, which of course increases the likelihood of a hit.

I won't oppose that, I merely say its not the correct way to go about it.

Ofcourse we can rescale everything. And yes buildings are much to big compared to units. But related things, especially values of the same component, should be scaled in the same way. So since we have ranges which can be thought of in meters, we should consider the unit to be meters and work with that.

Actually units are too big compared to buildings. A human in 0 A.D. has a height of about 4.2, i.e. 2.5× what it ought to be (1.7 m). Bow and arrows can have a range of c. 300 m; applying the same scale would work out to 750 units, about 10× the current value (72). Or have a look at the gravity of 39.81. However, 0 A.D. is not a physics simulation, nor should it aim for realistic numbers. And whether its units are metres, cubits, feet, or something else is unimportant too.
I agree raising projectile speed is not the proper way to solver dancing, though.
As for this commit, the previous values were essentially arbitrary, and so are the new values; I fail to see why it's an improvement. Moreover, ranged troops are already considered stronger than melee troops, and this makes them even more effective.

Stan added a subscriber: Stan.Dec 29 2020, 3:28 PM

The doors are scaled accordingly too.