Compare commits
2 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
da1b21cbc6 | ||
|
|
49da84146e |
2 changed files with 19 additions and 11 deletions
28
README.md
28
README.md
|
|
@ -11,18 +11,26 @@ as you want in your kanka campaign.
|
||||||
3. Create a Personal Access Token on your kanka account as described [here](https://kanka.io/en-US/docs/1.0/setup)
|
3. Create a Personal Access Token on your kanka account as described [here](https://kanka.io/en-US/docs/1.0/setup)
|
||||||
4. Create a .env file based on the .env_example . The only env variable that you will
|
4. Create a .env file based on the .env_example . The only env variable that you will
|
||||||
probably want to modify is the *APITOKEN*
|
probably want to modify is the *APITOKEN*
|
||||||
5. Create a python script that uses the Generator class as shown in the example.py
|
5. Run `python3 ./npc-gen.py`
|
||||||
file
|
|
||||||
|
|
||||||
Below is an example of how to create 5 random NPCs in the campaign called "My Cool Campaign":
|
By default it will check for a valid APITOKEN and complain if one is not set.
|
||||||
|
|
||||||
```python
|
In additon to setting parameters in `.env` you can also specify some inline with the command. These options can be seen with `--help`
|
||||||
from Generator import NpcGenerator
|
|
||||||
|
|
||||||
gen = NpcGenerator()
|
|
||||||
|
|
||||||
gen.create_npcs('My Cool Campaign', 5)
|
|
||||||
```
|
```
|
||||||
|
python3 ./npc-gen.py --help
|
||||||
|
usage: npc-gen.py [-h] [--host HOST] [--campaign CAMPAIGN] [--count COUNT]
|
||||||
|
|
||||||
|
Generate random NPCs in a Kanka campaign.
|
||||||
|
|
||||||
|
options:
|
||||||
|
-h, --help show this help message and exit
|
||||||
|
--host HOST Set API base DOMAINNAME (e.g. kanka.example.com)
|
||||||
|
--campaign CAMPAIGN Specify campaign name directly
|
||||||
|
--count COUNT Number of NPCs to generate
|
||||||
|
```
|
||||||
|
|
||||||
|
If no options are specified, it will use the settings in `.env` to connect to the server and poll the campaigns prompting you to select oee
|
||||||
|
and how many NPCs you wish to create
|
||||||
|
|
||||||
The characters created by this script have the "random_npc" type. So that
|
The characters created by this script have the "random_npc" type. So that
|
||||||
you can filter them out easily.
|
you can filter them out easily.
|
||||||
|
|
@ -36,4 +44,4 @@ in the data folder tho!).
|
||||||
|
|
||||||
If by any chance you want to update and/or enrich the existing JSONs, create a PR.
|
If by any chance you want to update and/or enrich the existing JSONs, create a PR.
|
||||||
|
|
||||||
Have a great time!
|
Have a great time!
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ def select_campaign(generator):
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
parser = argparse.ArgumentParser(description="Generate random NPCs in a Kanka campaign.")
|
parser = argparse.ArgumentParser(description="Generate random NPCs in a Kanka campaign.")
|
||||||
parser.add_argument("--host", help="Set API base URL (e.g., https://kanka.example.com/api/1.0/)")
|
parser.add_argument("--host", help="Set API base DOMAINNAME (e.g., kanka.example.com)")
|
||||||
parser.add_argument("--campaign", help="Specify campaign name directly")
|
parser.add_argument("--campaign", help="Specify campaign name directly")
|
||||||
parser.add_argument("--count", type=int, help="Number of NPCs to generate", default=None)
|
parser.add_argument("--count", type=int, help="Number of NPCs to generate", default=None)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue