[Revelations of the Forge] New Sheet

New homebrew sheet from  Wardonis (47426)
This commit is contained in:
William Barker
2026-02-21 13:17:03 -05:00
parent 30b6f2a789
commit 72bdcc3bba
8 changed files with 4328 additions and 0 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 530 KiB

@@ -0,0 +1,630 @@
@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Shrikhand&family=Russo+One&family=Cormorant+Garamond:ital,wght@0,300..700;1,300..700&display=swap");
.charsheet {
border: 0px solid Black;
width: 846px;
min-width: 846px;
height: 1120px;
font-family: "Arial, Courier New, serif";
}
.charsheet div.sheet-page1 {
background: white url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Revelations%20of%20the%20Forge/Graphics/RevelationsOfTheForge_pg1.jpg") no-repeat -2px 12px scroll;;
/* background: white url("https://github.com/WilliamBarkerCoC/Public-Domain-Images/blob/main/RevelationsOfTheForge_pg1.jpg?raw=true") no-repeat -2px 12px scroll; */
border: 2px solid Black;
width: 840px;
min-width: 840px;
height: 1100px;
padding: 4px;
font-family: "Arial, Courier New, serif";
}
.charsheet div.sheet-page2 {
background: white url("https://raw.githubusercontent.com/Roll20/roll20-character-sheets/refs/heads/master/Revelations%20of%20the%20Forge/Graphics/RevelationsOfTheForge_pg2.jpg") no-repeat -2px -7px scroll;
/* background: white url("https://github.com/WilliamBarkerCoC/Public-Domain-Images/blob/main/RevelationsOfTheForge_pg2.1.jpg?raw=true") no-repeat -2px -7px scroll; */
border: 2px solid Black;
opacity: 1.0;
min-width: 900px;
max-width: 900px;
font-family: "Anta";
height: 1100px;
}
.charsheet .sheet-container1 {
display: grid;
grid-template-columns: repeat(3, 1fr);
grid-template-rows: auto;
overflow: visible;
gap: 5px 4px;
grid-template-areas:
"logo profile profile"
}
/* Layout */
.charsheet .sheet-logo {
grid-area: logo;
height: 170px;
width: 270px;
border: 0px solid Black;
}
.charsheet .sheet-profile {
grid-area: profile;
grid-column: span 2;
height: 170px;
border: 0px solid Black;
}
/* General Styles */
.charsheet .sheet-profileTitle{
display: inline-block;
vertical-align: bottom;
box-sizing: border-box;
font-family: "Russo One";
font-weight: 500;
font-size: 32px;
width: 99%;
height: 50px;
text-align: center;
color: Black;
background-color: transparent;
border: 0px;
border-bottom: 3px solid Black;
margin: 2px 0px 0px 0px;
padding: 2px;"
}
.charsheet .sheet-profileTitle{
display: inline-block;
vertical-align: top;
box-sizing: border-box;
font-family: "Shrikhand";
font-weight: 650;
font-size: 34px;
font-style: italic;
text-align: center;
width: 850px;
height: 34px;
color: Black;
background-color: transparent;
border: 1px solid transparent;
margin: 18px 0px 0px 0px;
padding: 0px;"
}
.charsheet .sheet-profileLabel{
display: inline-block;
vertical-align: top;
box-sizing: border-box;
font-family: "Barlow Condensed"; /* Arial + Barlow Condensed */
font-weight: 550;
font-size: 12px;
text-align: center;
width: 80px;
height: 32px;
text-align: left;
color: rgb(48, 84, 113);
background-color: transparent;
border: 2px solid transparent;
margin: 4px 0px 0px 0px;
padding: 8px 0px 0px 0px;"
}
.charsheet .sheet-profileButton{
display: inline-block;
vertical-align: top;
box-sizing: border-box;
font-family: "Barlow Condensed"; /* Arial + Barlow Condensed */
font-weight: 550;
font-size: 16px;
text-align: center;
width: 132px;
height: 20px;
color: Black;
background-color: transparent;
border: 0px;
margin: 0px;
padding: 0px;"
}
/*
.charsheet .sheet-profileLabel:hover{
background-color: rgba(255,255,0,0.5);
}
*/
.charsheet .sheet-profileInput{
display: inline-block;
vertical-align: top;
box-sizing: content-box;
width: 410px;
height: 23px ;
font-family: "Barlow Condensed";
font-weight: 450;
font-size: 22px;
background-color: transparent;
margin: 0px 0px 0px 8px;
text-align: left;
padding: 1px;
border: 0;
border-radius: 0;
border-bottom: 2px solid Black;
}
.charsheet .sheet-smallerInput{
font-weight: 400;
font-size: 16px;
}
.charsheet .sheet-profileRoundInput{
display: inline-block;
vertical-align: bottom;
box-sizing: content-box;
width: 50px;
height: 50px !important;
font-family: "Barlow Condensed";
font-weight: 500;
font-size: 22px;
background-color: transparent;
margin: 0px 0px 0px -2px;
text-align: center;
padding: 1px;
border: 0;
border-radius: 50%;
border: 2px solid transparent;
}
.charsheet .sheet-level{
display: inline-block;
vertical-align: top;
width: 50px;
height: 80px !important;
font-family: "Barlow Condensed";
font-weight: 500;
font-size: 28px;
margin: 0px 0px 0px -4px;
text-align: center;
padding: 0px 2px 1px 2px;
border: 3px solid Black;
}
.charsheet .sheet-AuxName,
.charsheet .sheet-skillName{
display: inline-block;
vertical-align: top;
box-sizing: content-box;
width: 200px;
height: 36px;
color: White;
background-color: Black;
font-family: "Russo One";
font-weight: 300;
font-size: 30px;
margin: 0px 0px 0px 0px;
text-align: right;
padding: 3px 0px 0px 0px;
border-top: 6px solid Black;
}
.charsheet .sheet-skillDefnLeft{
display: inline-block;
vertical-align: top;
box-sizing: content-box;
width: 100px;
height: 52px;
color: White;
background-color: Black;
font-family: "Barlow Condensed";
font-weight: 200;
font-size: 16px;
margin: 0px 0px 0px 0px;
text-align: right;
margin-top: -40px;
padding: 0px 6px 0px 96px;
border: 0px solid White;
border-right: 10px solid Black;
}
.charsheet .sheet-skillDefnRight{
display: inline-block;
vertical-align: top;
box-sizing: content-box;
width: 112px;
height: 52px;
color: White;
background-color: Black;
font-family: "Barlow Condensed";
font-weight: 200;
font-size: 16px;
margin: 0px 0px 0px 0px;
text-align: right;
margin-top: -40px;
margin-left: 48px;
padding: 0px 6px 0px 76px;
border: 0px solid White;
border-right: 18px solid Black;
}
.sheet-smallCap {
text-transform: capitalize;
font-family: "Anta";
font-variant: small-caps;
}
.charsheet input[type="text"]{
display: inline-block;
color: Black;
}
.charsheet textarea{
display: inline-block;
color: Black;
margin: 2px 2px 2px 2px;
border: 8px double LightGray;
font-size: 18px;
line-height: 22px;
resize: none;
box-sizing: border-box;
}
.charsheet .sheet-skill{
display: inline-block;
vertical-align: top;
font-family: "Barlow Condensed";
font-weight: 500;
font-size: 16px;
width: 137px;
height: 26px;
text-align: left;
color: Black;
background-color: White;
margin: 0px 0px 0px 0px;
padding: 4px 0px 0px 0px;
}
.charsheet button{
text-align: left;
color: black;
}
.charsheet button:hover{
background: LightGray;
color: #968c6a;
text-shadow: none;
}
/* Gold circles */
.gold {
display: inline-block;
vertical-align: top;
position: relative;
width: 15px;
}
.gold label {
background-color: transparent;
border: 2px solid Gold;
border-radius: 50%;
cursor: pointer;
height: 14px;
left: 0;
position: absolute;
top: 0;
width: 14px;
padding: 0px;
margin: 0px;
}
.gold label:after {
padding: 0px;
margin: 0px;
}
.gold input[type="checkbox"] {
visibility: hidden;
}
.gold input[type="checkbox"]:checked + label {
background-color: #ffd700;
border-color: #ffd700;
}
.gold input[type="checkbox"]:checked + label:after {
opacity: 1;
}
/* D6 Outputs */
.charsheet .sheet-die{
font-family: "dicefontd6";
font-weight: 500;
font-size: 24px;
line-height: 28px;
}
.sheet-toggle[value="0"] + .sheet-cell { background-color: White;} /* Normal */
.sheet-toggle[value="1"] + .sheet-cell { background-color: rgba(34, 139, 34, 0.5);} /* Horror */
.sheet-toggle[value="2"] + .sheet-cell { background-color: rgba(139, 0, 0, 0.6);} /* Damage */
.sheet-toggle[value="3"] + .sheet-cell { background-color: rgb(160,160,160);} /* Spent */
/* Radiobox Scott/Dana CSS Wizardry */
.radiocontainer{
/* style the layout and whatnot of the radio container as you need to */
display: flex;
gap: 0.5rem;
}
.radiobox{
/* appearance none allows us to style radios and checkboxes as if they were divs */
appearance: none;
/* Style the radio as you want for it's unchecked state */
border-radius: 50%;
border: 1px solid black;
width: 10px;
height: 10px;
display: block;
}
/* If the radiobox is checked, or if it has a checked radiobox after it, style it as if it was checked */
.radiobox:checked,
.radiobox:has(~ .radiobox:checked){
/* Style the check state as you want */
background-color: black;
}
/* Buttons Styling */
.charsheet button[type=action].sheet-skillName,
.charsheet button[type=roll].sheet-skillName {
display: inline-block;
vertical-align: top;
box-sizing: content-box;
background-color: Black;
width: 66px;
height: 26px;
color: White;
font-family: "Barlow Condensed";
font-weight: 500;
font-size: 30px;
margin: 4px 0px 0px 0px;
text-align: right;
padding: 0px 0px 0px 0px;
border: 2px solid Red;
}
.charsheet button[type=action].sheet-textButton,
.charsheet button[type=roll].sheet-textButton {
background-color: transparent;
color: black;
border: none;
height: 18px;
width: 136px;
font-size: 1.8em;
font-weight: bold;
text-align: left;
}
.charsheet button[type=roll].sheet-textButton::before,
.charsheet button[type=action].sheet-textButton::before {
background-color: transparent;
content: "" !important;
}
.charsheet button[type=roll].sheet-skillName::before,
.charsheet button[type=action].sheet-skillName::before {
background-color: transparent;
padding: 0px 0px 0px 0px;
content: "" ;
}
.charsheet button.sheet-profileLabel:hover,
.charsheet button.sheet-skillName:hover {
background-color: rgba(128,128,128,0.3)!important;
}
.charsheet button[type=roll].sheet-no-icon::before {
content: "";
display: none;
}
/*End Button Styling*/
/* Roll Template */
/* CALM Template */
.sheet-rolltemplate-calm .sheet-container {
color: Black;
background-color: #ffffff;
border: 1px solid;
padding: 2px;
width: 189px;
}
.sheet-rolltemplate-calm .sheet-container h1{
color: inherit;
font-size: 1.2em;
font-variant: small-caps;
line-height: 20px;
}
.sheet-rolltemplate-calm div {
padding: 2px;
}
.sheet-rolltemplate-calm span {
color: currentColor;
font-family: "Times New Roman", Times, serif;
font-size: 1.2em;
font-variant: small-caps;
line-height: 1.4em;
padding-left: 5px;
text-align: left;
}
.sheet-rolltemplate-calm .sheet-subheader {
color: currentColor;
font-size: 1em;
font-style: italic;
}
.sheet-rolltemplate-calm .sheet-arrow-right {
border-bottom: 3px solid transparent;
border-left: 180px solid currentColor;
border-top: 3px solid transparent;
}
.sheet-rolltemplate-calm .sheet-tcat {
font-style: italic;
}
.sheet-rolltemplate-calm .inlinerollresult {
background-color: LightGray !important;
border: none;
}
.sheet-rolltemplate-calm .inlinerollresult.fullcrit {
color: #3FB315;
border: none;
}
.sheet-rolltemplate-calm .inlinerollresult.fullfail {
color: #B31515;
border: none;
}
.sheet-rolltemplate-calm .inlinerollresult.importandivoll {
color: #4A57ED;
border: none;
}
/* End CALM template */
/* Check, Melee, Initiative Templates */
.sheet-rolltemplate-check .sheet-container {
color: Black;
background-color: #ffffff;
border: 1px solid;
padding: 2px;
width: 189px;
}
.sheet-rolltemplate-melee .sheet-container {
background-color: rgb(153, 0, 0); /* Dark Red */
color: rgb(255, 179, 179); /* Light Red */
border: 3px solid rgb(255, 179, 179);
padding: 2px;
width: 189px;
}
.sheet-rolltemplate-initiative .sheet-container {
background-color: Thistle;
color: Blue;
border: 3px solid Blue;
padding: 2px;
width: 189px;
}
.sheet-rolltemplate-check .sheet-container h1,
.sheet-rolltemplate-melee .sheet-container h1,
.sheet-rolltemplate-initiative .sheet-container h1{
color: inherit;
font-size: 1.2em;
font-variant: small-caps;
line-height: 20px;
}
.sheet-rolltemplate-melee div,
.sheet-rolltemplate-initiative div,
.sheet-rolltemplate-check div {
padding: 2px;
}
.sheet-rolltemplate-check span,
.sheet-rolltemplate-melee span,
.sheet-rolltemplate-initiative span {
color: currentColor;
font-family: "Times New Roman", Times, serif;
font-size: 1.2em;
font-variant: small-caps;
line-height: 1.4em;
padding-left: 5px;
text-align: left;
}
.sheet-rolltemplate-check .sheet-subheader,
.sheet-rolltemplate-melee .sheet-subheader,
.sheet-rolltemplate-initiative .sheet-subheader {
color: currentColor;
font-size: 1em;
font-style: italic;
}
.sheet-rolltemplate-check .sheet-arrow-right,
.sheet-rolltemplate-melee .sheet-arrow-right,
.sheet-rolltemplate-initiative .sheet-arrow-right {
border-bottom: 3px solid transparent;
border-left: 180px solid currentColor;
border-top: 3px solid transparent;
}
.sheet-rolltemplate-melee .sheet-tcat,
.sheet-rolltemplate-initiative .sheet-tcat,
.sheet-rolltemplate-check .sheet-tcat {
font-style: italic;
}
.sheet-rolltemplate-check .inlinerollresult {
/*background-color: #ffffff;*/
background-color: LightGray !important;
border: none;
}
.sheet-rolltemplate-initiative .inlinerollresult,
.sheet-rolltemplate-melee .inlinerollresult {
color: Red;
background-color: Yellow;
border: none;
}
.sheet-rolltemplate-check .inlinerollresult.fullcrit {
color: #3FB315;
border: none;
}
.sheet-rolltemplate-check .inlinerollresult.fullfail {
color: #B31515;
border: none;
}
.sheet-rolltemplate-check .inlinerollresult.importandivoll {
color: #4A57ED;
border: none;
}
/* End templates*/
/* TAB HANDLING */
.charsheet input[type=radio].sheet-page1,
.charsheet input[type=radio].sheet-page2,
.charsheet input[type=radio].sheet-page3,
.charsheet input[type=radio].sheet-page4,
.charsheet input[type=radio].sheet-page5,
.charsheet input[type=radio].sheet-page6{
display: none;
float: left;
}
.charsheet input[type=radio].sheet-page1 + label,
.charsheet input[type=radio].sheet-page2 + label,
.charsheet input[type=radio].sheet-page3 + label,
.charsheet input[type=radio].sheet-page4 + label,
.charsheet input[type=radio].sheet-page5 + label,
.charsheet input[type=radio].sheet-page6 + label{
content: '';
border: solid 1px black;
background: white;
color: black;
font-weight: bold;
width: auto;
text-align: center;
padding: 0 2px;;
float: left;
}
.charsheet input[type=radio]:hover + label{
background: #990000;
}
.charsheet input[type=radio]:checked + label{
background: black;
color: white;
}
.charsheet div.sheet-page1, .charsheet div.sheet-page2, .charsheet div.sheet-page3, .charsheet div.sheet-page4, .charsheet div.sheet-page5, .charsheet div.sheet-page6 {
display: none;
}
.charsheet input.sheet-page1:checked ~ div.sheet-page1, .charsheet input.sheet-page2:checked ~ div.sheet-page2,
.charsheet input.sheet-page3:checked ~ div.sheet-page3, .charsheet input.sheet-page4:checked ~ div.sheet-page4,
.charsheet input.sheet-page5:checked ~ div.sheet-page5, .charsheet input.sheet-page6:checked ~ div.sheet-page6 {
display: block;
}
File diff suppressed because it is too large Load Diff
+9
View File
@@ -0,0 +1,9 @@
{
"html": "RevelationsOfTheForge.html",
"css": "RevelationsOfTheForge.css",
"authors": "Wardonis, Vialmada",
"preview": "RevelationsOfTheForge.png",
"roll20userid": "47426, 6040293",
"instructions": "Revelations of the Forge is a homebrew character sheet and system designed by Wardonis. The ruleset can be accessed at: https://docs.google.com/document/d/12nb4GYZ66rVcGt_ouM98gceAx8tktAl8Pa4OJYXR9dA/edit?usp=drivesdk If you have any questions or comments, please contact Wardonis. For errors in the code , please contact Vialmada.\n",
"legacy": false
}
+186
View File
@@ -0,0 +1,186 @@
{
"main-c":"Main",
"auxiliary-c":"Auxiliary",
"notes-c":"Notes",
"journals-c":"Journals",
"Revelations of the Forge":"Revelations of the Forge",
"characterName-c":"Character Name",
"playerName-c":"Player Name",
"level-c":"Level",
"rank-c":"Rank",
"forge-c":"Forge",
"points-c":"Points",
"currentExp-c":"Current Exp",
"Exp to Level":"Exp to Level",
"class-c":"Class",
"race-c":"Race",
"size-c":"Size",
"age-c":"Age",
"gender-c":"Gender",
"height-c":"Height",
"weight-c":"Weight",
"hair-c":"Hair",
"skin-c":"Skin",
"strength-c":"Strength",
"dexterity-c":"Dexterity",
"constitution-c":"Constitution",
"intelligence-c":"Intelligence",
"will-c":"Will",
"charisma-c":"Charisma",
"Max HP":"Max HP",
"Current HP":"Current HP",
"Temp HP":"Temp HP",
"maxResources-c":"Max Resources",
"currentResources-c":"CurrentResources",
"offense-c":"Offense",
"meleeAttack-c":"Melee Attack",
"base-c":"Base",
"mod-c":"Mod",
"misc-c":"Misc",
"temp-c":"Temp",
"bonus-c":"Bonus",
"meleeDmg-c":"Melee Dmg",
"rangedDmg-c":"Ranged Dmg",
"total-c":"Total",
"total:-c":"Total:",
"healing-c":"Healing",
"bonusHealing-c":"Bonus Healing",
"rangedAttack-c":"Ranged Attack",
"rangedDmg-c":"Ranged Dmg",
"magicAttack-c":"Magic Attack",
"magicDmg-c":"Magic Dmg",
"initiative-c":"Initiative",
"speed-c":"Speed",
"physicalDamageReduction-c":"Physical Damage Reduction",
"energyResistances-c":"Energy Resistances",
"life-c":"Life",
"death-c":"Death",
"arcane-c":"Arcane",
"lightning-c":"Lightning",
"fire-c":"Fire",
"frost-c":"Frost",
"air-c":"Air",
"acid-c":"Acid",
"edge-u":"EDGE",
"2x Level":"2x Level",
"defensiveEdge-c":"Defensive Edge",
"armor-c":"Armor",
"shield-c":"Shield",
"dodge-c":"Dodge",
"Flat-Ft":"Flat-Ft",
"touch-c":"Touch",
"Total ACP":"Total ACP",
"saves-c":"Saves",
"fort-c":"Fort",
"reflex-c":"Reflex",
"will-c":"Will",
"con-c":"Con",
"dex-c":"Dex",
"weapons-c":"Weapons",
"skills-c":"Skills",
"name-c":"Name",
"damage-c":"Damage",
"critical-c":"Critical",
"range-c":"Range",
"type-c":"Type",
"specialProperties-c":"Special Properties",
"A/S Value":"A/S Value",
"chest-c":"Chest",
"SEF":"SEF",
"strengthEfficiencyFactor-c":"Strength Efficiency Factor",
"ACP":"ACP",
"armorCheckPenalty-c":"Armor Check Penalty",
"currency-c":"Currency",
"copper-c":"Copper",
"silver-c":"Silver",
"gold-c":"Gold",
"platinum-c":"Platinum",
"item-c":"Item",
"inventory-c":"Inventory",
"quantity-c":"Quantity",
"Unspent skill points":"Unspent skill points",
"dex":"Dex",
"int-c":"Int",
"str-c":"Str",
"cha-c":"Cha",
"ability-c":"Ability",
"mod-c":"Mod",
"miscMod-c":"Misc Mod",
"skillRanks-c":"Skill Ranks",
"acrobatics-c":"Acrobatics",
"appraise-c":"Appraise",
"athletics-c":"Athletics",
"bluff-c":"Bluff",
"craft:-c":"Craft:",
"climb-c":"Climb",
"diplomacy-c":"Diplomacy",
"disableDevice-c":"Disable Device",
"disguise-c":"Disguise",
"escapeArtist-c":"Escape Artist",
"firstAid-c":"First Aid",
"fly-c":"Fly",
"gatherInformation-c":"Gather Information",
"handleAnimals-c":"Handle Animals",
"hide-c":"Hide",
"intimidate-c":"Intimidate",
"knowledge:-c":"Knowledge:",
"knowledge:Arcana-c":"Knowledge: Arcana",
"knowledge:Dungeoneering-c":"Knowledge: Dungeoneering",
"knowledge:Engineering-c":"Knowledge: Engineering",
"knowledge:Geography-c":"Knowledge: Geography",
"knowledge:History-c":"Knowledge: History",
"knowledge:Local-c":"Knowledge: Local",
"knowledge:Nature-c":"Knowledge: Nature",
"knowledge:Nobility-c":"Knowledge: Nobility",
"knowledge:Religion-c":"Knowledge: Religion",
"linguistics-c":"Linguistics",
"listen-c":"Listen",
"moveSilently-c":"Move Silently",
"ride-c":"Ride",
"senseMotive-c":"Sense Motive",
"Sleight of Hand":"Sleight of Hand",
"spot-c":"Spot",
"taunt-c":"Taunt",
"useRope-c":"Use Rope",
"combatManeuvers-c":"Combat Maneuvers",
"Combat Maneuvers Require 2 skill points per rank":"Combat Maneuvers Require 2 skill points per rank",
"block-c":"Block",
"bullRush-c":"Bull Rush",
"dodge-c":"Dodge",
"disarm-c":"Disarm",
"feint-c":"Feint",
"grapple-c":"Grapple",
"overrun-c":"Overrun",
"parry-c":"Parry",
"sunder-c":"Sunder",
"trample-c":"Trample",
"trip-c":"Trip",
"title-c":"Title",
"check:-c":"Check: ",
"target:-c":"Target: ",
"difficulty:-c":"Difficulty: ",
"roll:-c":"Roll: ",
"result:-c":"Result: ",
"status:-c":"Status: ",
"failure-c":"Failure",
"success!-c":"Success!",
"criticalFail-c":"Critical Fail",
"critical-c":"Critical",
"superCrit-c":"Super Crit",
"doubleDigits-c":"Double Digits",
"normal-c":"Normal",
"critical!-c":"Critical!",
"fumble!-c":"Fumble!",
"alwaysSuccess-c":"Always Success",
"alwaysFailure-c":"Always Failure",
"damage:-c":"Damage: ",
"description:-c":"Description: ",
"for-l":" *for*"
}