Jump to content

Remove spread a.k.a randomness


raynor
 Share

Recommended Posts

I am putting a graph here for more context, as I also believe it is easier to reason about:

1963530807_Screenshot2021-05-12at19_42_07.thumb.png.846253c88544e28c1792b9cfbb8123f3.png

Quote

Indeed, you are pushing it a bit. Randomness can give both above and below average results. You view randomness as a disadvantage whereas it can also give results better than expected.

I view randomness as uncertainty, which I believe it is never gonna be ideal for competitive gaming. However I agree with your point that in average it flattens out. Still, it could have a small impact for a unlucky player on a Bo1.

Quote

Good execution plays a way more important role than randomness.

Agree there :)

In any case, my original post was about the fact that removing the randomness/spread remove the dancing and turning rate all together, not so much about the competitiveness. As of now, I do not see a solution that can clear out both these issues. However, since my initial approach does not seem very popular I believe this is not the right way to go.

Edited by raynor
Link to comment
Share on other sites

@GrapjasI would rather play the normal game, and I already like A24 a lot. Again, that was an idea I wanted to put on paper but based on multiple comments I now believe it is not the ideal solution. I can also see that it would remove some of the uniqueness of 0AD :), so it seems that we need to find another angle to tackle this

  • Like 1
Link to comment
Share on other sites

Remembering of something that felt a bit of dancing abuse, I looked into my A24 replays and I found something interesting.

In the below video, I am engaging with 10 camels, my opponent is defending with 3 skirmisher cavalries and 7 archers. You can see how much damage my opponent cavalries are soaking. Again, not trying to push my original solution but I want to feature that current way projectile work might still be problematic in some cases :( 

Disclaimer: I micro extremely poorly in this video, because I basically do 0 micro, simple attack move. Also, my opponent whom I won't name, is to my knowledge the greatest 0AD dancer of all time :D

  • Like 1
Link to comment
Share on other sites

On 13/05/2021 at 1:11 AM, Yekaterina said:

To counter unit dancing: let arrows fly at 1000m/s and there is no chance of dodging it.

That would not make the graphics better. People are already complaining that arrows are so hard to see.

I do think competitive balance is very important, but it should not hinder casual players who prefer single player mode. So it means you solve a problem for competitive players while make it for casual players less attractive since they can no longer see arrows properly.

Link to comment
Share on other sites

On 13/05/2021 at 1:38 AM, raynor said:

I want to feature that current way projectile work might still be problematic in some cases

I think it is not a problem if someone can micro to get good results. I think it would be an issue if there is no way to counteract. If you would have shot against the opposing infantry archers you would have been fine. So in my view, the system is not flawed but you misplayed.

  • Like 1
  • Sad 2
Link to comment
Share on other sites

there must be limits on how micro can be effective, otherwise dancing is acceptable too. My idea is that you should never be required to tell your men exactly who to aim to, there shouldn't be strategies to attract enemy fire to units that are a distraction and that, at the same time, manage to avoid projectiles or the consequences of hits taken in any way.

There is request for lowering turn times of jav cavalry. That should not work for dancing though. Assigning damage to whovever is being shot, without any randomness, would resolve this problem once and for all, and it's the same path taken by all AoE-style RTS I know. I think it's mostly a good idea. 

By the way, he problem with that video is actually that the camels weren't shooting at the cav. You can see that they are chasing women and ignoring the horsemen. If cav attacked the camels, they would have achieved even better results.

Edited by alre
substantial edit, clarifications
  • Like 2
Link to comment
Share on other sites

1 hour ago, LetswaveaBook said:

I think it is not a problem if someone can micro to get good results. I think it would be an issue if there is no way to counteract. If you would have shot against the opposing infantry archers you would have been fine. So in my view, the system is not flawed but you misplayed.

So an exploit is micro for you? very interesting concept.. This dancing is done using formations. It is now only possible like this because we changed turn rate speed. And on the dancing specifically, there is no way to counter-act, hence all my point here :( Imagine you do the same with front-line hero and some priest, how fun is this going to be? I am pretty sure I also have a replay from the same player doing that, I could look it up if needed

At larger battle scale, the micro required to counter this dancing is absurd imo.

 

Quote

By the way, he problem with that video is actually that the camels weren't shooting at the cav. You can see that they are chasing women and ignoring the horsemen. If cav attacked the camels, they would have achieved even better results.

Partially incorrect. I did plain attack move, but I bring back the two camels chasing women and then redo attack move. Then, because the cavalries are first line, they soak most of the damage. At the end of the video I focus one archer that instantly dies. Moreover, I would like to add that most of camels were rank2 as this player was pocket player and I had already harassed the border player. If you wish, I can upload the full replay

Edited by raynor
Link to comment
Share on other sites

6 minutes ago, raynor said:

Partially incorrect. I did plain attack move, but I bring back the two camels chasing women and then redo attack move. Then, because the cavalries are first line, they soak most of the damage. At the end of the video I focus one archer that instantly dies. Moreover, I would like to add that most of camels were rank2 as this player was pocket player and I had already harassed the border player. If you wish, I can upload the full replay

true that. the second part of the clip is the relevant one here.

  • Like 1
Link to comment
Share on other sites

2 hours ago, LetswaveaBook said:

So it means you solve a problem for competitive players while make it for casual players less attractive since they can no longer see arrows properly

Perhaps we can use an enlarged arrow model. Also, the landed arrows will be quite obvious. 

Another idea is show the arrows being stuck in the injured unit's body. That would be quite realistic. Even in real life you can't see flying arrows that well. 

We can go for a compromise value: 200m/s. This should still be visible yet difficult to dodge. 

  • Like 1
Link to comment
Share on other sites

40 minutes ago, alre said:

@ChronA can that proportion depend on distance, regardless of if the unit is moving or not, or if it's next to other people or not? Or maybe change damage directly (depending on distance)?

No. I'd prefer to keep things simple.

The system I've set up adds an optional <AccuracyOverride> tag to <Projectile> in templates. If you wanted (for instance) a 20% chance for archers to always hit their intended target, you could set <AccuracyOverride>0.2</AccuracyOverride>. The other 80% of the time it would depend where the projectile lands. If there is no AccuracyOverride, it defaults to 0, and you get the current behavior.

 

Edited by ChronA
because I ought to answer the intent of the question too
Link to comment
Share on other sites

1 hour ago, ChronA said:

No. I'd prefer to keep things simple.

The system I've set up adds an optional <AccuracyOverride> tag to <Projectile> in templates. If you wanted (for instance) a 20% chance for archers to always hit their intended target, you could set <AccuracyOverride>0.2</AccuracyOverride>. The other 80% of the time it would depend where the projectile lands. If there is no AccuracyOverride, it defaults to 0, and you get the current behavior.

I get it. So this mod simply provides a baseline for accuracy, pumping up long term damage especially at longer distances.

Don't think I like it though. What I personally would like most is a deterministic (random is ok, but it doesn't make much sense in a game with health points I believe) damage that depends on distance, similarly to spread, but doesn't depend on movement or any other thing that has to do with details that aren't in the scope of 0 AD to simulate, like density of formations.

  • Like 1
Link to comment
Share on other sites

32 minutes ago, alre said:

What I personally would like most is a deterministic (random is ok, but it doesn't make much sense in a game with health points I believe) damage that depends on distance, similarly to spread, but doesn't depend on movement or any other thing that has to do with details that aren't in the scope of 0 AD to simulate, like density of formations.

Hm, I could probably add on an "optimal range" option too without much difficulty... Make it so if the distance to the target is beyond the optimal range, the damage delivered is penalized (maybe linearly, maybe logarithmically). Combining that with <AccuracyOverride>1.0</AccuracyOverride> ought to give the behavior you want right?

Link to comment
Share on other sites

My formula for damage dealt by archers could be 7.5 - distance/10m. when an archer shoots, his target always takes that damage.

Random spread of arrows may be computed for the only sake of rendering the arrow flight, or not at all.

Also javeliners and slingers should have damage scaled similarly.

Note that the particular formula is just a suggestion, that seems good to me and is as simple as it can get. Random spread is not so simple.

Link to comment
Share on other sites

1 hour ago, alre said:

My formula for damage dealt by archers could be 7.5 - distance/10m. when an archer shoots, his target always takes that damage.

Random spread of arrows may be computed for the only sake of rendering the arrow flight, or not at all.

Also javeliners and slingers should have damage scaled similarly.

Note that the particular formula is just a suggestion, that seems good to me and is as simple as it can get. Random spread is not so simple.

Nice one alre. A physically more accurate model would be A*exp(-kx), where A is attack strength at point blank range, k is some constant value and x distance. But this might take up more processing because of more maths. 

  • Like 1
Link to comment
Share on other sites

I see, nice info. I renounced to any phisical/probabilistic derivation, and went for the easy path.

Linear function: Every ten meters of distance reduce damage dealt by one point

Exponential function: Every ten meters of distance reduce damage dealt by X%.

It's viable too, but I would let gameplay decide: there are too many things to consider anyway, like different arrows for different distances, probability of missing, ecc.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...