AdamCatalyst Posted April 27, 2023 Report Share Posted April 27, 2023 (edited) How-to: Change the Colour Palette for the Puck & more (NHL '94) On 4/26/2023 at 10:49 PM, von Ozbourne said: …there was an urban legend that the puck's palette could be changed to match the team colours, and thus change with the home team. But the concrete evidence and methodology have been either lost to time with Damascus steel or that lighthouse near Alexandria. At our current stage, it also can't be ruled out that the proof of concept was never actualized. The Journey I couldn't stop thinking about this. I obsessed over the code for a few hours and eventually got too frustrated, so I went for a short walk. When I sat back down I looked at my notes again, and it hit me… Assume, for arguments sake, that the puck tiles are referenced using a 16 column grid, and similar syntax to the other major tile groups. Seeing as the puck tiles are amidst the sprite tiles, let's assume that the very first sprite tile is x000. Counting from this registration point, that would mean that the code that references the puck tiles, would likely be specified as "02F5" to "02FC." Doing a search for "02F5" yields only two results, and the first result is followed by "02F6," six-bytes later, and then "02F7" six-bytes, after that, etc. The next two bytes after these potential tile references are either "0000" or "0800". If you don't know what this means, read this post to understand. There's more here than just the puck. I believe that using this logic to navigate this section of code has untapped potential to modify some previously out of reach elements. So far, the quick tests I've done have seemed to support that notion. I make no claims that this is complete, but I have the elusive "Home Team Colour" puck seemingly working right now. I'll leave the rest up to whoever can take on the next leg of the journey. I'm done my quest for now. Home Team Coloured Puck 0xA1670 00 to 40 0xA1678 00 to 40 0xA1680 00 to 40 0xA1688 08 to 48 0xA1690 00 to 40 0xA1698 00 to 40 0xA16A0 08 to 48 0xA16A8 08 to 48 0xA16B0 08 to 48 0xA16B8 08 to 48 Resources If you don't understand what this code is doing, check out this post which will teach you the basics, and so much more. Edited December 27, 2023 by AdamCatalyst standardizing naming and formatting. 3 1 Quote Link to comment Share on other sites More sharing options...
Jkline3 Posted April 28, 2023 Report Share Posted April 28, 2023 You are my hero. I have spent countless hours searching, convinced that I had finally found the trail only to ultimately be disappointed. That feeling when you look back at your notes and realize that you were *this* close... 1 Quote Link to comment Share on other sites More sharing options...
Jkline3 Posted April 28, 2023 Report Share Posted April 28, 2023 Does it work? Can confirm... You can also use the rink palette by changing 00/08 to 20/28 to get an old school NHL puck: 1 Quote Link to comment Share on other sites More sharing options...
von Ozbourne Posted April 28, 2023 Report Share Posted April 28, 2023 (edited) Had to delay satisfaction until after putting kids to bed, but got to try this out and it is a wonderful thing. Seems pattern recognition made me test A1668 as well. This changes the shadow. Not sure how useful that will be... I do have some exciting news though on the '93 front though. Using your offsets to find a few bites to look for, I noticed that the hex code follows the same pattern. So if you are modding NHLPA'93 and go to offsets 72AC4, 72ACC, 72AD4, 72ADC, 72AE4, 72AEC, 72AF4, 72AFC, 72B04 & 72B0C, [72ABC is the shadow] and change the first digits of the 0000 or 0800s to 2 [crowd colours], 4 [home colours] or 6 [away colours] you get the same results as outlined above. It's pretty. Edited April 28, 2023 by von Ozbourne 1 2 Quote Link to comment Share on other sites More sharing options...
AdamCatalyst Posted April 28, 2023 Author Report Share Posted April 28, 2023 (edited) So knowing now that the code right before is for the player indicators, and before and after is the player sprites, I assume it should be possible to chase down the cup, and change its colour palette too. Heck we could change it to use the other teams uniform palette, and redesign the sprite to make the championship reward the opportunity to do a pairs figure skating lift with a member of the opposite team. Edited April 28, 2023 by AdamCatalyst 3 Quote Link to comment Share on other sites More sharing options...
von Ozbourne Posted April 28, 2023 Report Share Posted April 28, 2023 1 hour ago, AdamCatalyst said: So knowing now that the code right before is for the player indicators, and before and after is the player sprites, I assume it should be possible to chase down the cup, and change its colour palette too. Heck we could change it to use the other teams uniform palette, and redesign the sprite to make the championship reward the opportunity to do a pairs figure skating lift with a member of the opposite team. Found it interesting that "...chase down the cup,..." immediately made me think about how "Palette #2 does have two yellow/golds and a mid-tone brown." Then I skipped to "...lift with a member of the opposite team." and didn't think "figure skating", as much as "Ultimate Warrior gorilla press your opponent before you body slam them to the ice and flex your 24 14" pythons in victory". Might have to spend some time unpacking that later... 1 1 Quote Link to comment Share on other sites More sharing options...
AdamCatalyst Posted April 28, 2023 Author Report Share Posted April 28, 2023 1 minute ago, von Ozbourne said: …Then I skipped to "...lift with a member of the opposite team." and didn't think "figure skating", as much as "Ultimate Warrior gorilla press your opponent before you body slam them to the ice and flex your 24 14" pythons in victory". Might have to spend some time unpacking that later... It's like a Rorschach test. We should be taking these posts directly to our Psychiatrists. 1 Quote Link to comment Share on other sites More sharing options...
AdamCatalyst Posted April 28, 2023 Author Report Share Posted April 28, 2023 12 hours ago, Jkline3 said: That feeling when you look back at your notes and realize that you were *this* close... It wasn't until after I made this forum thread, that I realized the net colour palettes identified by @clockwise in 2010 start at 0xA16B8, while the puck palettes end at 0x0A16C2, just 8 bytes away. 1 Quote Link to comment Share on other sites More sharing options...
Jkline3 Posted April 28, 2023 Report Share Posted April 28, 2023 2 hours ago, AdamCatalyst said: It wasn't until after I made this forum thread, that I realized the net colour palettes identified by @clockwise in 2010 start at 0xA16B8, while the puck palettes end at 0x0A16C2, just 8 bytes away. That was the path that I was on (considering their tiles are neighbors so why not hex, no?) but sadly something just didn't work out... Oh well, learned a lot along the way and we've got our solution now. Thanks again for digging this one out! I guess the ref popup window has become the new holy grail @von Ozbourne 1 Quote Link to comment Share on other sites More sharing options...
von Ozbourne Posted April 29, 2023 Report Share Posted April 29, 2023 8 hours ago, Jkline3 said: I guess the ref popup window has become the new holy grail If that compressed animated mess can be pulled out and given a cream sweater or orange pullover or parka and a bell, that would be pretty amazing. Quote Link to comment Share on other sites More sharing options...
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.