Jump to content
NHL'94 Forums

Mutant League Hockey - ROM Hack Project


Recommended Posts

8 hours ago, Bones Jackson said:

Hi everyone. I’m Brand new to this. I created an account just to talk about MLH. Is there any progress on the ROM hack? Thanks 

Welcome!  There hasn't been anything done in addition to the ROM hack.  I know @EagleXIII and @von Ozbourne have been discussing making a '24 MLH but I personally haven't had the motivation to get that updated as we would need a bunch of graphics work.  However, if anyone is good at pixel graphics and wants to participate in a MLH update, please feel free to jump in!!!

Right now we have 23 teams available to modify, I guess a hack to expand to 32 would be interesting adventure, however I remember that this would be quite tricky:

On 1/14/2021 at 9:56 AM, kingraph said:

This game is 2MB with no real extra room in the ROM.  It uses up a ton of space on graphics data with all the animations, as well as text (there's a lot of descriptions, talking, etc).  In theory I can expand to 4MB, but I know it gets tricky with the RAM space.  TBD if that's even necessary.  

But at the very least a 23 team update for a 2024 Mutant League Hockey ROM can be made for fun.  All of the information needed is above.  

  • Wow 1
Link to comment
Share on other sites

  • 1 month later...
On 1/16/2021 at 6:23 AM, kingraph said:
  • TBD Next 2 bytes all value either 0001, 0002, 0003, 0004, 0005, 0006


  • ? (goes from 2 - A)

I don’t know anything about the initial hacking process, and the more I think about it the more I think this is less likely, but is there a chance one of these are pointers to the “Check out my ratings they’re killer/excellent/etc” text on the team description screens?

I’m not sure how many variations there are to see if the numbers match up.


Edited by EagleXIII
  • Like 1
Link to comment
Share on other sites

Ok, I've looked into the player ratings and there's 9 different "Check out my ratings they're..." quotes which makes this –

On 1/16/2021 at 6:23 AM, kingraph said:

? (goes from 2 - A)

– look incredibly likely to define what the players say. Making it even more likely, is the fact that there is no exact science to what OVR rating the quote equates too, as there's crossovers between the tiers. So out of a maximum of 100 (excluding enforcers), a player with an 89 OVR could say their stats are Awesome or Extreme, whilst being rated a 79 - 83 OVR gets either an Extreme or Killer. Probably points to human error and the OVR being totalled up mentally (and probably in a rush) on the fly rather than being linked to an internal equation – but I know nothing about coding, and I'm not able to test it out in a HEX editor at the moment.

For anyone interested, the order the ratings tiers go in is:

  • Awesome
  • Extreme
  • Killer
  • Radical
  • Excellent
  • Adequate
  • Marginal
  • Mediocre
  • Lousy

From the 5-6 teams I checked out, the ratings generally seem to have been intended to have been grouped in 10s. But with the lowest OVR I've noticed being a 20, it's more like each step is worth 6-8. For modding you could just assign these however you like if there's no actual coded correlation to the stats, but it may also be of some interest for anyone playing the original.

Goalies have been rated on the same scale and, from what I can tell, enforcers haven't had their 2 special abilities counted towards their total.

So, what about the special characters like Bones Jackson, The Puke Bros, etc who have their own unique quotes in the Team Description section? Well there's 6 of them–

On 1/16/2021 at 6:23 AM, kingraph said:

TBD Next 2 bytes all value either 0001, 0002, 0003, 0004, 0005, 0006.

–and 6 of these, so it's gotta be, right? Well, that's what I was thinking until I remembered these same 6 players have their own unique quotes on the All Star teams too. So they all appear 3 times, you're looking at 18 quotes altogether. So unless there are other values going up to 0018, maybe those values aren't for that.

If it is, the question is do these unique quotes automatically override the 2-A value, or is there a 0000 or a 1 or a B value that denotes which group the quote gets picked from?

It does potentially mean there's less restrictions than first thought about modding. I've been working on the assumption the rosters have to conform on top of the original teams/players, but if the unique quotes can be applied to any player, that really opens things up. You just lose the unique player avatar to go along with it (unless the pointers for those are found too.)

If I get chance at some point I'll fire up a HEX editor and take a poke around.

Edited by EagleXIII
  • Thanks 1
  • Like 1
Link to comment
Share on other sites

On 1/16/2021 at 6:23 AM, kingraph said:

? (goes from 2 - A)

Not had much chance for a deeper dive, but can confirm this value determines the "check my rating" quote.

I've changed Bonelick's value for this stat from an A to a 2 and he's gone from saying his ratings are Awesome to Lousy.

All of this data is located at offset 330050 and the words are all jumbled around ready to be pieced together like a jigsaw. "I'm x and I play for the x" is potentially one piece. I was expecting the full "Behold my ratings, they're awesome" quotes to be one piece too, but it appears to be three. So you have "Forget" "Skip" "Ignore" "Behold" etc and then "My ratings, they're" next, followed by "Lousy" "Awesome" etc. 

I guess what this means is that, if you wanted, you could presumably make a quote like 

  • "I'm x and I play for the x"
  • "Behold"
  • "My ratings, they're"
  • "Lousy"

Where the pointers are for these, whether every player has his own set of pointers to mix/match these as you wish, or whether they are pre-created sets located elsewhere in the rom, I don't know yet.

There's also text for the line they play on and their position. Don't know yet if this has to be manually set for each player or if it gets linked automatically.

What's also interesting is there appear to be two unused quotes for how good/bad their ratings are. These are "Pathetic" and "Wretched" and I'm pretty sure I never saw them used in the final ROM. Changing the value to 1, and Bonelick now says his ratings are Wretched. Changing it to 0 and they're Pathetic.

My laptop ran out of battery mid-test, but I got halfway through testing this rating for Bonelick and it was following the order from the previous post. They're also listed in this order in the ROM, so it's probably safe to assume it's correct, but still worth a double check.

So values 0-A are:

  • 0 = Pathetic
  • 1 = Wretched
  • 2 = Lousy
  • 3 = Mediocre
  • 4 = Marginal
  • 5 = Adequate
  • 6 = Excellent
  • 7 = Radical
  • 8 = Killer
  • 9 = Extreme
  • A =Awesome

Need to test what happens putting in B-F.

Link to comment
Share on other sites

The above is correct, and if I’d bothered to pay attention, I also would have noticed this value is linked to the first part they say about their ratings, as per the table below.


“Don’t knock” appears twice in the code. “Forget” appears three times. So essentially there’s 22 things here in 11 combinations you could edit. The quotes are paired (somewhere) in the code to be 12 sections apart in the order they appear in the ROM.

This creates an odd situation for values B-F, which simply move onto the next piece of text. For the first quote this is the standalone phrase “my ratings, they’re” followed by the “Awesome!”, “Extreme!” etc, quote group. For the second quote this is the player positions.

So a value of B creates the quote:

“I’m Bonelick and I play starting center for the Black Hearts - my ratings, they’re my ratings, they’re center”.

A value of C :

“I’m Bonelick and I play starting center for the Black Hearts - pathetic! my ratings, they’re left wing

And so on. So stick to 0-A.

Here’s a couple edits I whipped up with the pairings and stand alone text:



Also, did you know these stats go up to 11?


Actually they go to 15. You can raise all the stats to a B-F like the NHL games, but doing so made Bonelick incapable of moving. Not sure how it affects each stat individually.

On 1/16/2021 at 6:23 AM, kingraph said:

TBD Next 2 bytes all value either 0001, 0002, 0003, 0004, 0005, 0006.

This doesn’t directly link to the unique character quotes as first suspected. I edited this and the other 0-A value for Bones Jackson (he has a 0004 and an A) to see if that altered his quote but it didn’t, so the pointers for that must be elsewhere. It also isn’t the coach quote about the players for the in-game Reserves screen (“Hits ‘em hard” “In over his head” etc). I tried changing the value to 1111 to see if anything obvious was different or if I could force the game to glitch or crash, but not encountered anything yet.

Edited by EagleXIII
  • Love 1
  • Thanks 1
Link to comment
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.

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.

  • Create New...