You need a dissasembler for ASM hacking (Renegade or LemAsm The second is easier and not so advanced) And you need time. Not recommended untill you know Mips assembly since that is the language you will be using. Too get it too show up on his face, piece of cake Just follow this tutorial:
find the majoras mask in the skullkid model and copy everything from the start to the very end of the mask since that is the actual data. Then, Open up MM Links file and go to the offset of whatever mask you want. PASTE INSERT (not PASTE WRITE) the data you copied from the skullkid file at then end. You are finished inserting the data into MM link so that way if you go into UoT and you open up the ZOBJ, you will find your custom mask as the very last display list.
It is time that we replaced one of the already existing masks with the majoras mask. open up UoT and load the Zobj find whatever mask you wanna change and look at that offset, now go too it in rom and look eight bytes before that you should see an E7 command in one of those eight bytes, if you don't then look eight more bytes. What we are going to be modifying is the data right after that 8th byte.
We are going to be placing a DE command to append display lists to that one. Here is the format for the DE command we will be placing: DE 00 00 00 BB XX XX XX Where Bank is 06 XX XX XX = Display List to attach (where you put the majoras mask)
Next, we want to place a DF command (marks the end of a display list) right after that last DE command so that way the original mask doesn't load up along with your model and the Majoras mask. Here is how we would write a DF command:
DF 00 00 00 00 00 00 00
Here is an example of how the start of the display list to the Majoras mask should look like after you are done modifying it.
[code]E7 00 00 00 00 00 00 00 DE 00 00 00 06 xx xx xx DF 00 00 00 00 00 00 00
If it looks exactly like that then you're doing it right. Alright, we're done modifying the MM link ZOBJ; you can save. BE SURE TO SAVE IT AS SOMETHING ELSE AND THAT YOU CAN REMEMBER LIKE "Mask_Test.zobj
Okay, open up the full ROM in the hex editor. Copy your entire modified ZOBJ and PASTE WRITE it at free space in the ROM (extend (Extend it the size of the zobj Also it says it's for the debug rom but it works for any rom, I just used it in the example) it if you don't know where else) and write down it's ending offset because we need it for the next step. Scroll all the way to the very beginning of the ROM now (I get an error when trying to search sometimes if I don't do this). Next, you will want to search for MM link's original offsets. (You will have too find them yourself.)
We want to change that offset to whatever the start and end offsets of you modified ZOBJ is.
Save your ROM and test out your new Mask!!
You have done everything that is absolutely necessary to make custom Masks, BUT here is how to really make it look LEGIT once you get the hang of it
* Correct the rotational values on you model if it needs it * Replace the low-poly version of the original item with your model (dunno if masks have low poly versions) * Replace the original icon texture with one of you own using ZLE2 (dunno if it works for MM) * Replace the GI object with your model * Make you item unique by adding effects to it (Requires ASM in this case)
Note I take no credit for what's in the tutorial, I merely modified Jason777's tutorial too work for this purpose, also some of this is theoretical since I do not know as much about MM as about OoT