HOWTO: Disable one-timers (see post #12)


Recommended Posts

I want to disable one-timers completely. I think it works similarly as the timer for goalkeepers control. One-timers can be performed only in one situation, after making a pass with B button and immediately shooting with C button. If you are waiting too long after making a pass, one-timer can not be performed. That's why I think there is a value in the code telling the game how long it can wait to make one-timer shot and when the player is out of his time. I might be completely wrong and the game simply turns off the one-timer option when the receiving player receives a pass and disabling one-timers is much more difficult. But without trying I will never know.

My questions: Does anyone know

1. the way how to disable one-timers

or

2. the value(s) of one-timers timers (if they exist)? Or how to find them with Gens rerecording utility?

Edited by DominikJagr
Link to post
Share on other sites

I don't think there is a countdown timer for one-timers. If you miss a pass and the player chases the puck, he will still attempt a one-timer when he nears the puck no matter how long it's been. It's frustrating when you're trying to prevent an icing, but instead of a speed burst, your player freezes up to attempt a one-timer! The one-timer attempt goes away only after someone else touches the puck.

Good luck, I'm not sure how you would trace this effect so I can't add any insight there.

Link to post
Share on other sites

I've scored one timers off the wall after passing it off the wall, one timer passes that missed my guy, hit the goalie and bounced back to me to be one timed in, and other various combos.

To me, it didn't seem to have a "timer" but the guy who was being passed to is the only guy eligible to shoot the one timer. So, if the pass missed him and I switched to someone else, he is not eligible to shoot the one timer.

Also, if you are skating down the ice chasing a loose puck that you passed, there is a time where you have to be careful or your guy tries to one time it rather than retrieve the puck, and you end up w/ an icing call.

So, to ME, these examples show me numerous times where the "one time" option seemed to go well passed any timer you are looking for, and more to some specific code.

I mentally understand it to be if you switch to someone after you were the one who passed the puck, and the player you switched to is a) not in possession of the puck, and b ) in the offensive zone, and c) hit "C", the player will attempt to one time the puck.

I would look for where the game gives that check, and try to disable it. Not look for a timer, but I could be dead wrong here.

Edited by Brutus
Link to post
Share on other sites

Thank you for your input! You are completely right, I totally forgot those weird one-timer attempts you both are talking about. There are hardly any timers.

More likely there are one-timer on/off values for every single player on the ice.

Edited by DominikJagr
Link to post
Share on other sites

I'm looking into it anyway...

Funny thing I just found out:

If you make a pass that is directed at no one (say you pass it at the boards to bounce it back to yourself), it doesn't count as a pass attempt! it's only a pass attempt if you pass it at someone. That's kinda neat.

Of course, every time I try to pass it to someone in attempting to track down this hack, it passes to no one in particular and it doesn't record as a pass, so I can't track down the code that handles passing (which I suspect also sets/toggles the theoretical "one-timer bit" I mentioned in my last post)

Link to post
Share on other sites

Funny thing I just found out:

If you make a pass that is directed at no one (say you pass it at the boards to bounce it back to yourself), it doesn't count as a pass attempt! it's only a pass attempt if you pass it at someone. That's kinda neat.

That's cool!

Link to post
Share on other sites

Some progress... if the 16-bit value at $FFBF6C in RAM starts with 00, a guy is locked into doing a one-timer. Normally it starts with FF.

So, I should find where it sets that value, and work backwards from there to discover what it looks at to decide whether to set that value...

Now it's narrowed down to 1400 executed lines of code...

Link to post
Share on other sites

I haven't verified that this totally works, but give this a try:

Open a ROM in a hex editor, and go 0F6944

The value there is 67

Change it to 60

Don't use the classic/default ROM, because it has the checksum. Any other ROM should work.

Make sure it works for player 2?

And, yes, I was using a 2on2 ROM!

Link to post
Share on other sites

Your coding and analytical skills rock. You're genius!!!

So far I tried Regular Season matches (just couple of seconds) with various setups (auto/manual goalie, lines changing on, off, auto, different teams, periods length etc) and then play-off matches, always worked! In two players mode (head to head) it seems to work as well.

I am going to finish regular season match (5 mins) now, then complete play-off, regular season match again and then first match of play-off best of seven.

I use the original rom with simple weight bux fix and B0FC --> 4E75 (@000FFACB) checksum fix.

THANK YOU, THANK YOU, THANK YOU!!!

Edit: Works in all modes!

Edited by DominikJagr
Link to post
Share on other sites

Holy Sh**! what a great find. You guys think this can get the ball rolling on trying to add one timers to 93? or is that a whole other can of worms? I imagine it's easier to disable something than to add it in.

Link to post
Share on other sites

Holy Sh**! what a great find. You guys think this can get the ball rolling on trying to add one timers to 93? or is that a whole other can of worms? I imagine it's easier to disable something than to add it in.

Yeah no way it's getting added in :D. Although it'd be easier than adding fighting to '94. But still too hard to bother with.

Link to post
Share on other sites

NHL 94 with no one timers is more difficult version of NHL 92/NHLPA93. Ok, with no blood (can be added in TLP or Tile Molester) and no fights, reason why some people love these versions, for me the fights are extremely annoying.

I played couple of NHL 94 matches with one timers disabled, auto goalie and it was great fun!

Edited by DominikJagr
Link to post
Share on other sites

I would like to nerf accuracy for one-timers.. it should be hard to hit the net with a one-timer :). It's probably doable though would be a largeish patch like the weight bug + checking fix.

Link to post
Share on other sites

If you know now where the code for one-timers is located and how it approximately works it might not be that difficult from my theoretical ( :lol:) pov. Somewhere are the values for coordinates of the goal (as the aim of the puck), and the speed/strength of the shot maybe?

Your additional code would work like the original instruction (coordinates and strength) plus would be affected by the Shot Accuracy attribute in some way.

Players with 100 accuracy never miss=act like the original code.

Players with 85 accuracy=choose randomly (is it possible?) A, B or C. A=original code, B=coordinates of the goal +x (misses the left post, just few pixels), C=coordinates of the goal -x (misses the right post, just few pixels).

Players with 55 and 65 accuracy=choose randomly A, B, C, D or E. D=coordinates of the goal +xx (misses the left post completely), E=coordinates of the goal -xx (misses the right post completely).

For players with less accuracy there would be F and G option.

For players with high accuracy its 1/1 or 1/3 they score, for average players 1/5 and for garbage ones 1/7.

Or, to make things easier, make it universal for all the players. The code would randomly pick one option (A. original behaviour=player scores or B/C few pixels miss left/right or D/E plenty pixels miss left/right).

Link to post
Share on other sites

I would like to nerf accuracy for one-timers.. it should be hard to hit the net with a one-timer :). It's probably doable though would be a largeish patch like the weight bug + checking fix.

Do you think it would be possible to increase the accuracy for all of the shots in general. My biggest complaint is the poor shot accuracy in the gens version. It really sucks to have a stud defenseman like Macinnis who can't hit the net, or even keep it in the rink half of the time. I know you could bump the accuracy stats in Nose, but then you'd lose the differences between different players.

Link to post
Share on other sites

Or, to make things easier, make it universal for all the players. The code would randomly pick one option (A. original behaviour=player scores or B/C few pixels miss left/right or D/E plenty pixels miss left/right).

During a one-timer, I would just subtract some value from their accuracy, across the board. Splitting it up based on their skill, I don't think is necessary.

Do you think it would be possible to increase the accuracy for all of the shots in general.

Yes, I think so. I would just add some value to their accuracy, across the board :D. The game simply takes their base rating (0-6), multiplies it by some number (I think 5) and then uses that when calculating where the shot goes. So I'd just multiply it by a bigger number or add a constant on top.

Link to post
Share on other sites

During a one-timer, I would just subtract some value from their accuracy, across the board. Splitting it up based on their skill, I don't think is necessary.

Yes, I think so. I would just add some value to their accuracy, across the board :D. The game simply takes their base rating (0-6), multiplies it by some number (I think 5) and then uses that when calculating where the shot goes. So I'd just multiply it by a bigger number or add a constant on top.

Cool! How hard was it to learn how to do this stuff? I'd love to try to see if it is possible to bump up the probability of a shot being saved by the goalie. The poor goaltending and lousy shot accuracy are actually my two biggest complaints about the game. I'd love to make a rom with these aspects fixed.

Link to post
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.