Jump to content

SoD's Mods


SoulofDeity
 Share

Recommended Posts

Here, I'll post pics and vids of my mods. I've done more, I just don't keep records of them all.Beta Jumpslash and frontfllip for the debug rom

Unfinished play-as wolfos for the debug rom

Custom map for debug rom, dubbed "the grotto"

Iron Knuckle Axe ported over Megaton Hammer for 1.0 (U)

Beta Jumpslash and always flip when jumping for MM (U)

Twilight Realm from TP ported over Room 117 in debug rom

I've already decided that my next mod will be an actor mod, though I'm not entirely sure what it'll be yet.

  • Like 3
Link to comment
Share on other sites

Sup people. I was ripping special effects from the game for an idea I had, and wanted to make a note of something for people who want to do texture mods.

 

Sometimes, you might not be able to find the textures for certain effects using Rice's plugin (such as the fire effect). This is because rather than having a texture for each frame or just animating it, they are actually using 2 textures. The background texture has all the detail and its offsets are animated to make it move. The foreground texture is used as a mask for a particular shape.

 

For example, the textures for the fire animation are:

Posted ImagePosted Image

 

If you decrement the left texture's y-offset by 8 each frame and use the right texture as a mask, you get the full effect:

Posted Image

 

The color of the flame is set using an F3DZEX drawing instruction like FA (set primitive color).

Another example where this effect is used is in the title. Using this knowledge, you can modify the burning effect of the title to your own logos.

 

For example, here's the full mask for the original logo. It's comprised of 9 64x64 textures:

Posted Image

 

Here's my logo:

Posted Image

 

So, I make a 192x192 mask:

Posted Image

 

Then, I cut my mask into 64x64 tiles, use my utilities to convert the old mask rips to raw I4 data, find them in the rom, and replace them with my new mask. The result:

 

 

Before:

Posted Image

 

After:

Posted Image

 

 

I also posted a video of this mod on my youtube channel.

 

 

  • Like 4
Link to comment
Share on other sites

  • 4 weeks later...

Very cool! I especially love the Iron Knuckle Axe swap, however for some reason I can't see the bathtub video... oh well? I don't know why it's not showing...

 

EDIT: Nevermind I saw the video... the hot tub scene could really use some work, but it's pretty cool example of how the maps work.

Link to comment
Share on other sites

  • 5 months later...

it's not really a mod, but I wrote a small program to create combiner instructions in case anyone needs it

#include <stdio.h>/* Color combiner constants: */#define G_CCMUX_COMBINED	0#define G_CCMUX_TEXEL0		1#define G_CCMUX_TEXEL1		2#define G_CCMUX_PRIMITIVE	3#define G_CCMUX_SHADE		4#define G_CCMUX_ENVIRONMENT	5#define G_CCMUX_CENTER		6#define G_CCMUX_SCALE		6#define G_CCMUX_COMBINED_ALPHA	7#define G_CCMUX_TEXEL0_ALPHA	8#define G_CCMUX_TEXEL1_ALPHA	9#define G_CCMUX_PRIMITIVE_ALPHA	10#define G_CCMUX_SHADE_ALPHA	11#define G_CCMUX_ENV_ALPHA	12#define G_CCMUX_LOD_FRACTION	13#define G_CCMUX_PRIM_LOD_FRAC	14#define G_CCMUX_NOISE		7#define G_CCMUX_K4		7#define G_CCMUX_K5		15#define G_CCMUX_1		6#define G_CCMUX_0		31/* Alpha combiner constants: */#define G_ACMUX_COMBINED	0#define G_ACMUX_TEXEL0		1#define G_ACMUX_TEXEL1		2#define G_ACMUX_PRIMITIVE	3#define G_ACMUX_SHADE		4#define G_ACMUX_ENVIRONMENT	5#define G_ACMUX_LOD_FRACTION	0#define G_ACMUX_PRIM_LOD_FRAC	6#define G_ACMUX_1		6#define G_ACMUX_0		7#define	SetCombine(pkt, a0, b0, c0, d0, Aa0, Ab0, Ac0, Ad0, a1, b1, c1, d1, Aa1, Ab1, Ac1, Ad1) {    pkt[0] = 0xFC000000 |							            (((G_CCMUX_##a0  & ((0x01 << 4) - 1)) << 20) |			             ((G_CCMUX_##c0  & ((0x01 << 5) - 1)) << 15) |			             ((G_ACMUX_##Aa0 & ((0x01 << 3) - 1)) << 12) |			             ((G_ACMUX_##Ac0 & ((0x01 << 3) - 1)) <<  9) |			             ((G_CCMUX_##a1  & ((0x01 << 4) - 1)) <<  5) |			             ((G_CCMUX_##c1  & ((0x01 << 4) - 1)))) & ((0x01 << 24) - 1);	   pkt[1] = ((G_CCMUX_##b0  & ((0x01 << 4) - 1)) << 28) |			            ((G_CCMUX_##d0  & ((0x01 << 3) - 1)) << 15) |			            ((G_ACMUX_##Ab0 & ((0x01 << 3) - 1)) << 12) |			            ((G_ACMUX_##Ad0 & ((0x01 << 3) - 1)) <<  9) |			            ((G_CCMUX_##b1  & ((0x01 << 4) - 1)) << 24) |			            ((G_ACMUX_##Aa1 & ((0x01 << 3) - 1)) << 21) |			            ((G_ACMUX_##Ac1 & ((0x01 << 3) - 1)) << 18) |			            ((G_ACMUX_##d1  & ((0x01 << 3) - 1)) <<  6) |			            ((G_ACMUX_##Ab1 & ((0x01 << 3) - 1)) <<  3) |			            ((G_ACMUX_##Ad1 & ((0x01 << 3) - 1)));				}int main(int argc, char *argv[]) {   unsigned int pkt[2];   SetCombine(pkt, TEXEL0, 0, PRIMITIVE, 0,	// color combine mode 0                   1, TEXEL0, PRIMITIVE, 0,	// alpha combine mode 0                   TEXEL0, 0, PRIMITIVE, 0,	// color combine mode 1                   1, TEXEL0, PRIMITIVE, 0);	// alpha combine mode 1   printf("%08X%08Xn", pkt[0], pkt[1]);   return 0;}
Link to comment
Share on other sites

Love the bow. Have no idea what combiners are for though :)

Thanks :) I did run into a few roadblocks tho...the texture for the center of the bow was too big, so I had to scale it down and create my own CI8 texture to replace it, and the bow in OoT is a bit longer than the one in MM and the bowstring didn't line up, so I had to scale it up on the x axis by 50%.

 

The combiner is what blends colors and transparency to determine what shows up on the screen. The equation used is

(a -  * c + d

 

The $FC SETCOMBINE instruction tells what a, b, c, and d are; eg. texel0 (texture 0 color), shade (shading), environment, or primitive color.

 

Anyway, next I'm gonna port the hookshot

Link to comment
Share on other sites

it looked a bit awkward only being scaled on the x axis, so I scaled everything up and it looks a lot better.

 

Posted Image

 

kinda gave up on putting the string in the right place, no matter how far I move it, the game moves it back, and if I move the bow itself link's hand becomes out of place. it's not that much of a problem tho. I'll need to redo the icons later

Link to comment
Share on other sites

On a semi-related note, I once enabled the bow for both child and adult Link to use and I had used the MM Hero Bow for child Link's model: http://www.the-gcn.com/topic/1600-young-link-using-the-bow/

 

I like your version better, though, as you went to far as to position the bow-string, arrow, and removed child Link's hand.

thanks :)

 

I was actually thinking about doing the same thing and tossing out the hookshot and boomerang for custom weapons (if possible). Didn't even know anyone had done it before, lol

Link to comment
Share on other sites

 

 

On a semi-related note, I once enabled the bow for both child and adult Link to use and I had used the MM Hero Bow for child Link's model: http://www.the-gcn.com/topic/1600-young-link-using-the-bow/

 

I like your version better, though, as you went to far as to position the bow-string, arrow, and removed child Link's hand.

thanks :)

 

I was actually thinking about doing the same thing and tossing out the hookshot and boomerang for custom weapons (if possible). Didn't even know anyone had done it before, lol

 

You can use, clean up, or look at the source of the final assembly hacks as a reference (it can be found as one of the last posts in the thread by me) if you want. I imagine you'll probably write something from scratch though :P Enabling the hookshot for both child and adult Link would require much of the same code I used in display list part my hack. You would essentially keep the "display.s" assembly hack (but gear it towards the hookshot), but have to write a new hack for loading the hookshot... so "arrow.s" would be useless to you.
Link to comment
Share on other sites

here's my latest wip

 

Posted Image

 

 

icon:

Posted Image

 

 

I'm porting it over the ocarina (obviously) and am going to take advantage of the grotto drop flag I found to make it functional.

 

ps. don't worry, I plan on redoing the strings

 

 

 

EDIT:

 

fixed the strings and textured the feathers

 

Posted Image

 

now I just need to get this puppy in game...

 

 

 

EDIT #2:

 

The uv-mapping on the base looked a bit messy, so I cleaned it up a bit. Still not perfect, but it looks a little better

 

Posted Image

  • Like 3
Link to comment
Share on other sites

I just need to ask... are you going to change the animation for Link holding the harp? Or just leave it? I'm sure you're aware it would look weird if Link looked like he was licking the harp, but I'm just wondering if you have a plan to change the way Link holds it?

Link to comment
Share on other sites

 Share

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.