Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

Creature character sheets

I noticed that the character sheets are displayed for NPCs as well as PCs. I tried entering the requisite information into the character sheets (the information that is supplied on the monster's card) but I think (a) a concise character sheet similar to monster cards would be much more useful and (b) the powers are far too restrictive. I've already run into instances of powers not working with the character sheet because it can't handle the input. Just feedback. It's still a great first attempt. Think I'll keep using the power cards script for now, though.
some sheets like the pathfinder have an NPC mode. I don't quite understand how it works quite yet, but it's an option.
I should have been more specific then, DND 4e is what I'm referring to. The character sheets are cool and all, but they're no where near ready for prime time. They reach over extends their grasp. The powers are too restrictive so they don't always work and they don't support the vast majority of the characters, namely the NPCs. BTW, I'm not complaining. I think its a nice feature that probably took a good deal of work. I love the concept but it's far too rough around the edges to use in a live game.
1401394330
Lithl
Pro
Sheet Author
API Scripter
Per Riley , there should hopefully be an option for "multiple layouts" in a single sheet within a few weeks. The D&D4e author(s) can then make an alternative layout for the monster template.
Very cool Brian. Thanks. I'm looking forward to watching the evolution of this new feature.
1401441903

Edited 1401441939
Gold
Forum Champion
Brian said: Per Riley , there should hopefully be an option for "multiple layouts" in a single sheet within a few weeks. That would be really neat. Your Henchmen, or Animal Companion, or Familiar, could also use a simplified backup sheet, in old school AD&D.
Personally, I use the same sheets for all tokens. Mainly this is because my API scripts need standardization for all tokens since I use global and token actions that rely on the standardization. This means a little more work for my monsters, but I am hoping the character vaults also can be used as a monster manual of sorts. Tag 'em and bag 'em in the vault, pull them out with a vault search. Hopefully Riley opens up some discussion for mentors on what the vault can do.
As mentioned, sheets can use radio buttons to essentially switch between multiple sheets (that can share or not, the same underlying attributes). I use this for my The One Ring sheet, and it works very well.
Heilemann said: As mentioned, sheets can use radio buttons to essentially switch between multiple sheets (that can share or not, the same underlying attributes). I use this for my The One Ring sheet, and it works very well. Could you explain how this works? .sheet-isAdversary:checked~.sheet-pc, .sheet-isAdversary:checked~.sheet-lm-character, .sheet-isPC:checked~.sheet-adversary, .sheet-isPC:checked~.sheet-lm-character, .sheet-isNPC:checked~.sheet-adversary, .sheet-isNPC:checked~.sheet-pc { display: none; } I'd love to make a sheet that has multiple types but i'm not quite sure how this works.
1401468423
Lithl
Pro
Sheet Author
API Scripter
~ is the sibling selector. So, .sheet-isAdversary:checked ~ .sheet-pc matches any element with the class "sheet-pc" which is a sibling to an element with the class "sheet-isAdversary" which is also checked (which means the sheet-isAdversary element needs to be a checkbox or radio button). So, if isAdversary is checked, pc and Im-character are both hidden. If isPC is checked, adversary and Im-character are both hidden. If isNPC is checked, adversary and pc are both hidden. A simple example: <input type="radio" class="sheet-isAdversary" name="attr_tab" value="0" /> Adversary <input type="radio" class="sheet-isPC" name="attr_tab" value="1" /> Player Character <input type="radio" class="sheet-isNPC" name="attr_tab" value="2" /> Non-Player Character <div class="sheet-pc">This is the Player Character sheet</div> <div class="sheet-Im-character">This is the Non-Player Character sheet</div> <div class="sheet-adversary">This is the Adversary sheet</div>
1401469464

Edited 1401469506
I think I should use this to do a skills/feats page. Theoretically you can have as many "tabs" as you want yea?
1401470135

Edited 1401470339
Lithl
Pro
Sheet Author
API Scripter
Yes. Although, I think I would structure the CSS a little differently; rather than hiding the sheets you're not looking at, I'd show the sheet you are looking at. .sheet-tab-content { display: none; } .sheet-isAdversary:checked ~ .sheet-adversary, .sheet-isPC:checked ~ .sheet-pc, .sheet-isNPC:checked ~ .sheet-Im-character { display: block; } <input type="radio" class="sheet-isAdversary" name="attr_tab" value="0" /> Adversary <input type="radio" class="sheet-isPC" name="attr_tab" value="1" /> Player Character <input type="radio" class="sheet-isNPC" name="attr_tab" value="2" /> Non-Player Character <div class="sheet-tab-content sheet-pc">This is the Player Character sheet</div> <div class="sheet-tab-content sheet-Im-character">This is the Non-Player Character sheet</div> <div class="sheet-tab-content sheet-adversary">This is the Adversary sheet</div> That gives you fewer selectors to look at, and it makes adding a new tab easier to manage. Personally, I'm holding off on sticking tabs in until we see what the multiple configurations stuff looks like.
Brian said: Yes. Although, I think I would structure the CSS a little differently; rather than hiding the sheets you're not looking at, I'd show the sheet you are looking at. .sheet-tab-content { display: none; } .sheet-isAdversary:checked ~ .sheet-adversary, .sheet-isPC:checked ~ .sheet-pc, .sheet-isNPC:checked ~ .sheet-Im-character { display: block; } <input type="radio" class="sheet-isAdversary" name="attr_tab" value="0" /> Adversary <input type="radio" class="sheet-isPC" name="attr_tab" value="1" /> Player Character <input type="radio" class="sheet-isNPC" name="attr_tab" value="2" /> Non-Player Character <div class="sheet-tab-content sheet-pc">This is the Player Character sheet</div> <div class="sheet-tab-content sheet-Im-character">This is the Non-Player Character sheet</div> <div class="sheet-tab-content sheet-adversary">This is the Adversary sheet</div> That gives you fewer selectors to look at, and it makes adding a new tab easier to manage. Personally, I'm holding off on sticking tabs in until we see what the multiple configurations stuff looks like. Maybe you can tell me why this isn't working? input type='checkbox' name='attr_ishorror' class='ishorror'> <tr> <td class='sheet-hiddenoptions sheet-horror sheet-short'>Sanity</td> <td><input type="number" name="attr_sanity" value="0" class='sheet-hiddenoptions sheet-horror sheet-short'/></td> <td><input type="number" name="attr_sanityMod" value="0" class='sheet-hiddenoptions sheet-horror sheet-short'/></td> </tr> .sheet-hiddenoptions { display:none; } .sheet-ishorror:checked~.sheet-horror { display:block; } the checkbox isn't toggling anything.
1401484726

Edited 1401484961
Lithl
Pro
Sheet Author
API Scripter
The sibling selector matches siblings , which means the two elements must have the same parent A ~ B matches B in a scenario like this: <parent> <A>Lorem ipsum dolor sit amet</A> . . . <B>consectetur adipisicing elit</B> </parent> You are trying to match the descendant of a sibling, so you need to also use the descendant selector (a space). A ~ B D matches D in either of these types of scenarios: <parent> <A>Lorem ipsum dolor sit amet</A> . . . <B> . . . <C>consectetur <D>adipisicing</D> elit</C> </B> </parent> <parent> <A>Lorem ipsum dolor sit amet</A> . . . <B><C>consectetur</C> <D>adipisicing</D> elit</B> </parent> You also have the option of the child selector (>), rather than the descendant selector. The child selector matches something that's an immediate child, rather than an arbitrarily deep descendant. The child selector had some issues during beta, but IIRC it was fixed. With the first example above, this would also match D: A ~ B > C > D. The second example would work with: A ~ B > D. If your checkbox is followed by the table which contains your cell you want to hide, this should work: .sheet-ishorror:checked ~ table .sheet-horror { display: table-cell; } /* Note that I've used table-cell here instead of block since you're using a <td> element */ If your checkbox is in another row of the table, this will not work , because the checkbox would be a cousin to the table cell you're trying to toggle. The elements must be siblings, or the second one must be a descendant of a sibling.
Brian said: The sibling selector matches siblings , which means the two elements must have the same parent A ~ B matches B in a scenario like this: <parent> <A>Lorem ipsum dolor sit amet</A> . . . <B>consectetur adipisicing elit</B> </parent> You are trying to match the descendant of a sibling, so you need to also use the descendant selector (a space). A ~ B D matches D in either of these types of scenarios: <parent> <A>Lorem ipsum dolor sit amet</A> . . . <B> . . . <C>consectetur <D>adipisicing</D> elit</C> </B> </parent> <parent> <A>Lorem ipsum dolor sit amet</A> . . . <B><C>consectetur</C> <D>adipisicing</D> elit</B> </parent> You also have the option of the child selector (>), rather than the descendant selector. The child selector matches something that's an immediate child, rather than an arbitrarily deep descendant. The child selector had some issues during beta, but IIRC it was fixed. With the first example above, this would also match D: A ~ B > C > D. The second example would work with: A ~ B > D. If your checkbox is followed by the table which contains your cell you want to hide, this should work: .sheet-ishorror:checked ~ table .sheet-horror { display: table-cell; } /* Note that I've used table-cell here instead of block since you're using a <td> element */ If your checkbox is in another row of the table, this will not work , because the checkbox would be a cousin to the table cell you're trying to toggle. The elements must be siblings, or the second one must be a descendant of a sibling. So there is no real way to just hide and show elements that are throughout the page without the api? What I am looking to do is to have setting specific hidden elements that can just be shown by selecting some checks at the top. Any way to handle this through CSS?
1401487925
Sam M.
Pro
Sheet Author
That requires Javascript and ids
But it could do it if i had CSS selectors for each tree? if there was an element at D or F i would just need a selector that went to each one?
1401490489
Sam M.
Pro
Sheet Author
The way I did it, I put a checkbox before the section I wanted to hide, and made sure they had unique class names compared to the rest of their siblings. You could put boxes at the top of your sheet, but that would require anything you wanted them to hide have the same parent.
1401490592
Lithl
Pro
Sheet Author
API Scripter
If you are trying to put the checkboxes at the top of the sheet, you could use something like .sheet-ishorror:checked ~ * .sheet-horror That would match any element with the "sheet-horror" class which is the descendant of any element which is a sibling of a checked "sheet-ishorror" element. So long as you don't make the elements cousins to the checkbox, you'll be okay.
1401494179

Edited 1401495235
Josiah B.
Sheet Author
Brian said: If you are trying to put the checkboxes at the top of the sheet, you could use something like .sheet-ishorror:checked ~ * .sheet-horror That would match any element with the "sheet-horror" class which is the descendant of any element which is a sibling of a checked "sheet-ishorror" element. So long as you don't make the elements cousins to the checkbox, you'll be okay. so it would work like this? input class=ishorror div div div class=otherdiv /div div class=horror /div /div /div Edit: it doesn't seem to work. Im using: .sheet-ishorror:checked~*.sheet-horror { display:block; } It's elements inside siblings are not appearing.
1401498421
Lithl
Pro
Sheet Author
API Scripter
You're missing a space after the *. *.sheet-horror means any element which has the class "sheet-horror". * .sheet-horror means any element which has the class "sheet-horror" which is a descendant of any element.