All Projects → canismarko → dungeon-sheets

canismarko / dungeon-sheets

Licence: GPL-3.0 license
A tool to create character sheets and GM session notes for Dungeons and Dragons fifth edition (D&D 5e).

Programming Languages

python
139335 projects - #7 most used programming language
TeX
3793 projects

Projects that are alternatives of or similar to dungeon-sheets

vscode-dmbinder
Visual Studio Code extension for managing campaign documents.
Stars: ✭ 53 (-56.2%)
Mutual labels:  dungeons-and-dragons
DM-Operations-Center
The DM Operations Center is a collection of rules and tools for 5th edition Dungeons & Dragons dungeon masters that use the advanced Virtual Tabletop application Encounter+
Stars: ✭ 27 (-77.69%)
Mutual labels:  dungeons-and-dragons
snd
Sales & Dungeons — Thermal Printer as D&D Utility
Stars: ✭ 55 (-54.55%)
Mutual labels:  dungeons-and-dragons
tavernbot
D&D Discord Bot - based on Discord.js and Node 8.
Stars: ✭ 21 (-82.64%)
Mutual labels:  dungeons-and-dragons
my spells
Your personal D&D 5e Spellbook.
Stars: ✭ 12 (-90.08%)
Mutual labels:  dungeons-and-dragons
Luminari-Source
Current Source Code for LuminariMUD - A Pathfinder/D20 Multi User Dungeon
Stars: ✭ 37 (-69.42%)
Mutual labels:  dungeons-and-dragons
dnddata
Weekly updated dataset of D&D characters submitted to https://oganm.com/shiny/printSheetApp and https://oganm.com/shiny/interactiveSheet. A superset of characters used in oganm/dndstats
Stars: ✭ 91 (-24.79%)
Mutual labels:  dungeons-and-dragons
foundry-5e-monster-maker
A D&D 5e monster maker module for the Foundry VTT. Build new monsters with level-appropriate, balanced stats in seconds.
Stars: ✭ 26 (-78.51%)
Mutual labels:  dungeons-and-dragons
Fantasy Map Generator
Web application generating interactive and highly customizable maps
Stars: ✭ 2,802 (+2215.7%)
Mutual labels:  dungeons-and-dragons
rollem-telegram-bot
🎲 An RPG dice rolling bot for Telegram.
Stars: ✭ 26 (-78.51%)
Mutual labels:  dungeons-and-dragons
dojo
Dojo is a web app for D&D (5E) dungeon masters. It can be used to design monsters and to plan and run combat encounters.
Stars: ✭ 22 (-81.82%)
Mutual labels:  dungeons-and-dragons
statblock5e-creator
A frontend web application for creating creature statblocks for Dungeons and Dragons 5th Edition.
Stars: ✭ 15 (-87.6%)
Mutual labels:  dungeons-and-dragons
Character-Builder-5
A Character Builder for 5e
Stars: ✭ 87 (-28.1%)
Mutual labels:  dungeons-and-dragons
5e-Framework
A comprehensive 5th Edition Dungeons & Dragons Framework for MapTool.
Stars: ✭ 40 (-66.94%)
Mutual labels:  dungeons-and-dragons
city-of-doors
The Map of Sigil, City of Doors
Stars: ✭ 40 (-66.94%)
Mutual labels:  dungeons-and-dragons
d d characterSheets 5e
Creates printable 5th edition D&D character sheets as HTML from JSON.
Stars: ✭ 20 (-83.47%)
Mutual labels:  dungeons-and-dragons
Bryans-Preferred-Modules-for-FoundryVTT
My personally cultivated list of FoundryVTT Modules for Dungeons and Dragons 5e and Pathfinder 2e that play nicely together without creating an overwhelming amount of UI options or causing noticeable FPS drops.
Stars: ✭ 119 (-1.65%)
Mutual labels:  dungeons-and-dragons
dndstats
Statistics of DnD characters submitted to https://oganm.com/shiny/printSheetApp and https://oganm.com/shiny/interactiveSheet. A larger dataset is at https://github.com/oganm/dnddata
Stars: ✭ 37 (-69.42%)
Mutual labels:  dungeons-and-dragons
d20
A fast, powerful, and extensible dice engine for D&D, d20 systems, and any other system that needs dice!
Stars: ✭ 78 (-35.54%)
Mutual labels:  dungeons-and-dragons
texbrew
An attempt to make good-looking homebrew documents for various roleplaying systems using XeTeX for typesetting.
Stars: ✭ 50 (-58.68%)
Mutual labels:  dungeons-and-dragons

Dungeon Sheets

A tool to create character sheets and session notes for Dungeons and Dragons 5th edition (D&D 5e).

Build status Test coverage status Documentation Status

Documentation

Documentation can be found on readthedocs.

Installation

$ pip install dungeonsheets

Note

Dungeon sheets requires at least python 3.6. This is mostly due to the liberal use of f-strings. If you want to use it with previous versions of python 3, you'll probably have to replace all the f-strings with the older .format() method or string interpolation.

Optional External dependencies

  • You may use pdftk to generate the sheets in PDF format.
  • You will need pdflatex, and a few latex packages, installed to generate the PDF spell pages (optional).

If pdftk is available, it will be used for pdf generation. If not, a fallback python library (pdfrw) will be used. This has some limitations:

  • Produces v1.3 PDF files
  • Not able to flatten PDF forms
  • Will produce separate character-sheets, spell-lists and spell-books.

Different linux distributions have different names for packages. While pdftk is available in Debian and derivatives as pdftk, the package is not available in some RPM distributions, such as Fedora and CentOS. One alternative would be to build your PC sheets using docker.

If the pdflatex command is available on your system, spellcasters will include a spellbook with descriptions of each spell known. If not, then this feature will be skipped.

In order to properly format descriptions for spells/features/etc., some additional latex packages are needed. On Ubuntu these can be install with:

$ sudo apt-get -y install pdftk texlive-latex-base texlive-latex-extra texlive-fonts-recommended

Usage

Each character or set of GM notes is described by a python (or a VTTES JSON) file, which gives many attributes associated with the character. See examples for more information about the character descriptions.

The PDF's can then be generated using the makesheets command. If no filename is given, the current directory will be parsed and any valid files found will be processed. If the --recursive option is used, sub-folders will also be parsed.

$ cd examples
$ makesheets

dungeon-sheets contains definitions for standard weapons and spells, so attack bonuses and damage can be calculated automatically.

Consider using the -F option to include the excellent D&D 5e template for rendering spellbooks, druid wild forms and features pages (https://github.com/rpgtex/DND-5e-LaTeX-Template).

If you'd like a step-by-step walkthrough for creating a new character, just run create-character from a command line and a helpful menu system will take care of the basics for you.

Content Descriptions

The descriptions of content elements (e.g. classes, spells, etc.) are included in docstrings. The descriptions should ideally conform to reStructured text. This allows certain formatting elements to be properly parsed and rendered into LaTeX or HTML:

class Scrying(Spell):
  """You can see and hear a particular creature you choose that is on
  the same plane of existence as you. The target must make a W isdom
  saving throw, which is modified by how well you know the target
  and the sort of physical connection you have to it. If a target
  knows you're casting this spell, it can fail the saving throw
  voluntarily if it wants to be observed.

  Knowledge - Save Modifier
  -------------------------
  - Secondhand (you have heard of the target) - +5
  - Firsthand (you have met the target) - +0
  - Familiar (you know the target well) - -5

  Connection - Save Modifier
  --------------------------
  - Likeness or picture - -2
  - Possession or garment - -4
  - Body part, lock of hair, bit of nail, or the like - -10

  """
  name = "Scrying"
  level = 5
  ...
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].