I found a very interesting code that I'd like to share. I converted it to a ROM code to make it easy to apply to your NHL 94 Genesis roms. What this code does is that it adjusts the physical barrier that exists between the puck and the boards all the way around the rink. So if you apply this code, when the puck hits the boards, now it'll actually appear to hit the boards flush instead of bouncing off that invisible barrier. This is particularly noticeable when the puck collides with the side boards, as the puck just didn't come close to actually hitting the yellow line. The collision just wasn't accurate, pucks were bouncing off the edge of that grey shadow of the side board which is several pixels off the yellow line. Now with this code adjustment, pucks will actually hit the side board in line with the artwork and it looks fantastic. I hope you test this so you can experience it for yourself. It may seem like a small detail, but it greatly enhances NHL 94 Genesis visually and it affects gameplay, you'll see.
Without this code, when the puck hit or wrapped around the boards behind each goal. . . well, at the top of the rink, it looked OK but the puck didn't appear to fully collide with the yellow line. And when the puck hit the bottom edge of the rink, it clearly was hitting an invisible barrier well off the board.
But now, with this code, all those invisible barriers are gone and the puck will actually appear to hit the board, which gives the puck more space to travel along the ice before colliding with the barrier. So with this extra space for the puck to travel, you get new angles when you send the puck off the boards. Note that this code doesn't affect the collision of the players with the boards, only the collision between the puck and the boards.
This code essentially allows you to have a bigger rink as far as the puck is concerned. Finding this code has me now looking for a code to adjust the barrier between the players and the boards, which I haven't been able to locate yet. But as it stands, if we were to edit the artwork of the boards to move them back a few pixels, we now have a code that would allow us to adjust the physical barrier of the puck to be inline with that.
To apply this, you need to hex edit a rom at the following offsets :
Change 017012:0005 to 017012:0000
Change 017014:0005 to 017014:0000
The default value of 05 is what causes the puck to bounce off that invisible barrier when it gets close to the boards. Lowering the value to 00, well it gives the puck more space to travel before colliding with the barrier. Please provide your feedback if you test this for yourself.
Bonus :
In case you were wondering, you can adjust this code further and increase the barrier of the puck and the boards to go well beyond the artwork of the boards. If you want the puck to travel even farther like into the crowd before hitting the barrier, here's what you do :
Change 017012:0000 to 017012:FFxx
Change 017014:0000 to 017014:FFxx
with xx starting with FF and reducing the value further to allow the puck to travel farther beyond the boards before hitting the barrier.
So like 017012:FFFC and 017014:FFFC allows the puck to travel further before hitting the boards, 017012:FFF8 / 017014:FFF8 allows the puck to travel even further, and by 017012:FFF0 and 017014:FFF0 the puck travels all the way to the feet of the spectators before colliding with the barrier, and the puck is barely still reachable by players. If you go beyond that like into FFEx the puck is hitting the spectators and at that point is too far away for players to retrieve the puck at that point, due to the player / boards barrier.
With normal artwork it's best to just leave the codes at 0000 but the fact that you can adjust it further is very encouraging. In finding this code, it really has me thinking about editing some of the artwork to make the NHL 94 Genesis rink bigger.