Water design

From SRB2 Wiki
Jump to: navigation, search
A simple example of a water block.

Water in SRB2 is a type of floor over floor. To create water, you need to make both a control sector outside of the main map and a target sector inside the map where the water will appear. Choose one of the linedefs in the control sector as the control linedef, give it one of the water linedef types (see below) and tag it to the target sector. The ceiling of the control sector is the surface of the water, and the floor is the bottom. If you want to create rivers, lakes or pools, the water block should be placed inside a pit, because otherwise it will appear as a literal block of water floating in the air. If the Repeat Midtexture flag is checked on the control linedef, it will generate a water ripple effect on the surface of the water.

The texture used for the control linedef is the texture used on the side of the block. You can use a waterfall texture such as GFALL1 here to make the edge of the block look like falling water. Place another water block next to it at a lower level to create a waterfall. If the sides of your water block will not be visible (for example in a pool), it's a good idea to use one of the "No Sides" water types to make it slightly faster to render.

Water types

The following linedef types are available for water FOFs (the articles linked below contain example WADs and detailed information on how to set them up):

For translucent water types, you can specify the degree of translucency in the front upper texture of the FOF control linedef, using a value between #000 (invisible) and #255 (fully opaque). If no front upper texture is specified, #128 is used as the default value. It is generally recommended to use the translucent water types as they look more realistic. In very rendering-intensive levels, opaque water may be useful because it obscures the other side of the surface from the player's view, allowing the game to skip rendering it. However, opaque water should never be used if there are things below the water surface that the player needs to be able to see, such as hazards or death pits.

Colormap

Water should normally be combined with a colormap to give it a blue tint. To add a colormap, create a new control sector, give one of its linedefs type 606 and tag it to the water FOF's control sector. The color is set in the linedef's front upper texture as a color code in the format #RRGGBBA, where RR, GG and BB are two hexadecimal digits controlling the intensity of red, green and blue, respectively, and A is a letter between A and Z controlling the overall intensity of the colormap, with A being the weakest and Z the strongest. The water in Greenflower Zone uses the colormap #40A0FFJ, which is also commonly used in custom maps for normal water. The water in Arid Canyon Zone is darker, using #0004FFJ instead.

Normally, the colormap fades towards black as the brightness of the water sector decreases. However, some liquid types use a different color to fade to, creating a fog effect. The fade color can be specified in the colormap linedef's front lower texture, using the same #RRGGBBA color code.

Other liquids

Liquids other than water are made simply by changing the textures and colormap. If the liquid is painful, apply the damage sector effect to the water's FOF control sector.

  • Goo water: Use linedef type 124 or linedef type 125 for the goo physics. The official SRB2 maps use translucent water with a translucency of #020 and #CF7FCFZ for the colormap.
  • Lava: Apply Damage (Fire) for the fire damage. The official SRB2 maps use #FF7F00Z for the colormap. Unlike other liquids, put #FF7F00Z on both the upper and lower texture of the colormap control linedef to create the fog effect inside the lava.
  • Old THZ slime: Damage (Water) is used for slime damage. The old SRB2 maps from v2.0 and before used #E000E0S for the colormap, but #FF00FFS is also a good option.
  • Green acid: Some custom maps use green acid as a substitute for the old THZ slime, using Damage (Water) as the damage effect. The usage of the Instant Kill effect for acid, as seen in Mystic Realm's Nitric Citadel Zone, for example, is now generally frowned upon and should be avoided. The commonly used colormap for acid uses #999999D for the upper texture and #00FF00Z for the lower texture.

Water textures and flats

The following is a list of textures and flats available for water and other liquids, along with their typical usage and commonly used colormaps:

Flats Textures Usage Colormap
FWATER1.png FWATER1 CFALL1.png CFALL1 Greenflower Zone water #40A0FFJ or #0004FFJ
GFALL1.png GFALL1
VIOWALL.png VIOFLR TFALL1.png TFALL1 Techno Hill Zone goo #CF7FCFZ
CHEMG01.png CHEMG01 v2.0 Techno Hill Zone slime #E000E0S or #FF00FFS
LWATER1.png LWATER1 LFALL1.png LFALL1 Deep Sea Zone water #40A0FFJ
BFALL1.png BFALL1
RLAVA1.png RLAVA1 RVZFALL1.png RVZFALL1 Red Volcano Zone lava #FF7F00Z (upper and lower texture)
LAVA1.png LAVA1 SFALL1.png SFALL1 v1.09.4 Red Volcano Zone lava
GOOP01.png GOOP01 AFALL1.png AFALL1 Acid #999999D (upper texture)
#00FF00Z (lower texture)
SURF01.png SURF01 OFALL1.png OFALL1 Generic water
BWATER01.png BWATER01
WATER0.png WATER0

See also