It's certainly a different bug because it's only present in new campaign editor. It causes the random force names to be not displayed in the list of random forces and imported incorrectly to the CAM file. I analyzed the random forces section for you and here is its complete description:Vault Maker said:I think I recall that Random Encounters had an odd behavior, or that some of the values in the table had debatable effects in the campaign. Maybe that's your bug. Can you describe it a bit more?
Code:
Defines single random force definition.
<random_force> section:
1 "<random_force>" - C string, ASCII encoding, section name
2 "2" - C string, ASCII encoding, section's version
3 int CharacterCount - Number of characters in the next character string, not including null terminating character.
4 char ForceType[CharacterCount] - ASCII string, not C string
5 int CharacterCount - Number of characters in the next character string, not including null terminating character.
6 char Alignment[CharacterCount] - ASCII string, not C string, for example: "critter", "bad", "good"
7 int MinCount
8 int MaxCount
9 char Enabled - 1-yes,0-no
10 int EntPathCount - number of paths to entity files
Path definitions:
1 int CharacterCount - Number of characters in the next character string, not including null terminating character.
2 char FilePath[CharacterCount] - ASCII string, not C string
... ; next definitions
11 int LevelDefCount
Table of level definitions. The order of elements must be identical as in FilePath list.
12 int Levels[LevelDefCount]
13 int AppearanceChanceCount
Table of appearance chance definitions. The order of elements must be identical as in FilePath list.
14 int AppearanceChances[AppearanceChanceCount]
15 int NumberOfBytesToNextSection - number of bytes to the next section since beginning of the next field
16 char CD_code - for example: 'A','D','E','Z'. These are probably the letters attached to packed file names, such as: loc-mis_A.bos
End of section.
When I will release FT Improver SDK I will also release the documentation I've created, among others, description of <TriggerManager>, <Trigger>, trigger's action, trigger's condition, <esh> and other sections.
Also thank you for the detailed description about world map movement rates. Recently I've accidentally came across a method in the BOS code that imports campaign world map image data and I noticed a reference to "_move.png" string, my first idea was that it must be related to world map movement rates. I tested it and it works. If you have 24 bit png file with world map image named NAME.png and 24 bit png file with world map mask named NAME_move.png of the same size (mask is an image in grayscale but in 24 bit mode) then you have only to load the NAME.png image into campaign editor and that's all. 100% white pixels in world map mask means that movement rate is highest, the darker are white pixels the slower is the movement rate. 100% black means STOP.
Some new information:
I also found two hardcoded names of triggers. You should know one of this names, it's from the first campaign mission. I will describe them when I will analyze their meaning.
I think that the game has another two editors, currently I'm not able to run them, the method which starts them requires proper context and 8 parameters. Class name is "SquadWindow".
I also know that the game has another two editors. Class name of the first editor is LiveTriggerMenu and the class name of the second is LiveVarMenu. I successfully run them in the context of trigger editor, but they don't work correctly and the game crashes. I think that they should be used during gameplay. The first is probably used to fire a trigger or just to see the list of triggers. The second is used to edit campaign and mission variables.