This is a LaTeX template for typesetting documents in the style of the fifth edition of the "world's greatest roleplaying game".
- Color schemes, fonts, and layout are close to the core books (but not exactly the same).
- TeX Live includes the default fonts.
- Works with pdfTeX, LuaTeX, and XeTeX.
There are three options for using this project; choose the one that's right for you.
This will install the template for your current user in one of the following locations:
- Linux:
~/.texmf/tex/latex - OS X / macOS:
~/Library/texmf/tex/latex - Windows:
C:\Users\{username}\texmf\tex\latex
LaTeX will find the package automatically.
-
Prepare your
TEXMFHOMEdirectory.mkdir "$(kpsewhich -var-value TEXMFHOME)/tex/latex/" -
Download the latest release and extract it in
$TEXMFHOME/tex/latex/.wget https://github.com/rpgtex/DND-5e-LaTeX-Template/archive/master.zip unzip -d "$(kpsewhich -var-value TEXMFHOME)/tex/latex/" master.zip cd "$(kpsewhich -var-value TEXMFHOME)/tex/latex/" mv DND-5e-LaTeX-Template-master dnd
Alternatively, clone the repo to the same location:
git clone https://github.com/rpgtex/DND-5e-LaTeX-Template.git "$(kpsewhich -var-value TEXMFHOME)/tex/latex/dnd"
Overleaf is an online TeX editor -- think about it like Google Docs for TeX documents. This option does not require a local TeX installation and is an ideal approach for one-off projects.
- Download this GitHub repository as a ZIP archive using the Clone or download link above.
- On Overleaf, click the New Project button and select Upload Project. Upload the ZIP archive you downloaded from this repository.
You can also clone a copy of the repository to each LaTeX project. For example, to clone the repository to a lib/ directory in your project:
mkdir lib/
git clone https://github.com/rpgtex/DND-5e-LaTeX-Template.git lib/dndLaTeX will not find the template automatically. Set TEXINPUTS when compiling your project to locate the package:
TEXINPUTS=./lib//: pdflatex project.texLoad the dndbook class in your preamble:
\documentclass[10pt,twoside,twocolumn,openany,nodeprecatedcode]{dndbook}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\begin{document}
% ...You can also load the dnd package directly to use it with another class.
Note that the package has only been tested with the book class.
\documentclass[10pt,twoside,twocolumn,openany]{book}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage[layout=true]{dnd}
\begin{document}
% ...| Option | Package dnd |
Class dndbook |
|---|---|---|
bg |
✓ | ✓ |
justified |
✓ | ✓ |
layout |
✓ | |
nomultitoc |
✓ | ✓ |
nodeprecatedcode |
✓ | ✓ |
The dndbook class also supports all the options of the book class.
Declare how to load background and footer images. This is a key-value option with the following possible values:
full: Load both background and footer images. (default)none: Removes both background and footer images.print: Loads only the footer images.
Justify column copy.
Controls whether loading the dnd package also modifies the document layout (geometry, colors, typography, etc.).
This is a boolean option with the following possible values:
true: Modify the document layout.false: Do not modify the document layout.
The default value is true for backwards compatibility with early releases.
This will change in a future release.
Disable multi-column table of contents.
Excludes all deprecated code from the build process.
If you don't have LaTeX installed, we recommend installing a complete TeX Live distribution.
sudo apt-get install texlive-fullsudo pacman -S texlive-bin texlive-core texlive-latexextraMacTex has its own installer, but you can install it through brew cask:
brew cask install mactexbrew cask install mactex-no-guiUse tlmgr to install packages as needed, see this answer for more information
brew cask install basictex
brew cask install tex-live-utilityAfter any of this, use the following such that the texlive directory doesn't require admin rights.
sudo chown -R myuser:mygroup /usr/local/texliveFor more information about MacTex permissions, see the following StackExchange post
This is a known issue in tcolorbox. According to the tcolorbox 4.12 manual (p. 363):
If your text content contains some text color changing commands, your color will not survive the break to the next box.
You can use LuaTeX to compile the document.
lualatex main.texWrapping a monsterbox (or monsterboxnobg) in a floating figure adds extra space between stat block elements:
\begin{figure}[b]
\begin{monsterbox}{Orc Warden}
% ...
\end{monsterbox}
\end{figure}Instead, use the tcolorbox float parameter:
\begin{monsterbox}[float=b]{Orc Warden}
% ...
\end{monsterbox}Refer to the tcolorbox documentation (section 4.13) for more float parameters.
We use EditorConfig to enforce consistent formatting. Install the appropriate plugin for your editor.
-
Run
./bin/bump-versionto tag the new version../bin/bumpversion <version>
-
Compile the example PDF.
-
Save the first page of the PDF as scrot.jpg.
-
Update the change log for the new release; commit your changes.
-
Push changes.
git push && git push --tags -
Create a new release and attach the PDF and scrot.
- Background image from Lost and Taken
MIT
