BernhardPosselt / pf2e-kingmaker-tools

A collection of utilities to run the most popular PFRPG 2e sandbox adventure in FoundryVTT
GNU Affero General Public License v3.0
16 stars 9 forks source link

PFRPG 2e: Kingdom Building, Camping & Weather

This module ships all OGL licensed rules to run the Kingdom, Camping and Weather rule systems for the most popular adventure for PFRPG 2e.

Documentation is included in a journal inside FoundryVTT!

Licensing

All PFRPG 2e content uses the Open Gaming License. If you find non OGL content, please file an issue and I'll get it removed ASAP. I've tried my best to scrub existing content, but there might still be leftovers.

The source code is licensed under the AGPLv3 license, except for the src/jsMain/kotlin/com/foundryvtt folder which is licensed under Apache License 2.0.

All images in the img/structures and img/camping/backgrounds are licensed under CC0 - Public Domain by Mark Pearce. They were generated and retouched using a MidJourney subscriber account. According to their Terms of Service, subscribers to MidJourney that are not part of a company own all the generated images.

Installation

The package is available through the module registry

Functionality

This module ships with implementations for all the extra mechanics provided in the best sandbox PFRPG 2e adventure, including optional and popular homebrew from Vance & Kerenshara:

House Rules & GM Tips

You can look up my tips and house rules here

Official Module Integration

If you've enabled the official module, the following things are automatically taken care of:

Screenshots

kingdom-sheet.png

settlements.png

camping sheet

Development

If you are interested in hacking on the code base, take a look at the Kotlin JS Primer for a quick intro on how to interact with the js api.

Setup

Install the following things:

First, clone the repository into a local folder, e.g. /home/bernhard/dev:

cd /home/bernhard/dev
git clone https://github.com/BernhardPosselt/pf2e-kingmaker-tools.git 

Then link this directory to your foundry data folder:

ln -s /home/bernhard/dev/pf2e-kingmaker-tools/ /home/bernhard/.local/share/FoundryVTT/Data/modules/pf2e-kingmaker-tools/

Run the package task to build everything from scratch:

./gradlew build

Then, you can keep building the project using:

./gradlew assemble

or if you want to both build it and run its tests:

./gradlew build

To execute tests run:

./gradlew jsTest

Finally, start foundry

cd dev/FoundryVTT-12.330/
./foundryvtt

You can release a new version using:

GITHUB_TOKEN="token_here" FOUNDRY_TOKEN="token_here" ./gradlew release

Enable Schema Autocompletion Support in IntelliJ

Some files are in JSON rather than actual code. To get autocompletion for these in IntelliJ, you need to enable custom schemas.

In settings, go to Languages & Frameworks > Schemas and DTDs > JSON Schema Mappings.

Click on the + to add a new mapping for each schema. Then add the following (see a list of values further down below):

Schemas: