\documentclass[a4paper,openany]{book}
\usepackage{bind}

\date{\today}


\begin{document}

\chapter{How to Make Monsters}

\section{Introduction}

\begin{multicols}{2}

\subsection{All about Dragons}

\begin{boxtext}

As you embark upon your first adventure, you summon your first monster with a simple backstroke.
You write down \verb"\dragon", and behold!

\end{boxtext}

\dragon

Each time you conjure the dragon, it will look a little different.
The next one might look like this:

\dragon

If you find it hard to tell the difference between all the dragons, you can give them names in square brackets with the \verb"npc command", like this:

\verb"dragon[\npc{\M}{Bob the dragon}]"

Which then makes a male dragon called ``Bob'':

\dragon[\npc{\M}{Bob the Dragon}]

You can summon dozens of monsters, including \verb"humansoldier", \verb"basilisk", and \verb"\ghoul"
(see \verb"monsters.tex" for all the examples).

\subsection{Individual NPCs}

Individual characters can be created by using the \verb"\npc" command then the \verb"person" command, with its nine arguments:

\begin{verbatim}

\npc{\M}{Alice}

\person{0}% STRENGTH
{1}% DEXTERITY 
{-1}% SPEED
{{2}% INTELLIGENCE
{0}% WITS
{0}}% CHARISMA
{0}% DR
{1}% COMBAT
{Academics 1, Wyldcrafting 1}% SKILLS
{\longsword, adventuring equipment}% EQUIPMENT
{}

\end{verbatim}

\npc{\M}{Alice}
\person{0}% STRENGTH
{1}% DEXTERITY 
{-1}% SPEED
{{2}% INTELLIGENCE
{0}% WITS
{0}}% CHARISMA
{0}% DR
{1}% COMBAT
{Academics 1, Wyldcrafting 1}% SKILLS
{\longsword, adventuring equipment}% EQUIPMENT
{}

\subsubsection{Bestiary}

Statblocks in a bestiary chapter (or any space for examples).
You can set an example chapter by writing \verb"\settoggle{bestiarychapter}{true}"

Then the \verb"\humansoldier" command turns from this:

\humansoldier

\ldots into this:

\settoggle{bestiarychapter}{true}

\humansoldier

This second soldier is still partly random.

\subsection{Boxes}

You can add things for these people to say with a \verb"\begin{speechtext}" command:

\begin{speechtext}

  ``Would you tell me, please, which way I ought to go from here?''

  ``That depends a good deal on where you want to get to.''

\end{speechtext}

Then we have \verb"\begin{exampletext}" for example:

\begin{exampletext}
  You can use the \verb"\boxtext" environment for general boxes.
  Typically, they get used to assault players with massive amounts of introductory text.
\end{exampletext}

\subsection{Magical Items}

This is a magical item.

\begin{verbatim}

\magicitem{Noodle of Death}% NAME
  {Extinguish}% SPELL
  {Divinity (FSM)}% PATH
  {Instant}% DURATION
  {Pocket Spell}% TYPE
  {2}% Potency
  {5}% MP

\end{verbatim}

\magicitem{Noodle of Death}% NAME
  {Extinguish}% SPELL
  {Divinity (FSM)}% PATH
  {Instant}% DURATION
  {Pocket Spell}% TYPE
  {2}% Potency
  {5}% MP

\subsection{Spheres}

Each sphere is produced with a sphere command, so this -- \verb"\sphere{Mirrors}" -- would produce the `Mirrors' sphere.

After that, each level is produced with \verb"\spelllevel".

These commands handle numbering, indexing, et c.

Finally, individual spells are laid out with \verb"\spell{Fireball}{Instant}{Projectiles}{goes burr}"

The first argument gives a name, the second the type (`instant' or `continuous'), the third is the Skill casters can roll when using it, and the fourth is the spell's description.

The spell's description can be referenced from other books as a summary (if you have set \verb"\label{fireball}"), e.g. `\verb"\nameref{fireball}"' produces `\textit{Fireball -- goes burr}'.

\subsubsection{Enhancements}
A different command is used for enhancements: \verb"\enhancement{Blue}{1}{makes spells blue}".

The first argument gives a name, the second gives how many levels it adds to the spell, and the last is the spell's description.

\subsection{Pictures}

\sidepic{l1}
All images should go into the images directory.

Writing \verb"\pic{b1}" shows the image under \verb"images/b1.svg".
The file extension can be either `svg' or `jpg' (but never `jpeg').

Use \verb"\sidepic{l1}" to show that image at the side of the text.

\pic{b1}

For svg files to work, the document must be compiled with \verb"pdflatex -shell-escape main.tex" on the first run (the Makefile generally takes care of this).

Wider pictures should be placed with \verb"\widePic{s1}", and they will appear on the next page, at the bottom, or with \verb"\widePic[t]{s1}" to see the picture at the top of the next page.

\widePic{s1}

\subsection{Symbols}

\begin{tabularx}{\linewidth}{Xcc}

  Meaning & Typed & Symbol \\\hline

  Nura & {\tt \textbackslash{N}} & \gls{N} \\

  Undead & {\tt \textbackslash{D}} & \gls{D} \\
  \hline
  Teams & {\tt \textbackslash{T}} & \gls{T} \\

  Animal & {\tt \textbackslash{M}} & \gls{A} \\

  Sentient & {\tt \textbackslash{E}} & \gls{E} \\

  Female & {\tt \textbackslash{F}} & \gls{F} \\

  Male & {\tt \textbackslash{M}} & \gls{M} \\

  \hline
  Gnoll & {\tt \textbackslash{Nl}} & \gls{Nl} \\

  Dwarves & {\tt \textbackslash{Dw}} & \gls{Dw} \\

  Humans & {\tt \textbackslash{Hu}} & \gls{Hu} \\

  Elves & {\tt \textbackslash{El}} & \gls{El} \\

  Gnome & {\tt \textbackslash{Gn}} & \gls{Gn} \\
  \hline
  Squash & {\tt \textbackslash{squash}} & \gls{squash} \\

  Side Quest ready & {\tt \textbackslash{sqr}} & \gls{sqr} \\

  Side Quest not ready & {\tt \textbackslash{sqn}} & \gls{sqn} \\

\end{tabularx}

\end{multicols}

\section{Creature Commands}

\begin{multicols}{2}

\subsection{Weapon Commands}

The \verb"weapon{Name}{1}{2}{3}{80}" command works in 2 ways.
When defining a weapon, it adjusts the current creature's stats.
When used in a weapons chart, it shows the weapon's stats.

Stats are derives from the weapon's 3 properties: length, sharpness, and weight.

\begin{verbatim}
  \weapon{Sword}% NAME
    {2}% LENGTH
    {1}% SHARPNESS
    {1}% WEIGHT
    {400}% COST
\end{verbatim}

The attack bonus comes from the weapon's length.
The damage comes from the weapon's sharpness or weight (whichever is higher).
The initiative cost to swing the weapon comes from its weight as well.
Finally, the weight is the same as the minimum Strength bonus required to wield the weapon properly.

When that weapon command appears in a table, it shows the Attack, Damage, AP required, and Weight (the minimum Strength required to use it).
When when a creature wields the weapon, those stats raise the creature's stats.

  \begin{nametable}[XXXXXX]{M\^{e}l\'{e}e Weapons}

  \textbf{Name} & \textbf{Bonus} & \textbf{Dam.} & \textbf{AP} & \textbf{Weight} & Cost \\\hline

  \Dagger

  \greataxe

  \spear

  \end{nametable}

\subsection{Loot}

You can use the various `loot' commands to give loot to creatures or rooms,a little like A,D\&D's `treasure type C'.

So writing \verb"In this room sits \lootBig." might produce `in this room sits 12gp'.

Available commands:

\begin{itemize}

  \item
  \verb"\lootSmall"
  \item
  \verb"\lootMedium"
  \item
  \verb"\lootBig"
  \item
  \verb"\lootMagic"
  \item
  \verb"\lootJewellery"

\end{itemize}

\end{multicols}

\section{Modules \& Areas}

\begin{multicols}{2}

\subsection{Encounters}

Make encounter tables like this:

\begin{verbatim}

  \begin{encounters}{Wonderland}

    Fields & Gardens & Results \\\hline

    \li & Doormouse \\
    \li & Dodo \\
    \li \lii Unicorn \\
    \li \lii Red Queen \\
    & \lii Black Queen \\
    & \lii Green Queen \\

\end{verbatim}

\begin{encounters}{Wonderland}

  Fields & Gardens & Results \\\hline

  \li & Doormouse \\
  \li & Dodo \\
  \li \lii Unicorn \\
  \li \lii Red Queen \\
  & \lii Black Queen \\
  & \lii Green Queen \\


\end{encounters}

And charts about roll successes like this:

\begin{verbatim}


  \begin{rollchart}

    Roll & Result \\\hline

    12 & Success \\

    11 & Failure \\

  \end{rollchart}

\end{verbatim}

\begin{rollchart}

  Roll & Result \\\hline

  12 & Success \\

  11 & Failure \\

\end{rollchart}


\end{multicols}

\begin{multicols}{2}

\section{Others}

Other commands are typically produced for just a single location in the book.

The functions which produce the creature boxes is a tangled mess of rotten spaghetti-logic, which is so inefficient it somehow taxes a modern computer just to add some numbers.
It's best not to think about how creatures are made.

\end{multicols}

\end{document}