An environment set is a collection of graphics files which are used to create the floor, sky, and walls for indoor maps.
Existing Sets[]
There are six environment sets in Darkside:
- Cave (CAVE)
- Castle (CSTL)
- Dungeon (DUNG)
- Sci-Fi, used for example in the crashed escape pods (SCFI)
- Town (TOWN)
- Tower (TOWR)
Files[]
Each environment set is made up of the following sprite files, where xxxx is the four letter identifier as listed above:
- Sky (xxxx.SKY)
- Ground (xxxx.GND)
- Tileset (xxxx.TIL)
- Front Walls 1-4 (Fxxxx1.FWL to Fxxxx4.FWL)
- Side Walls (Sxxxx.SWL)
Sky[]
This sprite always contains 2 frames, which when combined fill the viewport from the top to the horizon point near the middle of the viewport. The "sky" is sliced so that if you are standing directly in front of a wall, only the part which is visible (frame 0) must be drawn.
Frame | Dimensions | SCFI.SKY |
---|---|---|
0 | Always 216x17 | |
1 | Always 216x42 |
Ground[]
This sprite always contains 1 frame which fills the entire viewport down from the horizon point.
Frame | Dimensions | SCFI.GND | TOWN.GND |
---|---|---|---|
0 | Always 216x73 |
Tileset[]
The tileset is used to draw the minimap. It always contains 53 frames.
- Frame 0 is the tile used for the default ground (the sprite from the environment's xxxx.GND file)
- Frame 1 is shown on tiles that are unexplored (i.e. the party hasn't stepped there, and doesn't have Wizard's Eye active)
- Frames 2-35 are used to draw the walls surrounding the tiles that the player can walk on - see below for more details
- Frames 36-51 are the standard terrain surface tiles (which map to the .SRF graphics files)
- Frame 52 is the minimap border. Because each of the wall tiles is drawn on an angle, they overlap neighbouring tiles. Frame 52 is drawn over the minimap after all the tiles have been drawn to cover the potential overlap on every side.
Frame(s) and description | Example (from TOWN.TIL) |
---|---|
0-1 - Ground tile and "unexplored" tile (shown at 200% zoom) | |
36-51 - Standard terrain tiles (shown at 200% zoom) | |
52 - Minimap border |
Frames 2 to 35 are the north and west sprites for each wall type.
Front Walls[]
Front wall sprites contain the faces of walls which are drawn perpendicular to the camera angle. This include blank walls, doors, gates, windows, stairs and their various states.
Walls are drawn for four levels of distance. The closest walls are stored in Fxxxx1.FWL and Fxxxx2.FWL, as they are the largest images and have to be split between two files so the sprite files are not too large to be stored in the CC file. Fxxxx3.FWL stores the images for the next two levels of distance, with the final distance level being stored in Fxxxx4.FWL.
The following table maps each wall type to the FWL file number (and frame number(s), in parentheses) for each distance level. The "torch animation" always consists of five frames at each distance level.
Description | Closest | Next | Next | Furthest |
---|---|---|---|---|
Standard wall | 1 (0) | 3 (0) | 3 (17) | 4 (0) |
Torch animation | 1 (1-5) | 3 (1-5) | 3 (18-22) | 4 (1-5) |
Wall with niche | 1 (6) | 3 (6) | 3 (23) | 4 (6) |
Unknown | 1 (7) | N/A | N/A | N/A |
Door (Closed) | 2 (0) | 3 (7) | 3 (24) | 4 (7) |
Door (Open) | 2 (1) | 3 (8) | 3 (25) | 4 (8) |
Grate (Closed) | 2 (2) | 3 (9) | 3 (26) | 4 (9) |
Bashed Wall | 2 (3) | 3 (10) | 3 (27) | 4 (10) |
Stairs/Ladder (Up) | 2 (4) | 3 (11) | 3 (28) | 4 (11) |
Stairs/Ladder (Down) | 2 (5) | 3 (12) | 3 (29) | 4 (12) |
Safe (Closed) | 2 (6) | 3 (13) | 3 (30) | 4 (13) |
Grate (Open) | 2 (7) | 3 (14) | 3 (31) | 4 (14) |
Safe (Open) | 2 (8) | 3 (15) | 3 (32) | 4 (15) |
Posts | 2 (9) | 3 (16) | 3 (32) | 4 (16) |
If a particular environment doesn't make use of a particular feature (for example, the Cave environment doesn't have a "Stairs/Ladder (Down)"), the sprite is usually configured to use the same graphic as frame 0.
Example: Cave[]
The following images are an example of only the closest zoom level (FCAVE1.FWL and FCAVE2.FWL).
FCAVE1.FWL[]
Frame 0 Standard wall |
Frames 1-5 Torch animation |
Frame 6 Wall with niche |
Frame 7 Unknown |
FCAVE2.FWL[]
Distance Levels[]
Side Walls[]
A .SWL is a sprite file that contains the various faces of a wall seen from an angle. Because of the use of a perspective in the 3D view, each wall needed to be drawn at various angles and distances in order to simulate the 3D effect. Wall faces drawn perpendicular to the camera view are stored in the Front Walls files (see above).