Give Maya her damage ender from season 2 back and revert the game to Season 2 in general. Season 3 is beyond redemption imo and ruined what was once an awesome game. The guest characters and their mechanics/Instinct I don’t like and it’s hard to take this game seriously. The game has to have lost some of its hardcore players in season 3, since IG torpedoed KI. Game really needs a total reboot, probably new devs, or just leave it be as is for the people that like it. Tekken 7 and other more serious competitive games are just around the corner so it’s not a big deal either way. Loved Season 2, can’t stand Season 3.
The flipside to this is that SF combos are uninteractive: your optimal punish is determined (after the confirm) by local, immediate facts like spacing and frame advantage, with maybe some consideration for what kind of outcomes other than damage you might like. A basic insight of complexity folklore is that even simple problems of interaction tend to be harder to solve than even very complex problems of mere combinatorial optimization.
I think you’ve come to a more reasonable conclusion in a later post, but if you’re saying that KI isn’t about jockeying for position at a character-length away with normal pokes, then you’re on the money.
Most KI characters threaten the midscreen with potent specials, and at a character-length away characters’ pressure games tend to kick in. Someone who wants to play SF-style footsies is probably going to get trampled.
wrt comments like
and the like:
I think most responses in this thread are a ways off from adequately acknowledging the commonalities and differences between SFV, KI, chess, and checkers. Briefly, I think the analogy is fundamentally broken and should just be discarded.
There don’t tend to be many moves available to a chess player on any given turn at all – a reasonable estimate I’ve seen is ~35. On the other hand, in large part thanks to the power of exponential growth, the game tree complexity of Chess (that being the number of possible distinct play sequences, start to end) is huge: it was originally estimated by Claude Shannon at ~10^120, which iirc outstrips current estimates at the amount of protons in the observable universe by many orders of magnitude. (Disclaimer: I’m not a physicist.) There’s considerable redundancy in there with different sequences of moves arriving at common intermediate states and whatnot, however, so for “practical” purposes you’d be better off tracking the number of legal board states, which has been estimated at somewhere north of 10^40. (Note that this number is ~40 digits in length, i.e. utterly gargantuan.)
Mind, sheer enormity of state space alone doesn’t make a game hard or complex. The number of distinct paths between your current location and Disneyland is also enormous, but Google’s engineers don’t seem to have a lot of trouble at all enumerating a beautifully-annotated assortment of the best paths to get you there for your next holiday, for whatever mode of transport you choose. Unlike finding short paths through a map or a transit network (known to be very a myopic and easy problem), there is evidence that good chess plays actually do some extremely powerful computational work, and hence (at least, we think) must require a lot of computational resources to find. However, that enormous state space does explain where chess is able to “contain” or “hide” that hardness, and that sets Chess apart from something like a fighting game.
Checkers is very similar to chess in those regards, except that the number of moves available to a player per turn is probably closer to 10 on average, and, owing to the fact that there aren’t 9 different “types” of pieces and so there’s a lot more redundancy in the game tree, there are far less possible board states. You can, however, encode some very hard computational workloads into checkers board states, so long as you’re willing to play on a bigger board and with more pieces. Incidentally, checkers (on an 8x8 board) was solved by Jonathan Schaeffer roughly a decade back, although the full solution incorporates a database of end-game solutions weighing in at several gigabytes that took decades to compute.
Fighting games don’t really have the same immensity of discrete states within which to hide hardness. For a crude estimate, each typical character can be at one of maybe ~10000 discrete locations on stage and one of ~100 different stages of a jump arc (10000x100), with up to 1000 life remaining and 1000 meter (1000x1000), and either in blockstun or hitstun with up to ~200 frames until recovery from stun (2x200) or up to one of maybe 200 different stages of any of 30 different moves (200x30), for a total of 10000x100x1000x1000x(200x30 + 200x2) or less than 10^17 different states per character in a match, for a combined (10^17)^2 = 10^34 unique states – and there’s a lot of overcounting going on in this estimate. (e.g. Wulf vs Wulf, if p1 has x frames of crLK remaining and p2 is in blockstun with y frames to go, you can expect x and y to differ by 4 or so frames. So the vast majority of combinations of crLK animation and blockstun remaining are impossible.) I’d expect to be able to represent a typical fighting game match pretty faithfully with somewhere on the order of a billion states with a careful analysis, and, if we all had millisecond reactions and our computers/consoles/monitors didn’t impart any input lag, I’d expect games like SFV to be pretty convincingly solved by now.
But we actually have to sit around waiting for ~15 frames at minimum for things like input lag and human reaction times, which introduces imperfect information to the mix – I know everything that happened up until 15 frames ago, but only my own actions within that last 15 frames – and I think there’s a complexity behemoth hiding in that unreactability window.
KI’s standard combo system might be an ideal place to discover that behemoth. Originally, I saw the combo system as a space with states determined by KV (up to 100), potential damage (up to 100 on a standard combo, say) and damage scaling (there seems to be a discrete counter n such that damage from doubles, manuals and linkers is scaled by their own respective fixed ratio n times, and n increments by some fixed amount per move or hit, and probably isn’t getting above, say, 50), so that on the order of millions of states (100x100x50 = 500000 states for each of the opener followup, linker game, and linker followup) would bound all the possibilities. (Again, lots of overcounting going on here.) You’d then look at the strategies available to both the offensive player (auto double or manual of strengths L, M, H, counter-breaker, or ender) and defensive player (break or no break) at each of those states. Each pair of strategy choices for a given state identifies a resulting state, and the KV, PD and scaling counter always increase, so these states form a big game tree. You can then use a game theory tool called the minimax theorem to determine how much each of those states is worth “on average” for two players playing optimally. You assign damage scores to the “end” states first because their outcomes don’t really depend on future states, and use those scores to “backsolve”, computing scores for earlier states based on the scores of the later states that they can lead to. This is a totally reasonable task for a home desktop, so all I would’ve had to’ve done is gather a whole bunch of character data and code the thing up.
The issue? I think there’s a good analogy to be found in the unexpected hanging paradox, which I’m just going to lift from the Wikipedia article:
[quote]A judge tells a condemned prisoner that he will be hanged at noon on one weekday in the following week but that the execution will be a surprise to the prisoner. He will not know the day of the hanging until the executioner knocks on his cell door at noon that day.
Having reflected on his sentence, the prisoner draws the conclusion that he will escape from the hanging. His reasoning is in several parts. He begins by concluding that the “surprise hanging” can’t be on Friday, as if he hasn’t been hanged by Thursday, there is only one day left - and so it won’t be a surprise if he’s hanged on Friday. Since the judge’s sentence stipulated that the hanging would be a surprise to him, he concludes it cannot occur on Friday.
He then reasons that the surprise hanging cannot be on Thursday either, because Friday has already been eliminated and if he hasn’t been hanged by Wednesday noon, the hanging must occur on Thursday, making a Thursday hanging not a surprise either. By similar reasoning he concludes that the hanging can also not occur on Wednesday, Tuesday or Monday. Joyfully he retires to his cell confident that the hanging will not occur at all.
The next week, the executioner knocks on the prisoner’s door at noon on Wednesday — which, despite all the above, was an utter surprise to him. Everything the judge said came true.[/quote]
Often when discussing the “problem” of guess-breaking in KI, you’ll see arguments between reasonably intelligent people that take the following course:
Person A: “Guess breaking is too good in KI and long combos are bad because there are no consequences for locking out.”
Person B: “That’s your own fault. If you capitalized on lockouts properly you could make then eat 40+%.”
Person A: “But there’s never enough KV to fit in a punish, especially if the opponent just waits out all your low-damage manuals and guess-breaks late. They get a free shot at avoiding the cashout and no penalty if they’re wrong.”
This line of reasoning isn’t entirely wrong, which makes it difficult to reason about. The problem with it, however, is that it looks something like this:
At 100 KV, the offense has to cash out with an ender or blow out, so they’re going to cash out.
At 90 KV, if the offense goes for a linker or manual then they’ll be at 100 KV and will hence cash out then. If the defense attempts a break, they’re either right and prevent the cashout, or wrong and they eat the cashout, which is going to happen anyway, so they may as well take a free punt at breaking. So the offense may as well cut off the free breaker and cash out at 90 KV.
At 80 KV, if the offense goes for a linker or manual then they’ll be at 90 KV and will hence cash out then. If the defense attempts a break, they’re either right and prevent the cashout, or wrong and they eat the cashout, which is going to happen anyway, so they may as well take a free punt at breaking. So the offense may as well cut off the free breaker and cash out at 80 KV.
At 70 KV, if the offense goes for a linker or manual then they’ll be at 80 KV and will hence cash out then. If the defense attempts a break, they’re either right and prevent the cashout, or wrong and they eat the cashout, which is going to happen anyway, so they may as well take a free punt at breaking. So the offense may as well cut off the free breaker and cash out at 70 KV.
…
After the first non-opener hit, if the offense goes for a linker or manual then they’ll be at X KV and will hence cash out then. If the defense attempts a break, they’re either right and prevent the cashout, or wrong and they eat the cashout, which is going to happen anyway, so they may as well take a free punt at breaking. So the offense may as well cut off the free breaker and just do a one-chance break.
So, when person A above encounters someone in ranked who goes opener → medium manual (light break by person A) → light linker → big low-KV lockout punish, person A is left staring back at the completely sound-looking line of reasoning from above and wondering, “what the hell just happened?”
What happened, is that at 60, 70, 80, 90 KV, the offense in that line of reasoning is failing to weigh the possibility that the defense may have already locked out, and is instead playing to an overly cautious assumption that the defense always has a breaker on-board until whatever point in time the offense has observed a lockout. But more correctly, the offense should accept that these are situations where he doesn’t know which game he is playing: is it the “my opponent has a breaker on-board and I’m trying to deal maximal damage whilst avoiding being broken” game or the “my opponent has just locked out and I’m trying to capitalize” game? The optimal strategy is probably going to recognize and balance the possibility of both situations, probably biasing towards whichever situation is more likely.
But how likely is it that the defense locked out in the previous 15 frames? Well, if 60KV has amassed, it probably depends on how likely the offense was to cash out at 50KV. That in turn depends on how likely the defense was to have guess-breaked (and hence locked out) by 50KV, which depends on how likely the offense was to cash out at 40KV, which depends on how likely the defense was to have guess-breaked by 40KV, which depends on how likely the offense was to cash out at 30KV, and so on. Basically, it seems like we need to know information about all of the interactions leading up to a given state to solve for that specific state – which makes the approach of solving the “end” states and backsolving from there seem pretty unworkable.
So, is there a way to solve a fighting game, or at least KI’s combo system? Well, here’s one approach.
A combo history is a sequence of moves in a standard, grounded KI combo, starting with an opener and interchanging various auto doubles/manuals, linkers, and possibly counter-break attempts, possibly ending with an ender. Some examples of combo histories:
H wind kick, clMK, M wind kick linker, HK auto
M ragged edge, crLP, H ragged edge linker, HP double, HP double, HP double, HP double, ender
Combo histories determine the state of a combo (KV, PD, damage scaling) at the time at which they end, as well as at all the intermediate states. A combo history is complete if it ends in an ender. We mainly care about incomplete combo histories.
A full strategy for an offender is a table which determines, for every possible incomplete combo history, the move that the offender is to use next if a) the defender has locked out, and b) if no lockout has been observed. Basically if I have a full strategy written down in a book that I am going to obey completely whilst performing a combo, and at every stage in the combo you were to look up the corresponding combo history and look at the next move that the full strategy dictates, then you could predict my every move exactly. Conversely, a full strategy for a defender is a table which determines, for every combo history, whether or not they should attempt to break the next move, and whether or not they should attempt to break the last move if it’s reactable.
Given a full strategy for the offense and a full strategy for the defense, you can play out an entire combo just by looking up, for each combo state encountered, what each respective player should do next.
A mixed strategy takes a collection of full strategies for a player and assigns to each strategy a probability, which is the probability of that full strategy being selected. If I decide to perform or break a combo according to a mixed strategy, then it means that I have a pile of books next to me, each detailing a different full strategy and each labelled with a probability, and each time I start a combo I randomly choose one of those books to play out the combo from based on the probabilities the books are labelled with. Mixed strategies are an attempt to capture the idea of “being unpredictable”, whilst also biasing your habits towards stronger strategies and occasionally using certain strategies just to keep your opponent on their toes.
Do mixed strategies provide a good way of talking about proficient play in reality? Our lived experience of playing fighting games tells us that, no, you don’t randomly choose how you’re going to respond to every possible scenario, before going starting the combo – you decide in the moment, or at least you make a final decision in the moment. But as it turns out there’s this result called Kuhn’s theorem which says that the two notions are equivalent, so in a precise sense, finding the optimal mixed strategy does correspond to strong decision-making in the moment.
Okay, well that’s great! So let’s just list out all the possible full strategies for offense and defense, run each offensive/defensive full strategy pair and see what the outcome is, put all the results in a big table, and feed it to a linear optimizer, and we’ll finally know precisely how good TJ’s combo game is! Right?
There’s, uh, just one massive problem with this. See, if the offense can choose between, say, three different moves at each stage of a combo (it’s always more than this, but okay), and combos can run for, I don’t know, 6 moves (often more, but okay), then there are 3^6 complete combo histories. (And lots more incomplete ones.) And if a full strategy for the defense has to determine whether to break or not to break for each incomplete combo history, then that means there are ~2^3^6 full strategies for the defense. And we’re not done yet – if a mixed strategy for the defense has to pick a set of full strategies to assign probabilities to, then there are at least 2^2^3^6 mixed strategies for the defense.
So, is 2^2^3^6 a big number? Well, 3^6 = 729, which means that 2^3^6 = 2^729 ~= 10^210 is a number that is over 200 digits long. We’re talking about 2^2^3^6 ~= 2^10^210 = 2^(number that is more than 200 digits long). Yes, that’s a big number. For comparison, the number of distinct chess play sequences was somewhere on the order of 10^120, a truly tiny number by comparison. If chess is a nice nest for complexity dragons to roost in, then KI’s combo system might hide some Lovecraftian abominations.
But the set of paths from your location to Disneyland is also a really big solution space, and yet it’s an easily-solved problem. Maybe there’s some clever technique for carving through or paring down that mixed strategy space that could allow us to solve KI’s combo system?
The literature in the subject is a little more obscure, but I’ve briefly been able to speak with a game complexity theorist recently, who (given a brief rundown of the problem) indicated that the problem is indeed very possibly in a different, higher realm of hardness than the likes of chess. I’d give a more detailed explanation, but we’re more-or-less at the edge of my own understanding of the topic, and this has become a looooooong post.
tl;dr: chess and checkers hide complexity in large state spaces. Fighting games have smaller state spaces, but hide complexity in imperfect information and uncertainty born from that ~15 frames of reaction time. Trying to draw a meaniginful comparison between Chess and Street Fighter that excludes KI somehow is probably not a reasonable thing to do.
What a fun read. Thanks for this. Plenty of good stuff in here including an illustration of how some things are easier to do than explain - none of us consider 726 options when a combo starts at KI.
Obviously the chess/checkers thing breaks down (like all analogies) the more you examine it. As you’ve just shown it can still be interesting to talk about. One of the more esoteric (i.e. Non mathematical) things your post brings to mind is that understanding the total number of possible moves is only if limited value. Chess grandmasters aren’t thinking about 10^120 possibilities when they start a game, and you see that popular “openings” are much fewer in number than the theoretical opening moves in chess. That’s because knowing all the possible moves turns out to be ultimately less important for winning than having some criteria to sort the “good” moves from the “bad” ones. One of the studies I’ve always found insightful (as a biologist) was if you do a brain scan of players brains while they are playing Chess, intermediate players show tremendous amounts of brain activity in the areas responsible for strategic thinking - which is sort of what you would expect. But masters show almost zero activity related to strategic thinking and instead are relying on the centers of the brain responsible or memory. Relating this to KI I think it’s easy to understand that very rarely are we actually strategizing in the moment based on all the true possibilities. Instead we are doing something more like “the last time he jumped he kicked as he was landing so I can either anti air or jump to challenge him in the air before his kick comes out” or an even simpler reaction based on memory. This leads to cool stuff like players having success in fighting games by doing the “wrong” thing at any moment and getting away with it(like Daigo’s random naked DPs that always seem to come at the right time). This generally doesn’t happen in a game like chess (assuming your opponent is good).
If you know what your opponent is doing as far as breaking goes, if he’s broken every medium combo you’ve done, it’s unreasonable to predict that he won’t try to break it again. That is predicting. In the case of the opponent went to option B Your prediction was wrong. However if that’s the case there’s a small chance your opponent may be deeper in your head than you once thought
Regarding guess breaking, if the defender is successful at 33% then the offensive player really doesn’t need to do anything. Why risk a counterbreak if you’re winning? And remember the other 66.6% isn’t just allowing you to finish a combo it’s allowing you to optimize that combo with heavy ADs and shadow linkers etc.
Counter breakers matter when the opponent is more than 33% successful. He is using your patterns and his reaction times to more frequently break you. Which means you can do the same thing to him. The irony is the more successful and consistent your opponent is with breaking then the more clear it is he isn’t “guessing” at random and the higher your percentage chance of catching him with a counter.
Not sure if you’re trying to agree or debate with me, but you are proving my point that predicting is just a guess that was correct. Even when guessing, I’m using your previous patterns and habits to decide what you might do next. Even if someone is breaking only mediums and you predict they will again, if they don’t then your ‘prediction’ just turns into a wrong guess.
While there is a difference between them, the post I replied to did not state that. A guess would be just randomly smashing buttons hoping to be right, but if we start using theories instead of smashing, predicting and guessing become almost the same thing.
Well counter-breaking can be used just as easily, if someone is smashing buttons and guessing this is where your diverse use of varying strengths, manuals, etc. All of that stuff plays a part, if someone is just mashing breaks much of the time they’re going to get it wrong since streangth isn’t the only factor they can get wrong, so is timing, there’s two ways to get locked out and three seconds of free damage is more than enough to make someone want to NOT guess break or mash the buttons.
I suppose in your case though you’re saying that even if there was a “slight” chance of the opponent some how guess-breaking seems to ruffel people’s jimmies. In that instance it’s something that simply can’t be helped other than them taking charge of it and making sure it doesn’t happen. however that I think is what makes KI so great to start with that’s what keeps it engaging. I’d rather have moments where I can be engaged 100 percent of the time rather than have moments mid match where I don’t press stuff until the guy is done with the combo. At worse it’d be like marvel where one mistake costs you the whole match since infiites can’t be stopped once they started and your next character going in is not gauranteed to be safe.
In that instance however it’s a flaw people simply are gonna have to live with or at least make it better by taking charge and responsibility for their own actions to make sure the opponent doesn’t get a “lucky guess”. Just as the same argument can be used in Marvel for guessing wrong and “you don’t get to play for the rest of the match” kind of scenario.
I’ve fought alot of folks myself who mash and guess break, slight change in the way I do things and it down the road to “■■■-whoopington”
I have an end game to my point. While yes what you explained was clear that yes you can have a wrong prediction but it doesn’t mean you can’t do something about it.
I must of worded that second incorrectly. Let me restate it more clearly with a scenario:
Let’s say you and I are in a match it’s likely the first time we ever fought on KI, so we don’t know what the other one is going to do. Once the match starts in the first few seconds we can only guess. However as time progress and we’ve done moves and specials and combos and got a feel for how the other fights, we can start making predictions based on patterns and habits.
Basically: during the first few seconds of a fight you can only really guess because you don’t really know what your opponent is capable of.
After the few seconds and exposure to some of the opponent’s behaviour, you can “predict”. It’s considerd a prediction because by this point your brain has enough info to figure out what your opponent is doing. However even predictions can be wrong.
Not to interrupt, but I would just suggest that the difference between a “guess” and a “prediction” is really just about how you feel about it. The connotation of “guess” is usually (but not always) associated with randomness while a prediction is generally associated with a rational argument suggesting a non-random outcome. While the pedagogy can be useful I think the point here is that the things people label as “guessing” in KI are no different than the things the label “predicting.” It’s just that people think of them differently.
For example, at the beginning of a match, the moment your buttons become operational you make a guess/prediction about what your opponent might do. You generally factor in your best estimate of likelihood and consequences and outcomes and make a decision about what to do. People love this. It’s an expected part of the game.
Immediately after a flipout, both characters are in neutral at a specific spacing. Besides the spacing it is nearly identical to the start of a round. But for some reason this moment of guess/prediction is always labeled a guess and looked at with scorn. Why? Well, in large part I think it’s because one player (on offense) has more time to think about it than the other and knows exactly when it’s coming and can make his decision in advance. Whereas the “defender” has to make this decision much faster and with less evidence it seems random. But just like the opening of a round you can accumulate experience to better predict what an opponent is likely to do and what your best options are. No one truly decides what their opening move will be after the announcer says “fight” - you know beforehand. Your strategy for flipout is the same. Know what you will do on the next flipout before it happens.
Anyway, the point is people can like or not like flipout for a variety of reasons. But the idea that it is more “random” or guess driven than the other parts of the game (which allow “prediction”) is not based on reality. It’s just a feeling.
They should at least consult players feedback through surveys , before introducing new mechanics. And also should stop redesigning chars and worst, over nerfing chars. And also apply consitency. If jago hK windkick is now a -11 , why cant others also be nerfed the same. So thunders or orchids should be properly punished for playing yolo. I play kim and block a thunders forward axe move but before i press a button he frame straps into ankle slice, or dps. So annoying. They keep pressing buttons even when negative cuz the games favours it
I honestly can’t understand people wanting to go back to S2 Maya. Dagger Assault has been lackluster, but she became much less gimmicky in S3 by reworking her cashout ender and buffing her regular combo damage. She’s a more well-rounded character now who doesn’t have to revolve around her pips so much.
I think the S3 re-balance for the most part made for a game with stronger, more varied and interesting characters while also generally doing a good job of cutting off all the cheap stuff in S2.