<- 1  -   of 75 ->
^^
vv
List results:
Search options:
Use \ before commas in usernames
HAPPENING
Edit history:
Aruki: 2014-08-16 02:55:47 am
Aruki: 2014-08-16 02:55:10 am
Aruki: 2014-08-16 02:53:24 am


Got morph ball and ball transition models working, so I've basically got the Light Suit in MP1 now! The one thing I haven't figured out how to change is the color of the morph ball inner glow, the trail, and the light it emits. I'm suspecting all of it is hardcoded in the DOL somewhere and I have not the slightest clue where to start looking in there to change it. (There's a few PART files that control some of those things, but I don't think they control the color.) Grenola/Skippy feel like taking a look?

I learned some interesting things about how the morph ball works. There's three morph ball models in the game that use different materials based on what suit you have: Regular, Spider, and Phazon. Regular is used for Power/Varia, Spider is used for Varia/Gravity, and Phazon gets its own separate model.

A little interesting note is that the Spider model actually has three material sets, even though only two suits use it. Gravity actually comes before Varia. This is the reason why you get the Gravity Suit morph ball when you get Spider with the Power Suit; since you have Spider it switches your morph ball model, but you don't have Varia/Gravity so it just defaults to the first material set. The second one is Varia, and the third... is sort of similar to Gravity, but it's definitely different and I have no idea what it is.

I wanted to put Dark Suit over the Gravity Suit but now this makes it kind of complicated because I can't change the Gravity morph ball without changing the Spider Varia morph ball, since they use the same model. Guess I'll have to figure something out there :P
I'm digging that disco morph ball.

I'm not sure how you'd go looking for the MB lighting in the DOL, it's like this monolithic 4 megabyte blob of spaghetti. I had a long look for the starting room position as well with no real luck so far, but with that at least you know where to start looking (the loader, which thanks to skippy we have a few named functions for).

I wish dolphin's debugger actually supported working memory watchpoints (if you compile it in debug mode it claims to have them, but they never seem to work reliably).
Edit history:
DJGrenola: 2014-08-16 06:43:47 am
Where are the morph ball models? I'm guessing they're all in one file. Maybe if I could find the model data in memory it might be possible to find pointers to it elsewhere in memory, and that might lead to something, I don't know.
Quote from Paraxade:


Fusion suit?
Edit history:
Aruki: 2014-08-16 12:29:14 pm
Aruki: 2014-08-16 12:28:45 pm
Aruki: 2014-08-16 12:25:12 pm
Nah, Fusion Suit doesn't look like that. The Fusion Suit actually has its own separate morph ball model which is used by all four suits. (So okay, correction - there's four morph ball models.)

Grenola: They're all in TestAnim.pak.

Quote:
9fe58f7a.ANCS SamusBallANCS
d61afb04.ANCS SamusFusionBallANCS
d7f7c8ec.ANCS SamusPhazonBallANCS
f37654a2.ANCS SamusSpiderBallANCS


Which point to these models:

Quote:
4e57ce08.CMDL - SamusBall
d3278eaf.CMDL - SamusFusionBall
1922ef7c.CMDL - SamusPhazonBall
223353fe.CMDL - SamusSpiderBall


The skeleton file is also b5fc6bc0.CINF - might help to look for that as well since the game may just bind the lights to the morph ball's root bone.

Also, some of the red specks on the morph ball in that picture might be from the Phazon Suit's glass, lol. The glass is actually a separate model from the regular morph ball and I didn't modify it so it's probably still there.

edit: Also, Grenola, if it helps, the morph ball inner glow particle is 1c5a78a7.PART, and it's referenced in the DOL using the name "BallInnerGlow". That file also calls 2d30c5c8.PART and db06f9f1.PART; each of those controls a separate layer of the glow and each calls 0c943b01.CMDL, the model for the glow. The model just has one material that just has a grey texture on it, so the color must be applied by either the DOL or the particle. I know those PART files control things like the material animations and the size of the glow, but since the color changes per suit and there aren't separate particle files for the different suits, I don't think it would make sense for the PART files to control it.
The unused morph ball could be from the beta Phazon Suit. It seems to have the same color scheme.
That ball is indeed from the beta suit.
If anyone wants to look at MAP* files I have templates available here:
https://github.com/Antidote/MetPrimeTools/tree/master/bt

I'll be adding a template for MAPU, which controls the world map in MP1 and 2 later tonight.
Edit history:
DJGrenola: 2014-08-16 09:45:28 pm
All right, here's version 0.2 of my GC ISO utility. This fixes the apploader truncation bug in 0.1, it will now unbuild ISOs as well as build them, and it has gained much more in the way of file alignment control. Hopefully now I can get on with something else.
Edit history:
Antidote: 2014-08-16 09:59:57 pm
Alright, uploaded the MAPU Template, please remember that all those templates are subject to change.

Edit:
Also, DCLN Seems to be the collision data for platforms, but since I was never able to fully figure out the format I'm not 100% sure about that.
Quote from SkippyJr:
DCLN CollidableOBBTreeGroup


From Skippy's list on page 4
Edit history:
Antidote: 2014-08-16 10:07:32 pm
Heh, didn't even see that.

it looked like it was an Oriented Bounding Box, but I wasn't sure.
Edit history:
Aruki: 2014-08-17 03:37:18 am
Aruki: 2014-08-17 03:36:22 am


Got Dark Suit swapped in over Varia Suit. If you guys wanna see it in action keep an eye out for a stream hopefully tomorrow. Gonna swap in Echoes Varia over the Power Suit, and Dark Grav Boost over Gravity Suit, then tweak a couple strings and good to go.

Aside from the morph ball stuff the only thing I'm not really happy with here is the ball transition model looks a bit awkward. I'm just porting the skins from Echoes, and Echoes has a much more complicated ball transition rig than Prime does, so it doesn't translate completely perfectly and there's a couple little issues there.

Also I hate that we don't have enough formats cracked yet that I can't just do a sweep and automatically generate dependency lists. Having to edit the file lists every time to add new textures sucks <_<
Edit history:
Antidote: 2014-08-17 04:45:13 am
I have CSKR partially documented, so that should help somewhat, really need to figure out that darn PAS4 so we can really get started on cracking ANIM (Because manually associating rigs is a PITA):<
https://github.com/Antidote/MetPrimeTools/blob/master/bt/CSKRTemplate.bt
Edit history:
Antidote: 2014-08-17 05:44:25 am
Antidote: 2014-08-17 05:42:27 am
Quote from DJGrenola:
Code:
  <KERNING TABLE INDEX:32> -- index into the kerning table at the bottom of the file.
                              for many characters this seems to be one beyond the end of the
                              kerning table, which presumably means there is no kerning
                              adjustment for this character.
}

This is incorrect from what I can tell,  30707C0C.FONT (The japanese font derived from Arial Unicode MS), has no table following the character table. And all of the entries have a 0 value at that offset. It's probably 1 indexed (for whatever reason)

EDIT:
AH nvm, Whats going on is:
Code:
if (kernIndex == kernInfoCount)
   -character doesn't have kerning info-


So yeah, you're right.

Though it's kinda weird, because characters in Deface that you would think should have kerning info doesn't o.o
Perhaps that unknown data has basic kerning info? Though I'm still inclined to agree with your initial thoughts.
Edit history:
DJGrenola: 2014-08-17 06:50:29 am
DJGrenola: 2014-08-17 06:40:50 am
DJGrenola: 2014-08-17 06:40:37 am
one reason I thought the kerning table was strange was because there are so many zero values in it. I'm not sure why you'd waste space in a table just setting a value to 0 when I assumed that was the default value anyway. Perhaps some of the characters had their kerning adjusted and then set back to 0 later, and whatever tool retro used for this had a bug that didn't delete these zero values from the kerning table but kept them instead. Or maybe 0 isn't the default value at all. Or maybe it isn't a kerning table at all and I'm wrong.

I never tried adjusting the kerning table values so it should be pretty simple just to tweak them and find out.
I'll take a look tomorrow.
In other news: MP3 (v5) uses the MP2 format with only 1 obvious difference, guess what it is.
I'm going to go with 64 bit texture ID
Ding ding ding, yep. That's the ONLY difference.
Edit history:
Aruki: 2014-08-17 10:35:31 am
Aruki: 2014-08-17 10:29:55 am
Aruki: 2014-08-17 10:28:09 am
Aruki: 2014-08-17 10:27:49 am
Aruki: 2014-08-17 10:26:10 am
Aruki: 2014-08-17 10:23:40 am
Quote from Antidote:
I have CSKR partially documented, so that should help somewhat, really need to figure out that darn PAS4 so we can really get started on cracking ANIM (Because manually associating rigs is a PITA):<
https://github.com/Antidote/MetPrimeTools/blob/master/bt/CSKRTemplate.bt


I already have CSKR fully cracked.

Quote:
// CSKR - skin bindings

struct cskr {
  u32 weight_count;
 
  struct vertex_weight {
    u32 bone_count;
    struct bone_weight {
      u32 bone_ID;
      float weight;
    };
    bone_weight weights[bone_count];
    u32 vertex_count;
  };
  vertex_weight weight_table[weight_count];

  // The last part is really weird and I'm not sure why it's formatted this way.
  u32 vertex_position_count; // This is sometimes preceded by 0xFFFFFFFF.
  float vertex_position_array; // Only present if the vertex position count is not preceded by 0xFFFFFFFF. It is literally the exact same values as the model file. I don't know why it's copied here.
  u32 vertex_normal_count; // Again, sometimes preceded by 0xFFFFFFFF.
  float vertex_normal_array; // And again, only present if that 0xFFFFFFFF isn't there, and it's the exact same values as the model file.
};


Somewhat messy notes, sorry.

Converting the rigs from Prime 2 to 1 is just really a matter of swapping the bone IDs to match the Prime 1 skeleton. Prime 2's format is identical up until the end of the weight table; the ending is different, but the ending is really easy to just rewrite from scratch using the vertex count (which can be calculated from the CSKR file, so you don't even need to touch the model).
Edit history:
Aruki: 2014-08-17 09:24:33 pm
Aruki: 2014-08-17 09:24:11 pm
Got everything set up and I'm starting my stream now, so if anyone happens to be around interested in watching: http://www.twitch.tv/parax0

EDIT: Stream's over. If you missed it, the VODs are on my channel here, although I recommend you skip to the later ones because I got a ridiculous seed where I didn't find any suit upgrades until a good 4-5 hours into the run. Seriously. I'm prolly gonna see about putting together a YouTube video to show it off later, not sure I'll do much more with it unless someone figures out how to change the morph ball colors though. Probably not releasing because it is a gigantic pain in the ass to set up, plus I'm not sure if I'm allowed to here since it's a bunch of assets from Echoes.
Edit history:
Antidote: 2014-08-18 04:31:11 am
Antidote: 2014-08-18 04:30:56 am
I was messing around in blender and tinkering with the blending options when I found this little gem:

Looks 1:1 against ingame.
How it works:
Image Sampling:
Uncheck "use" under Alpha
Influence:
Set texture to affect Emission as well as color
Set blending to Lighten
Set color to either black or white for best results.

Better Lighting:
Edit history:
Aruki: 2014-08-21 12:11:00 am
Soo I figure I'll release my STRG editor. This is what I've been using to make custom strings for various stuff, like the Echoes randomizer and the Echoes suits mod (changing the "item acquired" text). It fully supports both reading and writing for both Prime 1 and Echoes, in all seven languages supported by the games.




The early version I showed of this with the crappy layout formatted the text according to how it'd look ingame (like font colors)... this one doesn't. Would like to implement some sort of format previewing like that eventually but it wasn't really important - you can still format fine by entering the format tags manually.

I was going to add a couple things - I wanted to make the UI a bit prettier, especially the up/down arrows, with some icons and add a warning if you try to quit with unsaved changes... and then my hard drive died and I lost all the source code. <_< Was the only code I didn't have backed up. Soooo suffice it to say this won't be seeing any updates until I end up doing a rewrite. That being said, all the functionality is there and it's stable, so that extra stuff shouldn't really matter too much.

Download, or grab it from the attachment
attachment:
Hello everyone.

I literally just registered here (pardon my intrusion), but I've been looking into getting into the guts of MP 1 and 2 for a couple months now. I've gotten all the programs that I saw mentioned (Mpakdump, mdecomp, etc., though I'm sure I could be missing some), and I've managed to get the programs for the models, sounds, and textures. After seeing all the work done here, I'm hoping I'm not too late (or waved away) from the bandwagon.

The main reason I have nothing to show is because of a (EXTREMELY noobish) problem I'm at, and one that I couldn't find answers for; I can't figure out how to extract the files. For example, in mpakdump: "Usage: <bah bah bah> Press Enter to Exit").

I think I got what I need to enter (the .pak directory, in my case C:\MP2\audiogrp.pak), but I'm not sure on how to enter the command if enter kills the program. Confused

I don't mean to be a nuisance, but it would be much appreciated if anyone could give me a bit of help on extracting the files/using the programs properly/stop being a total noob. I would love to post whatever I make from everything here. Would have tried the other sites, but this one is the only one that seems to be alive.

Thanks in advance. ^.^