Hello, everyone!
In an effort to make my life as a DM slightly easier (and to learn Javascript), I’ve written a script to automate a status screen like the one @OneSevenDesign uses. Unfortunetly, it requires you to be a Pro member on Roll20 since it uses the API (that’s the $10 subscription, not the $5 one). Setup time for me is about 10 minutes, but it’s probably a bit longer for someone doing it for their first time.
I have an audioless youtube video at the bottom which shows all the steps in case you’re confused about something. It’s also possible to do it manually if the automated setup isn’t working for you, but it’s a bit tedious and too long to write out if no one needs it. Just comment below if you do need it and I’ll be happy to help.
Note: This is one of the first pieces of code I’ve ever written and I’ve copied and stitched together pieces from various sources to get it working. As such, the code is fairly messy, but it does the job and I’m fairly confident I’ve ironed out the any bugs/errors for the core script (the setup is not as solid, I’ll see if I can work on it some more).
The script should no longer reset your stress, trauma and the 3 armor fields, but you might want to write them down before hand just in case.
Roll20 recommends you backup any game that uses scripts, and I would say this is solid advice. There’s nothing in the script that should cause any harm but better safe than sorry!
I haven’t actually done this myself but I’d hate to destroy someones game just because my script somehow went haywire (don’t think that’s actually possible and there’s the rollback function in the unlikely event that it does, but still).
Step 1: Download the images and decide on the style
There’s 2 main designs (red and black), and another 2 variants (trauma border vs no border) of those depending on what you fancy (mixing also works if you’d like to have black stress but red trauma, etc).
Link: https://drive.google.com/open?id=0B3G7DJD-H2KgVnlKSEdodFNkR0U
Step 2: Setup Rollable Tables inside roll20.
The API can’t access your image library, but it can access the rollable tables so we use those to setup all the images. We want to create a total of 6 rollable tables, which is a bit of work, but I think it definitely pays off.
- Go to the “Collections” tab on roll20 and click “+add” at the bottom.
- Name the 6 tables “stress”, “trauma”, “armor”, “heavy”, “special” and “injury”.
- Enter the images into their respective table (Important start with image 0 and keep them in order!)
I recommend dragging the images into roll20 one “category” at a time in order to upload several at once (something that doesn’t seem to be possible through the menus) but still keep them semi-organised (the upload jumbles the order).
Step 3: Add the script
Copy the script from here: https://github.com/TheShootHappy/StatusScreen
- On the page for your campaign, click settings > API scripts
- Create a new script and call it whatever you want (I suggest status,js)
- Save the script
#Step 4: Setup
###Write down all the stress, trauma and armor fields as these will be reset!
- Once you’ve added and saved the script, go into the game and write “!status – <<>name>” but with all the characters name seperate by --. As an example, John would probably (depending on the sheet names) type
!status --Rune --Carriless Firm --Aldo --Miss Cattaby
to set it up for rollplay blades (It’s VERY important you have no duplicate names/characters and that you spell everything exactly the way they are in the Journal!). - The script should create everything for you on the page with the player banner.
- If you wish, you change the color of the block next to the portrait in the top left from one of the presets or with a hexcode. The script generates a random hexcode on setup for you.
If you wish to move things around, I highly recommend you set the grid size to 0.25. Unfortunetly, I didn’t account for the color banner thing when I created everything, but the main screen and portait should snap into place (Note: you have to right click and click “isDrawing” to unselect that first as that disables snapping).
Feel free to comment if you’re having issues, I’ll do my best to help out
…I hope that’s everything.