HB ThemeSavageStylesheet
HB ThemeSavageStylesheet
HB ThemeSavageStylesheet
<style>
@import url('https://fonts.googleapis.com/css2?
family=Enriqueta:wght@700&family=Rock+Salt&family=Rock+Salt&family=Nanum+Pen+Script
&display=swap');
/*
░██████╗░██╗░░░░░░░██╗░█████╗░██████╗░███████╗
██╔════╝░██║░░██╗░░██║██╔══██╗██╔══██╗██╔════╝
╚█████╗░░╚██╗████╗██╔╝███████║██║░░██║█████╗░░
░╚═══██╗░░████╔═████║░██╔══██║██║░░██║██╔══╝░░
██████╔╝░░╚██╔╝░╚██╔╝░██║░░██║██████╔╝███████╗
╚═════╝░░░░╚═╝░░░╚═╝░░╚═╝░░╚═╝╚═════╝░╚══════╝
░██████╗████████╗██╗░░░██╗██╗░░░░░███████╗░██████╗██╗░░██╗███████╗███████╗████████╗
██╔════╝╚══██╔══╝╚██╗░██╔╝██║░░░░░██╔════╝██╔════╝██║░░██║██╔════╝██╔════╝╚══██╔══╝
╚█████╗░░░░██║░░░░╚████╔╝░██║░░░░░█████╗░░╚█████╗░███████║█████╗░░█████╗░░░░░██║░░░
░╚═══██╗░░░██║░░░░░╚██╔╝░░██║░░░░░██╔══╝░░░╚═══██╗██╔══██║██╔══╝░░██╔══╝░░░░░██║░░░
██████╔╝░░░██║░░░░░░██║░░░███████╗███████╗██████╔╝██║░░██║███████╗███████╗░░░██║░░░
╚═════╝░░░░╚═╝░░░░░░╚═╝░░░╚══════╝╚══════╝╚═════╝░╚═╝░░╚═╝╚══════╝╚══════╝░░░╚═╝░░░
🄱🅈 🄶🄰🅉🄾🄾🄺
This stylesheet is developed for the Homebrewery to bring some alternative complete
styling for brews. Hopefully this helps those that want to brew for something
other than DnD 5e. But my biggest hope is to illustrate what can be done in
Homebrewery when taking a harder look at Markdown, HTML, and especially CSS. I
have made an attempt to stick as close to Markdown as possible and not rely too
much on alternate on HTML methods, which means a lot of weird CSS stuff (multi-
section tables, I'm looking at you).
The CSS is organized a little bit. If you see ROOT VARIABLES, it means those
properties can be changed easily or have some explanation. Otherwise, the rest is
up to you to figure out.
The last page of the brew is HIDDEN from the preview, and contains CSS that is not
SWADE specific. Feel free to look at it though and use what you can, it's mostly
for the book-style display and fancy preview background. */
/* =============================== */
/* ------- PAGE ADJUSTMENTS ------ */
/* =============================== */
.phb:after {
display:none;
}
.phb:nth-of-type(2n+1):before {
content:'';
position:absolute;
width:0;
height:100%;
top:0;
left:0;
z-index:500;
box-shadow:0 0 35px 10px black;
}
.phb:nth-of-type(2n):before {
content:'';
position:absolute;
width:0;
height:100%;
top:0;
right:0;
z-index:500;
box-shadow:0 0 35px 10px black;
}
.sw.pg:before {
content:'';
position:absolute;
width:90%;
height:90%;
background:#ffffffa6;
top:5%;
left:5%;
z-index:-1;
box-shadow:0 0 40px 30px #ffffffa6;
}
.sw #fan-content {
position:absolute;
width:130px;
top:50px;
right:30px;
transform:rotate(20deg);
z-index:100;
filter:drop-shadow(2px 2px 1px gray);
transition:transform .2s;
}
.sw #fan-content:hover {
transform:rotate(20deg) scale(1.05);
}
.sw .dropshadow {
filter:drop-shadow(2px 2px 6px gray)
}
/* =============================== */
/* ------------ HEADERS ---------- */
/* =============================== */
/* ############## */
/* ROOT VARIABLES */
/* ############## */
:root {
--splashy-text-color:hotpink;
--splashy-shadow-color:yellow;
--splashy-font:'rock salt'
.sw .chapter-head {
position:relative;
top:-30px;
height:340px;
column-span:all;
background-image:url('https://i.imgur.com/hnGXqZP.png');
background-size:cover;
padding-top:50px;
padding-bottom:50px;
}
.sw .chapter-head h1 {
color:black;
font-size:96px;
text-align:center;
height: 100px;
width: 108%;
margin-left: -4%;
padding-top: 30px;
margin-bottom: -10px;
margin-top: 0;
}
.sw .chapter-head p {
color:maroon;
font-size:32px;
border:none;
position:relative;
font-family:impact;
text-transform:uppercase;
background:ed;
width:90%;
margin:auto auto !important;
line-height:1em;
padding:10px 0;
text-align:center;
top:.6em;
}
.sw .chapter-head.splashy.bottom p {
transform:translateY(20px)
}
.sw .chapter-head.splashy p:first-of-type {
top:130px;
line-height:.4em;
transform:scalex(1.8) translatex(-10%);
font-size:3em;
text-align:center;
.sw .chapter-bg {
position:absolute;
height:380px;
width:660px;
top:0px;
left:0px;
background:url('https://i.imgur.com/q03i8K7.png');
background-size:100% 100%;
background-repeat:norepeat;
transform:rotate(-3deg);
z-index:-1;
}
/* ------------ H2 ---------- */
/* -------------------------- */
.sw h2 {
height:100px;
width:108%;
margin-left:-4%;
padding-top:30px;
margin-top:0;
font-size:2.6em;
text-align:center;
color:#920B12;
background:url('https://i.imgur.com/mzLTyEh.png');
background-position:center;
background-size:contain;
background-repeat:no-repeat;
position:relative;
z-index:500;
}
.sw h2:first-child {
margin-top:-.3em;
}
.sw h2::after {
content: '';
display: block;
position: relative;
background: url('https://i.imgur.com/FQsK0NF.png');
background-size: contain;
background-position: bottom;
background-repeat: repeat-x;
margin: auto auto;
height: 1em;
width: 90%;
bottom: .8em;
z-index: 3;
}
.sw .wide h2 {
background-size:100% 100px;
width:110%;
margin-left:-5%;
z-index:500
}
.sw h2 + p {
margin-top:-1.1em;
/* ------------ H3 ---------- */
/* -------------------------- */
/* ############## */
/* ROOT VARIABLES */
/* ############## */
:root {
--wild-card-indicator-icon: url('https://i.imgur.com/bYx8Bt9.png');
.sw h3 strong {
font-weight:unset;
letter-spacing:unset;
}
.sw h3 strong::before {
content: '';
display: inline-block;
width: 1em;
height: 1em;
background: var(--wild-card-indicator-icon);
background-size:contain;
filter:brightness(0%);
top: 0;
left: 0;
margin-right:3px;
transform:rotate(-45deg) scale(1.3);
}
/* ------------ H4 ---------- */
/* -------------------------- */
/* ############## */
/* ROOT VARIABLES */
/* ############## */
:root {
--core-skill-indicator-icon: url('https://i.imgur.com/WD6nLLD.png');
.sw h4 strong {
color:#920B12;
bottom-border-color:#920B12;
font-weight:unset;
letter-spacing:unset;
}
.sw h4 strong::before {
content: '';
display: inline-block;
width: 1em;
height: 1em;
background: var(--core-skill-indicator-icon);
background-size:contain;
filter:hue-rotate(1deg) saturate(92%) brightness(60%);
top: 0;
left: 0;
margin-right:5px;
transform: scale(1.2);
}
/* ------------ H5 ---------- */
/* -------------------------- */
.sw h5 {
color:#144567;
font-size:1.8em;
text-align:center;
background-color:#B2C9D1;
border-top:2px solid #144567;
border-bottom:2px solid #144567;
}
/* ------------ H6 ---------- */
/* -------------------------- */
.sw h6 {
color:#920B12;
text-transform:uppercase;
font-family:'Enriqueta';
}
/* =========================== */
/* ---------- LISTS ---------- */
/* =========================== */
.sw li strong:first-child {
font-family:'Enriqueta';
font-style:unset;
text-transform:uppercase;
}
.sw ul {
padding-left:1em;
}
.sw p + ul {
margin-top:-.8em;
}
.sw ul li::marker {
color:#920B12;
}
.sw ul li {
list-style:square;
}
p + hr {
margin-top:-.6em !important;
}
/* =============================== */
/* ---------- PAGE NUMS ---------- */
/* =============================== */
.sw .pageNumber {
position:absolute;
color:whitesmoke;
z-index:300;
font-weight:bold;
font-size:1em;
background:url('https://i.imgur.com/G6en5xq.png');
background-repeat:no-repeat;
background-size:100% 100%;
bottom:0;
height:70px;
padding-top:30px;
text-align:center;
right:0px
}
.sw .chapter-index {
position:absolute;
color:whitesmoke;
z-index:300;
font-weight:bold;
font-size:18px;
height:350px;
width:55px;
text-transform:uppercase;
.phb:nth-child(2n) .chapter-index p {
transform:rotate(270deg);
text-align:left;
white-space:nowrap;
margin-top:230px;
margin-left:12px;
}
/* =============================== */
/* --------- BLOCKQUOTES --------- */
/* =============================== */
/* needs improvement */
.sw blockquote {
background:none;
border:none;
box-shadow:none;
margin:0 0 0 2em;
padding:0;
font-family:inherit
}
.sw blockquote h6 {
display:inline;
float:left;
margin-right:5px
}
/* =============================== */
/* --------- TEXT NOTES ---------- */
/* =============================== */
.example {
font-style:italic;
background:#ECE7DA;
border-radius:5px;
padding:4px 6px;
.example p {
padding-bottom:4px;
text-align:justify;
line-height:1.2em
}
.example p + p {
margin-top:unset;
}
.example em {
font-style:normal;
}
/* ############## */
/* ROOT VARIABLES */
/* ############## */
:root {
--base-text-color:maroon;
--greeting-color:inherit;
--note-color:inherit;
--signature-color:inherit;
--base-text-font:'rock salt';
--greeting-font:inherit;
--note-font:inherit;
--signature-font:inherit;
--base-text-size:12px;
}
.flavor {
font-family:var(--base-text-font);
color:var(--base-text-color);
margin-bottom:10px;
font-size:var(--base-text-size);
}
.flavor p {
text-align:center;
font-family:var(--note-font);
transform:rotate(0deg);
color:var(--note-color);
font-size:inherit;
}
.flavor.greeting p:first-child {
font-family:var(--greeting-font);
text-align:left;
transform:rotate(0deg);
font-size:inherit;
padding-top:0;
height:auto;
color:var(--greeting-color);
font-weight:unset;
background:none;
}
.flavor.sig p:last-child {
font-family:var(--signature-font);
text-align:right;
transform:rotate(-4deg);
font-size:inherit;
padding-top:0;
height:auto;
font-weight:unset;
border:none;
color:var(--signature-color);
}
.flavor.wide h3 {
margin-top:18px
}
/* =============================== */
/* ----------- TABLES------------- */
/* =============================== */
/* ############## */
/* ROOT VARIABLES */
/* ############## */
:root {
--row-color-one:#ece5d9;
--row-color-two:#dbd2ba;
--column-headers-bg-color:black;
--column-headers-text-color:white;
--table-title-bg-color:#8D0B12;
--table-title-text-color:white;
}
.sw table {
background:var(--row-color-one);
border-radius:12px;
}
.sw table td {
vertical-align:middle;
}
.sw h4 + .table {
margin-top:5px;
}
.sw .table h6 {
text-align:center;
background:var(--table-title-bg-color);
color:var(--table-title-text-color);
font-size:18px;
font-family:'enriqueta';
border-radius:12px 12px 0 0;
margin-bottom:0;
height:25px;
padding-top:3px;
column-span:unset !important;
}
.sw .table h6 ~ p {
background:#ece5d9;
font-size:12px;
font-family:'scaly sans';
text-transform:inherit;
font-weight:inherit;
text-align:justify;
width:auto;
margin:0;
padding:.3em .3em 0 .3em;
color:black;
height:auto;
line-height:1.1em;
}
.sw .table p + p {
text-indent:0;
padding-top:.4em;
}
/* ID SPECIFIC TABLES */
.table.double {
column-count:2;
column-gap:1px;
}
.table.double h6 {
column-span:all !important;
}
.table.double table + p {
display:none;
}
/* ############## */
/* ROOT VARIABLES */
/* ############## */
:root{
--multiTable-section-base-color:10; /* number 0-359 */
--multiTable-section-text1:black; /* Section header text colors */
--multiTable-section-text2:white; /* ditto, for LAST FOUR sections */
}
.sw .multi-section {
position:relative;
}
/* =============================== */
/* ----- TABLE OF CONTENTS ------- */
/* =============================== */
.sw .toc h2 {
width:110%;
margin-left:-5%;
}
.sw .toc h5 {
margin-bottom:.7em
}
.sw .toc ul {
margin-left:0;
position:relative;
}
.sw .toc ul li {
list-style:none;
}
.sw .toc>ul>li {
margin-bottom:2em !important;
}
.sw .toc>ul>li>ul>li{
position:relative;
display:flex;
}
.sw .toc>ul>li>ul>li:before {
content:'';
left:0;
position:relative;
order:2;
flex:1;
border-bottom:1.5px dotted black;
display:block;
bottom:.3em;
margin:0 .3em;
}
.sw .toc>ul>li>ul>li em {
right:0;
flex:0;
order:3
}
/* ---------------------------------- */
/* ---------- END OF STYLES --------- */
/* ---------- END OF STYLES --------- */
/* ---------- END OF STYLES --------- */
/* ---------- END OF STYLES --------- */
/* ---------------------------------- */
</style>
<div class='sw pg'>
<a href='https://www.peginc.com/store/savage-worlds-adventure-edition-core-rules-
pdf-swade/'><img id='fan-content'
src='https://www.peginc.com/wp-content/uploads/2019/01/SW_LOGO_FP_2018.png' /></a>
Gazook's
# Savage Brew
Chapter One
</div>
## H2 Header
The h2 header is created with two hashtags, ##. This can be made *wide* and the
image background will stretch to cover two columns. And yes, the background image
is the same for all h2 headers. It would be great to be able to grab a random
image from a selection, but not possible with just CSS.
```
```
</div>
\page
<div class='wide'>
</div>
## Powers
Listed below are a number of powers available in most Savage Settings.
Success with *arcane protection* means hostile powers suffer a −2 penalty (−4 with
a raise) to affect this character. If the power causes harm, damage is also reduced
a like amount.
Arcane protection stacks with Arcane Resistance should the recipient have both!
###### Modifiers
- **Additional Recipients (+1):** The power may affect more than one target for 1
additional Power Point each.
- **Smelly (+1):** Fart the **entire** time this spell is active.
#### Blast
**Rank:** Seasoned
**Power Points:** 3
**Range:** Smarts ×2
**Duration:** Instant
**Trappings:** Balls of fire, ice, light, darkness, colored bolts, swarm of
insects.
Blast launches a ball of explosive energy or matter. The area of effect is a Medium
Blast Template. Every target within suffers 2d6 damage, or 3d6 with a raise (see
Area Effect Attacks, page 97).
###### Modifiers
- **AREA EFFECT (+0/+1):** The caster can focus the blast to a Small Blast Template
for no extra cost, or a Large Blast Template for +1.
- **DAMAGE (+2):** The blast causes 3d6 damage (4d6 with a raise).
#### Darksight
**Rank:** Novice
**Power Points:** 1
**Range:** Smarts
**Duration:** One hour
**Trappings:** Glowing eyes, dilated pupils, sonic sight.
Darksight allows a hero to see in the dark. With success, he ignores up to 4 points
of illumination penalties. With a raise, he ignores up to six points and can see in
pitch darkness.
## Bestiary
#### DRAGON
Dragons are fire-breathing monsters that bring doom and despair to the villages
they ravage. Such creatures should not be fought lightly as they are more than a
match for even a party of experienced adventurers. These beasts are quite
intelligent as well, and use all of their advantages when confronted by would-be
dragon-slayers.
___
**Attributes:** Agility d8, Smarts d8, Spirit d10, Strength d12+8, Vigor d12
**Skills:** Athletics d10, Common Knowledge d6, Fighting d10, Intimidation d12,
Notice d12, Persuasion d10, Stealth d8
**Special Abilities:**
- **Armor +4:** Scaly hide.
- **Bite/Claws:** Str+d8.
- **Fear (−2):** Anyone who sees a mighty dragon must make a Fear check at −2.
- **Fiery Breath:** Dragons breathe fire for 3d6 damage (see Breath Weapons, page
175).
#### Sweep
**REQUIREMENTS:** Novice, Strength d8+, Fighting d8+
Sweep allows a character to make a single Fighting attack and apply it against all
targets in his Reach at a −2 penalty (friends and foes alike). Resolve damage
separately for each enemy that’s hit.
A fighter may only perform a Sweep once per turn. It may not be combined with
Frenzy.
</div>
\page
## Basics
The basic h1 header, or *chapter-head*, at the top of the page has some extra
hidden components to it that make it slightly more complicated than the normal
single hashtag in Homebrewery. It is a div container, wrapped around another div
container, which contains an image element and is followed by three "segments" of
text.
The title is added within the chapter-head div using an h1 header, or single
hashtag, #.
#### Byline
The byline is the smaller font that is maroon by default. In this brew, it is
position to the bottom right of the *Title*.
The byline is added by adding another line of plain text after the Title line,
within the chapter-head div.
#### "Splashy"
Splashy is the dramatic flair text in the upper left of the chapter-head on the
first page, that says "Gazook".
The splashy line comes *before* the Title line, as plain text.
The basic chapter-head as described just now will make a normal header like the one
on this page.
```
```
## Options
#### Byline
This segment can be positioned in 6 different spots: *left, center, right* and
*top* or *bottom*, in relation to the *Title*. This is set by adding the matching
class names to the wrapper div after *chapter-head*. For example, page 6 has it's
chapter head set to *class='chapter-head top left'* which positions the byline
first to the top, and then the left.
#### Splashy
Splashy can be set to only two different positions without touching the CSS: it's
default in the upper left, or bottom-center where it overlaps the *Title* text.
Since the upper-left is the default, nothing needs to be done to keep it there. If
you want front & center, add "splashy" to the class names of the chapter-head div.
Splashy can also get some drop shadow/outline action. This is probably more in the
'novelty' category, but check it out by adding 'shadow' to the chapter-head div
class names (be sure you have text in the "splashy" segment as described earlier).
It should add a stylized outline to your splashy text.
### CSS
Obviously everything can be customized if you want to look at the CSS. I have
tried to make the code organized and descriptive, as well as easier to make simple
changes by pulling out key properties as **CSS Variables**.
On page _ is a note with a bigger background image, and page _'s chapter-head
features splashy with drop shadow. Let's take a look at tables next...
</div>
</div>
\page
## Tables
#### Disclaimer
Tables in Markdown are a great example of the trade-off between "user friendliness"
and "complexity". Markdown provides an easy to understand visual representation of
rows and columns but sacrifices the ability to merge cells or format rows and
columns on the fly.
In an effort to retain the simplicity of Markdown but still get tables that can
match the stylings of the SWADE Core book I had to use some pretty weird CSS rules.
As a result, and because of a table can take so many forms, **Tables are probably
the most like to give headaches** and I apologize.
<br />
### Use
Tables in the core book are used for all sorts of things, but should probably be
restricted to tabular data.
Using this style sheet, tables require a div wrapper with the class *table*
unless you don't want title (I do not think the SWADE core book has any title-less
tables, though). Inside the div wrapper a table can be placed in the normal way.
Tables can also be made *wide* like normal, to span two columns. Simply add
"wide" to the class names of the wrapper div.
One limitation that is annoying is in the setting of custom widths for columns.
My goal was to find a way to set custom widths using inline styling for individual
tables, but I couldn't figure it out. However, this is also not possible in the
default Homebrewery style, so nothing is lost. To set custom widths for a specific
table, you should give the table div wrapper an id, and then create a new CSS width
rule for each column.
</div>
Note, this table has a description area, which is in fact where this text is.
This is done by just adding normal text after the header, before where the table
starts. **Do not** add two spaces at the end of the paragraphs here, however,
because it will cause issues with the paragraph spacing and the table below it.
**tiny**
| | | | | | |
|:-:|:-:|:-:|:-:|:-:|:-:|
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
| -4 | 1 | -6 | 6" | 4 lbs | Crow, mouse
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
**very small**
| | | | | | |
|:-:|:-:|:-:|:-:|:-:|:-:|
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
**small**
| | | | | | |
|:-:|:-:|:-:|:-:|:-:|:-:|
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
**normal**
| | | | | | |
|:-:|:-:|:-:|:-:|:-:|:-:|
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
| | | | | | |
|:-:|:-:|:-:|:-:|:-:|:-:|
| -3 | 1 | -4 | 6" | 10 lbs | Rat |
</div>
| D20 | Effect |
|:-:|:-|
| 1 | Dead |
| 2 | Sleeps Forever |
| 3 | Never finds what they want in stores |
| 4 | Uncontrollable greed |
| 5 | Scared of Mice |
| 6 | Is haunted by the entire band ABBA |
| 7 | Must read aloud when reading anything ever. |
| 8 | Never has something to write with when needed. |
| 9 | Has a literal monkey always watching from a distance that is just a little
too far away to engage. |
| 10 | Always a little cold. |
| 11 | Always a little hot. |
| 12 | Cannot hear anyone under the age of 6. |
| 13 | A constant sense that maybe it doesn't matter. |
| 14 | Prone to slivers. |
| 15 | Inability to understand anything written in a table. |
| 16 | Sneezes when it's too quiet. |
| 17 | Farts uncontrollably in loud environments. |
| 18 | Develops a belief that cleaning oneself like a cat is the ONLY way. |
| 19 | Becomes optimistic. |
| 20 | Never has to worry about money again. |
<div
style='background:#ffffffAA;position:absolute;width:100%;top:0px;height:100%;z-
index:100'></div>
</div>
###### Castles
| Name | Location |
|:-:|:-|
| Dread Keep | Located on the Isle of Mist |
| Candy Tower | Found in the Swamp of Madness |
| Barak's Barracks | Aisle 9 |
| Sun Keep | Literally on the sun, don't go there. |
| 5 | Scared of Mice |
| 6 | Is haunted by the entire band ABBA |
| 7 | Must read aloud when reading anything ever. |
| 8 | Never has something to write with when needed. |
| 9 | Has a literal monkey always watching from a distance that is just a little
too far away to engage. |
| 10 | Always a little cold. |
| 11 | Always a little hot. |
| 12 | Cannot hear anyone under the age of 6. |
| 13 | A constant sense that maybe it doesn't matter. |
| 14 | Prone to slivers. |
| 15 | Inability to understand anything written in a table. |
| 16 | Sneezes when it's too quiet. |
| 17 | Farts uncontrollably in loud environments. |
| 18 | Develops a belief that cleaning oneself like a cat is the ONLY way. |
| 19 | Becomes optimistic. |
| 20 | Never has to worry about money again. |
<div
style='background:#ffffffDD;position:absolute;width:100%;top:0px;height:100%;z-
index:100;transform:scale(1.003); border-radius:12px;'></div>
</div>
The 4th column header suffers from a line break midway thru "length"- fix this by
adding a space after the slash to send "Length" to the next line. The same has
already been done in the 1st column.
</div>
</div>
\page
**Description:** Note, this table has a description area, which is in fact where
this text is. This is done by just adding normal text after the header, before
where the table starts. **Do not** add two spaces at the end of the paragraphs
here, however, because it will cause issues with the paragraph spacing and the
table below it.
**Multi-Section:** This table has multiple sections, separated by headers that span
all columns. Multi section table headers start from a base color, and then
incrementally change their hue up to 8 times. This is very basic color
scheming...it's not guaranteed to look good. It's also possible to change the text
color of the last 4 headers (this number is baked in, but adjustments can be made
with a deeper look).
| | | |
|:-|:-:|:-:|
| Banana | 1d6 | 10g |
| Dagger | 1d10 | 40g |
| Middle Finger | 4d10 | 0g |
**Two Hands**
| | | |
|:-|:-:|:-:|
| Zweihander | 3d4 | 100g |
| Two Middle Fingers | 8d10 | 0g |
**Three Hands**
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
**Five Hands...?**
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
**Nine Hands...**
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
**...Ten Hands...**
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
| | | |
|:-|:-:|:-:|
| Three Middle Fingers | 12d10 | 0g |
</div>
```
```
This is some tricky stuff, because Markdown doesn't allow cell merging. So this is
really just a bunch of complete tables stacked on top of each other, with every
header row after the first hidden. Each table is separated by a normal paragraph
that has :before and :after pseudo elements that use Flex spacing. It's even
possible to use non-bolded letters, and use br line breaks to create a sub
line...however, this will impact the black horizontal lines.
The **color scheme** is set up to handle 9 different headers, starting from a base
color that is assigned to the *last* header of any given table, no matter how many
headers are used. I felt this gave each table a more consistent "final color"
rather than ending on a different note each time. This scheme uses HSL color
values as originally I hoped to use *css counters* to programmatically adjust the
HSL value for each row-- This apparently doesn't work at least partially because
css counters do not return a *number*, but instead a *string*, and thus can't be
used in calculations. Yes, this does cycle through *hues*, and not shades/tints.
This was just my choice.
Worth noting here that more than 9 headers are possible, but just that after 9 the
colors will stop changing. This can easily be rectified in the CSS by duplicating
the right bit of code, and incrementing the counter appropriately.
<div class='table'>
###### Pets
| Owner | Pet |
|:-:|:-:|
| Janet | Rufus the Dog |
| Billy | Gufus the Cat |
| Justin | Ruufos the Fish |
| Caroline | Gurufis the Parrot |
</div>
The double or "split" table is similar to the default split snippet, but uses
"double" as a class name. Note, the rows can become misaligned easily, and you may
be served better by one, four column, table with custom column widths.
```
```
| d8 | Damage Type |
|:---:|:------------|
| 6 | Necrotic |
| 7 | Poison |
| 8 | Psychic |
| 9 | Radiant |
</div>
Add the class name "dropshadow" to a table div for a shadow effect.
</div>
</div>
\page
## Notes
The Notes here are not made the same way as default Homebrewery, which uses html
blockquotes for styling (and which in Markdown syntax is indicated by > at the
start of each line). Instead, it is just normal text wrapped inside a div
container, and the container is then styled.
Note, everything is italic by default and using the normal syntax for italics (a
single set of asterisks) will actually revert the text to *normal*. In the SWADE
formatting rules, anything that would normally be italiced in normal body text
would instead be reverted to *normal*, such as power names.
</div>
After creating any Note text areas using the Note div, be sure to close the div and
then add an empty line in the editor before continuing to the next paragraph.
-Gazook
</div>
And that is a handwritten flavor note! Again, wrap the text you want in the note
inside a div container, and assign it the classes **note** and **flavor**. Then
type your message. In my example, I have "Dear Reader" and "-Gazook" at the start
and ends. This is done using h2 and h3 headers (double and triple hashtags,
respectively). Rotation of the entire note can be done inline.
-Gazook
</div>
`Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mihi quidem Antiochum,
quem audis, satis belle videris attendere. Ea, quae dialectici nunc tradunt et
docent, nonne ab illis instituta sunt aut inventa sunt?`
That seemed to work...now let's try a Greeting, body text, and no Signature this
time....The Greeting should be left-justified, and the body text centered....
</div>
`Lorem ipsum dolor sit amet, consectetur adipiscing elit. Mihi quidem Antiochum,
quem audis, satis belle videris attendere. Ea, quae dialectici nunc tradunt et
docent, nonne ab illis instituta sunt aut inventa sunt?`
\page
<div class='wide'>
## Project Goals
- **Make extra Note types,** such as found in the SWADE core book on page 30
(parchment type), graph paper type (page 96), scratch paper (page 121).
- **Alternative full page backgrounds** such as parchment and graph paper and
spotty paper (page 142).
- **Flavor images** like paperclips, pieces of tape, coffee stains and ink
splatters.
- **"No color"/transparent multi-section table headers** (like the Weapon tables in
the core book).
- ~~**2-column roll tables,** so d20 roll table can be displayed in 10 rows. Is
actually 4 columns. But like on page 112.~~
- **Easier column width** manipulation for tables.
- **Premade playing card formats** for micro-brews like single items, powers,
creatures.
- ~~**"Example" header**...an uncommon type of header found at least on page 121,
123, 133, 135, 137, 143, 144...~~
- **checklist list**...with open circles for bullet points. pg 142.
- ~~**Table of Contents** formatting.~~
- Think about removing the .sw class divs and what that means.
- **Read about Baselines** and see if it can be meaningfully implemented.
- **Keep segments together** so they don't break at columns.
- How much styling should be done based on divs with classes, versus on markdown
tags?
</div>
</div>
\page
<div class='toc'>
## Table Of Contents
- **[1 Savage Brew](#p1)**
- [1.1 H2 Header](#p1) *1*
- [1.1.1 Here is a Level 3 Header](#p1) *1*
- [1.1.2 **Wild Card Indicators?**](#p1) *1*
- [1.1.3 No Wild Card](#p1) *1*
- [1.2 Powers](#p2) *2*
- [1.2.1 List of Powers](#p2) *2*
- [1.3 Bestiary ](#p2) *2*
- **[2 Headers](#p3)**
- [2.1 Basics](#p3) *3*
- [2.1.1 Three Segments of Text](#p3) *3*
- [2.2 Options](#p3) *3*
- [2.2.1 CSS](#p3) *3*
- **[3 Tables](#p4)**
- [3.1 Tables](#p4) *4*
- [3.1.1 Use](#p4) *4*
- **[4 Notes](#p6)**
- [4.1 ](#p6) *6*
- [4.1.1 More Notes](#p6) *6*
- [4.2 Project Goals](#p7) *6*
- **[5 Table of Contents](#p8)**
- [4.3 Attributions](#p8) *8*
</div>
Yes, this is a huge pain if you have a large brew. If you decide that page numbers
are not important, but don't want to leave hanging dotted lines, you can remove the
dotted lines by making edits in the CSS which are sort of explained there.
## Attributions
- The graphics representing various paper stock, as well as the color pallete are
from the SWADE players guide published by Pinnacle.
- The flaming sword icon used for the Wild Card indicator is [skill sword flame]
(https://thenounproject.com/search/?q=fire+sword&i=2360212) by Maxicons from the
Noun Project. CC-BY
- The Core Skill indicator is [expert](https://thenounproject.com/search/?
q=skill&i=2587312) by Adrien Coquet from the Noun Project. CC-BY
- Dice in the background is [Dice](https://thenounproject.com/search/?
q=d20&i=2388523) by Travis Avery from the Noun Project
- Text art featured in the source code is generated from
[fSymbols.com](https://fsymbols.com/).
<img
src='https://i.imgur.com/HMrJ4zQ.png'
style='position:absolute; bottom:-50px; right:-60px;
width:450px;opacity:20%;transform:rotate(5deg)' />
</div>
\page
\page
<!-- hidden page...the code below is only for CSS styling, specifically related to
display THIS brew...nothing here is needed for displaying stuff in SWADE style -->
<style>
.phb:last-child {
visibility:hidden;
height:0px;
padding:0
.sw code {
visibility:unset;
color:#aaaaaa;
}
:root {
--zoom:1.6; /* 1=100%, 2=200%, etc */
--book:initial; /* initial=offset first page, */
/* none=no offset of first page */
}
.pages {
display:grid;
width:calc(100%*var(--zoom));
height:calc(98%*var(--zoom));
overflow-y: scroll;
margin-top:0px !important;
grid-template-columns: repeat(auto-fill, 816px);
column-gap:20px;
row-gap:20px;
justify-content: center;
padding-top:30px;
}
.pages:before {
content:'';
display:var(--book);
}
body {
background:url('https://i.imgur.com/b8kUc5Y.jpg') 90% 90%;
background-size:auto 120%;
background-attachment: fixed;
}
#headerbox {
position:fixed;
visibility:visible;
background:#666666A4;
top:0px;
left:0;
padding:5px;
text-align:center;
width:calc(100%*var(--zoom));
text-rendering:auto;
}
#headerbox p {
font-size:18px;
color:goldenrod;
line-height:1em !important;
padding-bottom:0 !important;
font-family: 'scaly sans';
font-variant:small-caps
}
#headerbox a {
color:goldenrod;
text-decoration:none;
}
#headerbox a:hover {
text-decoration:underline;
}
</style>
<style>
@import url('https://raw.githack.com/Gazook89/Homebrewery-Snippets/main/Ko-Fi-
Korner.css');
</style>