I have written a sheet and script for Shadowrun 5 which handles A LOT of the stuff that comes up when playing SR5. Everything there is WIP and some of the heavy-load features can crash your API but it might be a point to start. It is far from a state where it can be easily shared or were it is stable but it might give you ideas what funcitonality might be necessary to really speed up a shadowrun campaign. I have added pretty much of the most important stuff: Summoning, Alchemy, Spellcasting, Sprites, Powers, Contacting Connections, Reducing the initiative by 10 after each round,etc., etc., etc. Currently I don't find time to work on the project to bring it the next level - However, I would be happy if at least some of the hundreds of invested hours spark some cool ideas for you and your script. If you are interested to check it out you can find the source (html,css,js and json) at: <a href="https://gist.github.com/NoxMortem/8b8a7dff1635e9e6" rel="nofollow">https://gist.github.com/NoxMortem/8b8a7dff1635e9e6</a>... It does definetly require some setup like adding characters for spells, but for a single spell and/or spirit to test stuff out it is not that much work. I would definetly set up a test campaign if it would not be such a pain in the ass (roll20 does not merely copy half the stuff a campaign is made up...) As the images on the forum are not available anymore there is no preview online anymore. Here is a private message I once sent to explain the sheets features once, it might be a good place to start to get into it. At the moment I did not even use a repository. Frontend-Translation is not even that much of a problem, I guess you can "guess" many fields just from what they are or the context when you are familiar with shadowrun. I really really wish at some point I have more time and can maintain a proper repository as well as the charactersheet. At the moment I just have the time to give you what I have as a "as it is". I hope it is at least a "bit" helpful. <a href="https://gist.github.com/anonymous/97e0dc0d81924db6" rel="nofollow">https://gist.github.com/anonymous/97e0dc0d81924db6</a>... To give you at least a few words on how to delve into that amount of poorly documented, multi-language mix code (I am pretty sure you know many of these but as I don't have the time to document and properly share everything with you and I WANT to do that better at some point at least some thoughts): Create a new campaign Select custom character sheet Add html.html Add css.css Create a new script Add Shadowrun.js Create a new Character (for a player character) Open it and fill the fields just randomly to see a bit what changes how (The arrows are toggleable open/close areas) Create a new Character (for a npc character) Open the chat view Click each button once and look what is output to the chat area -> This gives you one of the most important feedbacks (a) "[de]Dieses Feature kommt bald/Noch nicht implementiert" means "[en]Not implemented yet". This will allow you to find out what is already in there and what is not. More problematic is the stuff which is partially implemented as you wont get that feedback. Use your browser html viewer to rightlick->inspect on fields to get their name from the frontend If a button command tells you a character is not found this is also a nice debug output. It will tell you for example in your new campaign if you added a "Spell (Magie [en:Magic]->Zauber [en: Spells] or Alchemie [en:Alchemy] or Geister [en: Spirits]" that there are characters missing. As I have not gotten the approval of CGL nor neither Pegasus (german publisher) to include the Shadowrun 5 data I needed a workaround. I store all the data in characters abilities and request them from there. The easiest one to understand are Spells.A Spell needs to be a character of the name "Zauber-Spellname" where "Zauber-" is a hardcoded prefix. A Spell requires the the following abilities"Kategorie" which is category. Content type: text "Art" which is type. Content type: text "Reichweite" which is range. Content type: text "Schaden" which is damage. Content type: text "Dauer" which is duration. Content type: text. "Entzug" which is drain modifier. Content type: int as string formatted including the sign "-1" or "+0" or "-1". "Beschreibung" which is description. Content type: Text Try to add a spell and add the spellname into "Magie->Spruchzauberei" [en:Magic->Spellcasting] Try to summon a spirit (Magie->Beschwören)A Spirit needs a character with the name "Geister-Spiritname" where "Geister-" is a hardcoded prefix A spirit character needs the following abilities (proper casing required I guess)"Kon", type: signed int "Ges", type: signed int "Rea", type: signed int "Str", type: signed int "Wil", type: signed int "Log", type: signed int "Int", type: signed int "Cha", type: signed int "Edg", type: formatted string "/2" as it is a division of force by 2 for all spirits at the moment. "Ess", type: signed int "Mag", type: signed int "Ini", type: string "A-Ini", type: string "Fertigkeiten", type comma separated list of Skills "Kräfte", type comma separated list of Critter Powers "Zusätzliche-Kräfte", type comma separated list of Additional Critter Powers "Schwächen", type comma separated list of Weaknesses "Besonderheiten", type comma separated list of specialities A "Kräfte", "Schwächen" can later be directly rolled and outputed to the chat if you create character for those"Kräfte" require a character named "Kräfte-Critter Power Name" "Schwächen" require a character name "Schwächen-Critter Weakness Name" Both require the same abilities. All just a strings "Art" which is the type "Handlung" which is the action "Reichweite" which is the range "Dauer" which is duration "Beschreibung" which is description Many buttons request script functionality as I do for example roll from there to allow for proper calculations if I need to store a roll result. Especially: Spirits (Magie->Beschwören [en: Magic->Summoning]) and Alchemistic preparations. Those are really cool features, try those! The following tabs progression are approximately:Charakter (about 50% done. Missing full initiative switches. You can select the active initiative type and it will be stored into a HIDDEN initiative field (use rightclick-> inspect on the initiative fields to find it) which then can be used for scripts like GroupInitiative to roll the proper initiative for a character in AR,VR, mundane,etc. Skills (about 95% done) Combat (about 20% done, a linked token will have its condiiton monitor tracks (red->physical, blue -> mental, green -> injury mod updated. There are roll templates for some stuff but the weapons are not touched yet. I definetly will implement recoil and ammunition tracking) Magic (about 40%. Alchemistic Preparations are done, spellcasting is done, the rest is not implemented. Be sure to select a proper drain attribute under Tradition) Matrix (about 5% done. Frontend is done. Scripts are missing) Technomancer (about 5% are done. Sprites will be copied from Spirits as the code should work the same. Had this already finished but at the moment I switched to scripts which allow me to do so much more cool features (spirits are added to the character sheet on summoning, spirits. Complex Forms will be copied from Spellcasting) Social (about 5% done. Sin and License will likely be reworked once we finally are able to nest repeating sections which would make those ugly part of the sheet way better. Lifestyles has not much functionality. Be sure to try the Connections script: Add some connections. Create for one of those a character and give it some base stats and a skill named "Verhandlung" and fill its values which is the german version of "Negotiation". Now go to Ausrüstung (which is the german : Equipment) and to the subtab Bestellungen (which is the german "orders"). Add a few orders. Add a count, a price a rating and click the button (logged in as GM!). Player and GM will get chat notifications which allow them to roll for an order. If a NPC exists it will automatically use that NPCs "Verhandlung" skill otherwise it will send a button to the GM allowing him to roll by specifying the pool. Connection rating is properly added I guess) Ausrüstung (about 5%. But the descriped order feature is already pretty cool) Feel free to ask any questions. I hope I can help as I know how horrible it is to read undocumented code by someone else :D I use the following scripts but I guess they are all optional and not required dependencies (just the Shadowrun.js is required for most cool stuff): isGM shell TokenNameNumber AuraTint TrackerJacker TableExport SplitArgs GroupInitiative Randomizer Facing CharUtil TokenMod Ah and I forgot. In the Shadowrun.js checkout the function "handleInput" you should be able to get what commands the script accepts from there. Ah and also try out the extended tests which are also cool: !shadowrun --action extended-test This stores extended-test per character. You can roll, continue, discontinue and even rename them. So as repetition what to try out because it is really cool: Magie->Tradition (specify a drain attribute as the other stuff is dependant on it) Magie->Beschwören (summon spirits, outputted to the chat and even stored inside of your summoning characters sheet! Even rolls for drain) Magie->Spruchzauberei (casting spells once the characters are created. Even rolls for drain.) Magie->Alchemie (prepare preparations AND store them AND use them!) Extended Tests Order stuff Rolling skills with and without injury modifier and edge (toggleable buttons top right corner). Edge requires you to fill a proper edge attribute, injury mod requires you to initialize the injuries to 0 and fill in a proper mod (i guess as positive value). PS: Keep an eye on your script sandbox. I did not do much error checking at the moment and stuff WILL break if you try out stuff. This is on the to do list but currently every hour of worktime went into adding new features I needed on game nights.