Now, I myself have been playing 2D fighters for awhile, and the main thing that pisses me off in this genre is cheap AI. Between revising for my exams, finishing second level education and starting off my Chaos Army, I haven't had much time to play them to keep my skills up. So after getting an arcade stick (as it was 20 euros cheaper than a new controller) I started easing myself into fighting games again. After getting to an okay level of skill in CVS2 and MVC3 I turned my attention back to my favorite, SSFIV.
I pick Akuma and start playing the Arcade mode on easy (getting myself used to to game again). After doing quiet well in most of the fights I get to the rival fight against Ryu. The round starts and.... HADOUKEN! HADOUKEN! HADOUKEN! HADOUKEN! SHORYUKEN!!1! Ryu Wins! Perfect!
Confused, I attempted to counter his spamming with leg sweeps and teleports, nothing worked. Every move I used against him he would counter with a SHORYUKEN! even when he was knocked down. This was unfair given that there were zero frames between him either recovering/blocking/getting up and his SHORYUKEN! When he knocked me down he timed his SHORYUKEN!!1! to hit me as I left the recovery frames giving me no time to defend or block, setting me up for an infinite cycle. Eventually, I stepped back and left it in case I lost it and Broke something.
Then I began to think "how come the AI is able to pull off these impossibly cheap timings and use moves faster than any player realistically could?" The reason is simple: The CPU doesn't have to input any move commands. When a player inputs a move, it will take at least a split second or more to work, while the CPU isn't restricted by this. This means the only thing holding back the AI is its reflexes, and since its the CPU...... you can see where the cheapness can come from.
So instead of angsting I propose a solution, we either make the AI input the moves realistically or we put a lag onto the moves activation.
Example; instead of AI Ryu simply thinking "shoryuken" and it happening instantly, how about making it think "forward", "down", "down-forward punch" or putting in a delay of a fraction of a second between the AI thinking "shoryuken" and the move activating?
What do you think of my idea? Has it been done before? Or is it stupid?
If this comes off as me bitching for sucking, I apologize.
Apologies on the thread spam, my intrewebs screwed up again.
I pick Akuma and start playing the Arcade mode on easy (getting myself used to to game again). After doing quiet well in most of the fights I get to the rival fight against Ryu. The round starts and.... HADOUKEN! HADOUKEN! HADOUKEN! HADOUKEN! SHORYUKEN!!1! Ryu Wins! Perfect!
Confused, I attempted to counter his spamming with leg sweeps and teleports, nothing worked. Every move I used against him he would counter with a SHORYUKEN! even when he was knocked down. This was unfair given that there were zero frames between him either recovering/blocking/getting up and his SHORYUKEN! When he knocked me down he timed his SHORYUKEN!!1! to hit me as I left the recovery frames giving me no time to defend or block, setting me up for an infinite cycle. Eventually, I stepped back and left it in case I lost it and Broke something.
Then I began to think "how come the AI is able to pull off these impossibly cheap timings and use moves faster than any player realistically could?" The reason is simple: The CPU doesn't have to input any move commands. When a player inputs a move, it will take at least a split second or more to work, while the CPU isn't restricted by this. This means the only thing holding back the AI is its reflexes, and since its the CPU...... you can see where the cheapness can come from.
So instead of angsting I propose a solution, we either make the AI input the moves realistically or we put a lag onto the moves activation.
Example; instead of AI Ryu simply thinking "shoryuken" and it happening instantly, how about making it think "forward", "down", "down-forward punch" or putting in a delay of a fraction of a second between the AI thinking "shoryuken" and the move activating?
What do you think of my idea? Has it been done before? Or is it stupid?
If this comes off as me bitching for sucking, I apologize.
Apologies on the thread spam, my intrewebs screwed up again.