brunns / DGGen

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DGGen

Just want the characters?

Some pregenerated sets of characters can be found here.

Introduction

DGGen is a program written in Python to generate characters for the pen-and-paper roleplaying game Delta Green from Arc Dream Publishing. It follows the character creations rules included in Delta Green:Need to Know and the Delta Green Agent's Handbook. The ReportLab library is required. Characters are created one-per-page (if unequipped) or two-per-page into a PDF. (The second-page of the character sheet is included as the final page in the PDF if characters are generated unequipped.) By default, characters of alternating genders are created in each of the following professions:

  • Anthropologist
  • Business Executive
  • Computer Science
  • Criminal
  • Engineer
  • Federal Agent
  • Firefighter
  • Foreign Service Officer
  • Historian
  • Intelligence Analyst
  • Intelligence Case Officer
  • Lawyer
  • Marine
  • Media Specialist
  • Nurse
  • Paramedic
  • Physician
  • Pilot
  • Police Officer
  • Program Manager
  • Sailor
  • Scientist
  • Soldier
  • Special Operator

Customising

Professions

(Edit data/professions.json to alter the professions generated, or the number of characters generated per profession.)

By default, the generator uses data from data/professions.json to define professions, and the number of characters generated for each. Different sets of professions can be used with the --professions flag. See data/professions-fbi.json as an example, or you can create your own.

Pre-built examples include data/professions-fbi.json, data/professions-cia.json, data/professions-dea.json, and data/professions-socom.json.

Veterans

If desired, veteran Delta Green agent characters can be generated with the --veterancy flag. These characters will have gained skill levels due to experience, but may also have suffered some decreases in physical characteristics, and may also suffer some Damaged Veterans effects (from page 38 of the AH). Minimum and maximum ages can be set with the -a and -A flags respectively.

If you'd prefer to get the veterancy experience checks and stat losses, but not the Damaged Veterans effects, use the --no-damaged flag. This flag has no effect if veterancy is not enabled. This is probably the right thing to do if you need veterans who are not DG agents.

Credits

The following character sheet images were graciously provided by Simeon Cogswell, designer for Delta Green:

  • Character Sheet NO BACKGROUND.pdf
  • Character Sheet NO BACKGROUND BACK.jpg
  • Character Sheet NO BACKGROUND FRONT.jpg

Big thank you to Simeon and the folks at Arc Dream Publishing for the support.

Tasks

venv

Set up a virtual environment

We use venv to isolate our dependencies from any other Python projects that we might be working on. We only need to do this once.

python3 -m venv .venv

activate

Activate an existing virtual environment.

source .venv/bin/activate

dependecies

Install dependencies

pip install -U -r requirements.txt

generate

Generate standard characters.

./generator.py

generate-dg-veterans

Generate cells D-Z of Delta Green veterans.

for cell in {D..Z} ; do ./generator.py --type agent --count 3 --output "$cell Cell.pdf" --veterancy ; done

generate-soldiers

Generate a group of Green Berets.

./generator.py --type soldier --label "Green Beret" --employer "United States Army" --count 24 --output "Bravo Company.pdf"

generate-police

Generate a group of Police.

./generator.py --type police --employer "NYPD" --output "The 17th Precinct.pdf"

generate-criminals

Generate a group of criminals.

./generator.py --type criminal --label "Thug" --employer "Fat Tony" --count 12 --output "Tony's Enforcers.pdf"

generate-fbi

Generate a group of FBI Agents.

./generator.py --professions data/professions-fbi.json -o "FBI Field Office.pdf"

generate-cia

Generate a group of CIA Agents.

./generator.py --professions data/professions-cia.json -o "CIA London Station.pdf"

generate-socom

Generate a group of special forces soldiers.

./generator.py --professions data/professions-socom.json -o "SOCOM Camp Echo.pdf"

Generate a group of DEA Agents.

generate-dea

./generator.py --professions data/professions-dea.json -o "DEA Field Office.pdf"

generate-seals

Generate a group of Navy SEALS.

./generator.py --professions data/professions-socom.json --type seal --count 12 -o "Operation ROOKHAVEN.pdf"

help

To see what options you have available, run:

./generator.py -h

License

DDGen is licensed under the Apache 2.0 Open Source License. Please see the /data folder for font licenses. The intellectual property known as Delta Green is ™ and © the Delta Green Partnership (http://www.delta-green.com).

Contact

import codecs; codecs.encode('wvzfgbepu@tznvy.pbz', 'rot13')

About

License:Apache License 2.0


Languages

Language:Python 100.0%