Let's get started! First off, Collision Data! Collision Data is the interaction between fighters and stages. By the end of this part of the tutorial you should understand how to create, remove, & modify Collision Data.
Begin by opening "STGPEACHCASTLE64_REDUX.pac" with BrawlBox. You'll see 3 other PAC files inside, the items that say "ARC". The one we want is #2 so click the "+" sign to display its files. You'll see the following:
- Several BRRES files labeled "ModelData" with their own numbers
- 3 COLL files labeled "MiscData[2]"
- 2 "STPM" files
- More "MiscData"
- BRRES files "TextureData[0]" & "TextureData[1]"
- BRRES file "SceneData[0]"
- PAC (ARC) file "ItmMelee030Gen"
- MSBIN (MSG) file "MiscData[0]"
We're going to ignore most of it for now and leave that for another tutorial. What's important right now are the COLL files, which is the Collision data. Start off by right-clicking the first COLL file and selecting "Preview" (or left-clicking and hotkeying Ctrl+P).
Before we do anything else, you should know how to modify your view in the preview. The right-mouse button grabs the models as a whole, hold and drag to move the models in the direction the mouse moves. Scroll up/down to zoom in/out, whether that be with a scroll wheel, the edge on a touch pad, or some other method. The little bar in the upper-right corner is NOT a zoom adjuster, it's a model rotater. Use this to get a different look at the models, necessary when checking textures (Part 2). That's all! You should have no problem seeing anything now! And as always, the left-mouse button is for selecting things.
Back to what you're looking at in the preview box; you'll see what all the models look like put together as well as some blue boxes around the models and some data on the left. The only data we care about right now are the check boxes next to each "Collision Object".
Make sure that whenever you do ANYTHING, only one of these check boxes are checked!!!
The blue boxes are collision boxes, they are the actual terrain that players fight on. Hackers create and position these boxes around the models so it looks like the players are actually on the models.
Each "box" has two vertices that position them. Technically each box is a plane between 2 vertices which is given an identity and characteristics to interact with players. When a box is selected, this information can be found in the lower left-hand corner.
As shown above, the selected box becomes purple while connected boxes become pink. This is because you've actually selected
two vertices! When a single vertex is selected, connected boxes still become pink, but the information displayed is different.
More on what this means later. Back to boxes!
For now ignore "Material", "Characters", and "Items", what we're looking at is "Types" and "Flags". Type is the identity of the box, you can select from "None", "Floor", "Ceiling", "RightWall", or "LeftWall". What they mean:
- None ~ Players can't touch it
- Floor ~ Players can stand on it
- Ceiling ~ Players can't rise though it
- Left/RightWall ~ Players slide without landing
Flags are characteristics that can be used depending on the identity of the box. "No Walljump" is as obvious as it sounds, it's a Left/RightWall characteristic that prevents characters from using their ability to jump off of or grab the wall. The other 3 are for floors. Again, obvious; checking a ledge for a floor makes it possible to grab the corresponding edge of that floor. "Fall-Through" makes it possible to drop down through that floor.
It's important to clarify the difference between Floors and Ceilings. The key difference is the ability to go through them: You can pass through the bottom of a Floor but not the top, and it's the opposite with Ceilings. You can actually fall through a Ceiling if an additional Floor isn't right on top. Just be careful, if any part of a character goes though the ceiling they won't be able to rise back up, they'll be stuck and forced to finish falling then go around it. That's how the grass of
THIS Stage works.
Another thing about Ceilings is that they can trap players. Ever played on Final Destination on Vanilla Brawl and tried using your recovery to go up the lip only to be caught in the lower corner of the stage and die? That's how the Ceiling works, it pulls players in! Even if angled upward you'll be pulling down into the corner. By changing these Ceilings to Walls the issue can be completely resolved! (Brawl+ version of FD)
It's generally a good idea to disable walljumps on areas directly underneath a grab-able ledge. Don't wanna bounce off and die when grabbing would've saved your life! First thing we're going to do is set the flag "No Walljump" for both upper walls here.
That's all you gotta do! Don't set "Left/Right Ledge" for the floors, however. I'll explain why when we get there. For now let's move onto the next Collision Object.
Remember, only have ONE Collision Object checked! Otherwise each of their boxes will appear. If you make modifications like this and save both Objects will save on each other.
For example, if you are modifying the Collisions Objects for Halberd for when starting liftoff and when airborne at the same time, when you play the stage and get in the air after liftoff you'll be stuck on invisible floors near the top until you reach the deck. This happened in one of my first edits, learn from my mistakes!
Check the second Object and uncheck the first. Order doesn't matter as long as nothing happens in between. Here you'll see a long horizontal box and two stubby vertical boxes. These boxes are the Collision data for the bottom moving platform, but they're kinda lack-luster.
First off, don't worry about the fact that the Floor Collision doesn't line up with the moving bottom platform. That part is already animated. Just follow along with the tutorial and everything will be fine.
Remember what I said about models and Collisions? See the problem? If Collisions remain as is then players can rise through the bottom moving platform and even go though the sides. We should fix that! Now we'll learn about editing vertices. Time for a geometry lesson!
On a grid directions are noted by "X", "Y", & "Z". X is the horizontal axis, Y the vertical axis, and Z (if not 2D) the depth axis. With Static Collisions you only need to worry about X and Y. A vertex is a single point on a grid. The word "Translation" refers to a vertex's position in correlation to the direct center of the grid [(0,0) OR (0,0,0)] From this point on we'll only talk about X & Y.
On the X axis left is the negative side and right is the positive side. On the Y axis up is positive and down is negative. As shown above the selected vertex is at (-81.9001,-32.021). This means that it is about 82 points to the left and about 32 points underneath the center of the grid. Think you get it now? Good, because you'll need to understand this for Boundaries and Spawn Points.
There are two ways to extend the size of a collision box, you can drag a vertex while left-clicking or you can modify their translation using the X/Y info on the left. Dragging is fine when you're tracing a new model but modifying the X/Y info is great for trying to get specific positions like linking collision boxes. Right now we're going to to the latter.
However, I realize trying to click on a vertex can be hard, but if you left-click drag an empty area you can highlight everything in it similarly to selecting multiple files on your computer.
Remember, if you select two connected vertices then you also select the box between them, changing the data displayed. For now select just the lower vertex on the left side. Because I'm a did a demonstration for the video I already know that the desired Y position is "-42". Change its Y Translation to -42 and click directly outside of the textbox. It'll stretch like below.
Do the same for the lower-right vertex.
Now we're going to have to make new collision boxes! This is actually pretty simple, just left-click in an open area and drag while holding the "Alt" key. If no vertex is selected when you do this, one will be created where you first clicked and connect to wherever you release. If one
is selected, when you release that vertex will automatically connected to it.
Be careful: If MORE then 1 vertex is selected when doing this, the new vertex will be connected to the 2 vertices that were closest when clicking, and they will no longer be connected to themselves. You shouldn't ever need to do this, so just don't do it. You shouldn't test this unless you've been saving regularly, the undo button only works once in succession and is unreliable.
In this situation we want them to be connected so select one of the lower vertices and Alt+Left-Click somewhere open. Don't bother dragging.
From here we're going to set its translation, again set its Y to -42. Then select the lower vertex on the opposite side and copy its X value. Go back to our new vertex and paste the copied number into its X value. The two lower vertices should now be connected!
Before we move on to the next Collision Object we have to finish up here. Do you know what else needs to be done? Below is the answer, but try to figure it out for yourself first.
Onto the next Collision Object. Here the only boxes are directly above the stage.
These outline the bumper from Super Smash Bros. 64. However, it wasn't imported, with no plans to do so. Thus, we don't need these boxes. There are two ways to get rid of them! The first is to select them and press "Delete" to remove them. You can delete them all at once this way by highlighting them all and hitting Delete once like in the example below.
A good thing to note: Vertices shouldn't be deleted separately. Delete the Collision boxes instead. When a box is deleted the vertices will remain IF still connected to another box. If you delete a single vertex in between two others, the boxes will merge together, you don't want this unless they're already in a straight line. Also, you cannot delete a single selected vertex if there's only one connected vertex that isn't connected to anything others.
Look at the picture above, I've highlighted all but the top vertex. When I hit delete all but that one AND the one connected to it. Understand? A vertex cannot be stand-alone, it MUST be connected to another vertex.
Back to removing the bumber Collisions boxes. We could delete the boxes by highlighting and deleting them all way ~OR~ since these are the only Collisions in this Object, we can delete the Object itself!
Technically we're done here, but we're going to look at the other Collision Objects to see what's in them. DON'T DO ANYTHING TO THEM!
The next two objects each have Collision boxes for one of the ramps in the air.
After that is the set of Floors on the top fall-through platform.
Finally we have two triangles within the the stage.
The two triangles within the final Collision Object are animated with ledges; they give ledges to the middle floor, and only when the moving bottom platform is completely on the opposite side. When you're done looking at them close the preview box.
For the last bit of Part 1 you're going to go go into the other two COLL files and repeat everything we've done in this one. There are two differences between the first COLL file and the other two. First is the absence of the last Collision Object, the one with the triangles. The other difference can be seen in the image below.
Notice the difference? Here, let's compare them.
You'll need to create an additional Collision box on each side to cover the lower corners like in the first COLL file. This will prevent players from getting stuck while trying to recover. Don't forget to properly identify them as walls with "No Walljump". This may seem pointless since these particular corners only exist when covered by the bottom moving platform, but you're learning so buck up and get it done! Practice makes perfect!
This part on Static Collisions is complete!
(in case you're wondering, this is by far the longest of the four parts of this tutorial)
Post-Collisions Video