From ed72eb71daa2f62f11b42da1988cd8001199a4a7 Mon Sep 17 00:00:00 2001 From: nhw_cron Date: Tue, 14 Jan 2020 11:17:34 -0500 Subject: [PATCH] This is cron-daily v1-Jan-14-2020. manpages updated: dgn_comp.txt --- doc/dgn_comp.txt | 412 ++++++++++++++++------------------------------- 1 file changed, 142 insertions(+), 270 deletions(-) diff --git a/doc/dgn_comp.txt b/doc/dgn_comp.txt index 907a4f0a6..8a5ef546d 100644 --- a/doc/dgn_comp.txt +++ b/doc/dgn_comp.txt @@ -1,330 +1,202 @@ - - - -DGN_COMP(6) 1995 DGN_COMP(6) +DGN_COMP(6) Games Manual DGN_COMP(6) NAME - dgn_comp - NetHack dungeon compiler + dgn_comp - NetHack dungeon compiler SYNOPSIS - dgn_comp [ file ] + dgn_comp [ file ] - If no arguments are given, it reads standard input. + If no arguments are given, it reads standard input. DESCRIPTION - Dgn_comp is a dungeon compiler for NetHack version 3.2 and - higher. It takes a description file as an argument and pro- - duces a dungeon "script" that is to be loaded by NetHack at - runtime. + Dgn_comp is a dungeon compiler for NetHack version 3.2 and higher. It + takes a description file as an argument and produces a dungeon "script" + that is to be loaded by NetHack at runtime. - The purpose of this tool is to provide NetHack administra- - tors and implementors with a convenient way to create a cus- - tom dungeon for the game, without having to recompile the - entire world. + The purpose of this tool is to provide NetHack administrators and + implementors with a convenient way to create a custom dungeon for the + game, without having to recompile the entire world. GRAMMAR - DUNGEON: name bonesmarker ( base , rand ) [ %age ] - - where name is the dungeon name, bonesmarker is a letter for - marking bones files, ( base , rand ) is the number of lev- - els, and %age is its percentage chance of being generated - (if absent, 100% chance). - - DESCRIPTION: tag - - where tag is currently one of HELLISH, MAZELIKE, or ROGUE- - LIKE. - - ALIGNMENT | LEVALIGN: [ lawful | neutral | chaotic | - unaligned ] - - gives the alignment of the dungeon/level (default is - unaligned). - - ENTRY: level - - the dungeon entry point. The dungeon connection attaches at - this level of the given dungeon. If the value of level is - negative, the entry level is calculated from the bottom of - the dungeon, with -1 being the last level. If this line is - not present in a dungeon description, the entry level - defaults to 1. - - PROTOFILE: name - - the prototypical name for dungeon level files in this - dungeon. For example, the PROTOFILE name for the dungeon - Vlad's Tower is tower. - + DUNGEON: name bonesmarker ( base , rand ) [ %age ] + where name is the dungeon name, bonesmarker is a letter for marking + bones files, ( base , rand ) is the number of levels, and %age is its + percentage chance of being generated (if absent, 100% chance). -Dec Last change: 12 1 + DESCRIPTION: tag + where tag is currently one of HELLISH, MAZELIKE, or ROGUELIKE. + ALIGNMENT | LEVALIGN: [ lawful | neutral | chaotic | unaligned ] + gives the alignment of the dungeon/level (default is unaligned). + ENTRY: level + the dungeon entry point. The dungeon connection attaches at this level + of the given dungeon. If the value of level is negative, the entry + level is calculated from the bottom of the dungeon, with -1 being the + last level. If this line is not present in a dungeon description, the + entry level defaults to 1. -DGN_COMP(6) 1995 DGN_COMP(6) + PROTOFILE: name + the prototypical name for dungeon level files in this dungeon. For + example, the PROTOFILE name for the dungeon Vlad's Tower is tower. + LEVEL: name bonesmarker @ ( base , rand ) [ %age ] - LEVEL: name bonesmarker @ ( base , rand ) [ %age ] + where name is the level name, bonesmarker is a letter for marking bones + files, ( base , rand ) is the location and %age is the generation per- + centage, as above. - where name is the level name, bonesmarker is a letter for - marking bones files, ( base , rand ) is the location and - %age is the generation percentage, as above. + RNDLEVEL: name bonesmarker @ ( base , rand ) [ %age ] rndlevs - RNDLEVEL: name bonesmarker @ ( base , rand ) [ %age ] - rndlevs + where name is the level name, bonesmarker is a letter for marking bones + files, ( base , rand ) is the location, %age is the generation percent- + age, as above, and rndlevs is the number of similar levels available to + choose from. - where name is the level name, bonesmarker is a letter for - marking bones files, ( base , rand ) is the location, %age - is the generation percentage, as above, and rndlevs is the - number of similar levels available to choose from. + CHAINLEVEL: name bonesmarker prev_name + ( base , rand ) [ %age ] - CHAINLEVEL: name bonesmarker prev_name + ( base , rand ) [ - %age ] + where name is the level name, bonesmarker is a letter for marking bones + files, prev_name is the name of a level defined previously, ( base , + rand ) is the offset from the level being chained from, and %age is the + generation percentage. - where name is the level name, bonesmarker is a letter for - marking bones files, prev_name is the name of a level - defined previously, ( base , rand ) is the offset from the - level being chained from, and %age is the generation percen- - tage. + RNDCHAINLEVEL: name bonesmarker prev_name + ( base , rand ) [ %age ] + rndlevs - RNDCHAINLEVEL: name bonesmarker prev_name + ( base , rand ) - [ %age ] rndlevs + where name is the level name, bonesmarker is a letter for marking bones + files, prev_name is the name of a level defined previously, ( base , + rand ) is the offset from the level being chained from, %age is the + generation percentage, and rndlevs is the number of similar levels + available to choose from. - where name is the level name, bonesmarker is a letter for - marking bones files, prev_name is the name of a level - defined previously, ( base , rand ) is the offset from the - level being chained from, %age is the generation percentage, - and rndlevs is the number of similar levels available to - choose from. + LEVELDESC: type - LEVELDESC: type + where type is the level type, (see DESCRIPTION, above). The type is + used to override any pre-set value used to describe the entire dungeon, + for this level only. - where type is the level type, (see DESCRIPTION, above). The - type is used to override any pre-set value used to describe - the entire dungeon, for this level only. + BRANCH: name @ ( base , rand ) [ stair | no_up | no_down | portal ] [ + up | down ] - BRANCH: name @ ( base , rand ) [ stair | no_up | no_down | - portal ] [ up | down ] + where name is the name of the dungeon to branch to, and ( base , rand ) + is the location of the branch. The last two optional arguments are the + branch type and branch direction. The type of a branch can be a two- + way stair connection, a one-way stair connection, or a magic portal. A + one-way stair is described by the types no_up and no_down which specify + which stair direction is missing. The default branch type is stair. + The direction for a stair can be either up or down; direction is not + applicable to portals. The default direction is down. - where name is the name of the dungeon to branch to, and ( - base , rand ) is the location of the branch. The last two - optional arguments are the branch type and branch direction. - The type of a branch can be a two-way stair connection, a - one-way stair connection, or a magic portal. A one-way - stair is described by the types no_up and no_down which - specify which stair direction is missing. The default - branch type is stair. The direction for a stair can be - either up or down; direction is not applicable to portals. - The default direction is down. + CHAINBRANCH: name prev_name + ( base , rand ) [ stair | no_up | no_down + | portal ] [ up | down ] - - -Dec Last change: 12 2 - - - - - - -DGN_COMP(6) 1995 DGN_COMP(6) - - - - CHAINBRANCH: name prev_name + ( base , rand ) [ stair | - no_up | no_down | portal ] [ up | down ] - - where name is the name of the dungeon to branch to, - prev_name is the name of a previously defined level and ( - base , rand ) is the offset from the level being chained - from. The optional branch type and direction are the same - as described above. + where name is the name of the dungeon to branch to, prev_name is the + name of a previously defined level and ( base , rand ) is the offset + from the level being chained from. The optional branch type and direc- + tion are the same as described above. GENERIC RULES - Each dungeon must have a unique bonesmarker , and each spe- - cial level must have a bonesmarker unique within its dungeon - (letters may be reused in different dungeons). If the - bonesmarker has the special value "none", no bones files - will be created for that level or dungeon. - - The value base may be in the range of 1 to MAXLEVEL (as - defined in global.h ). + Each dungeon must have a unique bonesmarker , and each special level + must have a bonesmarker unique within its dungeon (letters may be + reused in different dungeons). If the bonesmarker has the special + value "none", no bones files will be created for that level or dungeon. - The value rand may be in the range of -1 to MAXLEVEL. + The value base may be in the range of 1 to MAXLEVEL (as defined in + global.h ). - If rand is -1 it will be replaced with the value - (num_dunlevs(dungeon) - base) during the load process (ie. - from here to the end of the dungeon). + The value rand may be in the range of -1 to MAXLEVEL. - If rand is 0 the level is located absolutely at base. + If rand is -1 it will be replaced with the value (num_dunlevs(dungeon) + - base) during the load process (ie. from here to the end of the dun- + geon). - Branches don't have a probability. Dungeons do. If a - dungeon fails to be generated during load, all its levels - and branches are skipped. + If rand is 0 the level is located absolutely at base. - No level or branch may be chained from a level with a per- - centage generation probability. This is to prevent non- - resolution during the load. In addition, no branch may be - made from a dungeon with a percentage generation probability - for the same reason. + Branches don't have a probability. Dungeons do. If a dungeon fails to + be generated during load, all its levels and branches are skipped. - As a general rule using the dungeon compiler: + No level or branch may be chained from a level with a percentage gener- + ation probability. This is to prevent non-resolution during the load. + In addition, no branch may be made from a dungeon with a percentage + generation probability for the same reason. - If a dungeon has a protofile name associated with it (eg. - tower) that file will be used. + As a general rule using the dungeon compiler: - If a special level is present, it will override the above - rule and the appropriate file will be loaded. + If a dungeon has a protofile name associated with it (eg. tower) that + file will be used. - If neither of the above are present, the standard generator - will take over and make a "normal" level. - - A level alignment, if present, will override the alignment - of the dungeon that it exists within. - - - - - -Dec Last change: 12 3 - - - - - - -DGN_COMP(6) 1995 DGN_COMP(6) + If a special level is present, it will override the above rule and the + appropriate file will be loaded. + If neither of the above are present, the standard generator will take + over and make a "normal" level. + A level alignment, if present, will override the alignment of the dun- + geon that it exists within. EXAMPLE - Here is the current syntax of the dungeon compiler's - "language": - - - # - # The dungeon description file for the "standard" original - # 3.0 NetHack. - # - DUNGEON: "The Dungeons of Doom" "D" (25, 5) - LEVEL: "rogue" "none" @ (15, 4) - LEVEL: "oracle" "none" @ (5, 7) - LEVEL: "bigroom" "B" @ (12, 3) 15 - LEVEL: "medusa" "none" @ (20, 5) - CHAINLEVEL: "castle" "medusa" + (1, 4) - CHAINBRANCH: "Hell" "castle" + (0, 0) no_down - BRANCH: "The Astral Plane" @ (1, 0) no_down up - - DUNGEON: "Hell" "H" (25, 5) - DESCRIPTION: mazelike - DESCRIPTION: hellish - BRANCH: "Vlad's Tower" @ (13, 5) up - LEVEL: "wizard" "none" @ (15, 10) - LEVEL: "fakewiz" "A" @ (5, 5) - LEVEL: "fakewiz" "B" @ (10, 5) - LEVEL: "fakewiz" "C" @ (15, 5) - LEVEL: "fakewiz" "D" @ (20, 5) - LEVEL: "fakewiz" "E" @ (25, 5) - - DUNGEON: "Vlad's Tower" "T" (3, 0) - PROTOFILE: "tower" - DESCRIPTION: mazelike - ENTRY: -1 - - DUNGEON: "The Astral Plane" "A" (1, 0) - DESCRIPTION: mazelike - PROTOFILE: "endgame" - - NOTES: - Lines beginning with '#' are considered comments. - A special level must be explicitly aligned. The alignment - of the dungeon it is in only applies to non-special levels - within that dungeon. + Here is the current syntax of the dungeon compiler's "language": + + + # + # The dungeon description file for the "standard" original + # 3.0 NetHack. + # + DUNGEON: "The Dungeons of Doom" "D" (25, 5) + LEVEL: "rogue" "none" @ (15, 4) + LEVEL: "oracle" "none" @ (5, 7) + LEVEL: "bigroom" "B" @ (12, 3) 15 + LEVEL: "medusa" "none" @ (20, 5) + CHAINLEVEL: "castle" "medusa" + (1, 4) + CHAINBRANCH: "Hell" "castle" + (0, 0) no_down + BRANCH: "The Astral Plane" @ (1, 0) no_down up + + DUNGEON: "Hell" "H" (25, 5) + DESCRIPTION: mazelike + DESCRIPTION: hellish + BRANCH: "Vlad's Tower" @ (13, 5) up + LEVEL: "wizard" "none" @ (15, 10) + LEVEL: "fakewiz" "A" @ (5, 5) + LEVEL: "fakewiz" "B" @ (10, 5) + LEVEL: "fakewiz" "C" @ (15, 5) + LEVEL: "fakewiz" "D" @ (20, 5) + LEVEL: "fakewiz" "E" @ (25, 5) + + DUNGEON: "Vlad's Tower" "T" (3, 0) + PROTOFILE: "tower" + DESCRIPTION: mazelike + ENTRY: -1 + + DUNGEON: "The Astral Plane" "A" (1, 0) + DESCRIPTION: mazelike + PROTOFILE: "endgame" + + NOTES: + Lines beginning with '#' are considered comments. + A special level must be explicitly aligned. The alignment of the dun- + geon it is in only applies to non-special levels within that dungeon. AUTHOR - M. Stephenson (from the level compiler by Jean-Christophe - Collet). + M. Stephenson (from the level compiler by Jean-Christophe Collet). SEE ALSO - lev_comp(6), nethack(6) - - - - - -Dec Last change: 12 4 - - - - - - -DGN_COMP(6) 1995 DGN_COMP(6) - - + lev_comp(6), nethack(6) BUGS - Probably infinite. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + Probably infinite. -Dec Last change: 12 5 +COPYRIGHT + This file is Copyright (C) Kenneth Lorber and was last modified + 2018/04/25 (version NetHack-3.6.0:1.6). NetHack may be freely redis- + tributed. See license for details. +NETHACK 25 May 2015 DGN_COMP(6) -- 2.40.0