Editing Maps and Missions in Tribes 2 Written by Tim ‘Zear’ Hammock zear@tribalwar.com http://hosted.tribalwar.com/zear Last edited: June 1, 2001 Making a new map/mission in Tribes 2 is a blast! Want to know how? Read on. I am presenting information in the order you will need it (as best I can predict). Sections: 1. Mission Editor general introduction (p. 2) 2. Creating terrain (p. 5) 3. Texturing terrain (p. 10) 4. Adding terrain detail (p. 13) 5. Adding global details (p. 19) 6. Adding objects (p. 25) 7. Editing mission-type-specific details (not written, p. 29) 8. Wrapping it up (not written, p. 29) Appendices: A. Terraforming operators (p. 30) B. Texture placement operations (p. 36) C. Object descriptions (in progress, p. 39) D. Renaming a mission (p. 44) E. Environmental sounds (p. 45) F. Water surface textures (p. 46) G. Other mapping resources (p. 47) H. Credits (p. 47) Some sections in the above list are not done yet. I'm working as fast as I can... it is all obviously a work in progress. I welcome comments and new information. If you are ready to begin, start with the Mission Editor General Introduction. Section 1 Mission Editor General Introduction Preparing to edit Before starting the editor, there is a small amount of necessary preparation. You need to create the directories where the mission and map information is stored. These directories will not all be created automatically. You need to create the following directories: Tribes2\GameData\base\missions Tribes2\GameData\base\terrains Tribes2\GameData\base\terrains\heightfield Tribes2\GameData\base\terrains\texture If you do not create these directories, Tribes2 can crash when it tries to write to them. Opening the editor 1. Start up Tribes2 using the 'Tribes 2 Solo & LAN' icon. This is simply easier and faster than the online version. 2. Host a game. Select the mission you wish to modify from. • If you are starting with the blank mission I have provided for download, the mission type should be CTF and the mission name should be 'MissionBlank'. • If you intend to import a png image, the mission chosen is rather irrelevant. Note that you will want to skip to that section and create the png file first. 3. Once the mission has completed loading, hit Alt-e. This opens the editor. If this does not work, open the console (hit the key with the '~' on it), type editor.open(); and hit enter. You should see something similar to this image. I am using Slapdash - your details may vary. I apologize for making you download such a large file, but it needs to be clear; plus, some of the buttons overlap others in 640x480 mode, which could increase confusion for both of us. There should be only about 5 more this size in this tutorial... I hope. There are many things you will want to know about using the editor, but for now I will cover the basics (more detail in later sections): 1. 3D view: Centrally located, you use this to look and travel around - you will get used to it quickly. Move using the standard ESDF keys (forward, back, left, right respectively). I keep hearing that there are keys to move up/down. I can't find them. You can also enable mouselook with the TAB key (it toggles back and forth). I hit this key about a thousand times a day. Get used to hitting it without looking or you will never get anything done. You can also click the fire button on the mouse and drop into player-view mode. To get back to observer mode, hit ESC to drop out of the editor, hit ESC again to get to the 'lobby', and change to observer mode in the upper right corner. Finally hit Alt-e to go back into the editor. 2. Camera speed slider: On the left, a little more than halfway down. Slower is to the left, and faster to the right. You will need this to keep from going mad. The slow speeds are too slow for really getting around, and the fast speeds too fast for detail work. Note that if you exit the editor, the camera speed remains in effect for observer mode in the game. Don't know what good that is, but now you know. 3. File/Edit Buttons: I'll cover these in more detail later, but they are mostly self-explanatory. The important one to notice is the Save button. Use it often. 4. Back button: It is all the way up in the top left of the screen. Not really needed, because you get the same effect by using the ESC key (but I want you to be prepared for what it will do). Either will dump you out of the editor unceremoniously. You can come back in and save, so don't panic if you accidentally exit the editor. 5. Editor view buttons: These four buttons are labeled World Editor, Terrain Editor, Terraformer and AI Editor. You use these to change the editor view, depending on what you are trying to accomplish. I will detail everything in the views (you are currently looking at the World Editor). Everything else is specific to one of the editor views. A few useful tips: • Although it sometimes works fine, I find that the vast majority of the time, the keypad cannot be used to enter numbers in the editor. The numbers across the top of the keyboard will work fine however. • Any time you exit the editor and leave the map there is a significant chance that re-hosting the map and entering the editor will cause Tribes2 to crash with an Unhandled Exception. Save before leaving the map. Always shut down Tribes2 and restart before loading the map again. • If you can, run the game in 800x600 windowed mode when mapping. You will usually find that you need to refer to some file (maybe this one) and then return to mapping. Alt-TAB and Ctrl-ESC can get you out, but sometimes when you go back to the game, you will find that you cannot type anything anymore. Running in windowed mode and avoiding those key combinations will prevent this. • Try not to move faster than the game. Sometimes you can start something new before the previous operation has finished. Don't try it. You can lose all input capability, or at least some. It can also cause the game to crash, losing what you haven't saved. Have patience - making a good map is going to take a while anyway. • Save, save, save. It will keep you from going nuts. Next, we shuffle along to Creating Terrain. Section 2 Creating Terrain There are two approaches to creating a new terrain: 1. Importing a png image 2. Modification of an existing terrain or creating a new one It has been mentioned that you can call createNewMission(); to create a blank map. This doesn't work yet. If you would like to start with a mission that has been stripped to a flat terrain with no objects, you can download one from http://hosted.tribalwar.com/zear/mapedimgs/MissionBlank.zip Just unzip the file, preserving directories, into the Tribes2 directory - all files will be placed correctly. Keep the zip file around, because you are going to use them again next time. At this point you can open the editor and modify this terrain to your heart's content. Importing a png image You can create your terrain outside the editor by creating a png file and importing it. A png file is a specific type of image. In this case, you will want to create a 256x256 pixel image, 256-color grayscale. Lighter colors are higher elevations and darker colors lower. White is the max height and black is the minimum. This can be done with Bryce, or you can do what I did and use Paint Shop Pro. Just be sure to make the gradients gradual or you will have cliff walls instead of hills. Also be sure and smooth or smudge the image well, or you will end up with very unrealistic terrain. You will have to play with this a bit to get a feel for what will produce reasonable results. Once the image is ready, save it to your Tribes2\GameData\base\missions\terrains\heightfield directory (you may need to create some of that directory structure). It should be saved as a 256x256x256 .png file (other than the extension, the name can be anything you want - I suggest the working name of your mission). Once it is saved, start Tribes2 and open the editor. Follow these steps to import the png file in the editor (just follow them for now - I will explain these parts of the editor in detail later): 1. Click the 'Terraformer' button at the top of the screen. 2. Click the 'Operation' button and select 'Bitmap' from the drop-down list. 3. A dialog will appear. If you have put your png file in the correct directory you should see it in the list. Select it and click 'Load'. 4. Click the 'Apply' button (to the right of the 'Operation' button). Now your new terrain is imported. Continue with the next section. Modification of an existing terrain or creating a new one I assume by this point you have a mission loaded and the editor open. If not, quit skipping the important stuff and do it... I also assume you have just opened the editor. If I know mappers though, you've already wandered some. I expected that. Hope you didn't change anything... First, We are going to look at the Terraformer. Click the 'Terraformer' button at the top of the screen. You should see something like this. The Terraformer has two sections: the Heightfield editor and the Texture editor. Fist we'll discuss what you see here: the Heightfield editor. The Heightfield editor allows you to modify the structure of your terrain in a global manner. This means that what you do here affects the entire map. A heightfield file can be generated from what you do here. It is saved as _heightfield.cs in the Tribes2\GameData\base\terrains\heightfield directory. The upper right section shows an overhead view of your map, shaded to show terrain detail. The crosshair (shaped like a small plus) pinpoints the center of your map, and the other lines of the same color show the edges of your map. Notice that the map is tiled. The red 'V' indicates your field of vision as you see it in the 3D view below this overhead view. The left side of the screen is dedicated to the operations you can do on the terrain. The lower left frame displays a list of operations that have been selected. You can add an operation by clicking on the 'Operation' drop-down menu and selecting one. Note that new operations are inserted after the operation that is currently selected in the list. This allows you to insert an operation in the middle of the list by highlighting the operation you want to precede the new one, then adding. There is a delete button there to delete those you decide not to use. Operations are cumulative in the order that they appear in the list. Above the operation list is the operation settings editor. Each operation has some settings. When changing the settings, be sure to watch the overhead view to see how they will change the terrain. Clicking the Apply button near the center of the screen will cause your changes to be transferred from the overhead view to the terrain itself, at which point you will see the changes in the 3D view. There are 15 operations available. They are: 1. General 2. fBm Fractal 3. Rigid Multifractal 4. Canyon Fractal 5. Sinus 6. Bitmap 7. Turbulence 8. Smoothing 9. Smooth Water 10. Smooth Ridges/Valleys 11. Filter 12. Thermal Erosion 13. Hydraulic Erosion 14. Blend 15. Terrain File The first operation, General, is the default and must be present to provide base settings. Of the rest, numbers 2-6 and 15 are used to create a brand new terrain (I call them 'generators'), and numbers 7-14 are used to modify an existing terrain (I call them 'filters'). Details of the available operations and their settings are available in Appendix A (take a look - you will probably need to use them). You can use the operations to create a terrain from scratch to effect a wide array of global changes to the terrain (new or pre-existing). Down the center of the Heightfield Editor screen is a series of buttons. Their functions are as follows: • Environment-type buttons: These buttons are labeled Lush, Swamp, Badlands, Ice, Desert, and Lava. These represent preset terrain types, and when selected will automatically create an operation list. You can select one, reseed the fractals in the list and generate that type of terrain very quickly. Unfortunately, the presets are not all present. Only Lush and Desert contain anything but the General settings in a default install. These presets are contained in files saved with a name to match the environment type (for instance, the Desert presets are in a desert.cs file). You can use this to create your own presets. See the info on the Save button below. Note: The Desert preset operation list has a blank operation 0 and General is listed at 1. This is not correct and can lead to problems if you inadvertently delete the General operation (which you can do because it is not at 0). Be careful. • Apply: When pressed, the current set of operations are applied and the terrain of your map is created and/or modified. • Load: Allows you to load an operation list that has been previously saved. It will draw the list of available files from both the heightfield directory mentioned above and the same directory as embedded in the missions.v12 file. This allows you to load many operation lists that were used in making the default maps. • Save: This allows you to save your heightfield operation list for the future. I recommend it in case you want to edit the terrain globally again sometime in the future. Name the files anything you want, but for a file associated with a mission to be loaded automatically when the editor starts it must follow this pattern: _heightfield.cs As noted above, you can use this to modify the environment-type presets by appropriately naming the file (these files should not have the mission name or underscore pre-pended and should be all lowercase). • Export: Allows you to export a terrain as a .png file. • Texture: This button will switch you to the Texture editor portion of the Terraformer. More on that shortly. Summation Using the Heightfield editor you can create the structure of a new terrain or modify the structure of an existing one. I suggest experimentation with the operations available - they can provide a huge array of results. Next, we look at the Texturing Terrain. Section 3 Texturing Terrain To texture a terrain in a global fashion, you will use the Texture Editor. It is a part of the Terraformer so open that up. Then click on the Terrain button (in the middle, near the bottom). You should see something like this. The Texture editor allows you to 'paint' an entire map with terrain textures, based on rules you define (operations). This editor is very similar to the Heightfield editor. In fact, the right side is identical, with an overhead view and a 3D view. A texture file can be generated from what you do here. It is saved as _texture.cs in the Tribes2\GameData\base\terrains\texture directory. On the left side, we see a setup similar to the Heightfield editor's operations and settings, but in this case, they are applied to textures. In the middle-left is the materials list. You can select terrain textures and add them to the list using the Materials button, and remove them with delete. Note that the first texture in the texture list is going to be plastered all over, so it should be the basic texture for the map. Succeeding textures in the list are overlaid according to the operations associated with them. Once a material (texture) is highlighted in the materials list, you can select a placement operation to specify how the texture will be applied. By default, the Fractal Distortion operation will be at the head of the list. The 5 texture placement operations are: 1. Fractal Distortion 2. Place by Fractal 3. Place by Height 4. Place by Slope 5. Place by Water Level Details of the available operations and their settings are available in Appendix B (take a look). You can use the operations to texture a terrain very quickly. Down the center of the Texture Editor screen is a series of buttons. Their functions are as follows: • Environment-type buttons: These buttons are labeled Lush, Swamp, Badlands, Ice, Desert, and Lava. These represent preset terrain types, and when selected will automatically create a texture operation list. You can select one and texture that type of terrain very quickly. Unfortunately, all of the presets are empty by default, but you can change that. These presets are contained in files saved with a name to match the environment type (for instance, the Desert presets are in a desert.cs file). You can use this to create your own presets. See the info on the Save button below. • test bmp: I do not know the function of this checkbox. In experimenting with it, I got nothing but crashes. If you figure it out, I would love to know what it does. • Apply: When pressed, the current set of operations is applied and your map is textured accordingly. • Load: Allows you to load an operation list that has been previously saved. It will draw the list of available files from both the texture directory mentioned above and the same directory as embedded in the missions.v12 file. This allows you to load many operation lists that were used in making the default maps. • Save: This allows you to save your texture operation list for the future. I recommend it in case you want to edit the textures globally again sometime in the future. Name the files anything you want, but for a file associated with a mission to be loaded automatically when the editor starts it must follow this pattern: _texture.cs As noted above, you can use this to modify the environment-type presets by appropriately naming the file (these files should not have the mission name or underscore pre-pended and should be all lowercase). • Heightfield: This button will switch you to the Texture editor portion of the Terraformer. More on that shortly. Summation Using the Texture editor you can paint textures across your map in a very short time. I suggest experimentation with the operations available - they can provide a huge array of results. Next, we look at the Adding Terrain Detail. Section 4 Adding Terrain Detail To edit the terrain in detail, you use the Terrain Editor. Click on the Terrain Editor button at the top of the screen to enter it. You should see something like this: Using this editor, you can make changes to specific parts of the map, such as raising, lowering or flattening a small area of terrain. This editor is useful to fine tune the terrain to the best form for play. You can make flat ares for structures, get rid of unsightly terrain feature and even punch holes it the terrain to allow players to enter underground areas of a base. The controls available are: 1. Save 2. Load 3. Undo 4. Redo 5. Clear Sel 6. Reset Sel 7. Raise 8. Lower 9. Set Height 10. Set Empty 11. Clear Empty 12. Flatten 13. Smooth 14. Set Material 15. Adjust Height 16. Settings 17. Material 18. Clear Modified 19. Swap Outline 20. Camera speed 21. Select 22. Paint 23. Adjust Sel 24. Soft Brush 25. Brush Type 26. Brush Size 27. Mission Area They function as follows: 1. Save: This button brings up the save dialog, which allows you to save what you have done. This may be the most important control in the editor. The first time you use this it will come up with the name of the mission you started with. You will want to rename the mission after you save it the first time. You can rename the mission here, but it appears to have no effect. Instructions to rename a mission are on Appendix D. You can select which files to save by checking or un-checking the four file type checkboxes. The actual filename each file is saved under is listed. Save a lot. 2. Load: Allows you to load a terrain file. 3. Undo: Undoes the previous operation. It keeps a history of the last 19 (19 ?!?) operations, so you can undo several operations back. 4. Redo: Re-does the last thing that you undid with Undo. Also has a 19-operation history. 5. Clear Sel: Clears all selections. 6. Reset Sel: I do not find that this does anything. Let me know if you discover its function. 7. Raise: Raises the selected terrain by 10 meters (this can be changed - see Settings below) each time you click this button. Be aware, if you drop into the map (player view) without saving and restarting, clipping may not work properly (that is you may walk or fall through the terrain sometimes). 8. Lower: Lowers the selected terrain by 10 meters (this can be changed - see Settings below) each time you click this button. The same warning mentioned in Raise applies here. Additionally, if you lower terrain below 0 elevation, it will result in some odd behavior (try it sometime, but you probably will normally avoid doing this). 9. Set Height: Sets the selected terrain to be the height specified in Settings below. This would be useful for flattening or for creating a mesa formation. 10. Set Empty: Sets the selected areas to be 'empty'; that is, to have no terrain surface. You will need to do this to allow players to get into the subterranean parts of the structures you add. 11. Clear Empty: Restore a solid surface across selected 'empty' areas. 12. Flatten: This button will flatten all selected areas. It does this by averaging the height of all selected terrain points and setting them all to this average value. Be careful using this if you select areas that are not very similar in elevation already. 13. Smooth: Smoothes the selected areas. Removes jagged peaks, etc. 14. Set Material: Does not seem to work (I couldn't figure it out in any case). It appears to allow you to select a terrain texture and apply it to specific areas (in concert with the Material setting, below), but I couldn't find a way to make it apply the texture. Let me know if I'm missing something here. 15. Adjust Height: Does not seem to work (I couldn't figure it out in any case). I would love to have an answer to this one. 16. Settings: Clicking this button (or hitting 'o' on your keyboard) will open the settings dialog, which is titled 'Terrain Action Values'. You use Settings to set some of the default values used by many of the operations in this editor. Settings include: • Soft Selection: Allows you to alter the 'curve' of the soft brushes. See that control for information on how they work. The line represents the amount of drop-off in the action of the brush. The left end is the center of the brush, and the right end is the edge of the brush. By altering the curve, you can affect the behavior of the brush. There is also text field that allows you to modify the radius of the brush. This is useful as the brushes get rather large rather quickly, and it is sometimes difficult to find the right middle size for some situations. • Adjust Height: This determines the increments used by the Raise and Lower operations. • Set Height: This determines the height the selected terrain will be set to when the Set Height button, above, is pressed. • Scale Height: I haven't figured this one out yet. Comments? • Smooth Factor: Sets the aggressiveness of smoothing operations. I assume that the value should be from 0.0 to 1.0. 17. Material: This opens a dialog, which allows you to select a terrain texture. I do not know what it is used for. 18. Clear Modified: I do not know what the purpose of this button is. 19. Swap Outline: I do not know what the purpose of this button is. On first press it will change one of the textures to a texture with lines of bright primary colors. A second press will toggle the texture back. 20. Camera speed: Adjusts the speed of the flying 'camera' that is your point of view. Slower is to the left, and faster to the right. You will need this to keep from going mad. The slow speeds are too slow for really getting around, and the fast speeds too fast for detail work. Note that if you exit the editor, the camera speed remains in effect for observer mode in the game. Don't know what good that is, but now you know. 21. Select: This puts the selection brush into select mode. Left-clicking the mouse adds the current brush location to the current selection. Click and drag to 'paint' the selection. By holding down the CTRL key, you can un-select as well. To perform an operation on the selected areas, you then click the button for the desired operation, such as Raise or Flatten. 22. Paint: This mode selects terrain and performs an operation all at once. It is difficult to get good results from this mode. First, click an operation button, then click or click and drag to 'paint' that operation across the terrain. 23. Adjust Sel: In this mode you can left-click and drag to raise or lower terrain. Select while in Select mode, above. Then switch to this mode, hold down the left mouse button and drag up and down. 24. Soft Brush: When unchecked, the selection brush will be all red. The entire area of the selection will be affected equally by operations performed on it. When this option is checked however, the selection brush changes. The effect is feathered toward the edge (reflected by the gradient of the brush, from red, through orange and yellow, to green), allowing you to raise rounded hills, instead of sharp edged mesas, or allowing you to use the flatten operation more realistically. See Settings for how you can alter the 'feathering' of this brush. It is very useful, and I find I use soft brushes almost exclusively. 25. Brush Type: Allows you to select between square and circular brushes. 26. Brush Size: Allows you to alter the size of the brush you are using. Watch out, though, because the increase in size is not apparently linear and therefore, the selection can get quite large very fast. 27. Mission Area: This control opens the mission area editor. It will appear on the right side of the screen. It is similar to the overhead views of the Heightfield and Texture editors. The red frame represents the mission area of the map (this defines the mission area for play). The red 'V' represents your point of view. Structures in the map are represented in green. Clicking with the mouse anywhere on the map will instantly move you 3D point of view to that point. It has three sub-controls: • Edit Area: Checking this will enable the 'handles' on the mission area frame. You can then drag to resize the mission area or click inside the frame itself to move the mission area around. • Center: Clicking this button will center the current mission are in the overhead view. • Mirror: This button enables mirroring mode. Mirroring allows you to mirror the terrain to either side of an axis line. This allows you to create identical terrain for both teams for a 'balanced' map. In mirror mode, the mission area editor controls change to the following: o <-- and -->: These buttons rotate the mirroring axis. The arrow indicates the direction the terrain will be mirrored and the purple line that is perpendicular to the arrow is the mirroring axis. In the picture here, the axis is horizontal and the terrain below the axis will be mirrored above the axis. o Apply: This button applies the mirroring to the terrain and exits mirroring mode. o Cancel: This button allows you to exit mirroring mode without performing any actual mirroring, in case you change your mind. Summary The tools in the Terrain editor provide many options for fine-tuning the terrain. I encourage you to try them all out. Some will take a bit of getting used to, but they are worth the effort. Next, we move on to Adding Global Details. Section 5 Adding Global Details Global details are things like lighting, sky, flight ceiling, fog and more. These things will add to the realism, playability and performance of the mission you design. To start with, we will need to look at the last area of the Tribes2 mission editor: the World Editor. For this section, I suggest you use the Slapdash map, since it will match what you see here and reduce confusion. Start that map, open the editor, and click on the World Editor button. Although there are many controls here, I am going to cover only those that pertain to the curent task of adding global deatils. Along the top, at the right, you will see four checkbox buttons, labeled Creator, Tree, Mission and Inspector. Mission will open a mission editor identical to the one in the Terrain Editor. The other three open their respective sub-editors. A couple things to notice while we are here: • Notice the red tinted 'wall' in the background of the 3D view. That is the border of the mission area. If you approach the edge of the actual terrain, you will see a similar wall in green. The green wall represents the perimeter of the terrain. Of course, it repeats tile-fashion outside the green wall. • You will also notice that every object in the map is now labeled in the 3D view. Now, let's look at the Tree. Check the Tree checkbox at the top. The Tree view will open. You can grab the divider between the Tree and the 3D view and drag to widen the Tree if needed. Let's also open the Inspector by clicking the Inspector button. The Inspector will appear below the Tree, and the divider between them can also be moved to make reading easier if needed. All of the objects in the game are represented in the Tree. Many objects can also contain other objects. The Tree represents them tree-style, much the same way folders are represented in Windows Explorer. When you first see the Tree, you probably only see the first line, which contains the MissionGroup. Click on the little expander next to it ( ) to expand the tree. The Tree should now resemble the image shown here. Each object is listed as: : - Every object has a unique object number, a name, and a type. In the case of the root (topmost) object in the image I show here, the object number is 3312, it has been named MissionGroup and it is a SimGroup object. Numbers may vary because they are assigned as the objects are created by the game (they do not have predefined object numbers). You may notice that some are preceded by an (L) - this means that the object is locked. When an object is locked changes will not be applied to it. This is the state the objects should be in when the map is complete, but it is not important for now. For the moment, we are interested in four of the objects only. We get to the rest later. We will be working with MissionGroup, MissionArea, Sun and Sky. Click on Sky in the Tree now. This will fill the inspector with the properties of the Sky object. You will notice that the properties are labeled and some are text entry fields while others are checkboxes (like useSkyTextures in the image here). There is two sections to the properties. The first section consists of the properties that are always present. Then down below those you will see the Add button followed by more properties. This second set consists of dynamic properties (or fields) and they are optional and not necessary for the object to function. Think of them as extras. Each dynamic property has a checkbox between the label and the entry field (usually overlapping, ugh). Checking this box will delete the property. Click the box next to 'locked' now. It will disappear. Clicking the Add button will bring up a dialog where you can enter a property name and value and it will be added to the dynamic properties (don't bother re-adding locked). Once the 'locked' property is removed, you can modify the properties. Pressing Apply at the top will cause those the in-game object to be updated to match the new properties. Now that we have covered how to use the Tree and Inspector, let's look at the four objects I mentioned and their properties. I will skip some properties in my descriptions; don't be thrown by it. • MissionGroup: This object is the root object and contains the most basic properties of the map: o musicTrack: This specifies what music to play during the map. There are five by default: badlands, desert, ice, lush and volcanic. o CTF_scoreLim: This determines how many caps are required to win the map before the time runs out. This is an example of a property that is specific to a game type. o CTF_timeLimit: How long the mission will last by default. • MissionArea: o area: This is a numerical representation of the mission area rectangle. Like many positional values, it is in the form 'x y w h' (x-coordinate, y-coordinate, width, height). It defines the anchor point for the NW corner with x and y, and it's size with w and h. o flightCeiling: Above this height, flying vehicles will lose the ability to climb under power. They can coast above this level on momentum, but they cannot use thrusters or afterburners to continue climbing. This allows you to limit how high they fly. o flightCeilingRange: Not positive, but I believe this defines how wide a layer of elevation will cause the vehicles to 'sputter' as they pass the flight ceiling. • Sun: When making changes to these values, they will not be reflected in the map just by applying them. They must first be applied, and then the map must be relit. There is a Relight button on the left side of the screen for this. When setting color values, setting all three RGB values the same will give grayscale colors, which in most cases is more realistic than, say, green fog. o direction: The direction from which sunlight comes. This determines where shadows will fall. I don't understand how to set this yet... o color: Defines the color of the sunlight. The values are 'red green blue ?' just like all color properties. The values should all be between 0.0 and 1.0. I'm not sure what the last value does. o ambient: Defines the ambient lighting. Ambient light does not come from any one point and can be used to soften shadows or just tweak the light in general. This emulates light scattering by the atmosphere. Same values as color, above. • Terrain: o terrainFile: The name of the terrain file that will be used for this mission. o squareSize: The map is actually made of a grid of squares; 256 squares to a side. The default value here is 8. That means that each square is 8 meters on a side, making the terrain 2048 meters (just over 2 kilometers) on a side. You can modify this to make the terrain larger or smaller for a mission, but keep three things in mind: 1. Changing square size will increase or decrease the amount of detail in the shape of the terrain 2. Changing square size will cause water issues. When water is added, the editor figures out which squares of water are entirely embedded in land and removes those squares. Unfortunately, it appears to assume a square size of 8 and does not check. This means you may (probably will) have empty squares where water should be visible, because the editor figure there would be land at that square and there is not. 3. I have heard that changing squareSize will cause the spawn points in the map (points where players spawn after dying, etc) to be similarly screwed up. I have not verified this myself yet. Don't say I didn't warn you. o emptySquares: This is a list of the squares (numbered) that you have set empty (a player can fall through these, but they are needed if your base goes underground). This is a convenient place to remove all the empty squares in a map. Just clear the field out and apply - empty squares gone. o hazeDistance: To increase performance, distant objects can disappear into the haze. This property defines how far that distance is. o visibleDistance: Again for performance reasons, objects beyond this distance from the observer are not even rendered. Dynamix suggests keeping the hazeDistance smaller than the visibleDistance. Otherwise objects will wink in and out of view instead of fading into the haze. • Sky: This is the most complex of the four objects. Some fields do not appear to work, and others are a complete mystery to me. o cloudSpeed1, 2, and 3: Most sky models have one or more cloud layers (not like fog, like actual clouds). By setting these values, you can make the cloud layers flow across the sky. I suggest making the lowest clouds move fastest and the higher ones slower, as that looks more realistic perspective-wise. o visibleDistance: For performance reasons, objects beyond this distance from the observer are not even rendered. Dynamix suggests keeping the fogDistance smaller than the visibleDistance. Otherwise objects will wink in and out of view instead of fading into the haze. o useSkyTextures: Unchecking this will remove the sky textures from view. This would be fine for an overcast or completely dark-skied map and will save the players a bit of horsepower. o renderBottomTexture: If you go under the terrain or go high enough to fog out the entire map, you will see a colored rectangle under the map when this property is enabled. No idea what it is for... o SkySolidColor: The color to render the sky when useSkyTextures is unchecked. o fogDistance: Objects beyond this distance will begin to be lost in the fog. o fogColor: Determines the color of both the distance fog and of the fog volumes (explained next). o fogVolume1, 2, and 3: There can be up to 3 fog layers. These are very useful - create a fog layer for snow to fall from, then allow clear skies above that, or use a fog layer to make underwater areas murky. Layer 1 should always be the lowest and 3 always the highest, and they should never overlap (although one can start exactly where another ends). Values are 'd b t', where d = distance you will be able to see while in the fog, b = the elevation of the bottom of the layer, and t = the elevation of the top of the layer. I am sure you can see how all of this would be useful is creating the setting for the mission. Get creative - just remember that if the result is not very realistic it will not look good, nor will people usually enjoy playing the map. I do believe there is room for imagination, just don't overdo it. Now that you know how to set up the global details, let's look at Adding Objects. Section 6 Adding Objects This is likely the section you have been looking forward to. We finally (finally!!) get around to placing objects (bases!). I assume you have the World Editor open already. Let's look at the rest of the features of this editor. I will only describe those that are not already explained in my descriptions of the other editors or in the last section. 1. File/Edit buttons: i. Save: Already explained. ii. Import and Export: These buttons allow you to save and load a set of objects. Note that this is not the same functionality as in the Heightfield editor. The files are stored in the Tribes2\GameData\base\editor directory. This allows you to, for instance, select a base and all the objects placed within it, and save those objects as a set. Later, you can import that set in another map and the same base, with all the objects you selected with it, will be created in this new map. A very handy feature. iii. Copy, Paste, Cut and Delete: These are pretty self-explanatory. By selecting objects you can manipulate them in the way you would expect from functions like these. iv. Undo and Redo: Already explained. v. Selection lock: The 'k' at the end may be obscured. When checked, this prevents you from accidentally adding or removing objects from the set that is currently selected. 2. Drop: Specifies where new objects will be placed. There are several options which I leave to you to explore. I usually use Screen Center, but don't look at the sky when using this mode as it may crash the game. 3. Relight: As previously mentioned, it will relight the map, taking your changes to the lighting into account. Don't worry if the 3D view goes yellow while it does this - that's normal. 4. Settings: This brings up a dialog full of settings for the editor. Since you most likely won't need to change any of the settings, I'm going to leave this be for now. 5. Camera speed: Already explained here. There are also two more editor views I have not covered. Besides the Tree and Inspector, there is also Mission and Creator. Mission is identical to the other two I have described here. Creator I will get to in a short while. First, I would like to explain how to use the 3D view in this editor - you will be using it a lot. Selecting There are several things you can do with the mouse in the 3D view. By clicking on an object you select it. You can hold down shift to add new items, but unfortunately you cannot use CTRL like you normally would to deselect individual items. You must deselect everything and start over. You can also click-drag to drag out a frame. Anything inside the frame when you release the button will be selected. Anything that is selected when you hit the DEL key is deleted from the map. Thank heavens for Undo. When the mouse is over the bounding box of an object (but it is not selected yet), the cursor will change to a hand and the bounding box will appear in green, letting you know what will be selected if you click. Once selected. The bounding box changes to blue and a second bounding box appears. The blue box represents the bounding box of the object itself, and is rotated to the same orientation as the object. The yellow bounding box is the smallest box oriented on the compass points that will contain the blue box. Yes, it's a bit confusing, but there is a reason - hang on. When an object is selected, the three axes (plural of axis, pronounced AX-ease) are displayed. Here I have tried to grayscale the rest of the image so you can see the axes more clearly (otherwise the other lines are distracting in a close-up like this). Each axis is labeled. Here, the x-axis is yellow, y is green, and z is blue. These colors tend to change though as you will see. In this image, the mouse is over the x-axis. That makes it the active axis and the color of the active axis is always yellow. The little blue dot where the axes meet is the actual 'location' of the object. When the object is selected, a couple of other things happen too. Although you can't see it well in any of these images, a ghostly grid/plane will appear relative to the object. Also, when you move over an axis with the mouse, the blue box turns red, then when you actually press and hold the mouse button, it turns blue again. These are all cues to help you keep track of what the editor thinks you are doing. Altering the object Now look at the bottom of the screen. There is a button there, probably labeled move right now. By clicking on the button repeatedly, it cycles through 'move', 'rotate', and 'scale'. You can also cycle the mode with the space bar. This mode button determines what is going to happen when you click on an axis and drag side to side. It will either move, rotate, or scale (resize). Cool, eh? Normally, the actions will act along or around the axes of the object itself. However, if you hold down the shift key while the mouse is over an axis, the axes will change to match the outside yellow box instead. Now your actions will occur along or around the world axes instead of the object's axes (which may be different due to the object having been rotated). The picture here shows the same tree from the same angle as the last image, but I held down shift. See how the axes shifted to match the yellow bounding box? Confused yet? Before we go on. Play with selections, bounding boxes and axes for a few minutes. Move, rotate and resize a few objects. Squash a tree along the z-axis and leave it hanging upside down in midair - whatever. This will help make it clearer. We are almost to the real fun stuff, so hang in there. Context menus By right clicking on an object you get a context menu. The contents will vary, but it can include Copy, Paste, Cut, Lock, Unlock, Hide, and Unhide. The first three are rather obvious. Lock and Unlock do just that - we talked about locked objects on the previous page. Hide and Unhide set a similar dynamic property for the object, but I do not know its purpose yet. Help me out. Please. Creating new objects Click on the Creator button in the top right corner of the screen. A new tree style window appears. This one is populated with all of the types of objects you can create and add to your mission. Simply click the object (in this tree, folders are in red text, objects in blue) and it will be created. By Alt-clicking on a SimGroup in the Tree view, new objects will be created in that group. You can also click on an object in the tree view and hit Ctrl-m, and the object will be moved to the SimGroup selected with Alt-click. This will be important shortly - it does matter what group some objects are in (in the Tree view). For instance, there are groups specifically for the teams, for AI objectives, and for each base grouping. Details are in the object descriptions. General Information • There are three team groups - team0, team1, and team2. Teams 1 and 2 are for items associated with the two teams. For instance, for a station to allow a team1 player to use it, it must be within the team1 group. It should actually be in a subgroup of the team1 group. For example teams/team1/base0 should contain all the items associated with the first base of team1. Team0 is for items that do not begin on either team. In a C&H map, the objectives that you want to hold will be in a team0 group. • An object that requires power must be in the same group as a generator or it will never have power and never work. When all the generators in a group lose power, so do all items in that group that need power. • Objects that do not need to be associated with a team need not be in any specific group. Summary Now you know not only how to add objects, but how to move, resize, rotate, remove and organize them. Take a look at the object descriptions I have written. Have fun! Next we edit mission-type-specific details. (not ready yet) Section 7 Editing mission-type-specific details (Not completed) Section 8 Wrapping it up (Not completed) Appendix A Terraforming Operators There are 15 operations available. They are: 1. General 2. fBm Fractal 3. Rigid Multifractal 4. Canyon Fractal 5. Sinus 6. Bitmap 7. Turbulence 8. Smoothing 9. Smooth Water 10. Smooth Ridges/Valleys 11. Filter 12. Thermal Erosion 13. Hydraulic Erosion 14. Blend 15. Terrain File The first operation, General, is the default and must be present to provide base settings. Of the rest, numbers 2-6 and 15 are used to create a brand new terrain (I call them 'generators'), and numbers 7-14 are used to modify an existing terrain (I call them 'filters'). Details of the available operations and their settings are: 1. General: This is not in the drop-down list and cannot be deleted. These are basic settings needed for any map. The settings are: • Min Terrain Height: Sets the height of the lowest point on the map. Keep it up a bit. If during later changes you push a section of map below the 0 height, there will be rendering problems (not to mention, I noticed you fall thru parts of the map with a height of 0 or less). Values are 0-500. • Height Range: Sets the height of the highest point on the map. This is a height allowed above the Min Terrain Height, so if you want 20 meter hills, set it to 20. This allows you to determine how vertical the slopes will be (to a certain extent). Values are 5-500. • Water Level: Allows you to set the water level. This has only an indirect relationship on actual water and will not add any or dictate what level it will be added at. It provides a map-wide 'water level' that can be used in automatically placing textures. You can see the changes made with this slider directly reflected in the overhead view. More on this in the Texture editor. Valid values are anywhere from the min terrain height value to the height range value, inclusive. • Center on Camera: Pressing this will put the map center (the origin, coordinates 0,0) at the vertex of the point of view 'V' in the overhead view. 2. fBm Fractal: This is the basic fractal landscape generator. It will create the hills in your terrain. This is a good one if you want rolling hills. The settings are: • Hill Frequency: Determines how many hills to create in the map. It does not necessarily specify exactly how many to create; it is how often to create them. Values are 1-24. • Roughness: A low roughness creates smooth rounded hills; a high setting makes jagged peaks. Value are 0.0-1.0. • Detail: Determines the amount of detail to apply to the terrain. Values are 5 settings from very low to very high. • Random Seed: This seed is the number the fractal is generated from. Press the New Seed button to generate a new random seed. Note that unless this is pressed a new fractal will not be generated, so the Apply button has no effect. 3. Rigid Multifractal: This fractal generator is better suited to ranges of peaks (as opposed to rolling hills). It is otherwise similar to fBm Fractal. The settings are the same and have the same function as fBm, but this generates more pointy peaks, etc. 4. Canyon Fractal: This fractal generator creates landscape with rows of ridges, similar to that of RollerCoaster. It has only three settings: • Canyon Frequency: Similar to hill frequency settings, this changes how many ridges are on a map, or to put it another way, how close together the ridges are. Values are 4-10. • Chaos: This is similar to roughness, above. The lower the value you enter here, the more the ridges will be straight and parallel. A higher value will make the ridges tend to squirrel around. Values are 0.0-1.0. • Random Seed: Same as with fBm fractal. 5. Sinus: This is another terrain generator. I won't pretend to be able to make sense of this one. I have made some cool terrain with it, but I don't know how or why it did what it did. Dynamix is pretty vague about this one too, but they say it is very powerful. If you have any clues, let me know (please). Settings are: • Random Seed: This works just like in previous generators, above. • The Line with Red Dots: This is the part I do not really understand. It appears that by dragging the dots up or down, you can affect the outcome of certain elevations. Beyond that, it isn't very intuitive - at least for me. Try dragging the dots and watching the changes on the overhead view to the right. • Control Points: This determines the number of Red Dots. If you use the up/down buttons attached to this control, you will need to click in the number field and hit a key before the change will register with the graph. This is a common issue everywhere you use this. 6. Bitmap: This generator operation allows you to import a png file as terrain. It interprets the value of each pixel in the image as a height for that point on the map. The image must be 256x256 pixels. The file must reside at Tribes2\GameData\base\missions\terrains\heightfield For more info on how this is done, please see Importing a png image, above. There is only one setting: • Choose: This allows you to select a file for import. 7. Turbulence: This filter operation adds 'roughness' to a terrain. It will make your peaks more jagged and the slopes more uneven. It appears to work through the grid points on the terrain, adding randomness to the elevation of the surrounding grid points. Settings (descriptions based on that conjecture) are: • Turbulence Factor: This affects the amount of random variation in height. Values are 0.0-1.0. • Radius of Effect: This setting affects how widely to affect the surrounding points from any given grid point. Turning this up will cause the randomization to be layered as a given grid point will be alterable from more of the other grid points. Values are 0-40. 8. Smoothing: This filter operation is essentially the opposite of the previous operation. It smoothes out (most likely by a form of elevation averaging) the terrain, reducing its 'jaggedness'. Although it is hard to be sure, it appears that a low number of iterations combined with a high aggressiveness will produce a more flattening effect, whereas high iterations combined with a low aggressiveness will produce more rounded terrain. Comments? Settings are: • Iterations: The number of times to repeat the smoothing operation. Values are 0-40. • Aggressiveness: How strongly the smoothing affects the terrain on each iteration. Values are 0.0-1.0. 9. Smooth Water: This filter operation does specialized smoothing. It will use the water level value from the general operation to smooth along the 'shoreline'. Use this to create more gradual slopes into and out of the water. The settings are the same as the smoothing operation, above. 10. Smooth Ridges/Valleys: This filter operation does specialized smoothing. It will smooth out the ridges and valley floors. This can be used to reduce the jagged appearance of mountain ranges and to reduce the 'deep, narrow hole' type valleys. The settings are the same as the smoothing operation, above. 11. Filter: This filter operation allows you to intelligently alter elevations based on their previous height. Try moving the Red Dots up and down and watch the overhead view. You will notice that certain elevation bands are associated with each Red Dot, and that moving the red dot will alter the elevation of those bands globally. It is a bit tricky to use, but I created the MissionBlank terrain by pushing all the Red Dots to the bottom. Remember that in the overhead view, brighter color is higher elevation and darker color is lower elevation. HAH! I one-upped the official docs! Settings are: • The Line with Red Dots: These dots represent bands of similar elevation. Adjusting one adjusts the resulting elevation of that band globally (see - I got a better handle on it here than in the sinus operation). • Control Points: This determines the number of Red Dots. 12. Thermal erosion: This filter operation mimics erosion due to wind and heat (and I believe it mimics the shaping done by glacial action as well). It has a tendency to create 'bowl' formations on the slopes. Settings are: • Iterations: Determines the number of times to apply the filter. Values are 0-50. • Min Erosion Slope (degrees): Determines the minimum steepness to apply the filter. Low values result in the erosion being applied more widely, whereas higher values result in the filter only being applied to the steeper slopes. Values are 0-89 degrees. • Material Loss: The amount of material that is removed in each erosion pass. Values are 0-100 and appear to be a percentage value. 13. Hydraulic erosion: This filter operation mimics erosion due to water flow. Although I again find little logic in the Line with Red Dots, it appears to erode in the valleys, where water would primarily flow. Producing smoother valley floors. Settings are: • Iterations: Determines the number of times to apply the filter. Values are 0-50. • The Line with Red Dots: Frankly, I see no logic in the operation of this control. I must be dense or something. • Control Points: This determines the number of Red Dots. 14. Blend: The last of the 'filters', this operation allows you to combine ('blend') the features of two terrains selectively. Settings are: • Factor: Determines the dominance of one terrain over the other. Moving to the right increases the dominance of source A and decreases the dominance of source B. Moving to the left reverses the relationship. • Source B: Selects the second terrain source to be blended. Source A is always the operation immediately previous to the blend operation in the list • Operation: Selects what operation to perform (not the same as the operations we have been discussing). These operations follow the formula result = (A * factor) operation (B * (1 - factor)) Values are Add, Subtract, Max, Min, and Multiply. To see just how powerful this operation can be, try this (just for fun): i. Delete any existing operations. ii. In the general operation settings, set settings to • Min Terrain Height = 20 meters • Height Range = 200 meters • Water Level = 20 meters (all the way down) iii. Add a rigid multifractal operation. Set settings to • Hill Frequency = 1 • Roughness = 0.00 • Detail = very low Click the New Seed button untill the overhead view shows only wavy horizontal ridges. iv. Add an fBm fractal operation. Set settings to • Hill Frequency = 24 • Roughness = 0.00 • Detail = very high v. Add a blend operation. Set settings to • Source B = 1 (the rigid multifractal) • Operation = Max • Factor - set to about a third of the way from the left (on the third tick mark) vi. Click the Apply button in the center column of the screen. Take a look at the terrain generated and notice how this combines the fractals. You will see the high, smooth and sharp ridges of the rigid multifractal, but in the valley floors it is all chewed up by the fBm fractal. Cool, eh? Experiment to see what you can do with this filter. 15. Terrain File: This operation will generate terrain based on an existing terrain file. Note that the terrains listed are both thos in the terrains folder, as well as this that accompany the game (and are in the missions.v12 file). Note that if you want the exact terrain in the file, the general settings need to be identical to those set when this loaded terrain was originally created. The only setting for this operation is to select a terrain from the list. Appendix B Texture Placement Operations The 5 texture placement operations are: 1. Fractal Distortion 2. Place by Fractal 3. Place by Height 4. Place by Slope 5. Place by Water Level Details of the available texturing operations and their settings are: 1. Fractal Distortion: This is not in the drop-down list and cannot be deleted. This operation provides a bit of randomness to placement of the textures and a map would look pretty artificial without it. By using the settings below, this operation creates a fractal image that is used to apply the texture it is associated with. The process of applying the textures based on the fractal is a bit mysterious to me. Any ideas? The settings are: • Hill Frequency: Determines how large the features of the fractal are. Values are 3-36. • Roughness: Affects how rough the features will be. Values are 0.0-1.0. • Random Seed: By pressing the New Seed button, a new fractal seed will be randomly selected and a new fractal image will be generated based on that and the other settings here. • The Line with Red Dots: This is the part I do not really understand. It appears that by dragging the dots up or down, you can affect the outcome of certain elevations. Beyond that, it isn't very intuitive - at least for me. Try dragging the dots and watching the changes on the overhead view to the right. • Control Points: This determines the number of Red Dots. 2. Place by Fractal: This is nearly identical to Fractal Distortion, above. This one can be added or deleted however. It has all the same settings as well. In addition it does have one more setting: • Use Fractal Distortion: Determines whether to overlay this operation over the top of the fractal generated in the Fractal Distortion operation or ignore the Fractal Distortion operation outright. This provides a way to 'delete' the Fractal Distortion operation. 3. Place by Height: This operation allows you to specify a height range to place the texture within. This allows you to place one texture in the lowlands, another in the middle altitudes, and another at the peaks (for instance). The settings are: • Filter: Here we see the now-familiar Line with Red Dots. Think of the diagonal line as the slopes in your terrain. The leftmost dot represents the lowest attitudes and the rightmost dot represents the highest altitudes. If a dot is at the very bottom, areas at the height represented by that dot will not have the texture applied. So by setting the dots as in the chart here, you can get results similar to the screenshot here: <-----> Notice the banding effect this produces. If I had raised only the leftmost dot from the baseline, only the lowest elevations would be textured with this snow effect. The higher you raise a dot, the more opaquely the texture will be applied over the underlying one. This allows you to apply a texture in a translucent manner, mixing the textures. • Control Points: This determines the number of Red Dots. • Use Fractal Distortion: This checkbox, when checked, causes the fractal distortion operation to determine the pattern of application within the area defined by the filter above. 4. Place by Slope: Similar to Place by Height, this operation allows you to define areas to apply this texture based on how steep a slope is. The settings are: • Filter: Another Line with Red Dots. Think of the diagonal line as the slopes in your terrain. The leftmost dot represents the flattest slopes (flat ground) and the rightmost dot represents the steepest slopes (the steepest being vertical). If a dot is at the very bottom, areas with the associated slope represented by that dot will not have the texture applied. So by setting the dots as in the chart here, you can get results similar to the screenshot here: <----> Notice that the steeper slopes have no snow. This is more realistic than the last example. • Control Points: This determines the number of Red Dots. • Use Fractal Distortion: This checkbox, when checked, causes the fractal distortion operation to determine the pattern of application within the area defined by the filter above. 5. Place by Water Level: This operation will place the texture on all elevations that are at or below the water level defined in the Heightfield editor's General operation. • Use Fractal Distortion: This checkbox, when checked, causes the fractal distortion operation to determine the pattern of application within the area defined by the filter above. Appendix C Object Descriptions (in progress) As mentioned, this is by no means and exhaustive item list. Nor do I describe every property of the objects listed. Please contribute. Each object name is followed by the object's location in the Creator. In alphabetical order: AudioEmitter (Objects/environment) Audio emitters add sound to the map's environment (birds, wind, etc). The settings of interest are: • fileName: Provide a filename for the sound to be played. I suggest this rather than using the profile, primarily because this works and the profile doesn't (in my experience). A list of environmental sounds is available in Appendix E. Don't forget to precede the name of the sound with 'fx/environment/', and yes, the '.wav' at the end is required. • volume: Sets the volume. Values from 0.0 to 1.0. • isLooping: Check this for wind sounds etc, to keep them playing constantly. • is3D: Checking this will make the sound local to a specific point. The farther the player gets from the point, the fainter the sound gets, up to the distance in maxDistance (at which point it will be silent). It is 3D this way; as the player turns they will hear it come from a specific direction. Unchecking this will make the sound global to the map. It will be heard everywhere. Good for wind or distant rolling thunder. • minDistance: (used when is3D is checked) I believe the name of this property is misleading. It appears that this distance defines the size of the area within which the sound will be heard at full volume. Outside the sphere defined by this distance, the sound will fade with distance. • maxDistance: (used when is3D is checked) Defines the maximum distance away that the sound will be heard. The sound appears to evenly drop in volume from full volume at the edge of the minDistance to silence at the edge of maxDistance. • cone properties: These appear to allow sounds to be projected in a specific direction. I have not played with these yet. Comments? • loopCount: Sets the number of times to repeat the sound. Use -1 to set unlimited. • minLoopGap: Sets the minimum time (in milliseconds: 1000 millisecond = 1 second) to wait between each time the sound is played. Set to 0 for continuous looping. • maxLoopGap: Sets the maximum time in milliseconds to wait between each time the sound is played. Set to 0 for continuous looping. Camera (Objects/Mission) Place several of these - they are the points of view for observer mode. I suggest placing at least one looking at each place that is likely to be a center of combat. To make it easier to aim these things, the item's y-axis will point in the direction of view, and the z axis is 'up'. Once you think you have them placed correctly, use tab to turn on mouselook and right-click to move from one to the next (this assumes you are in observer mode while using the editor). FORCEFIELD (Objects/Mission) There are six forcefield types. Be sure to place them in a SimGroup with a power source or they will not be activated. The team-specific fields should be placed in a team's base group. The rest may be placed in any group with a generator (put a generator under the terrain to power it if you do not want the forcefield to ever go down). The Six types are: • defaultForceFieldBare: blue, none may pass. • defaultTeamSlowFieldBare: green, team members may pass (place in that team's group). • defaultAllSlowFieldBare: orange, all may pass. • defaultNoTeamSlowFieldBare: red, only opposing team may pass. • defaultSolidFieldBare: red, none may pass. • defaultNoTeamLavaLightField: yellow, none may pass. GeneratorLarge (shapes/Generators) Place one of these in the same SimGroup with the items you want powered by it. When the generator is destroyed, power will go down for all of those items. Multiple power sources within a SimGroup must all be destroyed before power is lost for the group. You can place a generator out of reach (for instance, under the terrain) to make it impossible to take down power for other objects in that group. Don't forget that buildings need a power source too (or else they will be dark inside). When you first add a power source to a SimGroup, it will not be active. Simply drop down the console (hit '~') and type SimGroup::powerInit(SIMGROUP_NUMBER, 0); where SIMGROUP_NUMBER is the SimGroup's object number in the Tree view. This will activate the power source and start the power flowing to all the objects in the SimGroup (thanks to Hak|Hakuryu). Lightning (Objects/environment) This object generates periodic lightning strikes within the area it encloses. It randomly chooses a strike starting and ending point. Strikes may hit players, vehicles, or other objects (such as generators) within it's range, causing damage and/or destruction. I suggest leaving most settings at the default if you want realistic lightning. Settings include: • strikesPerMinute: Pretty straightforward, this determines how many strikes in 60 seconds. Minimum of 1. • strikeWidth: This is the width of the bolt itself. • chanceToHitTarget: This is just that; the chance that a bolt will hit an object or player as opposed to the ground, etc. Values range from 0.0 to 1.0, 0 indicating never hit an object and 1 indicating always hit an object if possible. • color: This is the color of the actual bolt. By default, it is white. • fadeColor: This is the color of the bolt's afterimage. By default it is a medium blue. particleEmitter (Objects/environment) Precipitation (Objects/environment) SimGroup (Objects/System) A SimGroup is simply a container object within the Tree hierarchy. It has no function other than to group objects together. An example would be the team1 group. All items in that SimGroup are associated with team 1. SolarPanel (shapes/Generators) Place one of these in the same SimGroup with the items you want powered by it. When the solar panel is destroyed, power will go down for all of those items. Multiple power sources within a SimGroup must all be destroyed before power is lost for the group. You can place a solar panel out of reach (for instance, under the terrain) to make it impossible to take down power for other objects in that group. Don't forget that buildings need a power source too (or else they will be dark inside). When you first add a power source to a SimGroup, it will not be active. Simply drop down the console (hit '~') and type SimGroup::powerInit(SIMGROUP_NUMBER, 0); where SIMGROUP_NUMBER is the SimGroup's object number in the Tree view. This will activate the power source and start the power flowing to all the objects in the SimGroup (thanks to Hak|Hakuryu). SpawnShereMarker (shapes/Misc) StationInventory (shapes/Stations) The inventory station must be in a team SimGroup to be usable, and must be in a group with a power source to be activated. StationVehiclePad (shapes/Stations) This is the pad on which a vehicle appears. It is not necessary to add any StationVehicle objects (the vehicle 'buying' station) - these will be created by the game automatically. As a matter of fact, adding them in by hand can cause problems. Sometimes you may find that the station will destroy the vehicle immediately on creation. You may also notice that the player buying the vehicle is turned away from the pad instead of toward it upon entering the station. I have found that by rotating the pad around its z-axis, these issues will disappear. Since this is probably due to a math error of not accounting for the special case of the 0Ί angle, I suspect that even the smallest rotation will resolve this issue. Remember that the pad must be in a team SimGroup to be usable, and must be in a group with a power source to be activated. You can specify vehicle types as unavailable at a particular station. To do so, add to the StationVehiclePad object a new dynamic property with the proper name for the vehicle you wish to make unavailable, setting the value of the property to Removed. The proper names (with the familiar vehicle names in parens) are: • scoutVehicle (Wildcat - hover bike) • assaultVehicle (Beowulf - tank) • mobileBaseVehicle (Jericho - MPB) • scoutFlyer (Shrike - scout) • bomberFlyer (Thundersword - bomber) • hapcFlyer (Havoc - HAPC) Trigger (Objects/Mission) TurretBaseLarge (shapes/Turrets) Water (Objects/environment) Water is added as an object. Size it so that all edges are hidden by land. Make sure it is deep enough to go all the way down - you don't want players to fall out of the bottom of the water and find a waterless bubble underneath. If you set the liquidType property to a lava variation, players will take damage when touching it. Density determines how slow the player will move when in the water and viscosity will determine the surface tension (turn it up high enough and the players will walk on water). You will have to set the surface texture. You will have to restart the map (save first) before you will see the surface texture. If your water has no edges (spans the map, like Archipelago), you will need to uncheck removeWetEdges before the water will be visible. To make the water span the whole map, set it's position to '1024 1024 2048 2048'. WayPointMarker (shapes/Misc) Appendix D Renaming a Mission To rename a mission, you will have to rename a few files and edit one by hand. None of this is done from within the game. I will use the example of renaming the mission Slapdash to SmackMe. The procedure is: 1. Rename the mission files: You should find the following files (some may not be present if you have not been generated yet): Tribes2\GameData\base\missions\Slapdash.mis Tribes2\GameData\base\terrains\Slapdash.ter Tribes2\GameData\base\terrains\Slapdash.nav Tribes2\GameData\base\terrains\Slapdash.spn Tribes2\GameData\base\terrains\heightfield\Slapdash_heightfield.cs Tribes2\GameData\base\terrains\texture\Slapdash_texture.cs Rename these to: Tribes2\GameData\base\missions\SmackMe.mis Tribes2\GameData\base\terrains\SmackMe.ter Tribes2\GameData\base\terrains\SmackMe.nav Tribes2\GameData\base\terrains\SmackMe.spn Tribes2\GameData\base\terrains\heightfield\SmackMe_heightfield.cs Tribes2\GameData\base\terrains\texture\SmackMe_texture.cs 2. Edit the mission to reflect the changes: Using any text editor (Notepad will work) open the file Tribes2\GameData\base\missions\SmackMe.mis Search for 'Slapdash'. Everywhere you find it, edit it to read 'SmackMe' instead. Save the file. This will completely rename the mission and keep all the files synchronized. Appendix E Environmental Sounds These sounds are found in the base\audio\fx\environment directory. When specifying them, be sure to remember to precede the sound name with fx\environment (for instance fx\environment\base_1.wav). base_1.wav base_2.wav base_3.wav base_pulse_1.wav base_pulse_2.wav bird_echo1.wav bird_echo2.wav bird_echo3.wav bird_echo4.wav bird_echo5.wav bubbles1.wav bubbles2.wav coldwind1.wav crickets.wav crickets_drygrass.wav ctmelody1.wav ctmelody2.wav ctmelody3.wav ctmelody4.wav desertowl.wav drywind.wav drywind2.wav fly_swarm.wav fog.wav frog1.wav frog2.wav gravel1.wav gravel2.wav gravel3.wav growl1.wav growl2.wav growl3.wav growl4.wav growl5.wav howlingwind1.wav howlingwind2.wav howlingwind3.wav icecrack1.wav icecrack2.wav icefall1.wav icefall2.wav icefall3.wav lakewaves.wav lakewaves2.wav lavabloop1.wav lavabloop2.wav lavabloop3.wav lavabloop4.wav lavabloop5.wav lavabloop6.wav lavabloop7.wav lavahiss.wav lavahostile.wav lavamellow1.wav leavesrustling.wav moaningwind1.wav oceanwaves.wav rain_hard_1.wav rain_hard_2.wav rain_light_1.wav rain_light_2.wav rain_medium_1.wav rain_medium_2.wav rain_medium_3.wav river1.wav river2.wav river3.wav rockslide1.wav rockslide2.wav rumblingthunder.wav sandpatter1.wav sandpatter2.wav sandstorm.wav sandstorm2.wav snowfall1.wav snowfall2.wav snowfall3.wav snowfall4.wav snowstorm1.wav snowstorm2.wav wetwind.wav wind_sandstorm.wav yeti_howl1.wav yeti_howl2.wav Appendix F Water Surface Textures These textures are found in the base\textures\liquidTiles directory. When specifying them, be sure to remember to precede the texture name with liquidTiles\ (for instance liquidTiles\AlgaeWater). AlgaeWater archipelago_water BlueWater GreenWater icebound_water IslandWater01 IslandWater02 IslandWater03 IslandWater04 Lava LavaPool01 LavaPool02 LavaPool03 LavaPool04 LushWater01 LushWater01_Algae LushWater02 LushWater02_Algae LushWater03 LushWater03_Algae LushWater04 LushWater04_Algae oasis_water_ripply riverdance_water_1 riverdance_water_5 riverdance_water_6 sanctuary_water_1 sanctuary_water_2 Tile01a Tile02a Tile03a Tile04a Appendix G Other Mapping Resources Tribes2maps.com (Bytor & company) http://www.tribes2maps.com/ Falcon's Tribes II Mapping (Falcon) http://web.lemuria.org/T2/Mapping/ Using the Tribes 2 Mission Editor – (Sierra/Dynamix) http://sierrastudios.com/games/tribes2/memanual.html Appendix H Credits The mission editor documentation on this site was written by me (Tim 'Zear' Hammock). I would like to thank Falcon however, for getting me started with Tribes2 mapping. I also found the official documentation to be brief but helpful. Additionally, these people have contributed (in order of contribution): • Eric 'Rated z' Lanz: For help with spawnspheres and other miscellaneous snafu's of mine. • Edward Gardner: For pointing out the 'vehicles exploding' issue with the vehicle pad. • Hak|Hakuryu: For pointing out how to activate a power source immediately. • (more to come...)