Difference between revisions of "Homebrew: Deity"

From 5etools Community Wiki
Jump to: navigation, search
m
m (Code not collapsed)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
βˆ’
__NOTOC__
 
 
{{HomebrewHeader}}
 
{{HomebrewHeader}}
  
βˆ’
==🍺deity ==
+
Deities are the gods or "higher forces" that are part of the D&D world setting.
βˆ’
<description_of_the_homebrew_category_and_use>
 
  
βˆ’
====An Example:====
+
Most settings have specific Deities they include within the setting's mythos/lore, that can be as varied as the Earth has supporting multiple ethnicities each possesses deities or a monotheistic religion (though this is VERY uncommon in fantasy literature).  
βˆ’
The [[Homebrew: Meta|'''_Meta''']] is normally included in a full JSON, for this example it has been removed. See [[Homebrew: Meta|the link]] for how to develop the _meta.
 
  
βˆ’
"deity": [
+
==Building a deity==
βˆ’
{
 
βˆ’
"name": "The Hunger",
 
βˆ’
"alignment": [
 
βˆ’
"N"
 
βˆ’
],
 
βˆ’
"title": "It of Atrophy",
 
βˆ’
"pantheon": "Outsider",
 
βˆ’
"symbol": "Grey points on a black field",
 
βˆ’
"source": "json_in_meta",
 
βˆ’
"customProperties": {
 
βˆ’
"Domains": "(This overrides the display text for domains, and can include {@i @tags}. The main \"domain\" property is used for list sorting and filtering, so should contain plain text only.)",
 
βˆ’
"Typical Worshipers": "Creatures who spend {@dice 1d6} days in the presence of the metaphysical influence exuded by the Outsider"
 
βˆ’
}
 
βˆ’
}
 
βˆ’
]
 
  
βˆ’
<div class="toccolours mw-collapsible mw-collapsed" style="width:600px; overflow:auto;">
+
===Basic skeleton===
βˆ’
<div style="font-weight:bold;line-height:1.6;">Learn More</div>
+
To start, copy the following code block and fill the empty <code>""</code> values.
 +
<div class="toccolours mw-collapsible" overflow:auto;">
 +
<div style="font-weight:bold;line-height:2;">Deity code block</div>
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
βˆ’
: In the example; ; the "deity" is defined. The first entry in the deity array '''name''' is defined as "The Hunger". Its [[HomebrewObject: alignment|'''alignment''']] is defined in the alignment array. The deities '''title''' is then defineThen the panteon is defined to be "Outsider". The deity's '''symbol''' gets defined within [[Homebrew: Meta|'''_Meta''']].
+
"deity": [
 +
    {
 +
        "name": "",
 +
        "source": "",
 +
        "pantheon": "",
 +
        "symbol": ""
 +
    }
 +
]
 +
</div></div>
 +
 
 +
:* <code>"name"</code> β€” the name of the deity.
 +
:* <code>"source"</code> β€” make sure it is the same as the <code>"json"</code> key in the '''_meta'''.
 +
:* <code>"pantheon"</code> β€” the pantheon the deity belongs to. Can be one of the official ones, or a new one.
 +
:* <code>"symbol"</code> β€” renders as "'''Symbol:''' text"
 +
 
 +
==More options==
 +
Make sure you are adding these blocks in the same level as the <code>"name"</code>, <code>"source"</code>, etc.
 +
===Text Entries===
 +
Add text to the deity, usually lore or explanations. Consists of strings ("") separated by commas.
 +
"entries": [
 +
    ""
 +
]
 +
 
 +
===Page===
 +
The page of the document where the deity appears at.
 +
"page": 1
 +
 
 +
===Alignment===
 +
Choose between <code>"L"</code> lawful, <code>"C"</code> chaotic, <code>"N"</code> neutral, <code>"G"</code> good and <code>"E"</code> evil. Several can be applied, separated by commas.
 +
"alignment": [
 +
    "C",
 +
    "G"
 +
]
 +
 
 +
===Title===
 +
A title that will appear next to the deity's name.
 +
"title": "The Dreamer"
 +
 
 +
===Alternate names===
 +
Will render as "'''Alternate names:''' ..."
 +
"altNames":[
 +
    ""
 +
]
 +
===Category===
 +
Allows to filter deities in different groups. Can be any string you want.
 +
"category": "The Usurpers"
 +
 
 +
===Domains===
 +
The domains to which the deity is usually associated with. Accepts non-official pantheons.
 +
"domains": [
 +
    "Life",
 +
    "Death"
 +
]
 +
 
 +
===Province===
 +
The nouveau form of 'title', first seen in Mordekainen's Tome of Foes
 +
"province": "Greed"
 +
 
 +
===Custom Properties===
 +
Allows to add extra properties in a key:value format. If the key is the same as some of the defined ones, it will override it with the new text while keeping the data intact.
 +
  "customProperties": {
 +
    "Domains": "Life in the north, Death in the south."
 +
}
 +
 
 +
===Symbol Image===
 +
A link to an image of the symbol.
 +
"symbolImg": {
 +
    "type": "image",
 +
    "href": {
 +
        "type": "external",
 +
        "url": "example.com/image.jpg"
 +
    },
 +
    "style": "deity-symbol",
 +
    "title": ""
 +
}
 +
:*<code>"title"</code> β€” optional value, will show up below the image.
 +
 
 +
===Custom Extension===
 +
Useful when expanding an already existing deity. Will write a reference to the original entry.
 +
"customExtensionOf": "Aegir|Norse"
 +
:*The format of the link is the same as the <code>{@deity</code> tags: Name|Pantheon (defaults to Forgotten Realms)|Source (Defaults to PHB).
 +
 
 +
==Reference Tag==
 +
How to link to entries within the strings
 +
::<code>{@deity <name_of_deity>|<pantheon>|<json_source><optional_text_information>} </code>
  
βˆ’
: '''customProperties''' is a bit more complicated. In this used solely in homebrew, the example defines the '''Domains''' and '''Typical Worshipers''';
+
:: Example:
βˆ’
</div></div>
+
:::{@deity Gond}
 +
:::{@deity Gruumsh|nonhuman}
 +
:::{@deity Ioun|dawn war|dmg}
 +
:::{@deity Ioun|dawn war|dmg|and optional link text added with another pipe}
 +
<br/>
  
βˆ’
== Field List ('''Sources''') ==  
+
== Field List Sources==  
 
<small>If you do not include the required fields (denoted with bold text) the JSON may pass JSONLint but will fail upon stitch.</small>
 
<small>If you do not include the required fields (denoted with bold text) the JSON may pass JSONLint but will fail upon stitch.</small>
  
Line 70: Line 142:
 
----
 
----
 
<div style="font-weight:bold;line-height:1.6;font-size:140%">πŸ—„οΈ Reference Files:</div>
 
<div style="font-weight:bold;line-height:1.6;font-size:140%">πŸ—„οΈ Reference Files:</div>
βˆ’
:: [https://github.com/DMsGuild201/TheGiddyLimit.github.io/blob/master/test/schema/deities.json πŸ›’οΈ Requirements Specs (Schemata) ]
+
:: [https://github.com/TheGiddyLimit/TheGiddyLimit.github.io/blob/master/test/schema/deities.json πŸ›’οΈ Requirements Specs (Schemata) ]
 
:: [[  🧾 Blank Template]]
 
:: [[  🧾 Blank Template]]
 
:: [https://github.com/TheGiddyLimit/homebrew/blob/master/deity/Sample%20-%20Giddy%3B%20Atrophy.json πŸ“– Sample JSON]
 
:: [https://github.com/TheGiddyLimit/homebrew/blob/master/deity/Sample%20-%20Giddy%3B%20Atrophy.json πŸ“– Sample JSON]
Line 77: Line 149:
 
----
 
----
  
βˆ’
<br/>
+
==Homebrew Support==
βˆ’
: <font color="#2e7bab">Reference Tag:</font> (how to link to entries within the strings)
 
βˆ’
::<code>{@deity <name_of_deity>|<optional_text_information>|<json_source>} </code>
 
βˆ’
<br/>
 
βˆ’
:: Example:
 
βˆ’
{@deity The Hunger|the high almighty|json_in_meta}
 
βˆ’
{@deity Gond|dmg}
 
βˆ’
<br/>
 
βˆ’
=== Homebrew Support===
 
 
----
 
----
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:600px; overflow:auto;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="width:600px; overflow:auto;">
Line 99: Line 163:
 
<div style="font-weight:bold;line-height:1.6;">Best Practices</div>
 
<div style="font-weight:bold;line-height:1.6;">Best Practices</div>
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
βˆ’
:: None as yet (Do you have any suggestions?)
+
:: (NON SCHEMATA) For the sake of balance, dieties typically don't have more than two domains of influence.
 
</div>
 
</div>
 
</div>
 
</div>
Line 105: Line 169:
 
<br/>
 
<br/>
 
----
 
----
βˆ’
==='''Related Features'''===
+
 
 +
==Related Features==
 
----
 
----
 
:*[[Homebrew]]
 
:*[[Homebrew]]

Latest revision as of 12:05, 14 September 2020

framless
v1.1.0

Deities are the gods or "higher forces" that are part of the D&D world setting.

Most settings have specific Deities they include within the setting's mythos/lore, that can be as varied as the Earth has supporting multiple ethnicities each possesses deities or a monotheistic religion (though this is VERY uncommon in fantasy literature).

Building a deity

Basic skeleton

To start, copy the following code block and fill the empty "" values.

Deity code block
"deity": [
    {
        "name": "",
        "source": "",
        "pantheon": "",
        "symbol": ""
    }
]
  • "name" β€” the name of the deity.
  • "source" β€” make sure it is the same as the "json" key in the _meta.
  • "pantheon" β€” the pantheon the deity belongs to. Can be one of the official ones, or a new one.
  • "symbol" β€” renders as "Symbol: text"

More options

Make sure you are adding these blocks in the same level as the "name", "source", etc.

Text Entries

Add text to the deity, usually lore or explanations. Consists of strings ("") separated by commas.

"entries": [
    ""
]

Page

The page of the document where the deity appears at.

"page": 1

Alignment

Choose between "L" lawful, "C" chaotic, "N" neutral, "G" good and "E" evil. Several can be applied, separated by commas.

"alignment": [
    "C",
    "G"
]

Title

A title that will appear next to the deity's name.

"title": "The Dreamer"

Alternate names

Will render as "Alternate names: ..."

"altNames":[
    ""
]

Category

Allows to filter deities in different groups. Can be any string you want.

"category": "The Usurpers"

Domains

The domains to which the deity is usually associated with. Accepts non-official pantheons.

"domains": [
    "Life",
    "Death"
]

Province

The nouveau form of 'title', first seen in Mordekainen's Tome of Foes

"province": "Greed"

Custom Properties

Allows to add extra properties in a key:value format. If the key is the same as some of the defined ones, it will override it with the new text while keeping the data intact.

"customProperties": {
    "Domains": "Life in the north, Death in the south."
}

Symbol Image

A link to an image of the symbol.

"symbolImg": {
    "type": "image",
    "href": {
        "type": "external",
        "url": "example.com/image.jpg"
    },
    "style": "deity-symbol",
    "title": ""
}
  • "title" β€” optional value, will show up below the image.

Custom Extension

Useful when expanding an already existing deity. Will write a reference to the original entry.

"customExtensionOf": "Aegir|Norse"
  • The format of the link is the same as the {@deity tags: Name|Pantheon (defaults to Forgotten Realms)|Source (Defaults to PHB).

Reference Tag

How to link to entries within the strings

{@deity <name_of_deity>|<pantheon>|<json_source><optional_text_information>}
Example:
{@deity Gond}
{@deity Gruumsh|nonhuman}
{@deity Ioun|dawn war|dmg}
{@deity Ioun|dawn war|dmg|and optional link text added with another pipe}


Field List Sources

If you do not include the required fields (denoted with bold text) the JSON may pass JSONLint but will fail upon stitch.

Field Name Data Type Description Required
name String The Proper Name for the Deity True
reprintAlias String Other Names it has appeared as False
alignment Array of Strings Alignment True
title String title False
pantheon String The culture it is associated with True
symbol String The Icon associated with the diety
their holy symbol
True
customProperties Object Complicated see Learn More boolean
page Integer The Page number it apepars upon False
additionalsources Array of Objects other locations it appears within False
source String json (_meta's json value) True
entries Array of Strings Other Names False
altNames Array of Strings Other Names False
symbolImg String (URL) URL for its Image/Symbol False



πŸ—„οΈ Reference Files:
πŸ›’οΈ Requirements Specs (Schemata)
🧾 Blank Template
πŸ“– Sample JSON
πŸ’Ύ Functional Example
πŸ“š Repository of Other Examples

Homebrew Support


Known Issues
Looks like its perfect... (Did we miss anything?)


FAQ
Nothing's here (Do you have any suggestions?)
Best Practices
(NON SCHEMATA) For the sake of balance, dieties typically don't have more than two domains of influence.



Related Features



Did that answer your question(s)?

If not please check the under Support; Troubleshooting or the Known Issues page for further guidance, or go to the Discord community and leave a comment in the issues channel.

If you enjoy the project, please follow this link to see how you can contribute and help make it even better.