Files used and created by the Scenario Editor

There will be a number of files created. If you wish to use them in the regular game, they will have to be moved (and, in some cases, renamed) to other folders
Filename Description and Final Disposition
cerro-Ger.DFP This is a directory file for the Scenario Editor only. It shows the Scenario Editor what files are to be used. It is not used by the game. It remains in ..\Psygnosis\Panzer Elite\Projects\Italy\
cerro-Ger.MGS This file contains the settings in the Map Generator box. It is not used by the game. It remains in ..\Psygnosis\Panzer Elite\Projects\Italy\
Since the German and US landscapes are the same, the two .MGS files are the same.
File Contents: There are 70 4-byte numbers (bytes 1-280).
1 - 25 are the values in the 'Filter' box (bytes 1-100).
26 is a hex 'CDCC4C3E'. All the .MGS files have this (bytes 101-104).
27 to 62 are the 36 numbers of the 'Texture' patterns in the texture window (bytes 105-248).
63 is a hex '00000000'. All the .MGS files have this (bytes 249-252).
64 - 66 are the three slope selector values in the upper part of the screen (bytes 253-264).
67 - 69 are the three slope selector values in the lower part of the screen (bytes 265-276).
70 is the 'Slider' value, usually '7D000000' = 125 (bytes 277-280).
cerro-Ger.OBS It is not used by the game. It remains in ..\Psygnosis\Panzer Elite\Projects\Italy\
Since the German and US landscapes are the same, the two .OBS files are the same.
      All the .OBS files are the same length (128,000 bytes), so whatever array space is there must include enough empty space to accept all variations of the data.
      The file starts with the lists of units and objects in the same 18-byte packets that are used in the 'final data' .DAT file.
      The file also has the information about what items are in which cells of the two SelectTexture windows and the ObjTexComb window.
      I do not know what else is in the file, nor do I know what layout the information is in.
cerro-Ger.SCN This is the scenario file and contains the scenario information (units, scripts, mission, paths, areas, artillery, weather, etc.) used by the Scenario Editor and the game. It gets moved to
..\Psygnosis\Panzer Elite\Scenario\ and keeps the same name.
      This file is so complicated and interlocked that it cannot be 'created' from scratch. It can be 'edited' using a file-editor such as WordPad, but only minimally and with the greatest of care.
cerro-Ger.SCP This file contains the landscape information used by the Scenario Editor. It is not used by the game. It remains in ..\Psygnosis\Panzer Elite\Projects\Italy\ Since the German and US landscapes are the same, the two .SCP files are the same.
      The file length is 8 + 8 * (nrows x ncols). Bytes 1-4 give the number of columns (even 100s). Bytes 5-8 give the number of rows (even 100s). Remember, in all these Hex numbers, the LEAST SIGNIFCANT DIGIT comes first.
There follow 4 matrices, each of NROW x NCOL values 4-bytes long. In all these matrices, the 4 top and bottom rows and the 4 left and right columns, while present in the matrices, will NOT be used.
Matrix 1) - Basic Ground Textures = Level 0
These contain pointers to the basic ground textures (row 1 of the 'Textures' menu). The four top row and left column (unused) pointers are Hex-40. The four bottom row and right column (unused) pointers are Hex-20. All the others point to the basic ground textures in the first row of the Texture menu (1-15). None are zero (of course).
Matrix 2) - Attributes = Level 1
This seems to be for attributes having to do with the half-shift. Values are usually 4 or 7. When a Basic Ground Texture in one cell is different from that in a neighboring cell, values in the 600-800 range appear for all cells involved. The Scenario Editor recreates these values whenever a Basic Ground Texture is changed, so all you have to do to get the values regenerated is to go through the steps of 'changing' the Basic Ground Texture in ONE cell.
Matrix 3) - Roads and Streams = Level 2
These pointers are for the roads and streams and the textures that are NOT IN ROW 1 of the texture menu. A square with NO such item will have a value of Hex-10 (decimal 16). The pointers have numbers such that the first piece of road (row 4, column 1) is Hex-50 (decimal 80). The piece of road next to it is Hex-51 (decimal 81). The piece of road in row 5, column 1 is Hex 70 (decimal 112). It is as if there is an invisible 16-item-wide row between each row that shows but NOT after the first row. These pointers match the information in the SelectTexture windows and the ObjTexComb window. This means that if you change the .OBS file, textures and/or objects in the .SCP file may be changed. A typical case occurs with single Walls. Suppose you insert some walls with whatever rotation is present at the time. Then you change the rotation of the wall in the 'SelectTexture' window. The next time you look at your previously-inserted walls, you will find that they have all been changed. In other words, a pointer to the Object is being kept, not a description. What you get from that pointer is determined by the information in the .OBS file at the moment.
Matrix 4) - Objects = Level 3
The object pointers point to the objects as displayed in the 'Objects' menu. A square with NO object has a value of Hex-00. Hex-01 (decimal 1) points to the object in row 1, column 2. Hex-10 (decimal 16) points to the object in row 2, column 1. Hex-20 (decimal 32) points to the object in row 3, column 1. etc.
cerro-GerEnglish.txt This is the Briefing file in English for the German side. It has the briefing messages, the controls for the briefing crosses, circles, and arrows, and the messages used in the combat scripts.
It gets moved to ..\Psygnosis\Panzer Elite\Scenario\
and keeps the same name.
cerro-GerGerman.txt This is the Briefing file in German (if any) for the German side. It gets moved to
..\Psygnosis\Panzer Elite\Scenario\ and keeps the same name.
cerro-US*.* These are for the US side and are treated the same way.
cerro.bmp This is the Briefing map file. It gets made in step 29. The quality of this generated map is exceedingly poor. The briefing maps that come with the Panzer Elite game are clearly works of art made quite differently. It gets stored in ..\Psygnosis\Panzer Elite\Scenario\
cerro.bmp This is a 'final data' file and has in it enough different 16-bit x 16-bit tiles to permit drawing the complete landscape.
Here is a file from a very small scenario. The 16-byte x 16-byte pictures really start from the bottom and work up. In this picture they are shown from left to right. The whitish dividers that appear every ten pictures are just to facilitate counting. They are NOT part of the original file. There are 265 pictures in the original file. Notice that they start using only one picture for a 10-m x 10-m square. At picture number 18, 4 pictures are used to produce one 10-m x 10-m square. You can see how the one picture at no. 5 showing a white N-S road becomes the four pictures at 34-37. Starting at picture 90, you can see how the road itself has become 4 high and two wide. The other 8 pictures (for the left and right sides of the square), which show plain dirt, are made from pictures 95, 98, and 101.
These tiles are pictures of the basic landscape texture together with any shadows, roads, paths, streams, railroads, etc. that lie on the surface. Hence it has all the information needed to paint the ground surface. A tile of one ground texture with an east-west road on it will be different from another tile having the same ground texture but with a north-south road on it.
Its companion final-data file, cerro.DAT, has whatever counters and pointers are needed to use these tiles to draw the landscape.
      This .BMP file is made in step 28) and automatically saved to folder ..\Psygnosis\Panzer Elite\Scenario\Scapes\.
Since the German and US landscapes are the same, there is only one .BMP file.
cerro.dat This second 'final data' file has in it the final landscape data from cerro.SCP and the height data from cerroHeight.BMP. It is made in step 28) and automatically saved to folder ..\Psygnosis\Panzer Elite\Scenario\Scapes\.
      Since the German and US landscapes are the same, there is only one .DAT file.
      I have prepared as detailed a description of this file as I can. It can be found here.
cerroHeight.bmp This is the Height file that is made in step 6. During subsequent scenario editing it lives in
..\Psygnosis\Panzer Elite\EditDirs\ScnEdDat\Heightmp\
cerroh.bmp This is a temporary file with the height lines (contour lines) on it. It used to make cerroHeight.bmp in step 6). Once that is done, this file is no longer needed.
cerror.bmp This is a temporary file with the roughness indicators on it. In our case, all are zero. It used to make cerroHeight.bmp in step 6). Once that is done, this file is no longer needed.
cerro*.wav These are the .WAV files that correspond to the briefing messages. They are named according to the following rules (for our cerro, German-side, scenario):
      The successful mission text is cerroSTger.wav. The failed mission text is cerroFTger.wav.
      The briefing messages mixed in with the crosses, arrows, and marks have as their last parameter a number. That number is the number of the .WAV file to be played when the command is displayed.
      For briefing-message no. 1, the .WAV file would be named cerroBger1.wav.
      Since our briefing is for the German side and in English, the files are stored in folder ..\Psygnosis\Panzer Elite\Desert\Wavs\Briefing\GerEnglish\Cerro\
      Note that all the briefing .WAV files are stored in ..\Desert\.. no matter which 'Theater of Operations' the scenario is in.
      If our Briefing for the German side was in German, the .WAV files would be stored in ..\GerGerman\.. instead of ..\GerEnglish\... The Briefing .WAV files for the US side in English would be stored in ..\USEnglish\...


Map Size
If the Heightmap size is wrong, (1) you cannot move the units wherever you wish during editing, and/or (2) when you play the game, the units and town names are shown in the wrong locations on the F12 briefing map.
One way to tell what size Heightmap is needed is to open the briefing map in MSPaint. Clicking on Image and then Attributes will display the size.
For example, the briefing-map TOUM.BMP is 1384 x 984. Adding 16 to each number and dividing by two gives 700 x 500 for the Heightmap size needed for the Scenario Editor.
For the SWFURNA.BMP briefing-map at 1184 x 984, a 600 x 500 Heightmap is needed.
For the BREAKTHROUGH.BMP briefing-map (at 1184 x 784), a 600 x 400 Heightmap is needed.
Note: each Heightmap pixel = 10 meters in the game, or 100 pixels to the kilometer.
Another way to tell what size Heightmap is needed is to open the .DAT file in ..\Psygnosis\Panzer Elite\Scenario\Scapes\.
Bytes 9-12 give the number of columns. Bytes 13-16 give the number of rows. These are typical hex numbers: least-significant digit-first. They will also be 8 smaller than the dimensions required for the Heightmap. For the GOUBELLAT.DAT scenario file, the dimensions found are 392 by 792, corresponding to the 400 x 800 of the Heightmap.
Yet another way to tell what size Heightmap is needed is to open the .SCN file in ..\Psygnosis\Panzer Elite\Scenario\.
For the GOUBELLAT.SCN scenario file, the dimensions found are
  ScenarioWidth:3920
  ScenarioHeight:7920
which are 80 m smaller and correspond to the 400 x 800 of the Heightmap.
General
The map size which the Scenario Editor expects comes from the Heightmap file. The dimensions given are the full size, not 8 bytes smaller.
If you try to load a new Heightmap, various conditions can occur.
If there is a mismatch with the new Heightmap, the Scenario Editor complains.
Choice "OK" loads the new Heightmap, but only SHOWS as much of it as was in the original Heightmap. This is because no textures have yet been applied to the new area.
If the new Heightmap is larger, you can place units in the new larger area.
If the new Heightmap is smaller, placement of units (once you move them inside) is limited to the smaller area.
Choice "Cancel" loads NO MAP, the whole background is black, and the program goes into an "hourglass-loop" state where you must use Ctrl-Alt-Delete to terminate the program.


Updated 12/4/01