1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224
|
\input texinfo
@setfilename xcdesign.info
@c Clear UNIX, MACINTOSH, etc to remove system-specific info.
@set UNIX
@set MACINTOSH
@c @set DOUBLEDENSITY
@clear DOUBLEDENSITY
@settitle Designing Games with Xconq
@setchapternewpage odd
@ifinfo
This file documents the design of games for @i{Xconq}.
Copyright (C) 1987, 1988, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998 Stanley T. Shebs
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
@ignore
Permission is granted to process this file through Tex and print the
results, provided the printed document carries copying permission
notice identical to this one except for the removal of this paragraph
(this paragraph not being relevant to the printed manual).
@end ignore
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided also that the
section entitled ``GNU General Public License'' is
included exactly as in the original, and provided that the entire
resulting derived work is distributed under the terms of a permission
notice identical to this one.
Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions,
except that the section entitled ``GNU General Public License'',
and this permission notice, may be included in translations
approved by the Free Software Foundation instead of in the original
English.
@end ifinfo
@c This is one way to make a double-density printout. Another
@c way is to use the mpage utility on postscript.
@c
@c @ifset DOUBLEDENSITY
@c @iftex
@c @magnification = 833
@c @smallbook
@c @c from @afourpaper:
@c @global@tolerance=700
@c @global@hfuzz=1pt
@c @setleading{12pt}
@c @global@parskip 2pt plus 1pt
@c @global@vsize= 65@baselineskip
@c @advance@vsize by @topskip
@c @global@hsize= 20cm
@c @global@outerhsize=@hsize
@c @global@advance@outerhsize by 0.5in
@c @global@outervsize=@vsize
@c @global@advance@outervsize by 0.6in
@c @global@pagewidth=@hsize
@c @global@pageheight=@vsize
@c @end iftex
@c @end ifset
@titlepage
@sp 6
@center @titlefont{Designing Games with Xconq}
@sp 4
@center The Penultimate Strategy Game
@sp 4
@center Version 7.2
@sp 4
@center April 1998
@sp 5
@center Stanley T. Shebs
@page
@vskip 0pt plus 1filll
Copyright @copyright{} 1987, 1988, 1989, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998
Stanley T. Shebs
Permission is granted to make and distribute verbatim copies of
this manual provided the copyright notice and this permission notice
are preserved on all copies.
Permission is granted to copy and distribute modified versions of this
manual under the conditions for verbatim copying, provided also that the
section entitled ``GNU General Public License'' is
included exactly as in the original, and provided that the entire
resulting derived work is distributed under the terms of a permission
notice identical to this one.
Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions,
except that the section entitled ``GNU General Public License'',
and this permission notice, may be included in translations
approved by the Free Software Foundation instead of in the original
English.
@end titlepage
@iftex
@headings off
@everyheading @thistitle @| @thischapter @| @thispage
@everyfooting Version 7.2 @| April 1998 @| (printed @today{})
@end iftex
@ifinfo
@node Top, , (dir), (dir)
@top Top
This manual is a full description of how to design games for @i{Xconq}.
We will assume that you are already familiar with playing games in
@i{Xconq}; if not, you should try a few different games in the standard
library, so as to get more of a feel for the game system.
@menu
* Introduction::
* Game Design::
* Reference Manual::
* Hacking Xconq::
* Summary of GDL Syntax::
* Permuted Index of GDL Symbols::
* Glossary::
* License::
* Index::
@end menu
@end ifinfo
@node Introduction, Game Design, , Top
@chapter Introduction
In this manual, you'll learn how to design new kinds of games with
@i{Xconq}. @i{Xconq} has been designed to support the use of a variety
of techniques to design, construct, and test your game idea. These
techniques range from text file editing to online painting; in most
cases, you will use a combination of techniques to build a complete
game.
As the person customizing @i{Xconq}, you will be called the
@dfn{designer}. This term also indicates the primary activity, which
will be to Design The Game. The capabilities described in this manual
are merely tools; it is up to you the designer to exercise discretion
and judgement in using them.
You design games using @i{Xconq}'s Game Design Language (GDL). GDL is
@i{Xconq}'s common language for defining all parts of a game, from the
entry in the menu that players select games from, down to the last tiny
detail of a saved game. GDL resembles Lisp, although (at the present
time) it is not a procedural language; there are no functions and very
few control constructs. Instead, the contents of a file guide the
creation or modification of @i{Xconq} objects representing types,
tables, units, and so forth. While a game is being played, @i{Xconq}
uses this data to decide what to do and what to allow players to do.
Players never actually see GDL directly.
In this manual, ``you'' always means you the designer, and players will
be referred to as ``players'' or ``users''. The distinction is
important; as the game designer, you will encounter and deal with many
technical issues relating to the inner workings of @i{Xconq}, but if you
master those issues, your players will see only a fun game to play.
A final caveat before plunging in: @i{Xconq} is an experiment in the
design and construction of configurable games. This means I have had
limited prior art on which to build, and there are lots of odd corners
that have never been tested or even thought about. In this spirit, I
would like to hear about weird cases, and ideas for how to handle them.
Chapter 1, ``Designing Games with Xconq'' is an explanatory guide for
building and modifying @i{Xconq} game designs, using both Game Design
Language (GDL) and online editing tools.
Chapter 2, ``Reference Manual'' is the complete definition of GDL. It
includes the syntax and semantics of all parts of the language.
Since @i{Xconq} is still evolving, it may be necessary to extend it in
order to accomplish a desired game design. Chapter 3, ``Hacking Xconq''
describes the general architecture of @i{Xconq}, and how to extend the
basic program. This chapter also includes a rationale for the major
design decisions, and some ideas for future development.
@include design.texi
@include refman.texi
@include hacking.texi
@node Summary of GDL Syntax, Permuted Index of GDL Symbols, , Top
@appendix Summary of GDL Syntax
@include syntax.texi
@node Permuted Index of GDL Symbols, Glossary, Summary of GDL Syntax, Top
@appendix Permuted Index of GDL Symbols
@include syms.texi
@node Glossary, License, Permuted Index of GDL Symbols, Top,
@appendix Glossary
@include glossary.texi
@node License, Index, Glossary, Top
@include gpl.texi
@node Index, , License, Top
@appendix Index
@printindex fn
@contents
@bye
|