This was a random idea that I came up with after listening to Hovi and MrScott talk about guide making on Discord, that might be of help to anyone who is trying to get a rough idea of what everything does in SWG's files. Knowing this information casually can help you discover new ways to mod and experiment with the game.
The following are directories found on the top level of the TRE files of SWG, most notably the one found in the MTG TRE Files (though there's no real difference.) I don't know everything there is to know, so some directories may not have a satisfactory description.
Abstract
This directory contains a lot of information, mostly defining information related to item slots (i.e. which bone on a skeleton is the "right hand.") and so on. This directory will most likely be visited by anyone who is trying to do something fascinating with slots, inventory item locations, and what not. A common usage of the files within is to change the slots of jackets to allow chest plates to be worn underneath coats and cloaks, etc.
Animation
Despite the name, this folder doesn't contain any animations, but instead more definition files. Most likely they contain more mapping to match certain animation strings to animation file frames.
Appearance
One of the most complex of directories in the game, this contains everything related to the visual appearance of files in the game. This has many subdirectories, so I will cover them in this guide. The top level directory contains APT, SAT, LSB, and PRT files. APT and SAT files are names that redirect the game to point to a specific LOD file or MSH file, depending on the type. APT is usually used for every static, non animated mesh, while SAT is used for animated meshes that have skeletons. LSB refers to the detailed information on lightsaber blades, and PRT is a particle effect file. There are also Swoosh and Sprite files, but I personally don't know much about them.
Appearance/Animation
This is where most if not all of the animations of the game are located, as ANS files.
Appearance/Ash
This directory contains Animation State Hierarchy files. I don't know much about this, but I know it defines which animations take priority over other animations.
Appearance/Collision
Most of the files within are FLR (or Floor) collision files, which are paired with an object to determine the collision of an object. This is what defines what is collidable, what can be walked on, etc. Every object that has collision more advanced than a simple shape uses a FLR file. Every interior cell uses a POB file to determine the collision of walls, ramps, etc.
Appearance/Component
Component files take a bunch of meshes and combine them into one mesh. These were most common for some of the older meshes in the game, or very large structures like Theed Palace. I don't know much about using CMP files, but they can be a pain due to their complexity.
Appearance/Lat
Logical Animation Tables are stored within, which matches each animation up to a string/name that can be read and used by the game or server to play a specific animation.
Appearance/Lod
LOD, or "Level of Detail" is a file that defines the various level of detail models for a particular appearance. Meshes tend to have a suffix to their filename ranging typically from "l0" to "l4" which defines which level of detail that mesh is for. In game, different levels of detail are used at different distances, which is done to keep the visuals of the game as consistent as possible without losing performance. A model far away will be lower in detail than one up close. It is noteworthy that SWG doesn't need to use LOD files whatsoever, and these files can be skipped when making new meshes; but it might be recommended if you're having performance issues with the game. It was more important to have LOD back in 2003, but for more advanced models, LOD is still recommended.
Appearance/Mask
I have no idea. Masking tends to refer to hiding certain things behind something else. While I wouldn't write these files off, it is noteworthy that some directories in SWG can be vestigial from earlier versions of the engine. I have not yet seen a use or requirement for contents within the Mask folder.
Appearance/Mesh
Every mesh/model in the game. MSH refers to static meshes. MGN refers to meshes that have a skeleton and animate. LMG is akin to the LOD file, but used for skeletal meshes (MGN).
Appearance/Skeleton
Every skeleton in the game. Skeletons are a series of connected bones which uses an animation file to make a weighted mesh move. An example is the player character. Every vanilla playable species uses the same skeleton, so that a Wookiee, Bothan, Zabrak and Rodian can all perform the same animations while not looking quite like one another.
Appearance/Sprite
I have not done too much with sprites, but I know sprites are 2D images that can be rendered in a 3D space. On a glance, it looks like Sprite files are typically used for lighting effects and grass.
Appearance/Ssa
I have not done much with Server Side Appearances, but I do know there is something to do with appearance files on the server. I know that the server does not necessarily need the full TRE files a client needs, and this may play into that. Someone smarter could likely tell you how and why.
Camera
I've never used this directory, but based on the file contained it might contain rules on how the camera works, based on how far it can zoom, move, etc.
Chat
The files contained within this directory define the strings used for moods, but also the distance at which certain chat types propagate. I.e. yelling can be heard from further away than speaking, or whispering. It can also define which chat types are locked behind a skill, like "sing."
ClientData
This directory handles Client Data Files, or CDFs. CDF files can hook certain meshes or effects to appearance files, such as the landing struts on the transport shuttle, or a light effect on a lamp. This is also used for the blades on a windmill and defining how they move. Anything that isn't part of the root mesh of a model is usually applied here. CDFs can also be used to define the appearance of an NPC, such as their customization and what they wear.
ClientEffect
A client effect, or .CEF file, creates special effects within the game. Typically by mixing a particle effect, with sound and other FX to create something that can be played in the world. Client Effects are commonly used for special abilities, camera shaking, or playing music or sound effects on command.
Cockpit
This defines details about cockpits for ships in Jump to Lightspeed.
Combat
Home of the Combat Manager, which is typically used to assign animations to certain effects or abilities, as well as other combat related elements the client needs. I have not personally done too much with the Combat Manager as of writing this, so I cannot say much more.
Creation
This folder contains information and definitions about the character creation process, including clothing for professions, and what professions are available at creation. It is noteworthy that it would not appear the starting_locations.iff is used for starting locations in the game. Instead, it appears the game uses the datatable in "datatables/creation/starting_locations.iff" instead.
Customization
Home of the Asset Customization Manager, which rules over the customization data of the entire game, telling which appearance files can be colored with which variables and palette.
Datatables
An endless list of excel-like datatables which define many, many, many things. I recommend scrolling through these files to get a sense of what is used where, but datatables can cover a very large array of things. If something is being connected to something else, it is likely being defined in here.
Effect
Effect files are related to shaders. Effect files define the data that is sent to a shader script in order to make things appear. Effect files are referenced by the SHT files, and Effect files then refer to the files within pixel_program and vertex_program.
Footprint
I have never been in here. I assume this is data that defines what footprints are used when constructing houses, but don't quote me on this.
ForceFeedBack
Typically this refers to things like controller vibration or other effects that give an effect to being hit or something happening to you. I've never found a use for anything inside. It might be JTL specific.
Input
These files contain the definitions for keybindings and keybinds connected to commands. You could create your own keybinds to certain new commands in here, as well as create your own presets for keymapping inside here.
InteriorLayout
ILF files within here determine the static contents within buildings. You might notice every Tatooine Starport has the same interior design of objects; this is because they all use the same ILF file as defined in their Object file. These are a little bit like Snapshots, except they're purely for interiors.
Misc
The most notable files within the Misc folder is the "object_template_crc_string_table.iff" file, (which determines the CRC values of objects and is required for the client to sync objects up with the server) and the "planet_crc_string_table.iff" which calculates the CRC of planet zone names. Whenever you add a new object, you will need to add the entry to the object_template_crc_string_table file for it to work.
Music
This folder contains music files which are saved in the MP3 format.
The following are directories found on the top level of the TRE files of SWG, most notably the one found in the MTG TRE Files (though there's no real difference.) I don't know everything there is to know, so some directories may not have a satisfactory description.
Abstract
This directory contains a lot of information, mostly defining information related to item slots (i.e. which bone on a skeleton is the "right hand.") and so on. This directory will most likely be visited by anyone who is trying to do something fascinating with slots, inventory item locations, and what not. A common usage of the files within is to change the slots of jackets to allow chest plates to be worn underneath coats and cloaks, etc.
Animation
Despite the name, this folder doesn't contain any animations, but instead more definition files. Most likely they contain more mapping to match certain animation strings to animation file frames.
Appearance
One of the most complex of directories in the game, this contains everything related to the visual appearance of files in the game. This has many subdirectories, so I will cover them in this guide. The top level directory contains APT, SAT, LSB, and PRT files. APT and SAT files are names that redirect the game to point to a specific LOD file or MSH file, depending on the type. APT is usually used for every static, non animated mesh, while SAT is used for animated meshes that have skeletons. LSB refers to the detailed information on lightsaber blades, and PRT is a particle effect file. There are also Swoosh and Sprite files, but I personally don't know much about them.
Appearance/Animation
This is where most if not all of the animations of the game are located, as ANS files.
Appearance/Ash
This directory contains Animation State Hierarchy files. I don't know much about this, but I know it defines which animations take priority over other animations.
Appearance/Collision
Most of the files within are FLR (or Floor) collision files, which are paired with an object to determine the collision of an object. This is what defines what is collidable, what can be walked on, etc. Every object that has collision more advanced than a simple shape uses a FLR file. Every interior cell uses a POB file to determine the collision of walls, ramps, etc.
Appearance/Component
Component files take a bunch of meshes and combine them into one mesh. These were most common for some of the older meshes in the game, or very large structures like Theed Palace. I don't know much about using CMP files, but they can be a pain due to their complexity.
Appearance/Lat
Logical Animation Tables are stored within, which matches each animation up to a string/name that can be read and used by the game or server to play a specific animation.
Appearance/Lod
LOD, or "Level of Detail" is a file that defines the various level of detail models for a particular appearance. Meshes tend to have a suffix to their filename ranging typically from "l0" to "l4" which defines which level of detail that mesh is for. In game, different levels of detail are used at different distances, which is done to keep the visuals of the game as consistent as possible without losing performance. A model far away will be lower in detail than one up close. It is noteworthy that SWG doesn't need to use LOD files whatsoever, and these files can be skipped when making new meshes; but it might be recommended if you're having performance issues with the game. It was more important to have LOD back in 2003, but for more advanced models, LOD is still recommended.
Appearance/Mask
I have no idea. Masking tends to refer to hiding certain things behind something else. While I wouldn't write these files off, it is noteworthy that some directories in SWG can be vestigial from earlier versions of the engine. I have not yet seen a use or requirement for contents within the Mask folder.
Appearance/Mesh
Every mesh/model in the game. MSH refers to static meshes. MGN refers to meshes that have a skeleton and animate. LMG is akin to the LOD file, but used for skeletal meshes (MGN).
Appearance/Skeleton
Every skeleton in the game. Skeletons are a series of connected bones which uses an animation file to make a weighted mesh move. An example is the player character. Every vanilla playable species uses the same skeleton, so that a Wookiee, Bothan, Zabrak and Rodian can all perform the same animations while not looking quite like one another.
Appearance/Sprite
I have not done too much with sprites, but I know sprites are 2D images that can be rendered in a 3D space. On a glance, it looks like Sprite files are typically used for lighting effects and grass.
Appearance/Ssa
I have not done much with Server Side Appearances, but I do know there is something to do with appearance files on the server. I know that the server does not necessarily need the full TRE files a client needs, and this may play into that. Someone smarter could likely tell you how and why.
Camera
I've never used this directory, but based on the file contained it might contain rules on how the camera works, based on how far it can zoom, move, etc.
Chat
The files contained within this directory define the strings used for moods, but also the distance at which certain chat types propagate. I.e. yelling can be heard from further away than speaking, or whispering. It can also define which chat types are locked behind a skill, like "sing."
ClientData
This directory handles Client Data Files, or CDFs. CDF files can hook certain meshes or effects to appearance files, such as the landing struts on the transport shuttle, or a light effect on a lamp. This is also used for the blades on a windmill and defining how they move. Anything that isn't part of the root mesh of a model is usually applied here. CDFs can also be used to define the appearance of an NPC, such as their customization and what they wear.
ClientEffect
A client effect, or .CEF file, creates special effects within the game. Typically by mixing a particle effect, with sound and other FX to create something that can be played in the world. Client Effects are commonly used for special abilities, camera shaking, or playing music or sound effects on command.
Cockpit
This defines details about cockpits for ships in Jump to Lightspeed.
Combat
Home of the Combat Manager, which is typically used to assign animations to certain effects or abilities, as well as other combat related elements the client needs. I have not personally done too much with the Combat Manager as of writing this, so I cannot say much more.
Creation
This folder contains information and definitions about the character creation process, including clothing for professions, and what professions are available at creation. It is noteworthy that it would not appear the starting_locations.iff is used for starting locations in the game. Instead, it appears the game uses the datatable in "datatables/creation/starting_locations.iff" instead.
Customization
Home of the Asset Customization Manager, which rules over the customization data of the entire game, telling which appearance files can be colored with which variables and palette.
Datatables
An endless list of excel-like datatables which define many, many, many things. I recommend scrolling through these files to get a sense of what is used where, but datatables can cover a very large array of things. If something is being connected to something else, it is likely being defined in here.
Effect
Effect files are related to shaders. Effect files define the data that is sent to a shader script in order to make things appear. Effect files are referenced by the SHT files, and Effect files then refer to the files within pixel_program and vertex_program.
Footprint
I have never been in here. I assume this is data that defines what footprints are used when constructing houses, but don't quote me on this.
ForceFeedBack
Typically this refers to things like controller vibration or other effects that give an effect to being hit or something happening to you. I've never found a use for anything inside. It might be JTL specific.
Input
These files contain the definitions for keybindings and keybinds connected to commands. You could create your own keybinds to certain new commands in here, as well as create your own presets for keymapping inside here.
InteriorLayout
ILF files within here determine the static contents within buildings. You might notice every Tatooine Starport has the same interior design of objects; this is because they all use the same ILF file as defined in their Object file. These are a little bit like Snapshots, except they're purely for interiors.
Misc
The most notable files within the Misc folder is the "object_template_crc_string_table.iff" file, (which determines the CRC values of objects and is required for the client to sync objects up with the server) and the "planet_crc_string_table.iff" which calculates the CRC of planet zone names. Whenever you add a new object, you will need to add the entry to the object_template_crc_string_table file for it to work.
Music
This folder contains music files which are saved in the MP3 format.