FA Forever Map Editor is a new map editor developed for FAF by ozonex. It is currently in alpha, which means the editor is in its testing phase, and some features are still lacking. However, ozonex expects to release a beta version soon.
FA Forever Map Editor Github Issues.
You can download the current version here.
Spy Emanciator Map Editor Playlist (does not include AI Marker Tutorial)
Before loading any map you must specify the paths to your game and maps folder.
Sup Com Forged Alliance installation path
Path to where the game is installed. It will also work with vanilla Supreme Commander, but always use Forged Alliance to get access to all the new assets. Use "..." to open the folder browser. When using the Default button editor will try to find the path by itself.
Maps folder path
Path to where all maps are stored. The Alpha version can only load maps from that folder, so if you have maps in a different folder, you need to change this path or move the maps to the specified folder.
Backup folder
The path where backups of old maps files will be moved. If empty, backups will be saved in FAForeverMapEditor_Data/MapsBackup/.
Undo steps
The maximum number of steps saved in memory for Undo and Redo.
Play map
Settings for using File/Play map. You can select a faction and disable Fog of war.
Markers 2D
This will scale markers up when the camera is away. Use this feature to better see all markers on the map.
Heigtmap brush Clamp
This will not allow for painting higher or lower than 50 units from the lowest/highest point on the map to prevent a "black plane bug". This bug has been fixed for FAF so this is no longer required
UI Scale
Change the scale of editors' UI
When the editor crashes or behaves strangely it may be useful to send a log to the developer. You can find them here:
C:/Users/[user]/AppData/LocalLow/ozonexo3/FAF Map Editor/
You can create or modify existing brushes used by the FAF Map Editor. Brushes need to be 512px x 512px grayscale PNG without an alpha channel. When opened, the editor will load all brushes from that folder. Brushes are sorted alphabetically.
You can find them in:
[FAForeverMapEditor.exe path]/FAForeverMapEditor_Data/Structure/brush/
The editor supports several symmetry options for editing maps.
You need to select the right one before making changes to the map because everything you do will be symmetrical based on the selected settings.
To open symmetry settings go to Symmetry/Symmetry settings....
Tolerance is how far in-game units the editor will search for symmetrical objects when selected.
Matching objects will be selected as orange. If it can't find a matching object it will display a gray selection where it should be.
Setting | Symmetry effect |
---|---|
X | Mirrors items on the left side of the map to the right side |
Z | Mirrors items on the top of the map to the bottom of the map |
X + Z | Mirrors top to bottom and left to right (or the reverse) |
Diagonal (Top Left + Bottom Right) | Mirrors the top left to bottom right (and reverse) |
Diagonal (Bottom Left + Top Right) | Mirrors the bottom left to top right (and reverse) |
Diagonal + Diagonal | Similar to X+Z except it mirrors on the diagonals/ |
Center by angle (2-16) | This mirrors directly to the opposite side through the middle of the map. Rotation steps indicate how many units will be placed. For example, 2 will only place the one you have and one mirrored. 4 will place the one you have and three more. For example, with a rotation of 4: If you place a unit in the South East, it will place one in the North East, South West, and North West. |
Key | Function |
---|---|
W | Switch to Move tool |
E | Switch to Rotate tool |
R | Switch to Scale tool |
T | Toggle snap to grid |
Left Ctl + C | Copy selection |
Left Ctl + V | Paste copied content |
Left Ctl + D | Duplicate selected objects |
Left Shift | Smooth brush, Add selection |
Left Alt | Invert brush, Erase, Unselect |
B + LMB or W + LMB | Dragging over terrain will change brush size |
V + LMB or S + LMB | Dragging over terrain will change brush strength |
Q or + | Increase brush target value |
A or - | Decrease brush target value |
TAB | Next brush type |
1-4 | Select brush type |
CTRL + LMB | Sample target height for heightmap brush (pipette) |
CTRL + RMB | Sample minimum height for heightmap brush (pipette) |
CTRL + MMB | Sample maximum height for heightmap brush (pipette) |
Shift + Select | Add to selection |
Left Alt + Select | Remove from selection |
Home | Restart camera |
Delete | Remove seleted objects |
C | Connect selected AI Markers |
D | Disconnect selected AI Markers |
H | Hide selected decal types |
Shift + H | Unhide selected decal types |
Left alt + V/H button | Toggle visibility of other layer/decal |
P | Parent selection to group |
To create new map use File/New Map.
¶ Name
Name of the map. This will be also used to name folders and files. See below for correct map naming conventions.
¶ Description
Long description of the map. You can describe the history of the map here.
¶ Texture set
Set of stratum textures loaded to the new map. If you know how you want your map to look, then select the best set.
Type
Type of map. Use Skirmish for Multiplayer maps
- Width / Height
Size of the map. When selected sizes are not a square editor will create a square map and clip it using Area.- Initial height - Initial height of whole heightmap. Try to use the lowest value possible, but remember to leave some space if you want to have water on the map.
- Water - Toggle it on if you want to have water on your map. This can be changed later if you change your mind.
- Water Elevation - the height at which the water level is.
- Depth Elevation - the height at which the water is darker.
- Abyss Elevation - the height at which the water is very dark.
The new map created in FAF Map Editor will be saved as:
[MapsFolder]/[MapName].v0001/[files]
How you should name maps:
Editor fixes map folder and file names, but you should still remember how that works.
Ignoring your map folder name, after uploading to the vault, the map folder will be renamed according to the map name, but with spaces replaced with '_'.
For example A map's name is "Yet Another Gap". And map files are named "yetanothergap_scenario.lua", etc. The map will be uploaded to the vault and will be playable, but every time someone tries to host it from FAF, not from lobby settings, the Four-Corners map will be hosted instead. This bug will annoy people and prevent your map from being added to the ladder pool. It happens because the map folder will be renamed to "yet_another_gap.v0666" and FAF will search for yet_another_gap_scenarion.lua.
So a proper map should be named like this:
maps/good_map.v0001/good_map_scenario.lua
Can be found in the Map/Scenario menu.
Tool for changing the order of existing armies. Army order is also the order of spawn points. The tool also has an Auto-Team preview. To switch armies click on the box with the army number and then select another army from the dropdown list.
Scmap file format exists in 2 versions:
If you need to open the v60 map in vanilla or old tools, you can export Skybox data to a file and save it as v56. When done, you can import the skybox again and save it as v60.
The height map is the base of the whole terrain. It defines the height for every place on the map. You can use built-in tools to edit it, or export/import to work with other software.
There are 4 types of brush
Additional values
Brush shape are brush images loaded from Structure/Brush folder. Read more here: Custom brushes
You can export and import heightmap as *.raw file. It's a 16-bit texture, that can be edited in many graphic programs like Photoshop. There is also support for *.r16 files from World Machine (and other apps that support this format like Krita) You can also import *.bmp images, but they are usually 8-bit, so they lost data. Heightmap resolution should be always MapSize + 1, because it requires one more vertex data, to create a grid cell. For example, a 256x256 map will have a height map with a resolution of 257x257. The correct settings for importing into Photoshop are channel count 1, Depth 16-bits, and byte-order IBM PC.
In Forged Alliance there is a known bug, that the lower parts of your map will become black. It happens when the height difference between the lowest and the highest point is bigger than 50.
There are 2 ways to fix it:
Water settings can be found under the Terrain/Water menu.
You can turn the water on or off on your map. If you don't want to have water, then try to remember to disable it.
The water level is defined by the Water Elevation value. Abyss Elevation define where water will have the darkest colour. These 2 values are the main water settings you need to remember about. Depth Elevation doesn't do much but needs to be between Water and Abyss elevation.
Surface Color allow you to change the colours of the water. Sun Color is the colour of sun reflections on the surface.
Terrain types can be painted by going into the TERRAIN > TYPE menu.
Terrain type is the definition of what kind of terrain is over each area. This is used for particle effects like dirt under walking units. Some layers (like lava) don't allow units to walk there, so can be used to block movement over certain areas.
To change an area first select the area you want to paint from the list on the left and then just paint it. You can change the brush size. Types can't be blended, only one type can be chosen per 1 game unit cell.
Textures define the colours of your map. The game allows you to choose from many textures for many different biomes. Remember that the appearance of the texture depends on the lighting setting.
There are a total of 10 layers
A small V button allows you to temporarily hide texture. It will change to H if the layer is hidden.
Always start texturing from the bottom. Begin by selecting the lower stratum, and then go up starting from layer 1.
Textures can be found using Resource Browser. When browsing textures you can see a small colored box at the bottom right. It shows how the texture will look at a distance (Mip-Maps).
Every layer has 2 textures that can be assigned:
You can adjust their scale over the map using scale sliders under each texture.
When you selected one of the layers from 1 to 8, you can paint them into the terrain by going to the Paint tab.
Paint by dragging over terrain. To erase hold the left alt and drag where you want.
Brush settings:
Linear brush is an improved brush behaviour. Supcom terrain shader is not blending layers directly by mask, but it's converting it to be more contrasted. Selecting the brush to be linear will compensate for that change, allowing the painting to be more smooth.
Mask conversion algorithm. You can see that it is removing values 0 - 0.5 and using only the range 0.5 - 1. That's why on the standard brush at the beginning nothing happens.
(mask * 2) - 1
[TODO]
Lighting can completely change the look of the map, so always remember to spend some time fine-tuning lighting.
Fog in Supreme Commander maps is not a big deal. For most maps, it is very light and visible only at far distances. Start and End are distances from the camera, where fog begins to blend, and finish blending. The end distance should not be too small, to not hide the map at strategic zoom. For Fog Color the best is the color of the atmosphere, the horizon color. Something between the sky colour and the land colour is visible from very far.
Remember to not set Bloom to too big a value. Even if you don't have it enabled in-game, many users still like to play with it. Specular is the colour and strength of sun reflection from the terrain. How specular is applied depends on used stratum textures and if the TTerrainXP shader is used or not.
This is a new map feature that was added in the Forged Alliance expansion. In previous versions of the map files, the skybox was just a texture. In the v60 scmap file version skybox is defined by a few values that are stored in skybox data.
You can just export them from official Forged Alliance maps and import them to your map. Remember, that when saving the map as v56, skybox data will be lost. v60 file format works only in Forged Alliance.
The colour of the skybox is defined by Horizon colour and Zenith colour. They create gradients based on height values. Then cloud texture is applied with additional stars/planets/moons billboard textures.
Armies can be added, removed or edited by going into the MAP > ARMIES menu.
For the new maps editor create team FFA with all playable armies configured, and 2 extra armies NEUTRAL_CIVILIANS and ARMY_17, that is everything you need for a standard map.
Configuration for multiplayer should have 1 team named FFA. To add a team press the +Team button
Every playable army should be in this team, and its name should start with ARMY_ and a unique number between 1 and 16. Game support max 16 players. To add army press + button under team;
Remember that armies need to be in the correct order, first on top of the list needs to be always ARMY_1 and the next numbers under it. The next army should always be numbered higher by 1.
For example, if you have ARMY_1 and ARMY_3, the game will only find 1 army for multiplayer. It needs to be ARMY_1 and then ARMY_2.
Remember to rename the army in Extra Armies if there is any with the name that you want to use for the playable army. Older maps usually have ARMY_9 for civilian defence structures or wreckage, so better is to always rename it to ARMY_17.
For campaign maps armies have some configuration. Note, that these will not be used in the standard game, they are used only in missions.
Extra armies are armies, that are not assigned to any team and are not playable. Use these for civilians and reclaimable wreckage.
Army with civilians should be always named NEUTRAL_CIVILIANS
Areas allow to definition of custom places on the map, that can be later used in custom scripts.
The editor displays them as yellow lines. You can also select an area, that editor will render as a playable area. By default, it uses the biggest area. You can also hide it if you need to see the whole map.
By default, the editor creates AREA_1 and will clip the map to that area. That allows us to make custom size of the maps. Just create a bigger map, and reduce its playable area.
The area used for Playable Area is defined in script.lua file.
Markers are objects, that define points of the map such as spawn points, mass points, hydrocarbon, spawn points, AI nodes, and many other custom points used by the game or scripts.
Spawn Point is just a Blank Marker that has the same name as the Army. When the editor finds, that name is correct, it changes the marker graphic to the commander icon.
When you created an army in the Armies section of the wiki, notice that it will say, "Army marker not found!". This is intended. You then have to sync the army(ies) with blank markers.
Navigate to the MARKERS menu and add a blank marker. Deselect the Blank Marker button and click on the marker you just created. Rename it to the corresponding army name, for ex. "ARMY_1".
There are 2 types of resource markers: Mass and Hydrocarbon. They define points, where there will be a place for mass extractor and hydrocarbon on the map. Resources can be connected with the army by Adaptive settings.
A separate page provides various tips on how to make a map more 'AI friendly'.
Further details specifically on AI markers are provided below. Only some AI will make use of AI markers (as discussed in the Custom AI page in more detail).
With 17 different types of markers, AI markers give information to AIs for them to function properly during the game.
Markers Not used by Supreme Commander's standard AI or by Sorian AI:
Tip on making amphibious markers: Note that you can export the land/sea marker position from the editor, open the exported script on a notepad and replace all marker type entries to "MarkerType":17 and re-import those markers as amphibious, then simply need to connect them on water-land areas.
For information on how to make decent markers, please refer to Thisforumpost
Auto Path Node is a marked marker made of Land, Amphibious and Naval path node markers. When the editor loads a map that has more than 2 of them in the same place then they are displayed as AutoPathNode instead of separate nodes. When the marker is on land it generates land and amphibious nodes, when on water generates amphibious and naval nodes. Connections between these nodes are preserved. They are exported as standard Land, Amphibious and Naval nodes.
[TODO]
[TODO]
The layers page allows you to hide or show markers of certain types. This is useful if you have a lot of different markers on the map, and don't want to see them all. This is most often used when creating connections for PathNodes for AI. You can just hide everything other and show marker connections, to see the connection between all nodes.
Spawn Range are some predefined rings displayed for every spawn point to help you better see distances between resources and other spawn points. The editor displays 4 ranges:
Props are just small objects on the map like trees and rocks, that can usually be reclaimed. They give mass and energy when reclaimed, so plan how you distribute them over your map because it can change the balance.
To create props click on the + button or Tools/Resource browser to open the Resource Browser, and make sure that Category is changed to Props. Then just drag the prop to the list on the left. You can put many props on the list, and when painting it will randomly choose one of them. You can also drop the prop from the browser into the map to create it.
When props are selected, you can paint them by just dragging the mouse over the map. You can modify brush size and strength by UI slider on the left or by holding the B or M keys on the keyboard.
Left Alt inverts brush, and allow you to erase props from the map. Strength value also works for erasing, so you can choose how fast it removes props.
If you want exact precision (for example for buildings) you can change the brush size to 0 and use Snap to grid.
Props statistics show how much mass and energy can be reclaimed from all props on the map.
Decals are just small texture decals that can be placed on terrain to give it a much more detailed look. There are Albedo decals, that gives colour, and Normal decals, that change surface shape for lighting.
Decal implementation in FAF Map Editor is a little different from what you can find in other tools. The list of the decals is a "colour palette" of decals, not the decals on the map. In the beginning, it might feel unintuitive, but it's very useful and speed up the whole process. You don't need to find textures from the list or find a similar decal on the map to duplicate it. There are usually so many decals you can easily get lost in all of them. Instead, you just select Decal Type from the list, like a colour from the colour palette, and just stamp it on the terrain.
To create a new decal type just click the + button on the bottom of the decal type list. An editor will create and select a new decal type. You need now to select the render type of that decal and assign textures to it.
For the Albedo decal you need to select a color texture.
For the Normal decal you need to select normal texture (these strange blue or yellow textures).
Decal Types can't be removed. They only display last-used decals, like last-used colours on a colour palette. You can only remove decal instances from the map.
When you select Decal Type you want to place on the terrain you can click the Place decals button. Now just by clicking over terrain, you place that decal. Remember to select the proper symmetry setting before.
While you are in placement mode, you can use the keyboard keys to rotate (E) and scale (R) the decal before you place it. Cursor will show you how the decal will look on the map.
To create civilian and wreckage units on your map you need to add them to Extra Armies. Map editor by default creates ARMY_17 and NEUTRAL_CIVILIAN armies.
Units and unit groups can be re-parented by pressing the P key. Every selected will be now parented under the main selected group (blue on the list).
Units are stored inside groups. Every group can have other groups under it, so it creates trees of groups like folders.
To create a new group press the + Group button under army or other group.
To select units inside the group double click on the group (not on the name). This can also be done by holding Shift or Alt to Add/Remove from the existing selection.
To rename it double-click on its name.
Prefix is a custom naming tag, that is then added to the group name. When you change the prefix name, all groups inside that army with the same prefix will also change their prefix. Thanks to that are easy to have multiple groups starting with the same name, for easier management in the code.
To create wreckage, create a Unit Group named WRECKAGE under ARMY_17 or NEUTRAL_CIVILIAN. An editor will automatically render them as wreckage and the game will place them as wreckage. The unit group can be made under any army (player or otherwise) and the game will still place them.
Any army defined under Extra Armies will behave as defined by the in-game option for Civilians. If the Civilians option is set to Enemy they will hate everyone. If set to Neutral they will ignore everyone, but can be captured. This cannot be overridden in the editor settings for that army.
The exception to this is the NEUTRAL_CIVILIAN army which will ALWAYS be neutral, ignoring all editor and game options to say otherwise.
To create civilians on the map place them under NEUTRAL_CIVILIAN or ARMY_17 in the group INITIAL. Civilian units will now spawn when they are enabled in-game options.
For example, if you want civilians that shoot at players, you must add them under ARMY_17 and have the in-game option for Civilians set to Enemy
Render Preview Image - If you want the editor to only render a preview image of the map, then use this command. It allows to generate an image with custom width and height. If you want the image in png format, then the image path needs to end with "*.png". In other cases, it will save with JPG compression.
-renderPreviewImage [Width] [Height] [ScenarioPath] [PngImagePath]
Map editor and game allow having custom textures loaded from the map folder. This works only for stratum textures and decals. Props can't be loaded, because the game won't load blueprints from the maps folder.
Create an env folder in your map folder, and then inside create needed folders by their type. Note that ResourceBrowser will use
Category to load from the proper folder
To find your resources in ResourceBrowser open and select Map folder in Type dropdown.
Editor fixes all folders, file names and paths, so it should always work automatically, but you can read these steps if you have any issues with it.
Because the FAF server automatically renames your folder, it can break the paths of custom resources you've set up. To ensure this doesn't happen follow these steps:
The server will rename your map folder into the scenario file name (at least it seems to) so if your scenario name differs from the folder name it will be renamed and broken.
Any spaces in the scenario name will be replaced by an underscore before being used as a map name so make sure there are none. Alternatively, you can have a map folder name with underscores and a scenario file name with spaces but as a general rule, it's easier to keep a habit of naming your folder and all the files inside of it the same to minimize any potential issues.
FAF Map Editor have a feature to prepare all files of the new version for you. It will also update the paths of custom assets and every path in scenario.lua. Just open the latest version of your map and click File/Save as new version. Files created like that can now be uploaded to Vault.
If you want to upload a new version of the same map, then use File/Save as new version in the map editor. The editor will create and rename all files for you. When you upload that new version of the map into the vault it will hide old versions, and show this one.
FAF vault doesn't allow the removal of broken or old maps. Ask moderators for support on this if you can't upload a new, fixed version of these maps.