Jump to content
Official BF Editor Forums

Recreating Map's Editor Files


Outlawz

Recommended Posts

In this tutorial I'll show you how to (re)create the editor files for a map, in cases where there's no way to gain access to the original ones or if you had them, but lost them.

If you don't know what "editor files" are; these are the files located inside your map's Editor folder, putting it simply. From here they can be edited via BFEditor and saved in an uncompressed format, from where later on you'll compile the compressed files when you save.

In case your files get corrupted, you can resave from here where you'll always have working files.

Not all files edited with BFEditor (and indirectly, by you) are located here, like Staticobjects.con, Sky.con... those are in the main folder, can be read and do not need to be recreated in anyway, and some files are saved from bfeditor's rawdata folder, like lowdetail textures and undergrowth.

You'll need:

Preparations

I'm going to pick Gulf of Oman from Battlefield 2 for this tutorial. You can pick any map or mod, process is the same.

To be on the safe side I'm going to create a temporary mod for this tutorial and copy the map to there, so I can still play BF2. If you're already using a copy of your mod intended for editing, then you can skip this and do it there.

Now before we begin, install the PS action SalvageColorDetail to Adobe\Adobe Photoshop CS3\Presets\Actions.

Extract your map's client and server .zips.

Before you continue, go into the above directory, right-click on your maps' folder and untick 'Read only', in case the map's files have this enabled, in my case they do since DiCE made everything read only in their maps.

Go back to your map folder and create a new folder called Editor (Caps doesn't matter).

pic1.jpg

We're all set to begin.

Salvaging the ground textures

We'll start with probably the most important aspect of editor files, the ground textures. Color, detail and lowdetail maps are already here, but they aren't in proper format and/or size to be edited.

Copy your colormaps, detailmaps and lowdetailmaps folders in your map directory to your Editor folder.

pic2.jpg

Open up Photoshop CS3. We'll begin with the colormaps. These do not need to be resized, only resaved. Select all the files inside the folder and drag&drop them into Photoshop.

pic3.jpg

Give it a few moments for all the files to be loaded. On the bottom right of your PS interface there should be an Actions tab, where you might already see your SalvageColorDetail action set. If you do not see this tab, press F9.

pic4.jpg

Now go to File>Automate>Batch,

pic5a.jpg

and select the SalvageColorDetail action set and under actions, saveColor, leave the source at Opened Files.

pic5b.jpg

and let it rip. If you observe the Actions tab, you'll see Photoshop working on your opened files, which will get duplicated only inside Photoshop, don't worry it doesn't double the actual files.

In case you're wondering what just happened; what this action did was resave the colormaps to 32-bit A8R8G8B8 format with one mipmap. This is the format that editor can use.

pic6.jpg

Now, go to File>Close All or Alt+Ctrl+W, so you get rid of the opened files.

We continue with detail and lowdetailmaps. Both of these need to be resized and resaved to same size and format and as you guessed by now, the action set does the dirty work here.

Again, drag&drop files from both lowdetail and detailmaps folders into Photoshop, go to File>Automate>Batch.

Using the same SalvageColorDetail set, this time change the action from saveColor to ResizeSave_DetailLowdetail

pic7.jpg

and let it rip, then once done, close Photoshop. You now have ground textures you can work with.

Setting up Ground Properties

Load up your mod and map in BFEditor. You now have nicely looking textures on your map, but you're missing the lowdetail texture and detail textures. Actually, you're only missing the latter, the lowdetail texture is already here, just needs to be regenerated. ;)

If you want to use the lowdetail texture elsewhere or want it backed up, you can copy the lowdetailtexture.dds in your map's main folder to \Battlefield 2\bf2editor\RawData\Common\Terrain\Textures\LowDetail, and give it a suffix or rename it, so you know from which map it is.

Minimize the editor window, open up the hex editor and your map's main folder and drag&drop the terraindata.raw file into the hex editor.

pic8.jpg

If you fear a program crash, close the editor first, then do this. It might be too hard to read the text lines bunched up in between symbols, go to Tools>Options>Appearance tab and play with the settings

pic9.jpg

First four lines are the load lines for ground textures and ground lightmaps, the lower six are the detail textures. Follow the line til you get to the texture name and then switch to BFEditor, go to terrainEditor>Texture. Under the first layer's detail texture select the respective texture.

If the first texture name in terraindata is ie. grass01, then the first layer detail texture should be grass01
.

In my case the texture is detail_rock04_dark.

Select a material, in my case the appropriate one would be 'rock'. Look around your map to find where the texture is used, though first layers are always sloped areas.

pic10-1.jpg

Now generate lowdetailmaps. Since the texture is already here, as said, simply select a type (1 or 2) and click on generate LowDetailMaps.

pic11.jpg

For rock textures which are usually on the first layer, use the number 2 type and set PlaneMap to 1. Use type 1 for other layers.

Repeat this for the remaining layers. You can now close the hex editor. If you did everything correctly, your map should look something like this in the Detail mode now.

pic12.jpg

Save your map.

You now have working ground textures with detail and lowdetail textures. From here you can freely edit the terrain and paint new areas. :)

Setting up Lightmap settings

In case you want to relightmap the map, you'll need to start off with some lightmap settings. You can tweak these later, but first lets get them set up.

Terrain lightmaps are already loaded and can be read by the editor, but the object lightmaps need to be in separate files in order for the editor to read them, which they aren't, because they need to be packed in atlases in order for the game to read them and to reduce file size and load times. So far no one figured out if there's a way to get them out of an atlas :P

In BFeditor go to Light>Preset and pick a lightmap preset. Note that this also changes the sky settings on your map, which we'll fix right away, but first lets save the lightmap settings.

In the Tweak bar, right-click on LightmapsSettings(Objectmode) and click Save Object mode then click the Switch to Terrain mode and save the terrain mode.

pic13.jpg

Now to fix the sky settings. Go again to Light>Preset, but scroll down below the lightmap settings and select your map's name, this will reset back to your map's sky settings.

To use your or other map's sky settings, the sky.con needs to be extracted (nothing else required, you don't need to extract everything, just the sky.con)

You now have lightmaps settings you can tweak and use to lightmap the map.

Setting up your GamePlayObjects

Still in the editor, switch to levelEditor (if you aren't already there) and under Layers in the rightside tab, start creating new layers for gamemodes and sizes.

pic14.jpg

You can create a new layer for each gamemode and size, or combine if the GPO is the same ie. the 16 player size is usually always the same in gpm_cq 16, gpm_coop 16 and SP1 16, so instead of creating three layers, create one with three gamemodes.
After you're done, untick the layers to make them invisible and lock them before saving, that will later on prevent you from seeing all of the GPOs overlapping each other when you open the map and selecting objects in different layers

pic15.jpg

Save and close the editor.

Go to your map's Editor folder and open the GPO.con.

pic16.jpg

Its currently empty with some default lines, which you'll delete.

Keep the file open and go to the main folder>Gamemodes, then to each separate gamemode and size; let's start with gpm_cq and 64.

Open that GPO and scroll down to the bottom, where you should see what layer the combat zone and everything else is on.

pic17.jpg

My intended layer for gpm_cq is layer 2, so in this case no need to change this, however you will most likely need to change the layer, so here's how to do it. Press Ctrl+H to open Find&Replace function and under Find write the layer that's currently used in the file ie. 'layer 4', note the spacing.

Under Replace with write the layer you want it to be on ie. 'layer 2' then Replace All and give it a few moments to replace all the strings. Now press Ctrl+A to select everything and paste it into your empty Editor GPO. No need to save the file you just edited.

Repeat the above for all other GPOs, once done close and save the Editor GPO. You now have all the existing GPOs in one place to edit.

Usually, everything inside the Editor GPO is sorted by groups of ObjectSpawners, SpawnPoints, ControlPoints and Combat Areas regardless of layers, however when you were putting together your GPO from others, the groups ended up like this: ObjectSpawners-SpawnPoints-ControlPoints-Combat Areas, ObjectSpawners-SpawnPoints-ControlPoints-Combat Areas , ObjectSpawners-SpawnPoints-ControlPoints-Combat Areas... for every GPO you pasted in. Don't worry, once you open it in BFEditor, the program will sort it out ;)

Setting up StrategicAreas

This is optional, if you plan to renavmesh the map or mess with control point placement or naming or you combined the SP/Coop GPOs etc. I'd advise not to do this and set up new Strategic Areas, otherwise your editor will crash while loading your map due an illegal CP error. If you still want to do it, it's very simple.

Go to a SP gamemode directory (SP1, SP2, SP3 or gpm_coop) and game size, next to the GPO should be an AI folder. Copy that and paste it into the Editor folder, then open it and inside it open the Strategic Areas file and change the layer with Find&Replace to match your SP GPO layer. If you have several SAs, copy paste them into the Editor one, same as with the GPO basically.

Note about Roads

You can't recreate roads, since you need the spline.con data which you can't get from anywhere in the map's files, the roads are saved as compiled meshes. However, the roads are baked onto the colormap which should give you an excellent guideline to lay down new ones from scratch.

pic18.jpg

This is pretty much it, post any questions you might have below.

As trivia, the Photoshop action sets are very easy to create, I actually pondered including how to do those into this tutorial, but rather kept it game related and avoid extra confusion. Here's the link to the PS tutorial on action sets.

http://www.coremediadesign.co.uk/learn_web_design/free_web_design_tutorials/tutorial/photoshop_batch_automate_function.html

Edited by Outlawz
Link to comment
Share on other sites

Yeah, thanks for that pictured tutorial ! Nice job !

For those without Photoshop, theres an easy way to convertt the games DXT1 color textures into the A8R8G8B8 format required by the editor using the free NVDXT helper program by Nvidia :

http://developer.nvidia.com/object/nv_texture_tools.html

Look for NVDXT which is a small command line tool. Download and install it. Copy the Color ( and Detail ) textures into the /editor folder you've created according to the tutorial.

Make a batch file with this content:

"C:\Program Files\NVIDIA Corporation\nvdxt.exe" -quality_highest -prescale 512 512 -u8888 -outsamedir -nomipmap -overwrite -file %1
pause

Place the batch file in the /editor/Colormaps folder and launch it. It will convert all textures in a row. Place it in /editor/detailmaps and do the same. You're now ready to see and edit the textures in BF2Editor.

Edited by mschoeldgen[Xww2]
Link to comment
Share on other sites

  • 4 weeks later...

EDIT:

Ok got it to work i shortened the commandline of the batch file to:

"C:\...\NVIDIA Corporation\DDS Utilities\nvdxt.exe" -u8888 -prescale 512 512 -nomipmap -all -overwrite
pause

And now it worked :)

Edited by JONES
Link to comment
Share on other sites

' date='08 August 2010 - 07:59 AM' timestamp='1281247159' post='99911']

Arrgh , i accidently posted my Drag&Drop batch file for a single texture to convert. :oops: Thanks JONES for pointing this out :D

Hehe no problem man, actualy truespirit figured it out, just wanted to let you know :) btw seems like the detailmaps cause problems with original maps, when i go into the editor after converting, some of the terraintiles are black, wondering why they didnt got converted properly :huh:

Edited by JONES
Link to comment
Share on other sites

It might have to do with texture size. We had a discussion a few months ago if the detailmaps come in 512*512 or other sizes , like 256*256 or even 1024*1024. Might be worth to look into and resize accordingly. There's also some strange behaviour with alpha'd detailmaps like Detail_mud01_alpha or Detail_Kmud03_alpha which i never bothered looking into.

Edited by mschoeldgen[Xww2]
Link to comment
Share on other sites

' date='10 August 2010 - 07:48 AM' timestamp='1281419302' post='99942']

It might have to do with texture size. We had a discussion a few months ago if the detailmaps come in 512*512 or other sizes , like 256*256 or even 1024*1024. Might be worth to look into and resize accordingly. There's also some strange behaviour with alpha'd detailmaps like Detail_mud01_alpha or Detail_Kmud03_alpha which i never bothered looking into.

I see, thx for clearing that up, i will try to figure it out and let you know the result!

Link to comment
Share on other sites

  • 3 months later...
  • 2 weeks later...
  • 3 months later...
  • 4 weeks later...
  • 2 weeks later...

you can run bftpaint and use the detailmap and lowdetailmap folder it produces...

copy and paste both of them into the editor folder of your map... Don't use the colormap folder

start the editor... paint a small area and generate lowdetailmaps and save

Link to comment
Share on other sites

  • 2 months later...

you can run bftpaint and use the detailmap and lowdetailmap folder it produces...

copy and paste both of them into the editor folder of your map... Don't use the colormap folder

start the editor... paint a small area and generate lowdetailmaps and save

Please excuse my noobishness, but can you put what you just said in step order, im not that knowledgeable in doing this kinda stuff, Thanks.

Link to comment
Share on other sites

  • 3 weeks later...

I encountered the very same problem as Nikoagonistes.

The solution is pretty simple: The salvage save action does not work properly on Photoshop CS5.1 (not sure about other versions, but that's the one I have, so...). I simply created my own save action and that one works fine. You can verify if the salvage-action worked correctly by checking if each of your files have the size of 1025kb after perfoming the action.

If not, your action did not work correctly.

If that is the case, you either do the same I did and recreate the save action with the settings shown in the screenshot in post 1.

Alternatively, just download my action set for PS 5.1. It might work for other PS versions as well.

PS CS5.1 Salvage Action set

Edited by Senshi
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...