Hi there!
Well, making stages isn't something one can teach in just a minute, you have to be used to the Brawlbox program, as well as other tools like 3D Studio Max.
This would be the basics:
- Stage files are stored in /stage/melee in the Brawl disc
- They're in .pac files with names like STGFINAL.pac, STGBATTLEFIELD.pac...
- One can open the stage files with Brawlbox.
- If you open a stage with Brawlbox, most times you'll see 3 blue folders. You have to expand the second one, and you'll find some red folders inside. The ones called modeldatas contain stage models and animations. In most cases, there will only be one model, and only one animation of each kind. There's different kinds of animations, like model animations, texture animations, color animations or visibility animations. All of those can be created and edited with Brawlbox. Model files are in the mdl0 format. Brawlbox can build mdl0 files from .dae files, and you can generate those with 3D Studio Max.
- There's a specific modeldata, usually modeldata 100, that has a model only with bones, and those control the boundaries, character spawn points, camera limits, etc. No extra models can be placed in that one.
- There's a modeldata, usually modeldata 101, that has a model only with bones, that's related to the pokemon trainer and the way he moves. You can add animations and models in this modeldata flawlessly most times.
- There's a miscdata in blue, usually miscdata 2, that contains the information related to collisions. You can draw how the collisions in the stage are in 2D. You can attach some of the collisions to actual models and bones to move those collisions, that's made by selecting a character and bone and clicking the '+' button.
- There's an item called STPM that controls values like the direction of character shadows, camera speed, fixed camera, pause camera, ice climbers final smash position, and many others. That item is miscdata 10 most times.
- There's a texturedata where all the textures are placed. However, one can add as many texturedatas as needed if FileId is -1 and FileIndex is progressive. One can even place textures inside the modeldatas, but models will only read textures from their own modeldata, or a texturedata. So, a model in modeldata 1 won't be able to read a texture that's inside modeldata 2.
- There's a scenedata, with the info about the lighting and fogs inside.
- Characters use light 20 in stages. Stage files can use any other light, even the character light. Sometimes it's interesting to have a different lighting for different elements in a stage.
- Materials in models can be either affected or unaffected by lighting. Sometimes it's interesting to colorize the model itself and make it not use the lighting in the stage. Most times models will have an overall grey (128,128,128) vertex color and will be affected by light id's 0, 1 or even 2.
- Character shadows use a special kind of material that draws a black transparent shadow on the surface of the model. A copy of the ground with a material swap usually works for this.
- You can't add as modeldatas as you like. Well, you can, but each stage loads an exact number of modeldatas, so If you have a modeldata twice, only the first one will be read. I use this sometimes to make alternate versions. Swapping a modeldata can change completely a stage.
- If a stage lacks a modeldata it needs, it will freeze. But it won't freeze if it finds more modeldatas than needed. It will just ignore them.
- A modeldata cannot be empty of models. If there's no model and the modeldata is needed, it will freeze as if there was no modeldata.
- You can use lots of modeldatas with only a small non-polygonal model inside to make stages compatible with multiple slots.
- Final Destination is a good option to make stages, you can place models in modeldatas 1, 2, and 101.
- Many stages use modeldatas 1, 2 and 101 too, so adding modeldatas with no visual information will increase the compatibility of a stage that's compatible with Final Destination by default.
Well, this is all I got in mind about stages right now. Get used to Brawlbox, it's easy to use and one can do many things with it. Once you know how to work with it, make your models and import them into Brawlbox, and you'll get the most custom stages possible.