Any Programmers Here? (hit confirm training program idea)


#1

I had an idea for a program that would help to train for hit confirms. I have been trying to get chun’s low forward > SA2 hit confirm in third strike down for so long now, even after putting it on random block and practicing for hours and hours at a time, training several times a week for months now. I think that it might help me and hopefully others to just practice the mental part of hit confirming. I figure if I can get the mental part down, that is at least one step towards being able to do it in a match. The cool part is that this would work for any game where hit confirming is a skill.

Anyways my idea is to have a program that one would set the window in which you need to press the button (in frames), and have the program randomly decide whether it is block or not, and then you have to input the command. This could be done by just pressing say, the space bar, and then pressing it again within the window which the opponent would be recovering. The screen would maybe show one color if it is blocked, and another color if it hits. Maybe even it could be set to just use the sound from the game, if you want to practice that way? Also perhaps a way to keep score?

I realize it’s possible to just practice the hit confirm in training mode, but I think that separating the mental from the physical aspect of hit confirming would help people learn to hit confirm faster. It may also help train reaction times in general. Guilty Gear Slash doesn’t even have a random block setting.

So, any programmers here? It doesn’t sound like a very hard program to write if you are proficient in a language already, and it would be awesome for people like me who can’t get the mental aspect of hit confirms down.

Just to clarify, the main advantage is that the directional inputs would not be needed, and you could practice pure hit confirming/reaction times without a console.


#2

I could program this up pretty quick in torque game builder. Is there any chance you can supply the sounds for block and hit? I’ll put an option where you can choose in milliseconds how long the window will be, also I’ll put the option where you can hitconfirm with just sound or just visual or both.

Also if you had the animation for a particular game and could tell me how long in milliseconds each animation frame should last for I could even use the actual game graphics.

You can PM me or IM me if you want to get ahold of me tonight, I’ll start working on it right now - shouldn’t take too long.


#3

i think i just got used to seeing the opponent getting hit and doing the super
and i dont when they block

its just reaction practicing


#4

Just about done, it works but there’s a confusion as to the window millisecond edit field and hitting space for the hitconfirm. should post it within 15 minutes or sooner if I can figure this out.


#5

Ok I’m finally finished. Took alot longer than I expected but I had some confusion and then I had some kind of directory problem.

Get it here: http://www.zenchess.com/programming/hitconfirm_0.1.zip

You can enter in a value in milliseconds for the hitconfirm window, and then the screen turns either blue or red. You then hit space or enter if you see red.

Program will keep track of your false positives, and your successes for both a block and a hit.

The program does not keep track of if you hit enter too late, I can add that in later however.

Instructions: Extract zip to wherever you want. Run hitconfirm.exe. Press alt+enter for fullscreen. Press backspace and type in a new number in milliseconds if you’d like different timing. Game created with torque game builder, a 2d game engine. There’s a 4 second splash screen of the garagegames logo which was part of my ‘indy’ license agreement for TGB. Hit quit to quit. :stuck_out_tongue:

I tried it briefly at 250 millisecond, and I could get an ok score…though I did get some false positives. Let me know your results.

I can change the program pretty easily now that I’ve made it so if you want me to adjust some feature of the program to make it more realisitc let me know. Also like I said I could add animations + sound effects, although adding sound effects would be alot easier than the animations.


#6

man you guys over complicating this.

hit confirming has been around since the ST days. We didn’t need all this fancy bullshit to learn it. Go to training mode and practice, practice, practice. Then when your done practicing, you go on and practice again. Thats how you learn it.


#7

we need one for EWGFs lol


#8

Hey, sorry my internet was down all day today, so I just barely got to check this thread. I’m about to go try out the program, thanks for doing this!!! Also, I can provide sounds for hit and block, I will get to work on that. :slight_smile: :slight_smile:


#9

OK I just tried the program out, it’s a really good start. Some input on features that would be helpful:

-I think that having frames as the measurement of time would be better because that’s what we are all used to. I’m pretty sure most all 2d fighters are 60 frames a second(can somebody confirm this?), so mathematically that’s 16.666666(repeating) ms per frame.
-a way to input the startup frames, the hit frames, and the exact window with which to hit confirm. I don’t think somebody pressing too early is something that really needs to be factored in. The screen shouldn’t turn blue/red until the hit frames start, that way it can be exactly like the game, and you’d only need to look at a framedata chart in order to configure it. Presets for different hit confirms would be sweet too.
-I could only get the hit confirming to start when I clicked on the button. Could you set that to space as well so there is really only one button the user has a press?
-yeah a way to tell if you pressed late would be great, like you said.
-perhaps instead of the whole screen turning a color , you could have a little section of the screen that turned green for the startup, and then turned red/blue.
The main idea is to get this as close as possible to hit confirming in a standard 2d fighter.

Here is just a crazy idea, not needed but I’ll tell you anyways:
What if there was a little slider at the bottom of the screen, that moved at a fixed speed when you start a hit confirm test. It could have color indicators for startup and the window with which one can hit confirm. The slider would have to change sizes depending on the variables. Then there could be a little box that turned red or blue instead of the whole screen. The slider might help the user visualize things, but it’s not necessary, only an idea.

I will get to work providing sounds(from 3s.)


#10

Could you explain exactly how the frames work?

For example, if the startup was 5 frames, would the hit take place on the 6th frame or the 5th frame? Explain exactly the timing I need to program in.

Making it based on frames will be pretty easy.

I can do the thing with the slider, no problem.

When you give me sounds I will be able to put them in very quickly.

I can still do animations so if you can rip some graphics from nullDC or something that would make it alot cooler.

Also I’m going to add windows joystick support (gamepad or stick).

I might work on this again later today, right now I’ll be working on a game I’m making.

I’m really tempted to make a fighting game engine…but I guess there are already some open source projects out there.


#11

The hit frames would start on the 6th frame. The window for input would not necessarily start right as the hit frames started, as sometimes a link is needed instead of a cancel. So sometimes the window with which to input the confirm would be really small.

For example chun’s low forward has 6 frames of startup, 1 frame of hit animation, and 14 frames of recovery. The user presses space, the box turns green for 6 frames, and then turns red/blue for 14 frames (actually I’m not even sure how many frames you have, I know it’s a late cancel, but let’s assume it’s 14). If the user presses space within those 14 frames, it counts as a success. I think that maybe if it’s a hit, it should turn purple after the hit confirm window until the space bar is pressed (just to help visualize things).

I think maybe you should hold off on the “slider” bar implementation until the frame mechanics are perfect. Also I realized that I explained that idea horribly.


#12

anybody have some input on how to make this as accurate as possible? I have a feeling I have something wrong game-mechanic wise.


#13

IIRC, Chun’s SA2 has 3 frames of startup, and the c.forward leaves them at -1.
(Hit frames + recovery frames - frame advantage - super startup = window)
1 + 14 - 1 -3 = 12.
What’s worse is there is a little bit of a delay on hit or block with the connect sparks flash;Im not sure how much it is, prolly 5-10 frames. At bare minimum, 12 frames. heh. exactly 200ms.

But I still think training mode is the only proper way to do it.


#14

I guess some of our posts got deleted, I wrote about the exact timing I was using. Here’s a recap:

Each frame counts as 16.66666 milliseconds. The program waits for you to press start and delays for startup frames * 16.66666. Then the program randomly turns red or blue for windowTime * 16.66666 seconds. If you hit enter or space during that time you get a success if it’s red, or you get a false positive if its blue.

Then the screen turns black, delays for 3 seconds (if you hit enter or space during that time when the screen is blue (block) then you get a false positive. If you hit enter durnig that time and the screen was red nothing happens - I haven’t coded that in yet.

Then the whole thing resets and your score is updated

Next on the list is gamepad support, and the ability to start with enter or space.

If the timing is wrong somehow or if you think the program should be different let me know.

Here is the link to the newer version which lets you enter startup frames and window frames.
http://www.zenchess.com/programming/hitconfirm0.11.zip