smozoma Posted August 4, 2012 Report Posted August 4, 2012 Discussions on speed and agility ratings go here Speed is quite obvious. Agility appears to affect turning ability. Some other things it might affect are: acceleration/stopping. deking speed. some say ability to take a check. Quote
RedWingDevil Posted August 4, 2012 Report Posted August 4, 2012 I wonder if you can mix Weight along with Agility's supposed ability to resist body checks. It may be factorized as to how many checks are needed to take down a single guy. Sometimes it's just one, others two or three. Trying to connect with body checks in succession may not always work unless you hold down the player and trap him into a sandwich that'll make it easier to bring him down. I would say that acceleration comes into play a lot as much as twisting and turning does when it comes to Agility. There are many speedsters such as Mogilny, Bure, the Courtnalls and Modano that can blaze by just fine, even though they may come down with a Cold streak. However, some skaters can move by rather fast even though Speed isn't low. Wayne Gretzky, who's got 6/4 in Agility and Speed, still moves pretty fine as though he's Barishnikov on the ice and can catch up rather well. But then again, it is Wayne Gretzky. Quote
LA Robbie Posted August 4, 2012 Report Posted August 4, 2012 Agility appears to affect turning ability. Some other things it might affect are: acceleration/stopping. deking speed. some say ability to take a check. Thinking of Teemu, Courtnall & Mogilny I think ability to take a check is a definite! As long as it's not a head on hit (Or sometimes even if it is) those guys seem to play like they're much heavier than they are in the Blitz rom. Quote
trudatman Posted August 5, 2012 Report Posted August 5, 2012 agility allows you to turn away from a check faster and easier, for sure. lets you avoid the hit by turning away and taking it in the shoulder or back instead of the face. Quote
smozoma Posted August 5, 2012 Author Report Posted August 5, 2012 I too have noticed that turning away from a hit seems to reduce the chances of it succeeding. There is some "magic" to the checking that I was not able to decode when doing the weight bug fix, so I don't know all the factors in what in the end makes a player go down or stay up. But turning away does seem to work (or maybe we just notice it when it works and ignore it when it doesn't) Quote
Soitanen Posted June 30 Report Posted June 30 I decided to make some research of skating speed. I have assumed, that distance from center line to goal line is 25+64 feets, make special ROM for experiment and made teams with skaters speed from 0 to 6. Then make several attempts, and using frame-by-frame video editor calculated the results. Here they are: ╔══════════════╦═══════╗ ║ Speed rating ║ KMH ║ ╠══════════════╬═══════╣ ║ 0 ║ 31,84 ║ ║ 1 ║ 36,62 ║ ║ 2 ║ 40,13 ║ ║ 3 ║ 44,39 ║ ║ 4 ║ 48,03 ║ ║ 5 ║ 51,40 ║ ║ 6 ║ 54,25 ║ ╚══════════════╩═══════╝ Then I found Adam Catalyst's post about changing speed rating inside the ROM, at address 0x10D76 (16 values for different speed levels, values are squared). So I made specific ROM's, where all 16 levels were equal to level 0, 8, and 15. I found good correlation between value in table and speed, coefficient 180. Here is the table: ╔═════════════╦═══════════════════╦═══════════════╦═══════╗ ║ Speed level ║ Initial HEX value ║ SQRT of value ║ KMH ║ ╠═════════════╬═══════════════════╬═══════════════╬═══════╣ ║ 0 ║ 01CD 9410 ║ 5500 ║ 30,56 ║ ║ 1 ║ 01FC E3E1 ║ 5775 ║ 32,08 ║ ║ 2 ║ 022E 8284 ║ 6050 ║ 33,61 ║ ║ 3 ║ 0262 6FF9 ║ 6325 ║ 35,14 ║ ║ 4 ║ 0298 AC40 ║ 6600 ║ 36,67 ║ ║ 5 ║ 02D1 3759 ║ 6875 ║ 38,19 ║ ║ 6 ║ 030C 1144 ║ 7150 ║ 39,72 ║ ║ 7 ║ 0349 3A01 ║ 7425 ║ 41,25 ║ ║ 8 ║ 0388 B190 ║ 7700 ║ 42,78 ║ ║ 9 ║ 03CA 77F1 ║ 7975 ║ 44,31 ║ ║ 10 ║ 040E 8D24 ║ 8250 ║ 45,83 ║ ║ 11 ║ 0454 F129 ║ 8525 ║ 47,36 ║ ║ 12 ║ 049D A400 ║ 8800 ║ 48,89 ║ ║ 13 ║ 04E8 A5A9 ║ 9075 ║ 50,42 ║ ║ 14 ║ 0535 F624 ║ 9350 ║ 51,94 ║ ║ 15 ║ 0585 9571 ║ 9625 ║ 53,47 ║ ╚═════════════╩═══════════════════╩═══════════════╩═══════╝ And if I'm trying to find correlation between Speed rating and Speed level - it's hard, there is no direct link to some levels, and max speed level (at speed 6 of players) is even more than 15. ╔══════════════╦══════════════════════════╦═══════╦═════════════╗ ║ Speed rating ║ Speed value(SQRT of HEX) ║ KMH ║ Speed level ║ ╠══════════════╬══════════════════════════╬═══════╬═════════════╣ ║ 0 ║ 5732 ║ 31,84 ║ 0,84 ║ ║ 1 ║ 6592 ║ 36,62 ║ 3,97 ║ ║ 2 ║ 7224 ║ 40,13 ║ 6,27 ║ ║ 3 ║ 7990 ║ 44,39 ║ 9,06 ║ ║ 4 ║ 8645 ║ 48,03 ║ 11,44 ║ ║ 5 ║ 9252 ║ 51,40 ║ 13,64 ║ ║ 6 ║ 9766 ║ 54,25 ║ 15,51 ║ ╚══════════════╩══════════════════════════╩═══════╩═════════════╝ Anyway, players skate like rockets, I'll try do "real speed" mod, but possibly it will be not so fun to play. 1 Quote
chaos Posted July 1 Report Posted July 1 Nice experiment! Just for reference, in the 92 source code (92 uses a 0-15 value for attributes), max speed table is listed like this: MaxSpeed ;max speed values for each rating level 0-f dc.l ((0+20)*250)^2 dc.l ((1+20)*250)^2 dc.l ((2+20)*250)^2 dc.l ((3+20)*250)^2 dc.l ((4+20)*250)^2 dc.l ((5+20)*250)^2 dc.l ((6+20)*250)^2 dc.l ((7+20)*250)^2 dc.l ((8+20)*250)^2 dc.l ((9+20)*250)^2 dc.l ((10+20)*250)^2 dc.l ((11+20)*250)^2 dc.l ((12+20)*250)^2 dc.l ((13+20)*250)^2 dc.l ((14+20)*250)^2 dc.l ((15+20)*250)^2 Just to give you an idea on how it calculated the values. 94 values are a little different (they are the same as 93, which also uses a 0-15 value for attributes). The calculation is ((X + 20) *275)^2 where X = In game Spd value / 2. (Max is 30 for the in game values) In game Spd value = Spd attribute (0-6) * 5 + Hot/Cold Bonus (which could be anywhere from +3 to -4). For example, a 5 Spd rated player 5 * 5 = 25. Let's say they have a -3 Hot/Cold, so 25 + -3 = 22. 22 / 2 = 11. So the MaxSpeed would be ((11+20) * 275)^2 = 8525^2 =72,675,625 or $0454F129. But, there is a bug in the game where the game thinks the crowd meter is broken. So the in game Spd value gets a +2 bonus, which would change the 11 to 12. So now we have ((12+20) * 275)^2 = 8800^2 =77,440,000 or $049DA400. The player can go above this speed temporarily (for example when speed bursting, or even during normal skating a little bit), but they will not get any acceleration if they are above it, so they will decelerate until they are below the max speed and continue that cycle. So, my question for your tests is did you make the ROM a static ROM (no hot/cold)? Because that would affect your numbers as well Quote
Soitanen Posted July 1 Report Posted July 1 (edited) 8 hours ago, chaos said: So, my question for your tests is did you make the ROM a static ROM (no hot/cold)? Because that would affect your numbers as well Yeah, i forgot to say, that i used smozoma's utility to disable bonuses, but i forgot to check home/away bonuses, may be they affects too. Thank you for provided formulas. As I can understand, game can interpolate between values in lookup table, formula was used just to pre-calculate the values, not real time. But I can't understand, why need to store squared value, not the regular one. Edited July 1 by Soitanen Quote
Soitanen Posted July 1 Report Posted July 1 (edited) Played some games with real speed. First impression - they are very slow, but game start to be like strategy, not just run and rush, need to think a little bit. And need to tune speed burst value, now it's easy for defender without a puck to pickup fast forward. Welcome to test! nhl 94 real speed patch.zip Edited July 1 by Soitanen Quote
chaos Posted July 1 Report Posted July 1 14 hours ago, Soitanen said: Yeah, i forgot to say, that i used smozoma's utility to disable bonuses, but i forgot to check home/away bonuses, may be they affects too. Thank you for provided formulas. As I can understand, game can interpolate between values in lookup table, formula was used just to pre-calculate the values, not real time. But I can't understand, why need to store squared value, not the regular one. I looked into this more, I'll prob post some info on how acceleration and top speed works soon. In 94, where we have a 0-30 range for Speed, there are only 15 entries in the MaxSpeed table. So, when the value is divided by 2 (shifted right by 1 bit), it will check if the Speed value was odd. Since there's no way to handle remainders, it needs to do extra math. So if it finds the starting Speed value was odd, it will take the difference between the 2 steps, divide that by 2, and add it to the lower MaxSpeed entry (So that it is halfway between the 2), and use that for MaxSpeed. Why are the MaxSpeed values squared? Because it is adding the squares of the new X and Y velocities and using that number to compare to MaxSpeed. Also, should be noted, if the player has the puck and is joypad controlled, their velocity adjustment will be halved. So they will be slower to get up to speed than without the puck (does not affect CPU players carrying puck though) 1 1 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.