Combat "game analysis" and randomness



  • First off, Chivalry is a very fun and promising game. I was hoping for a skill based and deep combat system that could have potential for high level competitive play. My point here is that (as I’m seeing it right now) combat can proceed with a very random mechanic. I hope that I can be proven wrong, but I predict that with a good understanding of the combat options, players who know what they are doing will go about 50% against each other in duels. I am interested in creating a higher skill ceiling.

    Note that I’m limiting the focus of my model by making key assumptions, which I don’t think are too crippling in the end. I assume that in this 1v1 both players know how to parry all attacks, and I’m assuming they are using similar weapons (I know different weapons have different strengths/weaknesses, but bear with me here). I think it works best if you think of both players as either Vanguards or Knights (I’m not taking into account MMA dodge).

    This will be an analysis of the moment right after a successful parry has been made:

    A = person who just made the attack that was blocked
    B = person who just made a successful parry to A’s attack

    The players’ respective options and payoffs are shown in this matrix (where F-attack = Feign then attack):

    –---------------------------- Player A
    --------------------------Attack Parry
    Player B----Attack-----(5, -5) (0, 0)
    ------------ F-attack—(-5, 5) (5, -5)

    The outcomes are: (payoffB, payoffA) where 5 is the “utility” derived from a hit

    [Note that B doesn’t have the option to parry, and A doesn’t have the option to feign attack, but this limitation is appropriate because these options would either just cancel out the above options (and create the above scenario again) or lose to the above options.]

    There is no Nash Equilibrium because players can always do better given their opponent’s choice.

    So if B knows that he’s playing against an aggressive player who is just going to attack again, the optimal response would be to Attack, resulting in (5, -5).
    If B knows that he’s playing against a defensive player who is going to Parry, the optimal response would be to F-attack, resulting again in (5, -5).
    But if B carries out the F-attack on an aggressive opponent, he will get hit with (-5, 5).

    The best option for either player is to randomly mix up whichever “move” they are going to throw next. A doesn’t want to appear aggressive (by constantly Attacking after a blocked attack) nor defensive (by constantly Parrying after a blocked attack) because if B picks up on this, he can counter with the best response.

    It may also seem like B has an advantage in this game: 2 positive outcomes to A’s 1 positive outcome. This may not entirely be so, and is discussed below.

    ! One might look at the matrix and think that B could guarantee a non-negative outcome for himself by choosing to Attack every time after a parry. After all, the best he can do is 5, and the worst he can do is 0, right? Well perhaps (0, 0) isn’t the accurate magnitude for this outcome. After A parries B’s attack, the roles are completely reversed. Now A is in the dominant position that B was in before.
    !
    ! Taking this information into account, it may be more appropriate to define the (Attack, Parry) prospect with something more like (-1, 1) - this reflects the slight advantage that A now has for having a parried the attack and now being in what was previously B’s position. Depending on whether or not we take B’s initial position as dominant, perhaps we could even define this prospect as (-5, 5), creating a purely symmetrical game.

    Regardless, this game would dictate that 2 players who are aware of their choices and believe their opponents understand the options would randomly alternate their moves.

    One way to stray away from this randomness would be to make combat more skillful, and more about precise mouse movement in striking and blocking. If players can always get the block off on a normal attack, this random game will occur. I read one suggestion from a player about splitting up the block command into more than one key - this could increase the skill ceiling too.

    One more thing: suppose A can tell when B is feigning his attack or not. This would allow him to correctly block the attack and then (like prospect (Attack, Parry)) the game would be “flipped” and he would be in B’s position. I’m not sure how possible it is to tell the difference between a proper feign (meaning feigning at the last possible moment) and an attack, even from far away. But even if A could do so, we wouldn’t get away from this model; it would only prolong it.

    Another possibility is kicks. However, as far as I know, you can still get a block off to prevent a hit after getting kicked. So I’m doubtful if this changes the dynamic at all.

    EDIT: a prediction I make using the above model:

    ! In duels with good players (who know their options) wielding similar loadouts (so as to conform to my model), I predict that proportionally more hits will be scored by player B, that is, the player who has just made a successful parry. If we take away all the other possible events like successive parries, missed strikes, and running away, and just focus on successful hits made by B and A (where the two together add up to 100%), I’m going to say that B’s hits will account for at least 55% of all hits.
    !
    ! Of course, this is limited to what happens only in the period up until a second or two after the parry. I also predict that this number should actually increase as the players get better and know how to exploit B’s advantage.
    !
    ! A quick way to check this would be to see if more players are killed in the second (or two) after their attacks are parried than are players killed in the second (or two) after they have made a parry.



  • Excellent post and a worthy distraction from the modelling work I should actually be looking at at uni. Raising the game ceiling would break a cycle between two optimal players with no cognitive visual errors who were rooted to the ground. In practice, encouraging suboptimal premature strikes while creating distance leaves the attacker open to unblockable attacks provided the attacker is prepared to rush in while missing the attack by a minimal margin. This can lead to a checkmate type success and is dependent on human error.

    In martial arts where only the first strike counts, combatants tend to spend most of the round looking at each other and positioning. Boxing is quantitative so the combat is more lively, and thus attracts punters and advertising.

    Combat is psychological as well, so taunts and erratic behaviour can throw an alert enemy off in a 1v1 scenario. The kick does not render you especially vulnerable but it leaves a smaller margin for blocking (?) and the kick can leave you facing the wrong way and disoriented. Or it can knock you over a precipice! Even if the block is made, the enemy can be angered and made suboptimal because it is a humiliation attack, like fisticuffs.



  • In almost any game two good players could go 50% against eachother depending on how good they were playing on that day.

    If you are also basing your analysis on 1v1 interaction which this game is not designed around I don’t agree. You can say the same for TF2 which has a relatively high skill cap at a competitive level.



  • @MUSASHI:

    In almost any game two good players could go 50% against eachother depending on how good they were playing on that day.

    If you are also basing your analysis on 1v1 interaction which this game is not designed around I don’t agree. You can say the same for TF2 which has a relatively high skill cap at a competitive level.

    It depends on how “good” the players are and what game you’re talking about. In StarCraft BW (arguably the highest skill ceiling ever in competitive gaming) there were random mechanics at play (like racial match-ups, build orders, etc) but the skill ceiling was so high that extremely good players could mitigate these minor disadvantages with brilliant play. The result? The absolute top tier of competitive players won around 70% or more of their games against other top competitive players, consistently. This easily jumps up to 95%+ against anyone who wasn’t a pro gamer. There was room to distinguish themselves because the randomness was not overwhelming, and there was always room for improvement.

    The counter strike scene was similar. You can’t simply say “good CS players” go 50% against each other. There’s an hugely wide band of “good CS players” that varies considerably in skill. In CS, just like SCBW, the best players can consistently beat lesser skilled “good” opponents.

    My argument is that it may be really easy (relatively speaking) to have all the knowledge and skills required to be an elite dueler in this game. If good players can’t differentiate themselves in terms of skill, we devolve to a game heavily based on randomness that isn’t competitively viable. Sure, it may be great for pubs and casuals, but it’ll get boring real quick for players who excel and want a challenge.

    I realize the game isn’t focused on 1v1 fighting, but its the most important example to use in doing this sort of analysis, and most interactions can be abstracted down to this level in game. In SCBW, CS, and even your example, TF2, 1v1 was the easiest one way for a player to show his individual skill. In TF2, the best scouts dueled for practice and were able to beat lesser competitive scouts consistently.



  • Tomorrow, a tournament for fun will be hosted by Lg. It’s pretty much a friends tournament, but majority of people in the tournament are pretty top notch players. We will be streaming it, I hope you watch so you can see how your “game analysis” holds up.

    I have Vq.|able first round, so that should be a good one.



  • @ChuckingIt:

    Tomorrow, a tournament for fun will be hosted by Lg. It’s pretty much a friends tournament, but majority of people in the tournament are pretty top notch players. We will be streaming it, I hope you watch so you can see how your “game analysis” holds up.

    I have Vq.|able first round, so that should be a good one.

    nice, I hope you make vods as I may not be around to watch



  • @Platodium:

    @ChuckingIt:

    Tomorrow, a tournament for fun will be hosted by Lg. It’s pretty much a friends tournament, but majority of people in the tournament are pretty top notch players. We will be streaming it, I hope you watch so you can see how your “game analysis” holds up.

    I have Vq.|able first round, so that should be a good one.

    nice, I hope you make vods as I may not be around to watch

    Yup, all will be recorded and saved on Twitch. I shall post an official announcement thread once I get all the info.



  • There are other mechanics at stake here.

    You can choose to run backwards after a parry, and then run back in should they miss a swing.

    You can crouch in place (and attack), which has a significantly smaller profile than crouch-walking or crouch-walk-attacking. (You may also look downward for an even smaller profile.)

    Footwork, in combination with mouse dragging and the ability to hit people from unpredictable angles also play a significant role.

    While you can block after a kick, it gives you less time to reorient your mouse for a block, which can be very significant when used in combination with feints, fast weaponry, and mouse dragging.

    The scenario you described seems to be more like a rockem’ sockem’ robots kind of ordeal, where two people are just swinging away at each other with only a few options.



  • @Derpasaur:

    There are other mechanics at stake here.

    You can choose to run backwards after a parry, and then run back in should they miss a swing.

    You can crouch in place, which has a significantly smaller profile than crouch-walking. (You may also look downward for an even smaller profile.)

    Footwork, in combination with mouse dragging and the ability to hit people from unpredictable angles also play a significant role.

    While you can block after a kick, it gives you less time to reorient your mouse for a block, which can be very significant when used in combination with feints, fast weaponry, and mouse dragging.

    The scenario you described seems to be more like a rockem’ sockem’ robots kind of ordeal, where two people are just swinging away at each other with only a few options.

    I agree with your post and I had these point in mind while writing. You describe the “finer points” of combat, and although relevant, I still feel like my game model is played out.

    For #1, yes, keeping your distance and knowing the ranges of the weapons is very important. For example, a vanguard can score a pike-stab hit right after his opponent misses his swing but running into range at the last possible moment. But I feel that is consistent with the model if we assume that both players can keep their distance and use the full range of their weapons. The player who misses his swing can counter by backing off and getting out of range of the pike; or if this is not possible, by blocking (then he becomes player B in my model). Running backwards is another “move” you could add to the matrix, but in the end, it just avoids confrontation and the “game” will be played eventually.

    #2 is another point I had in mind. Crouching can be used to duck under a high horizontal (LMB) swing, and if successful, can result in a clear counter stab. I should have stated this earlier, but the attacks I’m assuming both players are doing are middle height stabs (so as to get maximum range and speed of attack), so crouching should not make a difference, and it would again come down to the model.

    #3 mouse dragging is pretty relevant and I consider it to be a part of B’s F-attack option. Although not really an F-attack, a mouse dragged attack can act like one by forcing A to make a quick parry which would result in a hit for B. The other part you talk about here, footwork and hitting from unpredictable angles, is also relevant but you can learn to accurately and consistently dodge even the strangest angled pike hits with a bit of practice. Especially if you keep your distance, they aren’t as unpredictable as you may think.

    #4, like I mentioned, is not something I fully considered and it merits further testing, but I remain skeptical that it will break my model.



  • A quick prediction of my model:

    In duels with good players (who know their options) wielding similar loadouts (so as to conform to my model), I predict that proportionally more hits will be scored by player B, that is, the player who has just made a successful parry. If we take away all the other possible events like successive parries, missed strikes, and running away, and just focus on successful hits made by B and A (where the two together add up to 100%), I’m going to say that B’s hits will account for at least 55% of all hits.

    Of course, this is limited to what happens only in the period up until a second or two after the parry. I also predict that this number should actually increase as the players get better and know how to exploit B’s advantage.

    A quick way to check this would be to see if more players are killed in the second (or two) after their attacks are parried than are players killed in the second (or two) after they have made a parry.



  • @Platodium:

    @Derpasaur:

    There are other mechanics at stake here.

    You can choose to run backwards after a parry, and then run back in should they miss a swing.

    You can crouch in place, which has a significantly smaller profile than crouch-walking. (You may also look downward for an even smaller profile.)

    Footwork, in combination with mouse dragging and the ability to hit people from unpredictable angles also play a significant role.

    While you can block after a kick, it gives you less time to reorient your mouse for a block, which can be very significant when used in combination with feints, fast weaponry, and mouse dragging.

    The scenario you described seems to be more like a rockem’ sockem’ robots kind of ordeal, where two people are just swinging away at each other with only a few options.

    I agree with your post and I had these point in mind while writing. You describe the “finer points” of combat, and although relevant, I still feel like my game model is played out.

    For #1, yes, keeping your distance and knowing the ranges of the weapons is very important. For example, a vanguard can score a pike-stab hit right after his opponent misses his swing but running into range at the last possible moment. But I feel that is consistent with the model if we assume that both players can keep their distance and use the full range of their weapons. The player who misses his swing can counter by backing off and getting out of range of the pike; or if this is not possible, by blocking (then he becomes player B in my model). Running backwards is another “move” you could add to the matrix, but in the end, it just avoids confrontation and the “game” will be played eventually.

    #2 is another point I had in mind. Crouching can be used to duck under a high horizontal (LMB) swing, and if successful, can result in a clear counter stab. I should have stated this earlier, but the attacks I’m assuming both players are doing are middle height stabs (so as to get maximum range and speed of attack), so crouching should not make a difference, and it would again come down to the model.

    #3 mouse dragging is pretty relevant and I consider it to be a part of B’s F-attack option. Although not really an F-attack, a mouse dragged attack can act like one by forcing A to make a quick parry which would result in a hit for B. The other part you talk about here, footwork and hitting from unpredictable angles, is also relevant but you can learn to accurately and consistently dodge even the strangest angled pike hits with a bit of practice. Especially if you keep your distance, they aren’t as unpredictable as you may think.

    #4, like I mentioned, is not something I fully considered and it merits further testing, but I remain skeptical that it will break my model.

    In response to 2, I think you (and many other people) underestimate the difference between crouching and attacking in place, and crouching + attacking + walking at the same time. A stationary crouch-attack can very easily clear a mid-height swing, stab, or every part of an overhead but the end, especially against shorter weapons.

    In response to 3, yes, I suppose two players of infinite skill can accurately block every single attack, but this isn’t a reality we live in. Just as an archer can not reliably get a headshot with every arrow from every distance. The option to attack around, under, or above shields can be overwhelming for even the most savvy blockers/parryers when coupled with delayed, accelerated, or otherwise altered attacks [Such as through jumping (which can be used at any time during a swing to alter it even further), sprinting, backpedal-jumping (underutilized), and attacking with unusual parts of the swing animation].

    Though when talking about pikes, yes, there is much less room for mixing up attacks. Perhaps that is one of the issues with your model.



  • @ChuckingIt:

    Tomorrow, a tournament for fun will be hosted by Lg. It’s pretty much a friends tournament, but majority of people in the tournament are pretty top notch players. We will be streaming it, I hope you watch so you can see how your “game analysis” holds up.

    I have Vq.|able first round, so that should be a good one.

    It’s funny you should mention vq | able. I joined a server in my first week and had no problems going at least 50/50 against the vq guys. Able was one of the easier ones. He probalby only got 20%… too many attacks not enough feigns.

    The fact is this game has very shallow gameplay. Very shallow. There is almost no skill elements in it.

    1. knowing ur attacks max range (pretty simple)
    2. knowing how to use the poorly programmed shaft attacks where you shoot past someones block

    Both of these things are easy to learn within the first week. As long as you stick to the OPs strategy you’ll do about 50/50 vs the “best.” best hahaha in this game

    THis really is a rock paper scissors. Feigns from close can not be read. There is no skill to countering feigns other than to guess them and avoid the unrecoverable parry distance. These are 2 very simple things. There is almost no skill to aiming your blocks. Attacks devolve into deciding if you’re going to try a reach around poke attack or a right side of the screen left mouse button attack with almost no aim component.

    A classic example of the shallowness of this game happens when someone uses the overhead attack to try to get around a parry.

    Dev: “oh you better aim a little up to block it” …
    Dev: “what’s that you can aim a little up on every block and perry all types?.. yeah our game is kinda dinky.”

    It amazes me that even the most clueless noob thinks this thing has esport potential. YOU ARE PLAYING A VERY BASIC SHALLOW GAME WITH A SIMPLE ROCK PAPER FEIGN MECHANIC.



  • @Platodium:

    Snip

    There’s so many more moves you can utilize after a parry though.
    You could:
    take the opportunity to turn and run for some distance
    Make the enemy block by jumping in their face but not attacking
    Wait half a second and then attack
    Kick
    Jump+overhead
    Intentional miss to combo
    Sprint towards the enemy to make them block

    There’s many other possibilities as well. I suppose what I’m saying is that you need to take into account more factors in your calculation.



  • @Platodium:

    @ChuckingIt:

    Tomorrow, a tournament for fun will be hosted by Lg. It’s pretty much a friends tournament, but majority of people in the tournament are pretty top notch players. We will be streaming it, I hope you watch so you can see how your “game analysis” holds up.

    I have Vq.|able first round, so that should be a good one.

    nice, I hope you make vods as I may not be around to watch

    Aww if you had told me I would have recorded the games/played.



  • The problem is you assume two players of even skill.

    This almost never happens.

    More likely there will be small variations in skill and playstyle that will keep things fresh for a while.

    @SwordShieldMaster:

    @ChuckingIt:

    Tomorrow, a tournament for fun will be hosted by Lg. It’s pretty much a friends tournament, but majority of people in the tournament are pretty top notch players. We will be streaming it, I hope you watch so you can see how your “game analysis” holds up.

    I have Vq.|able first round, so that should be a good one.

    It’s funny you should mention vq | able. I joined a server in my first week and had no problems going at least 50/50 against the vq guys. Able was one of the easier ones. He probalby only got 20%… too many attacks not enough feigns.

    The fact is this game has very shallow gameplay. Very shallow. There is almost no skill elements in it.

    1. knowing ur attacks max range (pretty simple)
    2. knowing how to use the poorly programmed shaft attacks where you shoot past someones block

    Both of these things are easy to learn within the first week. As long as you stick to the OPs strategy you’ll do about 50/50 vs the “best.” best hahaha in this game

    THis really is a rock paper scissors. Feigns from close can not be read. There is no skill to countering feigns other than to guess them and avoid the unrecoverable parry distance. These are 2 very simple things. There is almost no skill to aiming your blocks. Attacks devolve into deciding if you’re going to try a reach around poke attack or a right side of the screen left mouse button attack with almost no aim component.

    A classic example of the shallowness of this game happens when someone uses the overhead attack to try to get around a parry.

    Dev: “oh you better aim a little up to block it” …
    Dev: “what’s that you can aim a little up on every block and perry all types?.. yeah our game is kinda dinky.”

    It amazes me that even the most clueless noob thinks this thing has esport potential. YOU ARE PLAYING A VERY BASIC SHALLOW GAME WITH A SIMPLE ROCK PAPER FEIGN MECHANIC.

    If it was so simple and easy, why do 99% of the people I fight not seem to grasp these basics? And I don’t even fight with feints, so it’s not that. The game has a lot of finer points that when combined all translate to big differences in combat style. That’s why some players, using nothing more than the basic mechanics you describe, can go 30-0 fairly easily in public games.

    Reflexes, timing, understanding how each weapon looks while attacking, how long their windups are, their range, spatial awareness (so as not to get overwhelmed in group fights) parry counters, mouse dragging to accelerate and decelerate attacks. Crouching and jumping attacks or dodges… I could go on.

    Hell, against good players that parry counter with you fast, you can feint without feinting by simply not parry attacking again amid the flurry of blows, because of how fast it becomes it’s very hard to predict and you just end up parrying out of mistaken reflex.

    There’s a lot of depth given the simple mechanics because of how smart and clever humans are. We give it the depth through mind games. The only mechanic that does not belong and takes away from this beautiful jumble of simple but skilful mechanics is feinting. And I don’t mean a new player who feints a swing very fast, I mean a good player who gets close first using accelerated and unpredictable attacks (especially overheads), while holding the feint until the end of the windup. Without using feints against these players, I lose almost all the time. If I use feints, it’s closer to 50/50. Feint is way too potent for how easy it is to use and master. There’s very little penalty. You can spam it 6 times in a row before going out of stamina.

    @ChuckingIt:

    Tomorrow, a tournament for fun will be hosted by Lg. It’s pretty much a friends tournament, but majority of people in the tournament are pretty top notch players. We will be streaming it, I hope you watch so you can see how your “game analysis” holds up.

    I have Vq.|able first round, so that should be a good one.

    I’d love to be in that… or one that comes up later! 1v1 is where it’s at…

    I can’t wait for the proper dueling and possibly tournament modes. Come on TB! :D


Log in to reply