Open Source Delta Green random character generator.
It's now finished to the point where it can be used online! See it in action here!
- Generates a complete Delta Green character (all skills, stats, derived attributes, bonds, one third of characters are damaged veterans)
- Install Python 3.5
- Create a virtual environment in the project folder with
virtualenv -p python3 venv
- Activate the virtual environment with
source venv/bin/activate
- Install the necessary packages with
pip install -r requirements.txt
- You'll need to create a MongoDB database and save the connection string and database name to a
file called
ExternalServices.py
(in the top level project directory). This file will need the globalsDATABASE
(the name of the mongo database you plan to use) andMONGO_STRING
(the connection string you intend to use). An example file has been provided asExternalServicesExample.py
- Add the open gaming content to your Mongo database with
python SeedDB.py OpenGamingJSON/
- Whenever you open this in a new terminal/powershell window, you'll have to activate the VENV again
with
source venv/bin/activate
- Install Ruby
- Run
gem install sass
- Run (from the project directory)
sass ./static/style.sass ./static/style.css
- With venv activated, run
python server.py
in the top level folder- Go to
localhost:8080
to see the landing page. There will be a link to character generation from there. - The argument
mobile
runs in the server on0.0.0.0
, so other devices on your wifi network can use it - The argument
server
runs the server on port 80 and0.0.0.0
.
- Go to
- From the top level directory:
python Test.py
- The results will print to the console.
From the top level directory: python tests.py
Remember to add all new tests to the tests.py
file.
To run the unit tests with coverage, run
coverage run tests.py
coverage report
Note: If a ExternalServices.py
file has not been created by the time you run the unit tests,
it will automatically create one for you. This is a semi-accidental result of needing that file
to exist for the tests to run.
From the Docs
directory, run make html
.
Sometimes the API autodocs stop tracking changes and the whole _build directory has to be deleted
to remind them to build what they should. If this happens, you can run (with an activated venv) the
script make_docs.sh
(*nix only) in the Docs
directory to handle deleting the _build folder
automatically before building the updated docs.
- Language families/association scores to give more realistic language combinations
- When picking a random skill in a package, more weight given to existing skills
- Classes provide some bias to the stats
- More open source skill packages and classes
- Incorporate random names from https://randomuser.me/
- The best way to help out right now is probably submitting homebrew skill packages or classes. These are just JSON files that can be edited in a text editor, even without programming experience.
Parts of Delta Green are licensed under the OGL. I'm trying to only publicly share the parts that are. If you are a rights holder or (heavens forfend) their lawyer, you can reach me at zejacobi (squiggly a/at character thingy) gmail (dot) com