Part 3

Written by Mark Haidekker

Editor's Note - This article series by the author of Jungles of Caldoun, will show level makers how to make their own terrific levels - part-by-part. Last month, Mark looked at VOCs....this month he concludes the article series with a look at LFD's and the PDA. As Editor I would like to thank him for such terrific work.

----------------------------------
The Jungles of Caldoun LFD
----------------------------------

In this third and last part of the series, I don't want to create a tutorial like in the two previous parts. Instead, I'd like to write a few things about the LFD file which contains the briefing and the PDA for the level. Those of you who'll actively work on a level will know the basics which are required for the understanding of this article. The only tools required are the well known BMPDF utility by Alexei Novikov and a bitmap(BMP) editor like Corel Photo Paint.

The briefing bitmap from Jungles of Caldoun

The interesting thing for me is that I kind of anticipated some Jedi Knight features. While I was still creating the Wasp WAX, at LA probably the first versions of the Mailoc were hovering over the rugged landscape of Sulon. And mission objectives that change during the level are as far as I know new for DF but quite common in JK - although it's not really difficult as you'll soon see.

The LFD file is another containter file like the GOBs (this info is meant for those of you who are no so familiar with the DF internal details). While GOBs are usually accessed during the actual play of the level, the LFD contains the "surroundings": Cutscenes, the mission briefing, and the PDA. The most important LFD is the DFBRIEF.LFD file. In the original game, it contains all the between-level information, and everybody who wants to create a custom briefing will have to replace this file (the file name is hard wired internally). Suppose you want to replace the SECBASE level, then here are some of the files you'll need:

ITEMS000.BMP to ITEMS016.BMPThese are the items you might get. This
ITEMS.ANMincludes keys, cards, devices.
SEC000.BMP to SEC005.BMPThe mission goals, see the example
SECBASE.ANMfurther below.
SECBASE.BMPThe BMP that contains the briefing

The best way to get familiar with these is - as usually - to look at the original DFBRIEF.LFD (using for example the already well-known BMPDF utility package) and to pick out the files you want to change. The easiest one will probably be the SECBASE.BMP bitmap containing the briefing text. It can be scrolled so there is no vertical limit. The width must be limited to 198 pixels, though. For the font you might want to use the DF font by Peter Klassen, which contains the original character bitmaps from DF to be installed under Windows - including a cyrillic font for the bad guys :-)

Let's now advance to the next item, this would be ITEMS.ANM - the suffix ANM indicates an ANIM file, which is a collection of bitmaps which MAY be played as a sequence. It may be used for changing screens, as well. The items screen is such an example. As soon as you get an item (a key, the goggles, etc), the screen changes - the item is being added. Here are a few examples of items. If you see them, you'll probably know how to change e.g. the Death Star Plans into the Geiger Counter (Hunt for the Arc Hammer). Note, that all objects have a different relative position: All BMPs in the ITEMS.ANM are overlaid with matching upper left corner. It is even easier to change e.g. the Yellow Key into the Armoury Key: Get the original bitmap and just modify the text. That's it.

The next component of DFBRIEF.LFD is the SECBASE.ANM file (and the corresponding ANIMs for the other levels). These contain the mission goals in the PDA, those which change the color when an objective is completed. Here are the original SECBASE goals:

At the beginning of the lelel, the leftmost image is displayed. The mission goal ANIM is controlled by the logic which is defined in the COMPLETE elevator and the GOL file. When a GOL entry is triggered, the corresponding bitmap in the ANIM is added. The first entry in the SECBASE GOL file is the item trigger: You get the DS plans, the middle bitmap is overlaid. You get to the upper level - the rightmost bitmap is overlaid.

--------Original Secbase GOL file--------
GOL 1.0
  GOAL: 0    ITEM: 0   # death star plans.
  GOAL: 1    TRIG: 1   # Get to upper level.
------------------------------------------------

For your custom mission goals, you'll have to replace the original goals by your own ones. When an objective is completed, the bitmap for the uncompleted goal is overlaid by another one - the same text with a different color. That's how accomplished goals are changed in color.

Now, here is how the changing goals in Jungles of Caldoun work. I have defined the following objectives:

- Get to the CROW sector (trigger goal)
- Reach the installation (trigger goal)
- Reach the antenna sector (trigger goal)
- Get the Repair Kit (item goal)
- Get to the Crow sector again (trigger goal)

This is the SECBASE.GOL file that belongs to this configuration:

----------Jungles of Caldoun GOL File--------------
GOL 1.0
  GOAL: 0    TRIG: 1  #   Get into CROW sector
  GOAL: 1    TRIG: 2  #   Get into Imp installation
  GOAL: 2    TRIG: 3  #   Finish watching the antenna
  GOAL: 3    ITEM: 0  #   Repair kit (DS plans)
  GOAL: 4    TRIG: 4  #   Get to the CROW
------------------------------------------------------------

The corresponding bitmaps in the SECBASE.ANM file are:

123
456

Well, I think now the rest should be clear. Instead of providing a full objective screen (all objectives still in green), the initial screen just contains the entry "Find the Crow". When this objective is completed, the SEC001.BMP is added, which contains the first objective in "done" color and adds the next green objective. This is how the story is kept secret and is only revealed during the game play. Not too difficult, is it?

When you change those bitmaps, please keep in mind that the conversion palette is BRF-MON.PLT for the secbase level and BRF-JAN.PLT for all other levels, although I'm not sure if there is a real difference between those palette files.

The last component of the DFBRIEF.LFD which I want to cover is the 'background ' of the briefing screen, the one with Jan/Mon Mothma and the buttons you press for Easy/Med/Hard etc. This is the BRF-MON.ANM and the BRF-JAN.ANM (non-secbase). These too can be changed, resulting in the jungle path which replaces Mon Mothma in Caldoun.

The "real thing" for LFDs are the cutscenes, though. At this point I must admit that I never really considered providing the level with cutscenes. Creating a cutscene is a real piece of work. Therefore, I will not cover the cutscene details in this article. But here are a few hints, though.

Basically, a cutscene LFD contains a control file and an ANIM file which again consists of BMPs. Usually, there is a background BMP where the moving parts are overlaid to conserve memory and to enhance speed. To get a considerable frame rate, a large number of BMPs is needed, and that's exactly why I never started on a cutscene. There are a few specialists, though who did a terrific job of creating one. First of all, Peter Klassen comes into my mind, who provided his Bounty Hunt not only with a beginning cutscene, but also with a final one (don't abort the game after you've finished BH, but advance to the next level instead!). There are more cutscene specialists, of course, and I know that you can almost spend as much time on the cutscenes as you do on building a good level . . .