Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
bsp(6)				 Games Manual				bsp(6)

       bsp - node builder for WAD files

       bsp  [ -blockmap	{old|comp} ] [ -factor n ] [ -noreject ] [ -o file ] [
       -picknode {traditional|visplane}	] [ -q ] file

       BSP builds the nodes and	blockmap resources for all the levels in a WAD
       file.   Levels  created	with level editors won't run without these re-

       -blockmap {old|comp}
	      This selects the algorithm used for generating the blockmap  re-
	      source.	The  old  algorithm  (currently	 the default, but this
	      might change in future) produces a complete blockmap which  con-
	      tains  some redundancy.  The comp	algorithm generates an equiva-
	      lent blockmap, but which eliminates this	redundancy,  making  a
	      smaller resulting	WAD file.

       -factor n
	      Changes  the  cost  assigned to seg splits.  Factor n can	be any
	      positive integer,	and the	larger the factor, the more costly seg
	      splits are.  A factor of 17 is the default and behaves just like
	      earlier versions of BSP.	Most people do not  need  or  want  to
	      change  the  default.  Changing the factor can sometimes prevent
	      visplane overflows in WAD's; but then  again,  some  WAD's  have
	      just  too	 many  visplane	overflows, experiment with the -factor
	      option before giving up.

	      Normally,	BSP creates a zero-ed reject map, which	is sub-optimal
	      but  sufficient  for  Doom  to  play the level.  Other tools are
	      available	to build an optimal reject map.	 If  a	level  already
	      has  an optimised	reject map, this option	should be used to stop
	      BSP replacing it.

       -picknode {traditional|visplane}
	      In traditional mode (the default), BSP aims to  produce  a  bal-
	      anced  node tree that minimises the number of lines that must be
	      split in this process.   visplane	 mode  causes  the  node  line
	      picker  to  choose node lines in a way that is empirically known
	      to reduce	or eliminate visplane overflows.  This is an  old  bug
	      that affected the	original Doom engine but does not affect newer
	      engines -	if you don't know what this  option  is	 and  have  no
	      problems without it, you do not need it.

       -o file
	      Sets  the	 name  of  the WAD file	for output.  Should not	be the
	      same as the input!  As with the input filename, it can be	a - to
	      indicate	that  standard	input/output  should be	used.  Without
	      this option, output is written to	tmp.wad.

       -q     Does not show program banners or progress, for usage from	 other

       BSP has some special effect features:

       If  a linedef has a sector tag >= 900, then it is treated as "precious"
       and will	not be split unless absolutely necessary.  This	is good	to use
       around borders of deep water, invisible stairs, etc.

       Furthermore, just for a grin, if	the lindef's tag is 999, then the sid-
       edef's x-offset sets an angle adjustment	in degrees to  be  applied  --
       you can look straight at	a wall,	but it might come right	at you on both
       sides and "stretch".

       BSP supports HOM-free transparent doors.	 Simply	make the sector	refer-
       enced  by  the  doortracks have a sector	tag of >= 900.	The doortracks
       must the	lowest numbered	of all the linedefs that form  the  door.   No
       need  to	 remember sector numbers and type them in on a command line --
       just use	any sector tag >= 900 to permanently mark the sector  special.
       The  special tag	is not strictly	necessary; it just prevents a flash of
       HOM at the top of  the  door  when  it  opens  or  closes.   See	 test-
       wads/transdor.wad for an	example.

       Doom, Ultimate Doom, Doom ][, Final Doom, Heretic and Strife.

       0    OK
       >0   Errors occurred

       This  program  will not build a good reject map,	it will	(unless	-nore-
       ject is used) build a zero-ed one, where	every sector is	 visible  from
       any  other  sector.   For  the  final  release of a level, a reject map
       should be built using a suitable	tool, such as RMB.

       The Hexen level format is not supported.

       BSP was written by Colin	Reed and Lee  Killough	(,
       based on	an algorithm by	Raphael	Quinet.

       Contributors include Simon "fraggle" Howard (compressed blockmap	code),
       Oliver Kraus (endianness	fixes),	Andre Majorel (Unix  port,  man	 page)
       and Udo Munk (Unix port,	man page, assorted hacks).

       BSP is currently	maintained by Colin Phipps <>.

       idbsp(6), warm(6), wreject(6), zennode(6).

BSP 5.1				  2002-04-06				bsp(6)


Want to link to this manual page? Use this URL:

home | help