Jump to content
This Topic

Welcome, Guest!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

Sign in to follow this  
Guest Mauler

4 - professional Ground Vehicle Rigging - Author: Brain Splitter

Recommended Posts

Guest Mauler   
Guest Mauler

Basic Ground Vehicles Tutorial

by BrainSpitter

 

Preparation.

What you will need for this tutorial

1.)GMAX and the Renegade Mod tools package.

2.)A model of a vehicle you will use.

3.)Basic knowledge of GMAX

 

Reference

Wheel Bones There are 4 types of wheel bones in Renegade, in this tutorial, we are only concerned with 2, the WheelC bone (center bone) and the wheelP bone (wheel position bone)
Wheel `C` bone The Wheel C bone determines the center of your wheel for wheeled vehicles, for tracked vehicles, they do not matter as much. Your wheel will rotate around this point (you must attach the wheel to this bone for this to happen) For conventional tracked vehicles, DO NOT attach this bone to your tracks (it will make them spin around, trust me, you don`t want this)
Wheel `P` Bone The Wheel `P` bone determines the contact point of your vehicle to the ground, if you put this bone away from the bottom of your wheel/track, your vehicle will float. To make tank treads work properly, you must attach your tread to this bone.
WorldBox There MUST be a worldbox in your vehicle or else you will not be able to import it into the map editor (you will get an error saying: error, worldbox not found)

The Worldbox is actually the `matter` of your vehicle, without the worldbox, you will walk straight through your vehicle (not to mention not being able to get into it) The worldbox does not determine when damage is done to you, this is done through your vehicle model`s body itself.

Turret Bone The turret bone determines the center of rotation for your turret. Attach your model`s turret so it will spin correctly.
Barrel Bone The barrel bone determines where the connecting point of your barrel is, you should connect your barrel object to this bone.
Muzzle bone The muzzle bone determines where projectiles will come out from your model. There can be up to two MuzzleA bones and up to two MuzzleB bones. The `A` bones are used for the primary weapon of the vehicle and the `B` bones are used for the secondary weapon of the vehicle. example: the mammoth tank`s primary weapon is it`s cannons, so there are 2 muzzle A bones on its barrels (one on each), its secondary weapons are its rockets, so there are 2 muzzle B bones on its rocket launchers (one on each)

 

Tutorial

This tutorial will walk you through the steps to creating a Bradley M3A3 Tank which uses a cannon for it`s primary weapon, and a rocket as its secondary weapon.

1)Combining objects.

Open up RenX and open up your model.

image-15-1.JPG

Theres my Bradley, as you can see, its all in seperate pieces. The first thing we want to do, is to combine parts together to create a few sections that we will use later on. These parts will be:

The Chassis - basically the body of the vehcile which does not include the turret, barrel or tracks.

The Barrel - The tube which the projectile shoots out of.

The Tracks/treads (or wheels) - each tread/wheel must be a seperate piece.

To combine different objects to create a single object, you have to use the "attach" command. The easiest way to do this, I`ve found, is to assign a hotkey for this command. to do this, on the top menu, hit `customize` then click `customize user interface` this will bring you to this window:

image-15-2.JPG

Here I`ve selected the `attach mesh` command and given it a hotkey (just type in the key you want to assign `attach mesh` to in the box labeled `hotkey`)

*note, I don`t think your model needs to be a mesh in order for it to work, but in this tutorial, I am using meshes

select one object of your turret`s and press your hotkey.

next, click on another object, it will bring up a list of attach options, the default is fine, click `ok`.

*note, depending on what your model is made up of, you should choose the correct attach feature, I used attach mesh because my model is made up of meshes, if you cannot attach things, its probably because you`re trying to attach something thats not a mesh/patch/poly (depending on your hotkey) to change what your model is made up of, select an object, right click and select `convert to`

notice that now your two objects are now one, continue to do this untill you combine all the objects that make up your turret into one.

congratulations! you`ve just created your turret!

image-15-3.JPG

Now, select your turret and rename it (in the circled red box on my pic) to v_turret

Now combine the parts that make up your barrel (if you have more than one object for your barrel(s)) and rename it/them v_barrels

Now combine the parts that make up your chassis and rename it v_chassis

Now combine the parts that make up each one of your wheels/treads and rename them:

V_tread_L (for left tread)

V_tread_R (for right tread)

(or if you`re using wheels, wheelR1/2, wheelL1/2)

*I doubt it really matters what you name them, but I`m not 100% certain

image-15-4.JPG

Ok, now that we`re all done with that, I now have 4 objects on my stage, the chassis, the barrel, the turret, and the left and right tracks.

The next step is to make your vehicle shootable, drivable and selectable. This is all achieved at once. select all your objects (not your bones world box or origin if you have them in already) and click on the `utilities` tab in the upper left corner of the renx window (the tab with the hammer on it)

Click on "W3d tools"

scroll down to where it says "w3d export settings"

Deselect "export transform (bone)" if it is selected

Geometry options should be set to `normal`

and set `colision options` to projectile (make sur no other otions are selected)

*note, if you have anything grouped, this will not work, so if the options are unselectable, go to group/ungroup in the renx menu)

image-15-5.JPG

and thats it! Now its time to create the world box.

2.)Creating The world box.

The worldbox is what determines collision in the game, ie./ like when you hit something when driving, or someone hits you.

The easiest way to make a world box, is to import it from the sample mammoth tank model that was included with the mod tools.

To do this, go to file, select "XRef objects" click "add" (in the upper right of the window) and find the mammoth tank model, it should be in

C:\Program Files\RenegadePublicTools\HowTo\Vehicles\Mammoth Tank

select the mammoth model and click "open" a window will pop up with a list of all the objects in the model, find the one named "Worldbox.00" and the one name "Origin.00" (not the other origins like origin.02) select them (you can hold down ctrl to select both at the same time) and click `ok` your screen should look like this:

image-15-6.JPG

select the worldbox and origin and click "merge" they will then be put into your scene (if you cannot see them, zoom out). The world box may be alot bigger than your model, just resize it to fit it, if it is too big, or too small ingame, you can always go back and resize it later.

You`ve just created your worldbox :-)

It should also be as small as possible while still containing the wheels and bulk of the body of the vehicle.

image-15-7.JPG

here you can see my worldbox with my tank.

Now we want to move the origin into the center of your vehicle.

First, select your origin, an easy way to do this is to hit "H" to open up the select by name window, if hitting "H" does not work for you, go to edit/select by/name in the menu bar.

Once you`ve selected your origin, just move it into the convergence of axis on your stage (where all the axis meet)

Now we have to align the vehicle properly.

go to edit/select all.

now use the rotate tool on your toolbar to rotate your vehicle, the worldbox.

Rotate your vehicle so that the `Z` axis points upward in relation to your vehicle, the "X" axis points forward, and the "Y" axis points left.

image-15-8.JPG

notice the axis and where they are pointing in relation to my vehicle.

Now align your vehicle so that it centered on your axis like this:

image-15-9.JPG

in the "top" view port , the axis should be align in the very center of your vehicle, this is the Vehicle`s CENTER OF GRAVITY, if you place your vehicle too much in front of the axis, your vehicle will lean forward, too far back and your vehicle will lean backward, etc. in the Front viewport your axis should be aligned not too far up, not too far down, the further up you put your axis, the easier it is for your vehicle to tip over, the further down, the harder. The next step is creating your bones.

3.)Creating bones.

Every vehicle needs bones or else it will not work. There are 4 types of bones, but in this basic tutorial, we are only going to use 2, every wheel needs at least 2 bones, the Wheel `C` bone (or wheel Center bone) and the Wheel `P` bone (the wheel position bone)

The Wheel C bone determines the center of your wheel, its the point at which your wheel rotates around, this is important for Wheels, but not so important for Treads, you can either create your own bones by making boxes and such, but if you`re lazy (like me) you can import them from the mammoth sample like we did with the worldbox (which works just as well)

So go to file/XRef objects, click `add` again, select the mammoth tank model (C:\Program Files\RenegadePublicTools\HowTo\Vehicles\Mammoth Tank) and once again the window will popup with a list of all the objects in the model, scroll down to find the wheels, you`ll notice there is a whole crap load of em, all we`re interested in are the WheelC01R.00, wheelC02L.00, wheelP01RL.00, WheelP02R.00 bones, so select them and click ok. A screen will popup saying "one or mosre objects you have selected has a transform animation. Do you wish to merge this animation?" click `No` select the wheels (don`t select the worldbox or origin) and click `merge` and the bones will appear on your screen.(if you cant see them, zoom out)

Now the first thing we have to do is get their axix lined up. This is very important or else your vehicle`s driving controls will be all messed up.(you`ll get forward instead of backward, left instead of right etc.)

select your wheel P bones.

in the circled red box on the top menu bar, it should say `view` change it to `local`

now if your axis on your wheel P bones DO NOT look like the ones in the picture, change them, to do this, use the rotate tool and rotate the boxes, notice how the wheel `C` bones turn as well, this is what we want.

image-15-10.JPG

after they are aligned correctly like in the pic above, the wheel `C` bones should also be aligned correctly, for the WHEEL C bones, on the `top` viewport, the `z` axis should be pointing down and the X axis should be pointing forward. (this is not like the wheel P bone, do not get these mixed up)

Now move these boxes to the correct position, the two boxes with the `L` at the ends of them should be on the left track, the ones with the `r" should be on the right. like so:

*note, you can change the size of your bones if you want.

image-15-11.JPG

make your wheel P bones touch the bottom of tracks, this is the contact point at which the ground meets the wheels/tracks, but make sure to keep your boxes inside the worldbox. your wheel C bones should be int he center of your wheels if you are using wheels, if you`re using tracks, it doesnt really matter where you put them.

Next we will make the turret, barrel and muzzle bones.

The turret bone is the point at which the turret spins aroun.

The barrel bone(s) detemines the point at which the barrel is connecte to your vehicle.

The Muzzle bone(s) determines the point at which projectiles come of your vehicle. You can have up to 2 muzzle a bones and two muzzle B bones. Muzzle A bones are where your vehicles` primary weapon comes out, muzzle b bones are where your vehicles secondary weapon comes out.

Again, I find the easiest way to do this is to import them fromt he mammoth model, so go to file/XRef objects, click add, select the mammoth model, and from the list, select the objects: Turret.00, Barrel.00 and Muzzle0.00 and muzzleb0.00. click ok, select ONLY your new bones fromt he list and click merge.

Now the first thing we want to do is to align these correctly, the fastest and easiest way to do this is to first select the bones (not your wheel bones, just the turret, barrel, and muzzle bones) and if you still have "local" selected in the circled red box in my pic, change it to "view" and click the tab on your right menu named "hierarchy" click the buttons labeled "Pivot" (if it`s not alreayd selected) and "affect pivot only" then click on the button labeled "align to world"

image-15-12.JPG

now click on "affect pivot only" to deselect it and click on the button labeled "dont affect children" so the bones will be easier to move.

now move the bones into their correct position. Here are hwere they need to go (again)

The turret bone is the point at which the turret spins around.

The barrel bone(s) detemines the point at which the barrel is connecte to your vehicle.

The Muzzle bone(s) determines the point at which projectiles come of your vehicle. You can have up to 2 muzzle a bones and two muzzle B bones. Muzzle A bones are where your vehicles` primary weapon comes out, muzzle b bones are where your vehicles secondary weapon comes out.

Heres where my bones are going to go:

image-15-13.JPG

You can change the sizes of the bones if you like, just use the scale tool. (next to the rotate tool)

Good, now we have all our bones!, we`re almost home!

The next step is renaming some of the objects and linking all of your objects together correctly.

4.)Linking

It`s very important that you link your objects together correctly for them to work properly.

We will begin by renaming some of the objects that we imported.

WheelP01R.00

WheelC01R.00

WheelP02L.00

WheelC02L.00

Origin.00

Worldbox.00

For all of these, we need to delete that .00 after them, the.XX that you saw in the mammoth model objects are what LOD (level of detail) they belong to, .00 is the lowest. Only one LOD shows up in game at a time, so if you named something with a differen .XX number than everything else, that thing would not show up ingame.

to rename them, hit `H` or go to edit/select by/name, select them one by one and rename them in the menu to your right.

image-15-14.JPG

just delete the.00 off the end.

after that, we are ready for linking.

Press "h" again or edit/select by/name

click the box labeled "display subtree" to select it.

image-15-15.JPG

you`ll notice that some things are already linked, thats fine.

To link things, select the CHILD (the one to be linked under another object) click the "select and link" button and click and drag from the child to the parent. When you see the little folder thingy change color (you`ll know when you see it) release the button and the object should light up for about a second. This means that the two objects have been succesfully linked together. To confirm this, select the `move` tool or `rotate` tool or any other tool because if you don`t the link will not show up in the hierarchy, press "h" or edit/select by/name and check to see that the two objects you wanted to be linked are linked.

image-15-16.JPG

This is how you want your things to be linked when you`re done.

image-15-17.JPG

Worldbow is linked to origin.

V_chassis is linked to origin.

Turret(bone)and both WheelPs (bones) are linked to v_chassis

Barrel and v_turret are linked to turret (bone)

MuzzleA0(bone) and v_barrels are linked to barrel(bone)

MuzzleB1(bone) is linked to v_turret

V_tread_R and WheelC01R(bone) is linked to wheelP01R(bone)

V_tread_L and WheelC02L(bone) is linked to wheelP02L(bone)

All your bones are now done. The next step is to do a one frame animation. nothing big, don`t be scared.

5.)preparing for export.

In order for your wheels to be moveable (up and down) we need to do a little one frame animation. First, click the animate button on the bottom of your Renx window:

image-15-18.JPG

It will turn red when you do, what this does, is it records a keyframe everytime you make a change to the scene. so make sure not to do anything else escept what i tell you to do, and turn it off when you`re done.

after you`ve clicked one the animate button, select your wheels and type "1" in that box with the key icon next to it (this advances you to frame one of your scene) now tuck in your wheels to their highest position, "as if your vehicle has jsut fallen off a skyscraper and landed directly on its wheels"

Before:

image-15-19.JPG

After:

image-15-20.JPG

notice i did not move the worldbox or anything else except the wheels and its bones.

now turn off the animate button (just click it again so its not red) and you`re done!

Thats right, you`ve just completed your first vehicle model! w00t!

now we have to export it, just go to file/export and save it into your mod folder (in the level editor file) The next step is importing it into level editor.

6.)Importing into level editor.

Open up your Renegade level editor.

first we have to make a map for your vehicle to go on, if you already have a level you want to use, then thats fine as well.

to make a map, just click the "+" sign next to the terrain folder on your right, click the "+" sign next to levels-muliplayer, select a map and click `make` on the bottom of that window. wait a while and your map will appear, use the numpad to navigate around.

now click the "+" sign next to the `object` file, click the `+` sign next to `vehicle` and for my Bradley, i will replace the nod light tank with my model, so I click `nod light tank` and select `cnc_nod_light_tank` and click `mod` at the bottom of that window.

image-15-21.JPG

click the tab labeled "physics model" and click the folder icon next to the modelname box, browse for your vehicle and double click it. amke sure there is NOTHING in the dependencies tab and that there ARE Enter and Exit commands under the transitions tab, (if there isnt, then you wont be able to enter or exit the vehicle) now click ok and lcik make on the bottom of that window, you should see your vehicle appear. Now just save your level, and export your mod package to your Renegade/data folder.

Congratulations, you`ve just created a working renegade vehicle!

Share this post


Link to post
Share on other sites

this is a really helpful tutorial but it could use some updating, there is some missing or assumed information

 

it doesnt explain how to create an Origin.00 or WorldBox.00 without using the imports from the mammoth tank model, which needs Gmax. there is another tutorial that explains the worldbox but not that explains the Origin.00 box (as in what settings it needs) as it assumes you imported an existing one (or both). both of these explanations really should be in the 1 tutorial here.

 

does anyone know what options the Origin.00 box needs on it? where does connect to?

 

It also doesnt explain what to export the model as once you have done all the steps. 

Share this post


Link to post
Share on other sites
Guest Mauler   
Guest Mauler

yea this tutorial is an older version... i made a VTOL vehicle tut some of the basics are the same for ground vehicles too that i show in the tutoria video i made :D

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • Guest Mauler
      By Guest Mauler
      Level Of Detail Model tutorial
       
      Here is an example of the HLOD model of the GDI Hummvee, The image shows us the amount of polys and what distance the model will render at... The HLOD system is also used when the settings are set lower to provide better performance.. the engine will choose an appropriate level of detail depending on what the slider is set to in the configuration menu...

       
       
      To create a new HLOD model, we will need 4 models.. You can add addition models but 4 is a good number to start with
       
      For this tutorial I will be using a tiberium crystal model that was orginally created for TCW and is in use across different maps on UltraAOW, You can get the example file used here
       
      Let's begin!
       

       
      First thing you notice I have 4 different models spread across the y-axis... and for mesh models "mcryXX" etc.. at the end of each mesh name is followed by a .00 .01 .02 etc.. The highest poly model you wish to display must be centered at 0,0,0, on the XYZ axis.. the remainder can be spread across the y-axis like mine is... the only one that matters is that .00 model.. It must be centered in the world axis.. the other files will be originated at the highest poly model on export anyway..
       
      When done creating your model you will need to create " Origin " bones for level. As you can see above the small box centered to each level is a Origin box, and then each of the different level Origin box is linked to the proper 00, 01, 02, 03 level meshes
       

       
      When I create LOD models, I tend to create the highest poly mesh and simply clone it and move it aside to create and edit lower poly meshes... you can edit the material, vertexs, faces, or anything to create a lower polygon model of the highest mesh
       
      Here are the settings I used for the Origin bones and the actual mesh of the crystals, you can also take a look at the file provided for reference, I did not apply collisions to the actual crystal as I did not want the model to interfere with bullets,characters,vehicles... You can however change it to your preferences..
       

       
      Once all the Origins, Meshes are completed, you can now export the model to W3D..
       

       
      once exported the W3D is not complete.. we still need to configure the render distances and export the HLOD info..
       
      Ok so open up the model in W3DViewer
       

       
      As you can see the model is loaded, and rendering the highest polygon model ( .00 ) Currently the HLOD is not setup to switch to lower poly models...
      and we will set them up and export to a model that will automatically switch depending on the player camera distance.
       
       
      Since we have 4 models we will need 4 spots to where each level will render ingame...
       
      Keyboard Keys to switch between levels of detail are [ key and ] key and spacebar to set the render distance
       
      First I want to get the viewer camera set to about 25 units away.. you can see this at the bottom of the viewer under Camera
       
      Now at about 30 units is want the model to switch the the .01 model, set the camera to 30 and press [ to render the next level ( .01 ) press spacebar to set the distance..
       
      Now move back to about 40 to render the next level ( .02 ) press [ again and spacebar to set distance 
       
      Now move again back to about 50 to render the last model ( .03 ) press [ and spacebar
       
      Now that we have set the distances we can check our results of the switching, go to LOD>Auto Switching then move you camera back and forth and you should see the model switch from the high poly model to the lower poly models...and after 50 units the crystals won't render at all
       

       
      We've completed another step in the process but we need to export this new LOD model.. Go to file>export>LOD and make sure to save the file in a different directory as the other model we exported from max.. so you'll end up with 2 W3D files that share the same name...
       
      Now w3dviewer doesn't export the LOD information.. so you will need to use TT 4.0 tools to get it working, we will need to use mergelod.exe to export a correct W3D model with the proper distance settings, so we can use it ingame
       

       
      Now drag and drop both files into mergelod.exe
       
      once dropped the file is now ready to use.. notice the 1kb file... that is the information file, the larger 2,023kb file is now the proper file to use... open your larger W3D file and check Autoswitch option.. it will now properly switch the models when you import into Renegade..
       
      You can delete the 1kb model and simply rename the 2,023kb model back to the original file name without the (2) 
       
      Thanks for reading and goodluck!
       
      You can get the TT 4.0 Editor/Game tools here
    • Guest Mauler
      By Guest Mauler
      If you wish to host this tutorial elsewhere please let us know below..
       
      I have finally gotten around to creating a simple tutorial on how to get lighting effects from 3DSMax 8 into Renegade, Some would call this "lightmapping"
      when using this and some other tools TT have developed you too can get professional looking shadows, lighting effects... just one thing i should mention, this method is not dynamic lighting, but rather static baked in lighting
       
      Let's begin
       

      Open your completed level, textures are optional, but recommended that the level be completely textured before starting the process. Just easier to render and see the effect the lighting will have on the level  
       

      Here I have placed some lights and other atmosphere effects to the scene.  

      Let's render [F9] the scene and check out how the lighting looks, Everything looks fine, When you happy with the final product move on to the next step. **Remember to render often to check for lighting errors or glitches be sure to look at all surfaces etc..  

      Now that our lights are done, lets hide them and just keep the terrain I want to lightmap visible, First thing you want to do is clone all the terrain pieces you wish to apply the lighting to... In my case, it is the concrete boxes and ground. [Right Click > Clone]  

      Now both pieces are cloned simply move them to the side, Leave it there for now, we will work on that in a bit.. As you can see I've moved mine a bit off from center.  

      Now select the original two pieces and remove the materials from them [utilities Tab> UVW Remove>Materials Make sure "Set Gray" is checked]  

      With the materials off the original meshes, we need to combine them for the lightmap. [utilities>Collapse>Collapse Selected] This will make the pieces into one mesh.  

      Now that it is one mesh, we need to apply a UVW unwrap, Select the mesh [Modifiers>UV Coordinates>Unwrap UVW]  

      Now that it has applied a UV unwrap we need to flatten all faces for the lighting information. ** Before moving on set the "Map Channel" to 2, we will need to remember this for later  

      Under "Selection Modes" click on the third button to the left "Face Sub-object Mode" then select all faces in the scene [Ctrl+A] to select all, then we need to flatten, [Mapping>Flatten Mapping].  

      Once that is done just use the defaults that are displayed on my screenshot. Click "Ok" when done.  

      The modifier should auto-flatten to something similiar to what i got pictured above. Once that is done, move on to the next step.  

      Now we need to render the lighting information to a texture, [Rendering>Render to Texture]  

      This will provide a pop-up of the settings of the texture we will render, Set the Padding to 64, Object should "Use existing Channel" then set the channel to 2, we set this channel from earlier...  
       
       

      Continue down to "Add" button, Click on it and select "Lightingmap" after it will provide you with the ability to change the file name and type of the texture output [To change output location click on the " ... " ] **For lightmaps I tend to make them DDS with DXT-1 settings, and Use a 256x256 size  

      Once you are happy with file name and output location press "Render", You should see a pop up with the lightmap texture, something like my lightmap pictured above. Once rendered close the pop up windows  
       

      Now the lightmap texture is applied to the original mesh, At this point we need to detach the single mesh back into the orginal two pieces we started with.. [Right-Click on the mesh>Detach with the element tool] Once complete move on to the next step.  
       

      Now this is where the cloned copy of the original comes into play, We need to attach the cloned pieces to the lightmapped pieces. Ground>Ground, Concrete Boxes>Concrete Boxes... Once you attach the cloned copy to the lightmap meshes a pop up will appear [Pictured above] leave those default settings and press Ok.  

      Now that the pieces are attached together we need to re-apply the materials over the meshes, Once complete move to next step  
       

      Now the two pieces are retextured we need to get rid of the cloned mesh we made earlier [Mine was the top one] just make the mesh editable and select and delete the cloned mesh [Pictured above]  

      We are left with the one piece, Now we need to apply the lightmap texture we made earlier to the materials of the Ground and Concrete Boxes.. Go into the material editor [ M ] and apply the next step settings to the materials.  
       

       Vertex Tab, Stage 1 Mapping should be set to 2  Shader Tab, Pri-Gradient set to "Disable", Detail Color to "Scale"  Textures Tab, Check Stage 1 Texture, And place the Lightmap texture you output earlier here, Click on "Clamp U" and "Clamp V" Once completed close material editor and Export your scene into a W3D Once all is complete and lightmap textures are applied to the mesh/meshes.. You will need to add a user defined parameter.. Right click, goto properties and goto User Defined tab... There you will see a text box add the line [ Prelit=true ] - everything in between the brackets.. And apply this line to all lightmapped mesh.. This is so that the Renegade vertex lighting system ignores these pre-baked light meshes
       
       


      Here is my completed level with Lightmap applied in W3D Viewer... Enjoy! and experiment!!  
       
      This is what the model looks like without a lightmap texture and using default vertex lighting instead
       
          Hope you guys learned a bit from this... you can now go and create some cool looking levels with this method of lightmapping I've provided for you...It can get very complex for larger, more detailed levels, so you will need to dedicate quite sometime to do it right!
      I've only covered the basics on this tutorial, but I'm sure you guys can experiment and achieve more... Good luck and please feel free to post any questions you might have about Lightmapping in this tutorial thread...
    • By Pwn Call
      VIS Tutorial
      By Pwn Call
       
      ------------------------------------------------------------------------
       
      Intro
       
      First I recommend that you read through this whole tutorial before you start it as well as the comments on the following pages.  That way you can see why you need to do things a certain way and it may be different for your type of map.  This way you can fix the issue early before you are too far into to it.
       
      VIS is a system that Westwood created that allows for better FPS when playing Renegade.  The basic principle behind VIS is that it allows your computer to only load what is visible in that specific map from where you are located.  So for example if you are inside one of your buildings it won't bother to load the interiors (and most likely the exteriors) of the enemy base because they aren't in your line of view. 
       
      I learned how to do VIS from YSL Muffins original VIS tutorial which can be found here.  This tutorial is quite in depth but can be quite confusing as well so hopefully mine is a little less confusing while still explaining it well.  Also I use one of his pictures in my tutorial so credit goes to him.
       
      -------------------------------------------------------------------------
       
      Step 1 - Create your level
       
      Usually I like to make my level first then add my VIS sectors at the end, you can add them as you go if you want but I think it gets more confusing that way.  Also you should only set up the sectors in Level Edit once you are done with everything else, otherwise things can get messed up easily.
       

       
      Step 2 - Determine which type of sectors will work best with your map type
       
      If your map is:
       
      Flat - Use the plain sectors as shown in this tutorial for the entire thing, also make sure you add them for lower or higher levels of terrain, for example the tops of high rise structures or other high or low places you can get to.
       
      Very Hilly terrain - Use the method to create sectors where you clone your terrain, and detach several vertices at a time. This will take much moretime but works much better with hilly terrain, allowing for much fewer VIS glitches later on.  Also make sure to look closely for VIS glitches around the really steep parts of your map.
       
      Mostly flat with some steep hills - Use the flat plain method for the flat parts of the map and use the clone terrain part for the hills.

      Step 3 - Create your VIS Sectors
       
      Alright here we go!  So VIS sectors are basically meshes that lie below the surface of your map and you must create a VIS sector anywhere the player's camera can reach.  For example when you are in first person mode the camera is exactly where the players head is, however in 3rd person mode, or more importantly when you are in a vehicle, the camera is somewhere above and behind the player.  So with that being said you don't only have to put the sectors anywhere your player can go, but also off the edges of the map where they camera may be. 
       
      So look in this next example of me making my sectors for my map,  they might not need to be that far off the sides but it is better to make them further off rather than not far enough off because it will give you hassles later on.  Also I use a standard plane with 1 segment to keep poly's low and I believe the size I used was 25x25 meters.  I wouldn't go much bigger than this with your sectors or a whole lot lower, it also depends on the size of your map.
       

       
      Another important thing to do is to name your sector, I usually call the first one I make VIS and then when you clone it it will name the next one VIS01 and so on.  This way you can select them all easily later because they will go under all of your terrain.
       

       
      Now before you start cloning them all over your map make sure you lower them on the between about 1 and 1.5 meters.
       

       
      Then clone it.
       

       
      And repeat until you have the VIS sectors cover all of your terrain like so.  It is extremely useful to use the Grid tool for this so it is easy to line them up, if you don't know how to use the Grid there is a tutorial I made here.
       

       

       
      Also remember this map I am doing is all flat so planes work well for this.  For most maps which are not flat you will have to create your VIS sectors a little differently.  The best way to do it is to clone your floor terrain and lower it.  Once you lower it you will have to select several vertices at a time and detach them until you have all of the sectors separated.  Don't forget to lower it!  It also helps if you do this before you texture it but it isn't necessary.
       
       
      Now not only do you have to do this for your terrain it has to be done anywhere where your character can get to.  For example you can see White Nyte's here which is walk onable so I have to make a sector for this like so.
       

       
      And don't forget to lower it!
       

       
      Now you don't have to put VIS sectors on everything, just things that are much higher or lower than the existing sectors.  For example the top of White Nyte's is most likely too high for the sector and the ground to be effective, that is why I am adding on for the roof of the building.  But smaller things like curbs or rocks that you can go on are low enough that you don't need to make a different sector for.  I believe a sector works 10 meters above it but remember it is 1 meter below the ground and the camera can go up higher than your character or even higher in vehicles.  Test it out and see what works best for your terrain.
       
      Also the renegade buildings come with their own VIS sectors built in so you don't need to add them to the buildings.
       
      Step 4 - Exporting
       
      Before you export there is one more thing you have to do.  First select all of your VIS sectors.  Do this by selecting them by name which is really easy (if you named them VIS like I told you to earlier)
       

       

       
      Now we have to set the W3D options of the VIS sectors.  With them selected click on the Hammer icon on the upper right of your screen, then W3D Options.  Then check off both hide and VIS under the collision settings.  This allows your VIS sectors to be invisible but still work.  They won't disappear in Gmax but they will be gone in LE.
       

       
      Alright now you are good to export your map to Level Edit.
       
      Step 5 - Level Edit Set Up
       
      So now you should have exported your map with all of your sectors into Level Edit.  First I would make sure you set everything else up in Level edit like buildings, waypaths, presets, etc.  Also you have to have a Pathfind Generator somewhere on your map to set up the VIS or else Level Edit will crash when you set it up.
       

       
      Now to start setting up you must do these 4 things in this order.  The last 2 will take a while because it is creating all of the VIS points, and make sure you set the granularity to about 5, if you go any lower it takes a TON of time.  If you have a crappy PC I recommend 8, you will just have to add more manual VIS points later.
       

       

       
      Alright that took a while!  Now you are almost done.  Now what you have to do is walk around and look for VIS glitches.  A VIS glitch is where the system thinks you cannot see an object so it won't load that object when in reality you should be able to see it.  It looks something like this...
       

       
      That is the inside of the refinery and there is a mesh there covering up that hole but it doesn't think you are supposed to be able to see that mesh.  So what you must do is create a manual VIS point.  To do this just hold down the control key and hit the accent button which has these symbols on it ` and ~ (left of the 1) so Ctrl+`.  Once you do that it should fix the VIS glitch and make that mesh or object reappear.  If it doesn't reappear try moving around or moving the camera around slightly and try it again, some VIS glitches are stubborn!  Some cases if it can't be fixed it may be because there isn't a VIS sector in that location and in that case you need to go back to RenX and fix it.
       
      Common places to look for these VIS glitches are as follows:  Most of the Renegade buildings have them especially in and around the doorways,  the hand of nod by the ped area windows has a ton of them so look there very thoroughly or add your own sectors to that spot, entrances and exits to tunnels, areas that have really steep slopes,  corners, etc.
       
      Also for finding ones around doors you can hit Ctrl+Shift+T which will hide the doors.  Note that this also hides all tiles like trees or other objects you have made in your level, so once you are done around the doors hit Ctrl+Shift+T to make them reappear.
       
      Once you make a manual VIS point it will appear in LE like a little camera to show where you have them.
       

       
      Now walk all over your level and look for them, it is easier to find them in 3rd person mode because the camera swings wider so you will have more luck finding them.
       
      After you walk around the whole level and find them all you can do it one more time only with tanks viewpoint.  Do this by going to the Camera tab then choose the Mammoth Tank.
       

       
      This should make your view look somewhat like this
       

       
      Now when you are going around in this view you don't have to go anywhere a tank couldn't go.  Also use the Mammoth tank because it has the widest turn radius for the camera.  Really check the edges of your map and around buildings well cause these are places that are prone to VIS glitches.
       
      ------------------------------------------------------------------------------
       
      Flying Maps
       
      For flying maps you have to have more than just the VIS layer under the ground, every 9 meters or so in height you need to add another layer until you reach the flight roof.  That is really the only difference for flying maps.
       
      ------------------------------------------------------------------------------
       
       
      This is a very confusing tutorial for those of you who are new to VIS, so ask any questions you have below and I will help to answer them.  Also if you know more about VIS than me let me know if I did something wrong or if there is a better way to do something!!!
    • Guest Mauler
      By Guest Mauler
       RenX /  Leveledit
       
      Animation & Emitters
       
      Ok, here is how to make an aggregate and put emitters on it. StoneRook and I (Bumpaneer) have been working on this for a long while, so if you have any questions you know where to direct them. First off you need a building. Here is mine.
      The building must be centered at 0,0,0. Then create a box (1,1,1) and center it at 0,0,0. The name of your box will be the call to your aggregate. I used mghel_ag_1~ for mine. The ~ at the end of the file name is critical. When you have all this, export it as terrain.
       
      Next start a new project, this will contain all the changing parts of your building. (Places where smoke will pop up, damaged tiles, etc). Here is mine for the chopper pad.
      The triangles are two sets of lights, layered on top of each other. One set blinks and one set does not (for when the building is destroyed). Here is how to animate them so only one set shows up at a time. After both are created go to the Open Track View button.
       
      Open up the objects tab and find the object you want to animate. Select it and click the Add Visibility Track option. You should now have an option labeled Visibility under your object name. Click the Add Keys button and choose a frame to start. You can right click on the key to change its value (1.0 for fully visible 0 for invisible). Here is what the setup should look like.
       
      You`ve probably noticed that semi-visible box by now. That is used for any place you want to have an emitter, such as smoke. It is a 1x1x1 box that has a Visibility track. When it is visible you can see the smoke, when it is not, you can`t. The box has the aggregate box and hide checked under the w3d options. Once everything is all set up you are ready to export. When you export choose Hierarchical Animated Model. Make sure you DON`T name it what you told your building to look for (ex. mghel_ag_1 is WRONG for me). I just called mine testing. After all this is done we are done with RenX, so you can close it down.
       
      The easiest way to add an emitter is to use one Westwood already created. I extracted e_19_smoke2.w3d from always.dat. Now open up your exported animation in W3d Viewer (testing.w3d for me). The go to File->Open and open the emitter aggregate you want to use (e_19_smoke2.w3d) OR create your own emitter. I am not going to go through how to do that now, read the Westwood tutorials. Under the Hierarchy tab, choose your model (TESTING for me) and go to the Hierarchy menu at the top. Choose Make Aggregate... and give it a name. The name you put here is the name you told your building to look for (ie. mghel_ag_1 for me). Your side menu should look something like this.
       
      Click on the object name under the Aggregate tab (mghel_ag_1) and go to the aggregate menu. Choose the Bone Management option and click on the bone (or other object) you want to attach the emitter to. Find the emitter you want to attach in the Render object: dropdown box and click the attach button. After all that is set use the Export Aggregate button to export it.
       
      You`ll need both .w3d files in your mod folder for Level Edit (ie testing.w3d and mghel_ag_1.w3d). In Level Edit create a new terrain object for your building exterior. Then create a new tile for your buildings aggregate. Point it to the aggregate you exported from W3D Viewer (mghel_ag_1). Set the physics type to BuildingAggregate and the AnimationMode to MANUAL. In the AnimationName box type the name of your animation (it comes from the original file so mine is testing.testing.).
       
      Set what frames to display at what damage points farther down. And that should do it for you. Good Luck.
       
      ~Bumpaneer
       
       
       
       
       
       
       
       

       

       

       

       

       
    • Guest Mauler
      By Guest Mauler
      How To make your own Full Conversion Mod.
      Written by Oblivion165
      _______________________________________________________ 
      This is a Tutorial on how to compile your own mod. Such as Reborn, RenAlert ect.
      During this tutorial i will use the name Renegade2 as the mod name. 

      Your will need these things to complete the task:
      A De-Mixer (Mix, Dat, Pkg Extractor) i highly suggest "RenegadeEx"
      RenegadeTools 2
      Basic Skills with Renegade, some more advanced skills are needed.
      Hard Drive Space
       
      Step 1: Preparing

      First Copy Your renegade folder, except Always.dat, Always2.dat and none of the .mix`s. Paste it in your westwood Dir.
      Rename it to your mods name, such As "Renegade2"

      Open LevelEdit and make a new mod called "Always", Copy Scripts.dll, and Scripts2.dll from your "Renegade2"
      Folder and paste them into your mod folder, you do not have to put it in a scripts folder.

      Open your Extractor, and open Always.dat from the original Renegade\data Dir.
       
      Step 2: Hard Part

      This is the hardest, longest part, be patient, it will go faster than you think.

      A list of the needed files to run Renegade is here: Always List
      As you get these files out of Always.dat, dump them into your mod folder. After you have All of the files from the list,
      Extract your mod as "Always.dat" in your Mod Folder. The Game should be able to load fine now. If you would like to
      play on a map just make a quick one, Keep in mind that the regular renegade maps wont run, they are 
      missing building files and such. 
      Step 3: Customization

      As you go through the list of files you will see common types. Here is a generalized list of what they are and what they do.



      "If_" Mostly Menu Items, Renegade menus are w3d files.
      "Hud_" Images of Pt`s Your Personal Hud, and Health info
      "H_a_" Player Animation, Runing shooting, everything
      "W_" Weapon Models
      "F_" First Person Models
      "C_" Character Models
      "S_" Bones, Gestures


      Editing these files will allow you to customize Renegade, but most of the Customization comes from LevelEdit.
      From LevelEdit, Edit the Strings Table, Object Names, and change models.
      in your always.dat mod folder change all of the model or sounds or whatever to what you want, then Export the Always.Dat Again.

      To make maps for your mod, the easiest thing to do is copy the Existing Folders from your Always Folder. This way it have all the same setting
      as your always.dat, and your wont get bugs in game.

      Thats all i can help you with, the rest is up to you. Enjoy.
       
       
       
      This is a list of every item you need to run your own Always.Dat, There are alot of extra files in here that arent needed.
      These files will let you run the game, every menu item and function, Every Character model and gun. This may look like alot, but use your Mix Extractors Search abilities, such as alot of the names are similar such as hud_health1.dds and hud_health2.dds, so instead of searching for each one, search for "Hud_" and extract everyone that comes up. 

      000101_a.wav
      01_tracer_op.dds
      01lv1-cliff8.tga
      0201oldwood.tga
      0201wdbeams.tga
      0201wdbeams2.tga
      0203lathe.tga
      03-ammoclip.mp3
      18_lampflare2.dds
      19_bmflare1.dds
      19_bmflare2.dds
      19_bmflare3.dds
      19_buletshell.dds
      19_flareft.dds
      19_lcflare1.dds
      19_lcflare2.dds
      19_lcflare3.dds
      19_muzzflsh_5.dds
      19_muzzflsh_8.dds
      19_rlflare.dds
      19_sakura_head2.dds
      19_tracerbullet.dds
      20_flame03.dds
      20_gdi_concrt01.tga
      20big_flash1.dds
      20big_flash2.dds
      ag_exp_debris02.w3d
      ag_flame01.w3d
      ag_flamtnk_exp1.w3d
      ag_mammoth_exp1.w3d
      ag_obcharg2.w3d
      ag_sigflare_gld.w3d
      ag_tib_exp1.w3d
      ag_tshell_ex04.w3d
      ag_tshell_ex06.w3d
      ag_tshell_ex08.w3d
      ag_tshell_ex10.w3d
      ag_tshell_ex12.w3d
      ag_tshell_gdi01.w3d
      ag_tshell_nod01.w3d
      al_tex012.dds
      amb_ambulance1.wav
      amb_nod_flame1.wav
      ambgull.wav
      ammoclip.mp3
      ammoshells1.wav
      ammoshells2.wav
      ammoshells3.wav
      asset_report.txt
      atr_flar0001.dds
      back.dds
      bars.tga
      beam_texture2.dds
      brick.tga
      brick002r.tga
      brick003r.tga
      brick004.tga
      brick004r.tga
      brown_leather.tga
      bullet_eva.tga
      bulletshell_1.w3d
      bulletshell_2.w3d
      bush_dead.dds
      c_ag_gdi_dead.w3d
      c_ag_gdi_mg.w3d
      c_ag_gdi_mobi.w3d
      c_ag_nod_mg.w3d
      c_civ1_head.w3d
      c_civ2_head.w3d
      c_civ3_head.w3d
      c_civ4_fem_head.w3d
      c_civf_.w3d
      c_civf_head.w3d
      c_civf_l0.w3d
      c_civf_l1.w3d
      c_civf_l2.w3d
      c_civf_l3.w3d
      c_clerg_head.w3d
      c_cook_head.w3d
      c_cwoman_head.w3d
      c_deadeye.dds
      c_flametanks.dds
      c_flametroop.dds
      c_flametroop2.dds
      c_fmsrv_head.w3d
      c_gdi_dead_.w3d
      c_gdi_dead_head.w3d
      c_gdi_dead_l0.w3d
      c_gdi_dead_l1.w3d
      c_gdi_dead_l2.w3d
      c_gdi_dead_l3.w3d
      c_gdi_en_.w3d
      c_gdi_en_body.dds
      c_gdi_en_head.dds
      c_gdi_en_head.w3d
      c_gdi_en_l0.w3d
      c_gdi_en_l1.w3d
      c_gdi_en_l2.w3d
      c_gdi_en_l3.w3d
      c_gdi_en2_.w3d
      c_gdi_en2_body.dds
      c_gdi_en2_head.dds
      c_gdi_en2_head.w3d
      c_gdi_en2_l0.w3d
      c_gdi_en2_l1.w3d
      c_gdi_en2_l2.w3d
      c_gdi_en2_l3.w3d
      c_gdi_gr_.w3d
      c_gdi_gr_head.w3d
      c_gdi_gr_l0.w3d
      c_gdi_gr_l1.w3d
      c_gdi_gr_l2.w3d
      c_gdi_gr_l3.w3d
      c_gdi_gr1_body.dds
      c_gdi_gr1_head.dds
      c_gdi_gun_.w3d
      c_gdi_gun_head.w3d
      c_gdi_gun_l0.w3d
      c_gdi_gun_l1.w3d
      c_gdi_gun_l2.w3d
      c_gdi_gun_l3.w3d
      c_gdi_hothair.dds
      c_gdi_hotw_.w3d
      c_gdi_hotw_head.w3d
      c_gdi_hotw_l0.w3d
      c_gdi_hotw_l1.w3d
      c_gdi_hotw_l2.w3d
      c_gdi_hotw_l3.w3d
      c_gdi_hotwire.dds
      c_gdi_lock_head.w3d
      c_gdi_locke_.w3d
      c_gdi_locke_l0.w3d
      c_gdi_locke_l1.w3d
      c_gdi_locke_l2.w3d
      c_gdi_locke_l3.w3d
      c_gdi_lt_.w3d
      c_gdi_lt_head.w3d
      c_gdi_lt_l0.w3d
      c_gdi_mg_.w3d
      c_gdi_mg_head.w3d
      c_gdi_mg_l0.w3d
      c_gdi_mg_l1.w3d
      c_gdi_mg_l2.w3d
      c_gdi_mg_l3.w3d
      c_gdi_mg2_.w3d
      c_gdi_mg2_head.w3d
      c_gdi_mg2_l0.w3d
      c_gdi_mg2_l1.w3d
      c_gdi_mg2_l2.w3d
      c_gdi_mg2_l3.w3d
      c_gdi_mgo.dds
      c_gdi_mgo_.w3d
      c_gdi_mgo_head.w3d
      c_gdi_mgo_l0.w3d
      c_gdi_mgo_l1.w3d
      c_gdi_mgo_l2.w3d
      c_gdi_mgo_l3.w3d
      c_gdi_mobi_.w3d
      c_gdi_mobi_head.w3d
      c_gdi_mobi_l0.w3d
      c_gdi_mobi_l1.w3d
      c_gdi_mobi_l2.w3d
      c_gdi_mobi_l3.w3d
      c_gdi_mp_.w3d
      c_gdi_mp_head.w3d
      c_gdi_mp_l0.w3d
      c_gdi_mp_l1.w3d
      c_gdi_mp_l2.w3d
      c_gdi_mp_l3.w3d
      c_gdi_mutant.dds
      c_gdi_mutant_.w3d
      c_gdi_mutant_l0.w3d
      c_gdi_mutant_l1.w3d
      c_gdi_mutant_l2.w3d
      c_gdi_mutant_l3.w3d
      c_gdi_pr_.w3d
      c_gdi_pr_head.w3d
      c_gdi_pr_l0.w3d
      c_gdi_pr_l1.w3d
      c_gdi_pr_l2.w3d
      c_gdi_pr_l3.w3d
      c_gdi_pr1_.w3d
      c_gdi_pr1_head.w3d
      c_gdi_pr1_l0.w3d
      c_gdi_pr1_l1.w3d
      c_gdi_pr1_l2.w3d
      c_gdi_pr1_l3.w3d
      c_gdi_pr2_head.w3d
      c_gdi_ptch_.w3d
      c_gdi_ptch_head.w3d
      c_gdi_ptch_l0.w3d
      c_gdi_ptch_l1.w3d
      c_gdi_ptch_l2.w3d
      c_gdi_ptch_l3.w3d
      c_gdi_pwsuit_.w3d
      c_gdi_pwsuit_l0.w3d
      c_gdi_pwsuit_l1.w3d
      c_gdi_pwsuit_l2.w3d
      c_gdi_pwsuit_l3.w3d
      c_gdi_pwsut2_.w3d
      c_gdi_pwsut2_l0.w3d
      c_gdi_pwsut2_l1.w3d
      c_gdi_pwsut2_l2.w3d
      c_gdi_pwsut2_l3.w3d
      c_gdi_rk_.w3d
      c_gdi_rk_head.w3d
      c_gdi_rk_l0.w3d
      c_gdi_rk_l1.w3d
      c_gdi_rk_l2.w3d
      c_gdi_rk_l3.w3d
      c_gdi_rko_.w3d
      c_gdi_rko_head.w3d
      c_gdi_rko_l0.w3d
      c_gdi_rko_l1.w3d
      c_gdi_rko_l2.w3d
      c_gdi_rko_l3.w3d
      c_gdi_rkt.dds
      c_gdi_syd_.w3d
      c_gdi_syd_head.w3d
      c_gdi_syd_l0.w3d
      c_gdi_syd_l1.w3d
      c_gdi_syd_l2.w3d
      c_gdi_syd_l3.w3d
      c_gdi_syd1.dds
      c_gdi_syd2.dds
      c_gdi_syd2_.w3d
      c_gdi_syd2_1.dds
      c_gdi_syd2_3.dds
      c_gdi_syd2_l0.w3d
      c_gdi_syd2_l1.w3d
      c_gdi_syd2_l2.w3d
      c_gdi_syd2_l3.w3d
      c_havoc_head.w3d
      c_havocd_head.w3d
      c_havocn_head.w3d
      c_havocw_head.w3d
      c_labtec1_head.w3d
      c_labtec2_head.w3d
      c_labtec3_head.w3d
      c_logan_head.w3d
      c_minigun1.dds
      c_minigun2.dds
      c_minigun3.dds
      c_minigun4.dds
      c_mserv1_head.w3d
      c_mserv2_head.w3d
      c_n_1stm_head.w3d
      c_nod_en_head.dds
      c_nod_en_head.w3d
      c_nod_flametank.w3d
      c_nod_kane_head.w3d
      c_nod_ksma_head.w3d
      c_nod_mdz_head.w3d
      c_nod_mdz2_head.w3d
      c_nod_mg_head.dds
      c_nod_mg_head.w3d
      c_nod_mgo_head.dds
      c_nod_mgo_head.w3d
      c_nod_mrav_head.w3d
      c_nod_petm_head.w3d
      c_nod_petr_head.w3d
      c_nod_rav_head.w3d
      c_nod_saku_head.w3d
      c_nod_seac_head.w3d
      c_nod_sf_rsold.dds
      c_nod_tc_head.dds
      c_nod_tc_head.w3d
      c_Slim.tga
      C_Slim.W3D
      capflag.wav
      cc_bldg1.dds
      cc_bldg2.dds
      cc_bldg3.dds
      cc_bldg4.dds
      cc_conc1.dds
      cc_conc2.dds
      cc_conc3.dds
      cc_conc4.dds
      cc_rdsign.dds
      cc_road2.dds
      Chair.W3D
      civ1_head.dds
      civ2_head.dds
      civ3_head.dds
      civdead1.wav
      cursor_action.dds
      cursor_arrow.dds
      cursor_busy.dds
      cursor_pan_up.dds
      cursor_rotate.dds
      cursor_text.dds
      cx_nod_sk_head.w3d
      d_bh_s_brick1.dds
      d_bh_s_brick2.dds
      d_bh_s_brick3.dds
      d_bh_s_dirt1.dds
      d_bh_s_dirt2.dds
      d_bh_s_dirt3.dds
      d_bh_s_glass1.dds
      d_bh_s_glass2.dds
      d_bh_s_glass3.dds
      d_bh_s_metal1.dds
      d_bh_s_metal2.dds
      d_bh_s_metal3.dds
      d_bh_s_mud1.dds
      d_bh_s_mud2.dds
      d_bh_s_mud3.dds
      d_bh_s_sand1.dds
      d_bh_s_sand2.dds
      d_bh_s_sand3.dds
      d_bh_s_snow1.dds
      d_bh_s_snow2.dds
      d_bh_s_snow3.dds
      d_bh_s_wood1.dds
      d_bh_s_wood2.dds
      d_bh_s_wood3.dds
      deadtree1.dds
      death01.wav
      death01_reverb.wav
      death02.wav
      death02_reverb.wav
      death03.wav
      death03_reverb.wav
      deathtransitioneffect.dds
      door.tga
      door01.tga
      draw.tga
      dropflag.wav
      dsp_dead_bush.w3d
      dsp_deadbush.dds
      dsp_flag.w3d
      dsp_miniconsel.w3d
      dsp_nodflag.w3d
      dsp_nodflag2.w3d
      dsp_small_dead.w3d
      dsp_woodworld.tga
      e_01_dfsmoke.w3d
      e_19_aflame1.w3d
      e_19_arock1.w3d
      e_19_asmk1.w3d
      e_19_brigexp1.w3d
      e_19_brigexp2.w3d
      e_19_brigsmk1.w3d
      e_19_chgflar1.w3d
      e_19_chgflar2.w3d
      e_19_chgflar3.w3d
      e_19_ex3big.w3d
      e_19_ex4big.w3d
      e_19_expld1a.w3d
      e_19_explode1.w3d
      e_19_explode2.w3d
      e_19_explode2a.w3d
      e_19_explode2c.w3d
      e_19_explode3a.w3d
      e_19_explode3b.w3d
      e_19_explode7.w3d
      e_19_exsprk1a.w3d
      e_19_exsprk2a.w3d
      e_19_fire1.w3d
      e_19_fire2.w3d
      e_19_fire3.w3d
      e_19_fire4.w3d
      e_19_fire5.w3d
      e_19_fire7b.w3d
      e_19_flame6a.w3d
      e_19_flare1.w3d
      e_19_flare1a.w3d
      e_19_humexp1.w3d
      e_19_humexp2.w3d
      e_19_humsmk1.w3d
      e_19_ionxpl.w3d
      e_19_ionxpl2.w3d
      e_19_ionxpl3.w3d
      e_19_newexp1.w3d
      e_19_newexp2.w3d
      e_19_newexp3.w3d
      e_19_newexp4.w3d
      e_19_newsmk1.w3d
      e_19_newsmk2.w3d
      e_19_nexp1a.w3d
      e_19_obelex1.w3d
      e_19_obelex2.w3d
      e_19_obelex3.w3d
      e_19_obfire2.w3d
      e_19_refsprk1.w3d
      e_19_rockp1a.w3d
      e_19_smfiretrl.w3d
      e_19_smoke1.w3d
      e_19_smoke2.w3d
      e_19_smoke2a1.w3d
      e_19_smoke3.w3d
      e_19_smoke4.w3d
      e_19_smolder1.w3d
      e_19_smolder2a.w3d
      e_19_sparks1.w3d
      e_19_sparks2.w3d
      e_19_sparks3a.w3d
      e_19_tibcp1a.w3d
      e_19_tibcp1b.w3d
      e_19_tibsmk1.w3d
      e_19_volspk.w3d
      e_19_woodp.w3d
      e_beam_1.dds
      e_beam_2.dds
      e_beam_3.dds
      e_beam_noise.dds
      e_beam_noise_1.dds
      e_biggun1.w3d
      e_blcktrial.w3d
      e_blu_tib_mist.w3d
      e_blu_tib_mist1.w3d
      e_brlblksmk.w3d
      e_brlorgexp.w3d
      e_brlorgexp2.w3d
      e_brlrckexp.w3d
      e_brlspkexp.w3d
      e_brlwhtexp.w3d
      e_brlwhtexp2.w3d
      e_c130smoke.w3d
      e_c4_disarm_smk.w3d
      e_c4_fire12.w3d
      e_c4_fire6.w3d
      e_c4_smoke.w3d
      e_c4_smoketrail.w3d
      e_cannon.w3d
      e_cannon-mist.w3d
      e_canon-flame.w3d
      e_cbubble1.w3d
      e_chemweapon.w3d
      e_chopperdust1.w3d
      e_com_pressure.w3d
      e_coreflare2.w3d
      e_coreshower.w3d
      e_coresmok2.w3d
      e_corespark2.w3d
      e_damage25.w3d
      e_damage50.w3d
      e_dirt2.w3d
      e_down_vent.w3d
      e_dsp_fire.w3d
      e_dsp_firebig.w3d
      e_dsp_firebig2.w3d
      e_dsp_smokebig.w3d
      e_dsp_steam.w3d
      e_dsp_tibgas.w3d
      e_dsp_tibtree.w3d
      e_dsp_water.w3d
      e_dsp_waterbig.w3d
      e_e3biketire.w3d
      e_e3introspark.w3d
      e_e3strifpuffs.w3d
      e_efctspark.w3d
      e_effflare1.w3d
      e_effflare2.w3d
      e_effflare3.w3d
      e_elecsmok2.w3d
      e_electric01.w3d
      e_electric02.w3d
      e_electric03.w3d
      e_electric04.w3d
      e_exp_ballfire1.w3d
      e_exp_dirt01.w3d
      e_exp_dirt02.w3d
      e_exp_ring01.w3d
      e_exp_trail01.w3d
      e_exp_vertcol01.w3d
      e_explode1.w3d
      e_explode2.w3d
      e_explode3.w3d
      e_falldust1.w3d
      e_fallfire1.w3d
      e_fallrock1.w3d
      e_falls_down.w3d
      e_fallwood1.w3d
      e_fiery_ex06mtr.w3d
      e_fiery_ex10mtr.w3d
      e_fiery_ex16mtr.w3d
      e_fiery_fall.w3d
      e_fiery_flame.w3d
      e_fiery_smoke.w3d
      e_flame.w3d
      e_flame01.w3d
      e_flame02.w3d
      e_flame03.w3d
      e_flame04.w3d
      e_flame6.w3d
      e_flametank.w3d
      e_flamethrower.w3d
      e_flare01.w3d
      e_flare02.w3d
      e_flare1.w3d
      e_flare2.w3d
      e_flare5.w3d
      e_flareexp.w3d
      e_flaresm.w3d
      e_flesh1.w3d
      e_flesh2.w3d
      e_gen_grass.w3d
      e_gen_mud.w3d
      e_gen_tiberium.w3d
      e_glass01.w3d
      e_glass02.w3d
      e_glassdust.w3d
      e_grass1.w3d
      e_grass2.w3d
      e_grdorgexp2sm.w3d
      e_grdorgexpsm.w3d
      e_grdwhtexp2sm.w3d
      e_grdwhtexp3sm.w3d
      e_grdwhtexpsm.w3d
      e_greydust.w3d
      e_grnblobssm.w3d
      e_grnexp3sm.w3d
      e_grnexp4sm.w3d
      e_grnoutsmk2sm.w3d
      e_horzarc1.w3d
      e_hrz_pwr.w3d
      e_huv_bigxplod.w3d
      e_huvfoam.w3d
      e_ion_explode1.w3d
      e_ion_fireball.w3d
      e_ion_smoke.w3d
      e_ion_sparks.w3d
      e_iongun_charge.w3d
      e_lavballfire_1.w3d
      e_lavballfire_2.w3d
      e_lavballfire_3.w3d
      e_lavballsmk_1.w3d
      e_lavballsmk_2.w3d
      e_lavballsmk_3.w3d
      e_lavballspk.w3d
      e_lavballspk_2.w3d
      e_laz_flesh.w3d
      e_laz_glass.w3d
      e_laz_metal.w3d
      e_laz_rock.w3d
      e_laz_sand.w3d
      e_laz_slag.w3d
      e_laz_snow.w3d
      e_laz_wood.w3d
      e_logsparks.w3d
      e_low-mist.w3d
      e_lv01-explode.w3d
      e_master01.dds
      e_mech_damage01.w3d
      e_mendoza_gun01.w3d
      e_metal1.w3d
      e_metal2.w3d
      e_metal3.w3d
      e_misl-contrail.w3d
      e_mist3.w3d
      e_mud3.w3d
      e_muz_rail1.w3d
      e_mz_50mm.w3d
      e_mz_electric.w3d
      e_mz_electric2.w3d
      e_mz_fire_x.w3d
      e_mz_sam1.w3d
      e_mz_smoke_x.w3d
      e_mz_smoke_x2.w3d
      e_mz_smoke_x3.w3d
      e_mz_smoke_x4.w3d
      e_mz_tank1.w3d
      e_mz_tib_x.w3d
      e_ob_power.w3d
      e_ob_redburn.w3d
      e_ob_redstar.w3d
      e_ob_smoke.w3d
      e_ob_sparks1.w3d
      e_obl_fx1.w3d
      e_outsmksm.w3d
      e_perm_electric.w3d
      e_perm_flame.w3d
      e_perm_foliage.w3d
      e_perm_steam.w3d
      e_pp_coresmk.w3d
      e_pressure.w3d
      e_pwr_smoke.w3d
      e_pwr_smoke2.w3d
      e_ref_fire.w3d
      e_rise.w3d
      e_rise_heat.w3d
      e_rock.w3d
      e_rockettrail.w3d
      e_rockp.w3d
      e_s19_smoke6b.w3d
      e_sand.w3d
      e_sig-flare_gld.w3d
      e_smk_black1.w3d
      e_smoke2.w3d
      e_smoke6.w3d
      e_smolder1.w3d
      e_snowblow.w3d
      e_snowclump.w3d
      e_spark_float.w3d
      e_spark2.w3d
      e_spark3.w3d
      e_sparkexpsm.w3d
      e_sparks.w3d
      e_sparks1.w3d
      e_sparks2.w3d
      e_sparks3.w3d
      e_splash1.w3d
      e_splash-big.w3d
      e_splash-big2.w3d
      e_splash-mist.w3d
      e_spls-big2.w3d
      e_spray.w3d
      e_stars.w3d
      e_tboil-mist.w3d
      e_tib_bullet.w3d
      e_tib_down.w3d
      e_tib_dump.w3d
      e_tib_hit.w3d
      e_tib_low-mist.w3d
      e_tib_rifl_exp1.w3d
      e_tib_shards1.w3d
      e_tib_trail.w3d
      e_tiber_mix.w3d
      e_tiberium1.w3d
      e_tiberium2.w3d
      e_tiberium3.w3d
      e_tiberium4.w3d
      e_tiberium5.w3d
      e_tiberium6.w3d
      e_tiberium7.w3d
      e_tk_roll_dirt.w3d
      e_tk_roll_mud.w3d
      e_tk_roll_sand.w3d
      e_tk_roll_snow.w3d
      e_tk_roll_tib.w3d
      e_tk_roll_water.w3d
      e_tk_sld_conc.w3d
      e_tk_sld_dirt.w3d
      e_tk_sld_grass.w3d
      e_tk_sld_ice.w3d
      e_tk_sld_ltmtl.w3d
      e_tk_sld_mud.w3d
      e_tk_sld_rock.w3d
      e_tk_sld_sand.w3d
      e_tk_sld_snow.w3d
      e_tk_sld_tib.w3d
      e_tk_sld_water.w3d
      e_tk_sld_wood.w3d
      e_tlow-mist.w3d
      e_tr_roll_dirt.w3d
      e_tr_roll_mud.w3d
      e_tr_roll_sand.w3d
      e_tr_roll_snow.w3d
      e_tr_roll_tib.w3d
      e_tr_roll_water.w3d
      e_tr_sld_conc.w3d
      e_tr_sld_dirt.w3d
      e_tr_sld_grass.w3d
      e_tr_sld_hvymtl.w3d
      e_tr_sld_ice.w3d
      e_tr_sld_ltmt.w3d
      e_tr_sld_mud.w3d
      e_tr_sld_rock.w3d
      e_tr_sld_sand.w3d
      e_tr_sld_snow.w3d
      e_tr_sld_tib.w3d
      e_tr_sld_water.w3d
      e_tr_sld_wood.w3d
      e_trailfire_1.w3d
      e_trailsmk_1.w3d
      e_tshell_exp01.w3d
      e_tshell_exp02.w3d
      e_tshell_exp03.w3d
      e_tshell_exp05.w3d
      e_tshell_exp06.w3d
      e_tshell_trail1.w3d
      e_tshell_trail2.w3d
      e_tshell_trail3.w3d
      e_v-arc1.w3d
      e_v-arc2.w3d
      e_volc-smoke.w3d
      e_volfire.w3d
      e_vollava.w3d
      e_volsmk1.w3d
      e_water.w3d
      e_water_ring10.w3d
      e_water2.w3d
      e_water3.w3d
      e_water4.w3d
      e_waterbubble1.w3d
      e_watertrail1.w3d
      e_wep_fx1.w3d
      e_wep_fx2.w3d
      e_whitesmoke1.w3d
      e_wood1exp.w3d
      e_wood1sm.w3d
      e_wood2.w3d
      e_wood2exp2.w3d
      e_wood2sm.w3d
      e_x_c130boom1.w3d
      e_x_c130boom2.w3d
      e_x_c130fire.w3d
      e_x_c130flare.w3d
      e_x_comrocket.w3d
      e_x_comrocketf.w3d
      e_x_comrockets.w3d
      e_x3_splash.w3d
      emp_bags.tga
      f_ca_idle.w3d
      f_ca_run.w3d
      f_ca_walk.w3d
      f_cm_c4-r.w3d
      f_cm_chem.w3d
      f_cm_flmt.w3d
      f_cm_gren.w3d
      f_cm_pist.dds
      f_cm_pist.w3d
      f_cm_rail.w3d
      f_cm_rifl.w3d
      f_cm_snip.w3d
      f_cm_tibf.w3d
      f_cm_tibr.w3d
      f_ga_c4-p_fire.w3d
      f_ga_c4-r_enter.w3d
      f_ga_c4-r_exit.w3d
      f_ga_c4-r_fire.w3d
      f_ga_c4-r_idle.w3d
      f_ga_chem_enter.w3d
      f_ga_chem_exit.w3d
      f_ga_chem_fire.w3d
      f_ga_chem_idle.w3d
      f_ga_chem_relod.w3d
      f_ga_chng_efire.w3d
      f_ga_chng_enter.w3d
      f_ga_chng_exit.w3d
      f_ga_chng_fire.w3d
      f_ga_chng_idle.w3d
      f_ga_chng_relod.w3d
      f_ga_flmt_enter.w3d
      f_ga_flmt_exit.w3d
      f_ga_flmt_fire.w3d
      f_ga_flmt_idle.w3d
      f_ga_flmt_relod.w3d
      f_ga_gren_enter.w3d
      f_ga_gren_exit.w3d
      f_ga_gren_fire.w3d
      f_ga_gren_idle.w3d
      f_ga_gren_relod.w3d
      f_ga_ionb_enter.w3d
      f_ga_ionb_exit.w3d
      f_ga_ionb_fire.w3d
      f_ga_ionb_idle.w3d
      f_ga_ionc_fire.w3d
      f_ga_ionc_idle.w3d
      f_ga_ionc_relod.w3d
      f_ga_lsrg_efire.w3d
      f_ga_lsrg_fire.w3d
      f_ga_nuke_fire.w3d
      f_ga_pist_enter.w3d
      f_ga_pist_exit.w3d
      f_ga_pist_fire.w3d
      f_ga_pist_idle.w3d
      f_ga_pist_relod.w3d
      f_ga_rail_fire.w3d
      f_ga_rail_relod.w3d
      f_ga_ramj_fire.w3d
      f_ga_rifl_enter.w3d
      f_ga_rifl_exit.w3d
      f_ga_rifl_fire.w3d
      f_ga_rifl_idle.w3d
      f_ga_rifl_relod.w3d
      f_ga_rock_enter.w3d
      f_ga_rock_exit.w3d
      f_ga_rock_fire.w3d
      f_ga_rock_idle.w3d
      f_ga_rock_relod.w3d
      f_ga_shot_fire.w3d
      f_ga_snip_enter.w3d
      f_ga_snip_exit.w3d
      f_ga_snip_fire.w3d
      f_ga_snip_idle.w3d
      f_ga_snip_relod.w3d
      f_ga_tibf_relod.w3d
      f_ga_tibr_relod.w3d
      f_gm_c4-p.dds
      f_gm_c4-p.w3d
      f_gm_c4-r.dds
      f_gm_c4-r.w3d
      f_gm_c4-t.dds
      f_gm_c4-t.w3d
      f_gm_chem.dds
      f_gm_chem.w3d
      f_gm_chng.dds
      f_gm_chng.w3d
      f_gm_flmt.dds
      f_gm_flmt.w3d
      f_gm_gren.dds
      f_gm_gren.w3d
      f_gm_ionb.dds
      f_gm_ionb.w3d
      f_gm_ionc.dds
      f_gm_ionc.w3d
      f_gm_lsrg.dds
      f_gm_lsrg.w3d
      f_gm_lsrr.dds
      f_gm_lsrr.w3d
      f_gm_nuke.dds
      f_gm_nuke.w3d
      f_gm_pist.dds
      f_gm_pist.w3d
      f_gm_rail.dds
      f_gm_rail.w3d
      f_gm_ramj.dds
      f_gm_ramj.w3d
      f_gm_rifl.dds
      f_gm_rifl.w3d
      f_gm_rock.dds
      f_gm_rock.w3d
      f_gm_rprg.dds
      f_gm_rprg.w3d
      f_gm_shot.dds
      f_gm_shot.w3d
      f_gm_snip.dds
      f_gm_snip.w3d
      f_gm_tibf.dds
      f_gm_tibf.w3d
      f_gm_tibr.dds
      f_gm_tibr.w3d
      f_gm_volt.dds
      f_gm_volt.w3d
      f_ha_c4-p_enter.w3d
      f_ha_c4-p_exit.w3d
      f_ha_c4-p_fire.w3d
      f_ha_c4-p_idle.w3d
      f_ha_c4-r_enter.w3d
      f_ha_c4-r_exit.w3d
      f_ha_c4-r_fire.w3d
      f_ha_c4-r_idle.w3d
      f_ha_c4-t_enter.w3d
      f_ha_c4-t_exit.w3d
      f_ha_c4-t_fire.w3d
      f_ha_c4-t_idle.w3d
      f_ha_chem_efire.w3d
      f_ha_chem_enter.w3d
      f_ha_chem_exit.w3d
      f_ha_chem_fire.w3d
      f_ha_chem_idle.w3d
      f_ha_chem_relod.w3d
      f_ha_chng_efire.w3d
      f_ha_chng_enter.w3d
      f_ha_chng_exit.w3d
      f_ha_chng_fire.w3d
      f_ha_chng_idle.w3d
      f_ha_chng_relod.w3d
      f_ha_flmt_efire.w3d
      f_ha_flmt_enter.w3d
      f_ha_flmt_exit.w3d
      f_ha_flmt_fire.w3d
      f_ha_flmt_idle.w3d
      f_ha_flmt_relod.w3d
      f_ha_gren_enter.w3d
      f_ha_gren_exit.w3d
      f_ha_gren_fire.w3d
      f_ha_gren_idle.w3d
      f_ha_gren_relod.w3d
      f_ha_ionb_enter.w3d
      f_ha_ionb_exit.w3d
      f_ha_ionb_fire.w3d
      f_ha_ionb_idle.w3d
      f_ha_ionc_enter.w3d
      f_ha_ionc_exit.w3d
      f_ha_ionc_fire.w3d
      f_ha_ionc_idle.w3d
      f_ha_ionc_relod.w3d
      f_ha_lsrg_efire.w3d
      f_ha_lsrg_enter.w3d
      f_ha_lsrg_exit.w3d
      f_ha_lsrg_fire.w3d
      f_ha_lsrg_idle.w3d
      f_ha_lsrg_relod.w3d
      f_ha_lsrr_enter.w3d
      f_ha_lsrr_exit.w3d
      f_ha_lsrr_fire.w3d
      f_ha_lsrr_idle.w3d
      f_ha_lsrr_relod.w3d
      f_ha_nuke_enter.w3d
      f_ha_nuke_exit.w3d
      f_ha_nuke_fire.w3d
      f_ha_nuke_idle.w3d
      f_ha_pist_enter.w3d
      f_ha_pist_exit.w3d
      f_ha_pist_fire.w3d
      f_ha_pist_idle.w3d
      f_ha_pist_relod.w3d
      f_ha_rail_enter.w3d
      f_ha_rail_exit.w3d
      f_ha_rail_fire.w3d
      f_ha_rail_idle.w3d
      f_ha_rail_relod.w3d
      f_ha_ramj_enter.w3d
      f_ha_ramj_exit.w3d
      f_ha_ramj_fire.w3d
      f_ha_ramj_idle.w3d
      f_ha_ramj_relod.w3d
      f_ha_rifl_enter.w3d
      f_ha_rifl_exit.w3d
      f_ha_rifl_fire.w3d
      f_ha_rifl_idle.w3d
      f_ha_rifl_relod.w3d
      f_ha_rock_enter.w3d
      f_ha_rock_exit.w3d
      f_ha_rock_fire.w3d
      f_ha_rock_idle.w3d
      f_ha_rock_relod.w3d
      f_ha_rprg_enter.w3d
      f_ha_rprg_exit.w3d
      f_ha_rprg_fire.w3d
      f_ha_rprg_idle.w3d
      f_ha_shot_enter.w3d
      f_ha_shot_exit.w3d
      f_ha_shot_fire.w3d
      f_ha_shot_idle.w3d
      f_ha_shot_relod.w3d
      f_ha_snip_enter.w3d
      f_ha_snip_exit.w3d
      f_ha_snip_fire.w3d
      f_ha_snip_idle.w3d
      f_ha_snip_relod.w3d
      f_ha_tibf_enter.w3d
      f_ha_tibf_exit.w3d
      f_ha_tibf_fire.w3d
      f_ha_tibf_idle.w3d
      f_ha_tibf_relod.w3d
      f_ha_tibr_enter.w3d
      f_ha_tibr_exit.w3d
      f_ha_tibr_fire.w3d
      f_ha_tibr_idle.w3d
      f_ha_tibr_relod.w3d
      f_ha_volt_enter.w3d
      f_ha_volt_exit.w3d
      f_ha_volt_fire.w3d
      f_ha_volt_idle.w3d
      f_ha_volt_relod.w3d
      f_hm_gdi.w3d
      f_hm_gdi_hands.dds
      f_hm_gdi_wrists.dds
      f_hm_havoc.w3d
      f_hm_nod.w3d
      f_hm_nod_hands.dds
      f_hm_nod_hands.tga
      f_hm_nod_wrists.dds
      f_hm_nod_wrists.tga
      f_skeleton.w3d
      female_death01.wav
      female_death02.wav
      fhead1 copy.dds
      flamethrower_fire.wav
      flamethrower_off.wav
      flamethrower_on.wav
      flamethrower_pilot.wav
      flamethrower_reload_1.wav
      flare01.dds
      font12x16.tga
      font6x8.tga
      font8x8.tga
      font9x12.tga
      fontnew4.tga
      gd_tower.w3d
      gdidead1.wav
      gdirender.dds
      grey_menu.tga
      grill_128.dds
      h_a_412a.w3d
      h_a_422a.w3d
      h_a_4242.w3d
      h_a_4243.w3d
      h_a_4262.w3d
      h_a_4263.w3d
      h_a_432a.w3d
      h_a_601a.w3d
      h_a_611a.w3d
      h_a_612a.w3d
      h_a_613a.w3d
      h_a_622a.w3d
      h_a_623a.w3d
      h_a_624a.w3d
      h_a_631a.w3d
      h_a_632a.w3d
      h_a_633a.w3d
      h_a_634a.w3d
      h_a_635a.w3d
      h_a_690a.w3d
      h_a_691a.w3d
      h_a_692a.w3d
      h_a_693a.w3d
      h_a_6x01.w3d
      h_a_6x03.w3d
      h_a_6x04.w3d
      h_a_6x05.w3d
      h_a_7002.w3d
      h_a_811a.w3d
      h_a_812a.w3d
      h_a_821a.w3d
      h_a_822a.w3d
      h_a_831a.w3d
      h_a_832a.w3d
      h_a_841a.w3d
      h_a_842a.w3d
      h_a_851a.w3d
      h_a_852a.w3d
      h_a_861a.w3d
      h_a_862a.w3d
      h_a_871a.w3d
      h_a_890a.w3d
      h_a_891a.w3d
      h_a_892a.w3d
      h_a_893a.w3d
      h_a_a0a0.w3d
      h_a_a0a0_l01.w3d
      h_a_a0a0_l02.w3d
      h_a_a0a0_l03.w3d
      h_a_a0a0_l04.w3d
      h_a_a0a0_l05.w3d
      h_a_a0a0_l06.w3d
      h_a_a0a0_l10.w3d
      h_a_a0a0_l11.w3d
      h_a_a0a0_l12.w3d
      h_a_a0a0_l13.w3d
      h_a_a0a0_l15.w3d
      h_a_a0a0_l20.w3d
      h_a_a0a0_l21.w3d
      h_a_a0a0_l22.w3d
      h_a_a0a0_l23.w3d
      h_a_a0a0_l24.w3d
      h_a_a0a0_l25.w3d
      h_a_a0a0_l26.w3d
      h_a_a0a0_l26b.w3d
      h_a_a0a0_l26da.w3d
      h_a_a0a0_l26db.w3d
      h_a_a0a0_l26dc.w3d
      h_a_a0a0_l27.w3d
      h_a_a0a0_l28a.w3d
      h_a_a0a0_l28b.w3d
      h_a_a0a0_l28c.w3d
      h_a_a0a0_l29.w3d
      h_a_a0a0_l30.w3d
      h_a_a0a0_l31.w3d
      h_a_a0a0_l32.w3d
      h_a_a0a0_l33.w3d
      h_a_a0a0_l34.w3d
      h_a_a0a0_l35.w3d
      h_a_a0a0_l36.w3d
      h_a_a0a0_l37.w3d
      h_a_a0a0_l38.w3d
      h_a_a0a0_l39.w3d
      h_a_a0a0_l40.w3d
      h_a_a0a0_l41.w3d
      h_a_a0a0_l42.w3d
      h_a_a0a0_l43.w3d
      h_a_a0a0_l44.w3d
      h_a_a0a0_l45.w3d
      h_a_a0a0_l46.w3d
      h_a_a0a0_l47.w3d
      h_a_a0a0_l48.w3d
      h_a_a0a0_l49.w3d
      h_a_a0a0_l50.w3d
      h_a_a0a0_l51.w3d
      h_a_a0a0_l52.w3d
      h_a_a0a0_l53.w3d
      h_a_a0a0_l54.w3d
      h_a_a0a0_l55.w3d
      h_a_a0a0_l56.w3d
      h_a_a0a0_l57.w3d
      h_a_a0a0_l58.w3d
      h_a_a0a0_l59.w3d
      h_a_a0a0_l60.w3d
      h_a_a0a0_l61.w3d
      h_a_a0a0_l62.w3d
      h_a_a0a0_l63.w3d
      h_a_a0a0_l64.w3d
      h_a_a0a0_l65.w3d
      h_a_a0a0_l66.w3d
      h_a_a0a0_l67.w3d
      h_a_a0a0_l68.w3d
      h_a_a0a0_l69.w3d
      h_a_a0a0_l70.w3d
      h_a_a0a0_l71.w3d
      h_a_a0a0_l72.w3d
      h_a_a0a1.w3d
      h_a_a0a1_02.w3d
      h_a_a0a1_03.w3d
      h_a_a0a1_04.w3d
      h_a_a0a1_05.w3d
      h_a_a0a2.w3d
      h_a_a0a3.w3d
      h_a_a0a4.w3d
      h_a_a0a5.w3d
      h_a_a0a6.w3d
      h_a_a0b1.w3d
      h_a_a0b1_02.w3d
      h_a_a0b1_03.w3d
      h_a_a0b1_04.w3d
      h_a_a0b1_05.w3d
      h_a_a0b2.w3d
      h_a_a0b3.w3d
      h_a_a0b4.w3d
      h_a_a0c0.w3d
      h_a_a0c1.w3d
      h_a_a0c2.w3d
      h_a_a0c3.w3d
      h_a_a0c4.w3d
      h_a_a0c5.w3d
      h_a_a0c6.w3d
      h_a_a0d0.w3d
      h_a_a0d3.w3d
      h_a_a0d4.w3d
      h_a_a0e1.w3d
      h_a_a0e2.w3d
      h_a_a0f0.w3d
      h_a_a0j0.w3d
      h_a_a0j1.w3d
      h_a_a0j1_01.w3d
      h_a_a0j2.w3d
      h_a_a0j3.w3d
      h_a_a0j4.w3d
      h_a_a0l0.w3d
      h_a_a0l1.w3d
      h_a_a0l2.w3d
      h_a_a0l3.w3d
      h_a_a0l4.w3d
      h_a_a0s0.w3d
      h_a_b0a0.w3d
      h_a_b0a0_l05.w3d
      h_a_b0a0_l15.w3d
      h_a_b0a1.w3d
      h_a_b0a1_02.w3d
      h_a_b0a1_03.w3d
      h_a_b0a1_04.w3d
      h_a_b0a1_05.w3d
      h_a_b0a2.w3d
      h_a_b0a3.w3d
      h_a_b0a4.w3d
      h_a_b0a5.w3d
      h_a_b0a6.w3d
      h_a_b0b1.w3d
      h_a_b0b1_02.w3d
      h_a_b0b1_03.w3d
      h_a_b0b1_04.w3d
      h_a_b0b1_05.w3d
      h_a_b0b2.w3d
      h_a_b0b3.w3d
      h_a_b0b4.w3d
      h_a_b0c0.w3d
      h_a_b0c1.w3d
      h_a_b0c2.w3d
      h_a_b0c3.w3d
      h_a_b0c4.w3d
      h_a_b0c5.w3d
      h_a_b0c6.w3d
      h_a_b0d0.w3d
      h_a_b0d3.w3d
      h_a_b0d4.w3d
      h_a_b0j0.w3d
      h_a_b0j1.w3d
      h_a_b0j2.w3d
      h_a_b0j3.w3d
      h_a_b0j4.w3d
      h_a_b0l0.w3d
      h_a_b0l1.w3d
      h_a_b0l2.w3d
      h_a_b0l3.w3d
      h_a_b0l4.w3d
      h_a_bodyslam.w3d
      h_a_c0a1_02.w3d
      h_a_c0a1_03.w3d
      h_a_c0a1_04.w3d
      h_a_c0a1_05.w3d
      h_a_c0b1_02.w3d
      h_a_c0b1_03.w3d
      h_a_c0b1_04.w3d
      h_a_c0b1_05.w3d
      h_a_c1a0.w3d
      h_a_c1a1.w3d
      h_a_c1a2.w3d
      h_a_c1a3.w3d
      h_a_c1a4.w3d
      h_a_c1a5.w3d
      h_a_c1a6.w3d
      h_a_c1b1.w3d
      h_a_c1b2.w3d
      h_a_c1b3.w3d
      h_a_c1b4.w3d
      h_a_c1c0.w3d
      h_a_c1c1.w3d
      h_a_c1c2.w3d
      h_a_c1c3.w3d
      h_a_c1c4.w3d
      h_a_c1c5.w3d
      h_a_c1c6.w3d
      h_a_c1d0.w3d
      h_a_c1j0.w3d
      h_a_c1j1.w3d
      h_a_c1j2.w3d
      h_a_c1j3.w3d
      h_a_c1j4.w3d
      h_a_c1l0.w3d
      h_a_c1l1.w3d
      h_a_c1l2.w3d
      h_a_c1l3.w3d
      h_a_c1l4.w3d
      h_a_c2a0.w3d
      h_a_c2a1.w3d
      h_a_c2a2.w3d
      h_a_c2a3.w3d
      h_a_c2a4.w3d
      h_a_c2a5.w3d
      h_a_c2a6.w3d
      h_a_c2b1.w3d
      h_a_c2b2.w3d
      h_a_c2b3.w3d
      h_a_c2b4.w3d
      h_a_c2c0.w3d
      h_a_c2c1.w3d
      h_a_c2c2.w3d
      h_a_c2c3.w3d
      h_a_c2c4.w3d
      h_a_c2c5.w3d
      h_a_c2c6.w3d
      h_a_c2d0.w3d
      h_a_c2d3.w3d
      h_a_c2d4.w3d
      h_a_c2g0.w3d
      h_a_c2j0.w3d
      h_a_c2j1.w3d
      h_a_c2j2.w3d
      h_a_c2j3.w3d
      h_a_c2j4.w3d
      h_a_c2l0.w3d
      h_a_c2l1.w3d
      h_a_c2l2.w3d
      h_a_c2l3.w3d
      h_a_c2l4.w3d
      h_a_c3a0.w3d
      h_a_c3a1.w3d
      h_a_c3a2.w3d
      h_a_c3a3.w3d
      h_a_c3a4.w3d
      h_a_c3a5.w3d
      h_a_c3a6.w3d
      h_a_c3b1.w3d
      h_a_c3b2.w3d
      h_a_c3b3.w3d
      h_a_c3b4.w3d
      h_a_c3c0.w3d
      h_a_c3c1.w3d
      h_a_c3c2.w3d
      h_a_c3c3.w3d
      h_a_c3c4.w3d
      h_a_c3c5.w3d
      h_a_c3c6.w3d
      h_a_c3d0.w3d
      h_a_c3j0.w3d
      h_a_c3j1.w3d
      h_a_c3j2.w3d
      h_a_c3j3.w3d
      h_a_c3j4.w3d
      h_a_c3l0.w3d
      h_a_c3l1.w3d
      h_a_c3l2.w3d
      h_a_c3l3.w3d
      h_a_c3l4.w3d
      h_a_con1.w3d
      h_a_con2.w3d
      h_a_cresentkick.w3d
      h_a_d11a.w3d
      h_a_d1a0.w3d
      h_a_d1a1.w3d
      h_a_d1a2.w3d
      h_a_d1a3.w3d
      h_a_d1a4.w3d
      h_a_d1a5.w3d
      h_a_d1a6.w3d
      h_a_d1b1.w3d
      h_a_d1b2.w3d
      h_a_d1b3.w3d
      h_a_d1b4.w3d
      h_a_d1c0.w3d
      h_a_d1c1.w3d
      h_a_d1c2.w3d
      h_a_d1c3.w3d
      h_a_d1c4.w3d
      h_a_d1c5.w3d
      h_a_d1c6.w3d
      h_a_d1d0.w3d
      h_a_d1j0.w3d
      h_a_d1j1.w3d
      h_a_d1j2.w3d
      h_a_d1j3.w3d
      h_a_d1j4.w3d
      h_a_d1l0.w3d
      h_a_d1l1.w3d
      h_a_d1l2.w3d
      h_a_d1l3.w3d
      h_a_d1l4.w3d
      h_a_d2a0.w3d
      h_a_d2a1.w3d
      h_a_d2a2.w3d
      h_a_d2a3.w3d
      h_a_d2a4.w3d
      h_a_d2a5.w3d
      h_a_d2a6.w3d
      h_a_d2b1.w3d
      h_a_d2b2.w3d
      h_a_d2b3.w3d
      h_a_d2b4.w3d
      h_a_d2c0.w3d
      h_a_d2c1.w3d
      h_a_d2c2.w3d
      h_a_d2c3.w3d
      h_a_d2c4.w3d
      h_a_d2c5.w3d
      h_a_d2c6.w3d
      h_a_d2d0.w3d
      h_a_d2d3.w3d
      h_a_d2d4.w3d
      h_a_d2g0.w3d
      h_a_d2j0.w3d
      h_a_d2j1.w3d
      h_a_d2j2.w3d
      h_a_d2j3.w3d
      h_a_d2j4.w3d
      h_a_d2l0.w3d
      h_a_d2l1.w3d
      h_a_d2l2.w3d
      h_a_d2l3.w3d
      h_a_d2l4.w3d
      h_a_d3a0.w3d
      h_a_d3a1.w3d
      h_a_d3a2.w3d
      h_a_d3a3.w3d
      h_a_d3a4.w3d
      h_a_d3a5.w3d
      h_a_d3a6.w3d
      h_a_d3b1.w3d
      h_a_d3b2.w3d
      h_a_d3b3.w3d
      h_a_d3b4.w3d
      h_a_d3c0.w3d
      h_a_d3c1.w3d
      h_a_d3c2.w3d
      h_a_d3c3.w3d
      h_a_d3c4.w3d
      h_a_d3c5.w3d
      h_a_d3c6.w3d
      h_a_d3d0.w3d
      h_a_d3j0.w3d
      h_a_d3j1.w3d
      h_a_d3j2.w3d
      h_a_d3j3.w3d
      h_a_d3j4.w3d
      h_a_d3l0.w3d
      h_a_d3l1.w3d
      h_a_d3l2.w3d
      h_a_d3l3.w3d
      h_a_d3l4.w3d
      h_a_deathblast.w3d
      h_a_deathblast2.w3d
      h_a_div1.w3d
      h_a_div2.w3d
      h_a_div3.w3d
      h_a_div4.w3d
      h_a_draw.w3d
      h_a_drawc.w3d
      h_a_dsh1.w3d
      h_a_dsh2.w3d
      h_a_dsh3.w3d
      h_a_dsh4.w3d
      h_a_f1a0.w3d
      h_a_f1a1.w3d
      h_a_f1a2.w3d
      h_a_f1a3.w3d
      h_a_f1a4.w3d
      h_a_f1a5.w3d
      h_a_f1a6.w3d
      h_a_f1b1.w3d
      h_a_f1b2.w3d
      h_a_f1b3.w3d
      h_a_f1b4.w3d
      h_a_f1c0.w3d
      h_a_f1c1.w3d
      h_a_f1c2.w3d
      h_a_f1c3.w3d
      h_a_f1c4.w3d
      h_a_f1c5.w3d
      h_a_f1c6.w3d
      h_a_f1d0.w3d
      h_a_f1j0.w3d
      h_a_f1j1.w3d
      h_a_f1j2.w3d
      h_a_f1j3.w3d
      h_a_f1j4.w3d
      h_a_f1l0.w3d
      h_a_f1l1.w3d
      h_a_f1l2.w3d
      h_a_f1l3.w3d
      h_a_f1l4.w3d
      h_a_f2a0.w3d
      h_a_f2a1.w3d
      h_a_f2a2.w3d
      h_a_f2a3.w3d
      h_a_f2a4.w3d
      h_a_f2a5.w3d
      h_a_f2a6.w3d
      h_a_f2b1.w3d
      h_a_f2b2.w3d
      h_a_f2b3.w3d
      h_a_f2b4.w3d
      h_a_f2c0.w3d
      h_a_f2c1.w3d
      h_a_f2c2.w3d
      h_a_f2c3.w3d
      h_a_f2c4.w3d
      h_a_f2c5.w3d
      h_a_f2c6.w3d
      h_a_f2d0.w3d
      h_a_f2d3.w3d
      h_a_f2d4.w3d
      h_a_f2g0.w3d
      h_a_f2j0.w3d
      h_a_f2j1.w3d
      h_a_f2j2.w3d
      h_a_f2j3.w3d
      h_a_f2j4.w3d
      h_a_f2l0.w3d
      h_a_f2l1.w3d
      h_a_f2l2.w3d
      h_a_f2l3.w3d
      h_a_f2l4.w3d
      h_a_f3a0.w3d
      h_a_f3a1.w3d
      h_a_f3a2.w3d
      h_a_f3a3.w3d
      h_a_f3a4.w3d
      h_a_f3a5.w3d
      h_a_f3a6.w3d
      h_a_f3b1.w3d
      h_a_f3b2.w3d
      h_a_f3b3.w3d
      h_a_f3b4.w3d
      h_a_f3c0.w3d
      h_a_f3c1.w3d
      h_a_f3c2.w3d
      h_a_f3c3.w3d
      h_a_f3c4.w3d
      h_a_f3c5.w3d
      h_a_f3c6.w3d
      h_a_f3d0.w3d
      h_a_f3j0.w3d
      h_a_f3j1.w3d
      h_a_f3j2.w3d
      h_a_f3j3.w3d
      h_a_f3j4.w3d
      h_a_f3l0.w3d
      h_a_f3l1.w3d
      h_a_f3l2.w3d
      h_a_f3l3.w3d
      h_a_f3l4.w3d
      h_a_fal8.w3d
      h_a_flma.w3d
      h_a_flmb.w3d
      h_a_flmc.w3d
      h_a_flp1.w3d
      h_a_flp3.w3d
      h_a_flp4.w3d
      h_a_fly1.w3d
      h_a_fly2.w3d
      h_a_fly3.w3d
      h_a_fly4.w3d
      h_a_flykick.w3d
      h_a_g0a1_01.w3d
      h_a_g0b1_01.w3d
      h_a_h0b1_01.w3d
      h_a_h11c.w3d
      h_a_h12c.w3d
      h_a_h13c.w3d
      h_a_host_l1a.w3d
      h_a_host_l1b.w3d
      h_a_host_l1c.w3d
      h_a_host_l2a.w3d
      h_a_host_l2b.w3d
      h_a_host_l2c.w3d
      h_a_host_l3a.w3d
      h_a_host_l3b.w3d
      h_a_host_l3c.w3d
      h_a_i0b1_01.w3d
      h_a_j01c.w3d
      h_a_j04c.w3d
      h_a_j08c.w3d
      h_a_j0b1_01.w3d
      h_a_j11c.w3d
      h_a_j12c.w3d
      h_a_j13a.w3d
      h_a_j13b.w3d
      h_a_j13c.w3d
      h_a_j14c.w3d
      h_a_j15c.w3d
      h_a_j17c.w3d
      h_a_j18c.w3d
      h_a_j19a.w3d
      h_a_j19b.w3d
      h_a_j19c.w3d
      h_a_j19s.w3d
      h_a_j20a.w3d
      h_a_j20b.w3d
      h_a_j20c.w3d
      h_a_j21c.w3d
      h_a_j22c.w3d
      h_a_j23c.w3d
      h_a_j24c.w3d
      h_a_j26c.w3d
      h_a_j27c.w3d
      h_a_j33c.w3d
      h_a_j43a.w3d
      h_a_j43b.w3d
      h_a_j43c.w3d
      h_a_j99a.w3d
      h_a_j99b.w3d
      h_a_j99c.w3d
      h_a_legpain.w3d
      h_a_punchcombo.w3d
      h_a_sidekick.w3d
      h_a_sld1_01.w3d
      h_a_sld1_02.w3d
      h_a_sld2_01.w3d
      h_a_sld2_02.w3d
      h_a_sld3_00.w3d
      h_a_sld3_01.w3d
      h_a_sld3_02.w3d
      h_a_sld4_00.w3d
      h_a_sld4_01.w3d
      h_a_sld4_02.w3d
      h_a_troop1a.w3d
      h_a_troop1b.w3d
      h_a_troop1c.w3d
      h_a_troop2.w3d
      h_a_troopdrop.w3d
      h_a_v42a.w3d
      h_a_v62a.w3d
      h_a_x1e_run.w3d
      h_a_x33c.w3d
      h_a_x5d_parat_1.w3d
      h_a_x5d_parat_2.w3d
      h_a_x5d_parat_3.w3d
      h_a_x9c_suit.w3d
      h_a_xg_napc_out.w3d
      h_b_a0a0.w3d
      h_b_a0a0_02.w3d
      h_b_a0a0_03.w3d
      h_b_a0a0_04.w3d
      h_b_a0a0_05.w3d
      h_b_a0a0_06.w3d
      h_b_a0a0_07.w3d
      h_b_a0a0_08.w3d
      h_b_a0a0_09.w3d
      h_b_a0a0_10.w3d
      h_b_a0a0_11.w3d
      h_b_a0a0_12.w3d
      h_b_a0a0_13.w3d
      h_b_a0a0_14.w3d
      h_b_a0a1.w3d
      h_b_a0a1_00.w3d
      h_b_a0a1_01.w3d
      h_b_a0a1_02.w3d
      h_b_a0a1_03.w3d
      h_b_a0a1_04.w3d
      h_b_a0a2.w3d
      h_b_a0a3.w3d
      h_b_a0a4.w3d
      h_b_a0b1.w3d
      h_b_a0b1_01.w3d
      h_b_a0b1_02.w3d
      h_b_a0b1_03.w3d
      h_b_a0b1_04.w3d
      h_b_a0b2.w3d
      h_b_a0b3.w3d
      h_b_a0b4.w3d
      h_b_b0a1.w3d
      h_b_b0a2.w3d
      h_b_b0a3.w3d
      h_b_b0a4.w3d
      h_b_b0b1.w3d
      h_b_b0b2.w3d
      h_b_b0b3.w3d
      h_b_b0b4.w3d
      h_b_c1a0.w3d
      h_b_c1a1.w3d
      h_b_c1a2.w3d
      h_b_c1a3.w3d
      h_b_c1a4.w3d
      h_b_c1b1.w3d
      h_b_c1b2.w3d
      h_b_c1b3.w3d
      h_b_c1b4.w3d
      h_b_c2a0.w3d
      h_b_c2a1.w3d
      h_b_c2a2.w3d
      h_b_c2a3.w3d
      h_b_c2a4.w3d
      h_b_c2b1.w3d
      h_b_c2b2.w3d
      h_b_c2b3.w3d
      h_b_c2b4.w3d
      h_b_c3a0.w3d
      h_b_c3a1.w3d
      h_b_c3a2.w3d
      h_b_c3a3.w3d
      h_b_c3a4.w3d
      h_b_c3b1.w3d
      h_b_c3b2.w3d
      h_b_c3b3.w3d
      h_b_c3b4.w3d
      h_b_d1a0.w3d
      h_b_d1a1.w3d
      h_b_d1a2.w3d
      h_b_d1a3.w3d
      h_b_d1a4.w3d
      h_b_d1b1.w3d
      h_b_d1b2.w3d
      h_b_d1b3.w3d
      h_b_d1b4.w3d
      h_b_d2a0.w3d
      h_b_d2a1.w3d
      h_b_d2a2.w3d
      h_b_d2a3.w3d
      h_b_d2a4.w3d
      h_b_d2b1.w3d
      h_b_d2b2.w3d
      h_b_d2b3.w3d
      h_b_d2b4.w3d
      h_b_d3a0.w3d
      h_b_d3a1.w3d
      h_b_d3a2.w3d
      h_b_d3a3.w3d
      h_b_d3a4.w3d
      h_b_d3b1.w3d
      h_b_d3b2.w3d
      h_b_d3b3.w3d
      h_b_d3b4.w3d
      h_b_f1a0.w3d
      h_b_f1a1.w3d
      h_b_f1a2.w3d
      h_b_f1a3.w3d
      h_b_f1a4.w3d
      h_b_f1b1.w3d
      h_b_f1b2.w3d
      h_b_f1b3.w3d
      h_b_f1b4.w3d
      h_b_f2a0.w3d
      h_b_f2a1.w3d
      h_b_f2a2.w3d
      h_b_f2a3.w3d
      h_b_f2a4.w3d
      h_b_f2b1.w3d
      h_b_f2b2.w3d
      h_b_f2b3.w3d
      h_b_f2b4.w3d
      h_b_f3a0.w3d
      h_b_f3a1.w3d
      h_b_f3a2.w3d
      h_b_f3a3.w3d
      h_b_f3a4.w3d
      h_b_f3b1.w3d
      h_b_f3b2.w3d
      h_b_f3b3.w3d
      h_b_f3b4.w3d
      h_c_6001.w3d
      h_c_6002.w3d
      h_c_7001.w3d
      h_c_7002.w3d
      h_c_a0a0_l01.w3d
      h_c_a0a0_l02.w3d
      h_c_a0a0_l03.w3d
      h_c_a0a0_l04.w3d
      h_c_a0a0_l05.w3d
      h_c_a0a0_l06.w3d
      h_c_a0a0_l07.w3d
      h_c_a0a0_l27.w3d
      h_c_a0a0_l29.w3d
      h_c_a0a1.w3d
      h_c_a0a2.w3d
      h_c_a0a3.w3d
      h_c_a0a4.w3d
      h_c_a0b1.w3d
      h_c_a0b2.w3d
      h_c_a0b3.w3d
      h_c_a0b4.w3d
      h_c_tubedie.w3d
      hd_reticle.dds
      hd_reticle_hit.dds
      hnd_flag2.dds
      hnd_flame.w3d
      hud_6x4_icon_default.dds
      hud_6x4_info.dds
      hud_6x4_mainbar.dds
      hud_6x4_messages.dds
      hud_6x4_radar.dds
      hud_6x4_radar_off.dds
      hud_6x4_reticle_01.dds
      hud_6x4_reticle_02.dds
      hud_6x4_reticle_center_01.dds
      hud_6x4_reticle_center_02.dds
      hud_6x4_weapon_01.dds
      hud_6x4_weapon_14.dds
      hud_6x4_weapon_17.dds
      hud_6x4_weapon_18.dds
      hud_6x4_weapon_19.dds
      hud_6x4_weapon_21.dds
      hud_armedal.dds
      hud_armor1.dds
      hud_armor2.dds
      hud_armor3.dds
      hud_autoguns.dds
      hud_autoguns.tga
      hud_c&c_g_barracks.dds
      hud_c&c_g_guardtow.dds
      hud_c&c_g_harvister.dds
      hud_c&c_g_power.dds
      hud_c&c_g_refinery.dds
      hud_c&c_g_warfact.dds
      hud_c&c_gdilogo.dds
      hud_c&c_healthbar.dds
      hud_c&c_n_airstrip.dds
      hud_c&c_n_handof.dds
      hud_c&c_n_harvister.dds
      hud_c&c_n_power.dds
      hud_c&c_n_refinery.dds
      hud_c&c_nodlogo.dds
      hud_c&c_oblisk.dds
      hud_cd_rom.dds
      hud_chainguns.dds
      hud_chatpbox.dds
      hud_chem_fire.dds
      hud_cnc_button.dds
      hud_cnc_g_apc.dds
      hud_cnc_g_equipbuy.dds
      hud_cnc_g_hummer.dds
      hud_cnc_g_mammoth.dds
      hud_cnc_g_mlrs.dds
      hud_cnc_g_orca.dds
      hud_cnc_g_tank.dds
      hud_cnc_g_transport.dds
      hud_cnc_g_vehiclebuy.dds
      hud_cnc_gcharacter.dds
      hud_cnc_gdeadeye.dds
      hud_cnc_gdi_ions.dds
      hud_cnc_gengineer.dds
      hud_cnc_genlistgran.dds
      hud_cnc_genlistmin.dds
      hud_cnc_genlistrock.dds
      hud_cnc_ggunner.dds
      hud_cnc_ghavoc.dds
      hud_cnc_ghavok2.dds
      hud_cnc_ghavok3.dds
      hud_cnc_ghavok4.dds
      hud_cnc_ghotwire.dds
      hud_cnc_gmobiusion.dds
      hud_cnc_gmobiusion2.dds
      hud_cnc_gmutants.dds
      hud_cnc_goffrock.dds
      hud_cnc_goffshot.dds
      hud_cnc_gpatchrail.dds
      hud_cnc_gsydneych.dds
      hud_cnc_gsydneys.dds
      hud_cnc_gsydneys2.dds
      hud_cnc_n_apache.dds
      hud_cnc_n_apc.dds
      hud_cnc_n_artill.dds
      hud_cnc_n_buggy.dds
      hud_cnc_n_equipbuy.dds
      hud_cnc_n_flamet.dds
      hud_cnc_n_ltank.dds
      hud_cnc_n_stealth.dds
      hud_cnc_n_transport.dds
      hud_cnc_n_vehiclebuy.dds
      hud_cnc_nblackrok.dds
      hud_cnc_nblacksnip.dds
      hud_cnc_ncharacter.dds
      hud_cnc_nchemall.dds
      hud_cnc_nengineer.dds
      hud_cnc_nengineer2.dds
      hud_cnc_nenlisauto.dds
      hud_cnc_nenlisrock.dds
      hud_cnc_nflameall.dds
      hud_cnc_nmendvolt.dds
      hud_cnc_nmendvolt2.dds
      hud_cnc_nod_nuke.dds
      hud_cnc_noffrock.dds
      hud_cnc_noffshot.dds
      hud_cnc_nravarock.dds
      hud_cnc_nravarock2.dds
      hud_cnc_nsakuram.dds
      hud_cnc_nsakuram2.dds
      hud_cnc_nstealthlaz.dds
      hud_driverseat.dds
      hud_gdiwinban.w3d
      hud_grana_ionc.dds
      hud_guncircle.dds
      hud_gunseat.dds
      hud_health.dds
      hud_health1.dds
      hud_health2.dds
      hud_health3.dds
      hud_hemedal.dds
      hud_ionbeaken.dds
      hud_keycard_green.dds
      hud_keycard_red.dds
      hud_keycard_yellow.dds
      hud_main.dds
      hud_mystery_crate.dds
      hud_nodwinban.w3d
      hud_nukebeak.dds
      hud_obje_arrow.dds
      hud_objectives.dds
      hud_passseat.dds
      hud_proxyc4.dds
      hud_radar.dds
      hud_ramsentu.dds
      hud_remotec4.dds
      hud_repairgun.dds
      hud_sg_lr_rg.dds
      hud_sniper.dds
      hud_sniperock.dds
      hud_star.dds
      hud_target brackets.dds
      hud_tibflech.dds
      hud_tibrvoltr.dds
      hud_timec4.dds
      hud_winscreen.dds
      i_apache.tga
      i_buggy.tga
      i_chem_troop.dds
      i_flame_tank.tga
      i_flame_troop.dds
      i_hand_of_nod.tga
      i_light_tank.tga
      i_mammoth_tank.tga
      i_orca_fighter.tga
      if_ag_title.w3d
      if_ammo.dds
      if_back01.w3d
      if_background.w3d
      if_background2.dds
      if_background2.w3d
      if_bar.dds
      if_base.w3d
      if_bk01.dds
      if_bk02.dds
      if_bk03.dds
      if_bk04.dds
      if_bk06.dds
      if_blip.dds
      if_buildingskill.dds
      if_button01.dds
      if_casualties.dds
      if_cheatgod.dds
      if_circle01.dds
      if_circle02.dds
      if_eva_logo2.dds
      if_evagizmo.w3d
      if_evalogo.w3d
      if_evapulse.w3d
      if_evarings.w3d
      if_flash01.dds
      if_flash02.dds
      if_gametime.dds
      if_gdi_logo2.dds
      if_general.dds
      if_helpload.w3d
      if_highlight.w3d
      if_hlbar.dds
      if_hlbar3.dds
      if_killvehicles.dds
      if_left_main.dds
      if_left_main_mid2.dds
      if_left_mainsplit2.dds
      if_leutenant.dds
      if_logo.w3d
      if_lrgstar.dds
      if_lvl00load.w3d
      if_lvl01load.w3d
      if_lvl02load.w3d
      if_lvl03load.w3d
      if_lvl04load.w3d
      if_lvl05load.w3d
      if_lvl06load.w3d
      if_lvl07load.w3d
      if_lvl08load.w3d
      if_lvl09load.w3d
      if_lvl10load.w3d
      if_lvl11load.w3d
      if_lvl80load.w3d
      if_lvl90load.w3d
      if_lvl94load.w3d
      if_major.dds
      if_menuparts8.dds
      if_menuparts9.dds
      if_missioncomp.tga
      if_nodhits128.dds
      if_nodkills.dds
      if_percentage.dds
      if_powerups.dds
      if_private.dds
      if_renlogo.dds
      if_renlogo1.dds
      if_ring.dds
      if_ringglow.dds
      if_runovers.dds
      if_sargent.dds
      if_scanline.dds
      if_scanline2.dds
      if_screen.w3d
      if_screenin.w3d
      if_screenout.w3d
      if_selector.w3d
      if_stars.dds
      if_titletrans.w3d
      if_treefld.dds
      if_treefld_open.dds
      if_treeplus.dds
      if_vehicleskill.dds
      if_vehicletime.dds
      if_weapons.dds
      in_statictrans2.w3d
      L01-bagmap.tga
      L01-brick.tga
      L03_wood01.tga
      l07_stuc04.dds
      loadscreen_beam.dds
      loadscreen_cnc_1.dds
      loadscreen_cnc_2.dds
      loadscreen_cnc_3.dds
      loadscreen_cnc_4.dds
      loadscreen_cncr_1.dds
      loadscreen_cncr_2.dds
      loadscreen_cncr_3.dds
      loadscreen_cncr_4.dds
      loadscreen_help_1.dds
      loadscreen_help_2.dds
      loadscreen_help_3.dds
      loadscreen_help_4.dds
      loadscreen_lvl0_1.dds
      loadscreen_lvl0_2.dds
      loadscreen_lvl0_3.dds
      loadscreen_lvl0_4.dds
      loadscreen_lvl00_1.dds
      loadscreen_lvl00_2.dds
      loadscreen_lvl00_3.dds
      loadscreen_lvl00_4.dds
      loadscreen_lvl01_1.dds
      loadscreen_lvl01_2.dds
      loadscreen_lvl01_3.dds
      loadscreen_lvl01_4.dds
      loadscreen_lvl02_1.dds
      loadscreen_lvl02_2.dds
      loadscreen_lvl02_3.dds
      loadscreen_lvl02_4.dds
      loadscreen_lvl03_1.dds
      loadscreen_lvl03_2.dds
      loadscreen_lvl03_3.dds
      loadscreen_lvl03_4.dds
      loadscreen_lvl04_1.dds
      loadscreen_lvl04_2.dds
      loadscreen_lvl04_3.dds
      loadscreen_lvl04_4.dds
      loadscreen_lvl05_1.dds
      loadscreen_lvl05_2.dds
      loadscreen_lvl05_3.dds
      loadscreen_lvl05_4.dds
      loadscreen_lvl06_1.dds
      loadscreen_lvl06_2.dds
      loadscreen_lvl06_3.dds
      loadscreen_lvl06_4.dds
      loadscreen_lvl07_1.dds
      loadscreen_lvl07_2.dds
      loadscreen_lvl07_3.dds
      loadscreen_lvl07_4.dds
      loadscreen_lvl08_1.dds
      loadscreen_lvl08_2.dds
      loadscreen_lvl08_3.dds
      loadscreen_lvl08_4.dds
      loadscreen_lvl09_1.dds
      loadscreen_lvl09_2.dds
      loadscreen_lvl09_3.dds
      loadscreen_lvl09_4.dds
      loadscreen_lvl10_1.dds
      loadscreen_lvl10_2.dds
      loadscreen_lvl10_3.dds
      loadscreen_lvl10_4.dds
      loadscreen_lvl11_1.dds
      loadscreen_lvl11_2.dds
      loadscreen_lvl11_3.dds
      loadscreen_lvl11_4.dds
      loadscrn1.w3d
      map_edges.dds
      mct_screen-fx.bmp
      mct_screen-fx.dds
      menu.mp3
      metal.tga
      metal_track_01.wav
      metal_track_02.wav
      meter.tga
      minigun_fire.wav
      minigun_loop.wav
      minigun_reload_1.wav
      minigun_reload_2.wav
      mutant_death01.wav
      mutant_death02.wav
      mutant_death03.wav
      mutant_death04.wav
      muzzle_smoke.dds
      muzzleball2.dds
      muzzleball3.dds
      muzzlesmoke.dds
      muzzletest2a.dds
      mx0_nodofficer_deathfire1.wav
      mx0_nodofficer_deathfire2.wav
      mx0_nodtrooper1_death1.wav
      mx0_nodtrooper1_death2.wav
      mx0_nodtrooper1_deathfire1.wav
      mx0_nodtrooper1_deathfire2.wav
      mz_pist1.w3d
      mz_pist3.w3d
      noddead1.wav
      nodrender.dds
      o_flag.w3d
      o_tracer1gold.w3d
      o_tracer1red.w3d
      o_tracer25gold.w3d
      o_tracer25red.w3d
      ocean.tga
      oldfloor.tga
      options screen.mp3
      p_armor1.w3d
      p_armor2.w3d
      p_armor3.w3d
      p_health1.w3d
      p_health2.w3d
      p_health3.w3d
      p_headband.dds
      p_headband.w3d
      p_rifl.w3d
      pallet.w3d
      ParticleEmitter.w3d
      pickupflag.wav
      pine2.tga
      pine4.tga
      powerup_ammo.wav
      radio1.wav
      radio2.wav
      radio3.wav
      radior1.wav
      radior2.wav
      radior3.wav
      radior4.wav
      rav_death.w3d
      ref_bul_glass.dds
      ren_death.dds
      REN_DRT_02.tga
      rico5.wav
      ricochet5.wav
      ricocloth1.wav
      ricocloth2.wav
      ricocloth3.wav
      ricocon1.wav
      ricocon2.wav
      ricocon3.wav
      ricocon4.wav
      ricodirt1.wav
      ricodirt2.wav
      ricodirt3.wav
      ricodirt4.wav
      ricoelec1.wav
      ricoelec2.wav
      ricofire1.wav
      ricofire2.wav
      ricoflsh1.wav
      ricoflsh2.wav
      ricoflsh3.wav
      ricoflsh4.wav
      ricofol1.wav
      ricofol2.wav
      ricofol3.wav
      ricoglass1.wav
      ricoglass2.wav
      ricoglass3.wav
      ricogrs1.wav
      ricogrs2.wav
      ricogrs3.wav
      ricohm1.wav
      ricohm2.wav
      ricohm3.wav
      ricohs1.wav
      ricohs2.wav
      ricolm1.wav
      ricolm2.wav
      ricolm3.wav
      ricolm4.wav
      ricomud1.wav
      ricomud2.wav
      ricomud3.wav
      ricorock1.wav
      ricorock2.wav
      ricorock3.wav
      ricosand1.wav
      ricosand2.wav
      ricosand3.wav
      ricosteam1.wav
      ricosteam2.wav
      ricotiber1.wav
      ricotiber2.wav
      ricotiber3.wav
      ricowa1.wav
      ricowa2.wav
      ricowood1.wav
      ricowood2.wav
      rockettrail.w3d
      rope_retract.wav
      s_a_expression.w3d
      s_a_gesture_l.w3d
      s_a_gesture_r.w3d
      s_a_hand_l.w3d
      s_a_hand_r.w3d
      s_a_head.w3d
      s_a_human.w3d
      s_a_mouth.w3d
      s_a_tall.w3d
      s_a_wide.w3d
      s_b_expression.w3d
      s_b_gesture_l.w3d
      s_b_gesture_r.w3d
      s_b_hand_l.w3d
      s_b_hand_r.w3d
      s_b_head.w3d
      s_b_human.w3d
      s_b_mouth.w3d
      s_c_head.w3d
      s_c_human.w3d
      s_part.tga
      s_part2.tga
      s_part3.tga
      s_part4.tga
      s_z_head.w3d
      s_z_human.w3d
      s_z_mouth.w3d
      Sand_emit.tga
      sandroll.wav
      sandskid.wav
      sandtread.wav
      shadowblob.dds
      shell.dds
      shine.tga
      shine_g.dds
      shine_o.dds
      shine_y.dds
      shootmix1l.wav
      shootmix1r.wav
      shotfire.wav
      shp_trak.dds
      skin_hands.tga
      skin_wrists.tga
      SmkStk_Brk01.tga
      so_doors.w3d
      sovbrck1.tga
      sovrubble.tga
      spawntransitioneffect.dds
      strings.tdb
      sunlensflare.dds
      tank_flame_fire.wav
      tank_flame_idle.wav
      tank_flame_start.wav
      tank_flame_stop.wav
      tank_flameshoot_loop_1.wav
      tib_bullet01.dds
      tib_bullet02.dds
      tib_bullet03.dds
      tracer.dds
      tracer.w3d
      tracer_bullet.w3d
      tracer_gold.w3d
      tracer_green.w3d
      tracer_red.w3d
      tracer_white.w3d
      trike.dds
      trike.w3d
      v_flare_head.dds
      v_gdi_gboat_flashbeam.dds
      v_gdi_orcaflame.dds
      v_nod_flame.dds
      v_nod_flame.w3d
      vdc_gdi_humvee.w3d
      vdc_gdi_medtnk.w3d
      w_a-10bomb.w3d
      w_atr_scem02.dds
      w_beacondisp.dds
      w_beltchain.dds
      w_blubeam.dds
      w_bluflare.dds
      w_bluflash.dds
      w_c4-p.dds
      w_c4-p.w3d
      w_c4-p_b.w3d
      w_c4-r.dds
      w_c4-r.w3d
      w_c4-r_b.w3d
      w_c4screen1.dds
      w_c4-t.dds
      w_c4-t.w3d
      w_c4-t_b.w3d
      w_chem.dds
      w_chem.w3d
      w_chem_b.w3d
      w_chemsludge.dds
      w_chemtank1.w3d
      w_chng.dds
      w_chng.w3d
      w_chng_b.w3d
      w_crystle.dds
      w_disp_gun.dds
      w_elec1.dds
      w_elecflare.dds
      w_flmt.dds
      w_flmt.w3d
      w_flmt_b.w3d
      w_gdi_tlgn.w3d
      w_gdi_tlgn_fire.w3d
      w_gdi_tlgn_idle.w3d
      w_gls1.dds
      w_gm_pist.dds
      w_grad1.dds
      w_grad2.dds
      w_grad3.dds
      w_gren.dds
      w_gren.w3d
      w_gren_b.w3d
      w_gust1.wav
      w_gust2.wav
      w_gust3.wav
      w_high_loop.wav
      w_invs.w3d
      w_ionb.dds
      w_ionb_b.w3d
      w_ionb_closed.w3d
      w_ionb_open.w3d
      w_ionc.dds
      w_ionc.w3d
      w_ionc_b.w3d
      w_lite_loop.wav
      w_lsrg.dds
      w_lsrg.w3d
      w_lsrg_b.w3d
      w_lsrr.dds
      w_lsrr.w3d
      w_lsrr_b.w3d
      w_med_loop.wav
      w_muzzleflash1.dds
      w_nuke.dds
      w_nuke.w3d
      w_nuke_b.w3d
      w_numbers.dds
      w_pist.dds
      w_pist.w3d
      w_pist_b.w3d
      w_rail.dds
      w_rail.w3d
      w_rail_b.w3d
      w_ramj.dds
      w_ramj.w3d
      w_ramj_b.w3d
      w_redbeam.dds
      w_rifl.dds
      w_rifl.w3d
      w_rifl_b.w3d
      w_rock.dds
      w_rock.w3d
      w_rock_b.w3d
      w_rocketlscrn1.dds
      w_rprg.dds
      w_rprg.w3d
      w_rprg_b.w3d
      w_scopelight1.dds
      w_shot.dds
      w_shot.w3d
      w_shot_b.w3d
      w_smmuzzleflash_1.dds
      w_smmuzzleflash_2.dds
      w_smmuzzleflash_3.dds
      w_snddisp.dds
      w_snip.dds
      w_snip.w3d
      w_snip_b.w3d
      w_tibf.dds
      w_tibf.w3d
      w_tibf_b.w3d
      w_tibr.dds
      w_tibr.w3d
      w_tibr_b.w3d
      w_timescrn.dds
      w_torch.dds
      w_volt.dds
      w_volt.w3d
      w_volt_b.w3d
      w_voltdisplay.dds
      w_whtlight1.dds
      w_whtlight2.dds
      x5h_chinook_1.w3d
      x5h_chinook_2.w3d
      x5h_chinook_3.w3d
      x5h_chinook_4.w3d
      xe_1b_flame.w3d
      xe_2a_rkflame.w3d
      xe_2a_rkflare.w3d
      xe_2g_flame.w3d
      xe_2g_flare.w3d
      xe_rocketflame.w3d
      xe5_rocketflame.w3d
      yeah1.wav
      yes1.wav
      yo1.wav
      you.dds

About Us

You can configure the secondary footer through Box -> global -> secondaryFooter.

×