The loadscreens.2da file contains a list of load screens to be used when loading areas.
Each area will reference a line in loadscreens.2da. You may also force a particular load screen from this 2da or a raw file with SetAreaTransitionBMP.
See also Load Screens page on how the GUI models work.
Loadscreen Format
There are 2 files used for load screens. The first is "filename" (commonly ls_filename) used by the game and also previewed in toolset. There is also a "small" preview version used by the toolset called filenames, eg: ls_tnc_01.tga and ls_tnc_01s.tga
Game Load Screen
The games default load screens are 512x512 sized TGA files. TGA retains quality compared to DDS. You can actually use any (square) size and the model that loads it will automatically resize it. If you want to support higher quality load screens you could increase the size to 1024 x 1024 for instance.
It would be recommended if you go larger (for better GUI scaling and higher quality overall) to use DDS. This is not supported to be loaded in the toolset however so you could have a toolset-only TGA then a client/user high-quality DDS.
The load screen files look a bit weird though! Here is an example:
Obviously the image needs to be "letterbox" but you can't fit such a letterbox in so the image is split, overlapping in the middle. Bit odd for sure.
Toolset Only Load Screen
The "small" Toolset Preview one is super tiny, and has to be this exact size and in TGA else the toolset simply won't load it. The size is 128x64 pixels.
Some templates are available (cribbed from this vault entry):
2da Contents
Note lines 0 and 1 are very likely hardcoded and cannot be changed, and relate to the SetAreaTransitionBMP function.
Column | Example | Valid Values | Description and Notes |
---|---|---|---|
Label | City01 | Any text | Human readable label not used by the game but is used by the toolset if StrRef is blank. |
ScriptingName | AREA_TRANSITION_CITY_01 | Any text | Human readable label not used by the game - but should (technically) relate to constants in nwscript.nss. The function SetAreaTransitionBPM would use them - or the raw 2da line number. |
BMPResRef | Texture resref name | The name of the load screen texture file (TGA or DDS). Unlike a lot of other 2das this one takes a full name, although commonly the files are prefixed "ls_". Case insensitive. | |
TileSet | Tileset resref name | This ties the load screen to a particular tileset by identifier. This has a dual use:
| |
StrRef | Dialog.tlk name | Default ones have such exciting names like "Rural 03" or "Dungeon 02". Newer Beamdog ones don't use this value and the toolset still works with them simply using the "Label" column, so entirely optional. Note it is likely not even loaded by the game. |