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

D&D 5e APIs

I have written a couple of APIs to help me run my campaigns, but with the WotC 5e license I'm not sure if I can post them since they have a ton of the information from the PHB within them. The first is a spellbook importer that will add all (or the specified level) of a classes spells into the spell book. It only fills in the basic information + description, but that in itself speeds up caster character creation a ton. Obviously, this means that it has all of the spell information embedded into the script. Is it ok to post? The second is a Loot Helper. It contains all of the random loot tables from the PHB so that macros can be made to easily request and display loot. Is it ok to post? Thanks, Andrew
I'm no expert, so if anybody else knows better feel free to say so. I'd love it if you could share those scripts. ...But the answer is probably no. If the script includes the actual information, and that information could therefore be retrieved by someone else, I'm pretty sure it would be in breach of the copyright.
If you own the books, shouldn't you be able to use things like this? :(
I am just a player, but I think the problem is, Dan, that if Knox makes the information publicly available, s/he could be offering it to people without the books. As someone with the books, I feel justified in putting the information into my private game, because my players all play around my table and have access to the information while they are in my house anyway. I have the right to loan my books to my players around the table of my house. If a stranger on the internet says they want my files, I have no proof that they have bought the books. Don't get me wrong, I'm sad not to have access to them, too. But I don't think it would be safe for Knox or roll20 to post them as-is. I would love to see a version that had the loot & spell information taken out (with notes for where to plug information in so I could recreate them privately within my game) but that's even more work for Knox that I wouldn't ask.
The loot helper definitely contains information within it that is only available in the DMG. However, the basic rules for 5e include many (but not all) of the spell descriptions, so its possible that it might be ok to publish the Spellbook Importer, or would I have to cull out the spells that are not listed in the basic rules?
can you find a way to import from an external document of some kind?. then leave it up to the DM to create said document for themselves using a template you created. in that way it really wouldnt be any different than using a photocopier to create handouts for your own table at home. The DM would need to have a copy of <insert book name here> in order to create the external doc.
I haven't seen any API that allows me to accept input from the outside world in any way other than thru chat messages, and this would be way too much text to put in a chat message. If there is one, then I'm all ears...
copy to a handout, import from there.
1427149939

Edited 1427149995
to expand on that statement: write the script to let people pull a list of spells from a handout, so long as its formatted properly, (I would suggest making sure it follows standard statblock formatting, a lot of people are familiar with that) and make it available from there. the handouts will have to be made by each person to include in their game, but gives the added benefit of letting them pick and choose which spells belong in their game. (I would add as each player learnt a new spell to add - in fact, I would make them do the work, so make sure that the GM can set permissions on who can use this script when it goes public. you would need to decide if a spell was permanently recorded in a handout (with folders now, thats definately possible and easy to manage) or if it keeps them all in state. I would recommend having it actually use the handout as its medium, and keeping your state clear, as spells are not commonly accessed, and if the API goes down, then they are still available as a handout at least. It would mean that your script has the capability to hook the information from each handout and use it for your scripts as you need it, and that players can access it for reference, if need be. You can also write a smaller one-time script to create and print out what you've already done to handouts, so that you don't have to reformat your work to convert it. all in all, I would say (not that I'm a lawyer or a programmer) that this is probably the best and easiest solution to not lose what you've already done, and to make your work available to the public as well. (an option to copy a spell from the handout to acoba's character sheet spell section would also be awesome, if thats even possible with repeating sections.
Excellent Idea Michael. Thank you. I will work on that.
While Im concerned about API asd WotC playing fast and loose with the copyright laws. Same as the rest of you. I think if we had a website with all our scripts not on roll 20 I doubt they would spend the time looking for it and prosecuting
but even simply discussing such a thing here on their forums open the door to legal proceedings against roll20, cause lawyers are, well, lawyers. so could we perhaps refrain from discussing how we could theoretically break copyright law here?
Michael H. said: but even simply discussing such a thing here on their forums open the door to legal proceedings against roll20, cause lawyers are, well, lawyers. so could we perhaps refrain from discussing how we could theoretically break copyright law here? Agreed. Michael's above idea is probably the best way to go. The main issue is the lack of a digital form of the data we want users to be able include, so far as I know. That means users need to manually digitise the data, creating a large front load to the way someone would use the script. On the flip side, it should make adding homebrewed spells easier. I don't know enough about programming to give much practical advice either. But I've had an idea while writing this. If you can find a way to extract data from the 5e sheet spellbook you would have a vehicle to save users the effort of repeating spell entry. It also gives you a pre-made way to define the formatting, which may (I can't say with certainty, as I don't know how these things are structured) make it simpler than asking players to add it all to the handout. I take it that given your tool puts things into the spellbook that you are relatively familiar with it's format. Another thing that could cut down on the requirements on the user would be providing as much of the work you've already done as we can without leaving the Public content. In aid of this, I have made a list of spells that ARE in the players handbook but ARE NOT in the BASIC handbook. Shown below That's just under two thirds of the spells in the PHB, but if you want to go ahead and expunge them I'd be happy to see the end product. If nothing else it would make a good demonstration of what your script could do, perhaps get some other API scripters on board. Alarm Alter Self Animal Friendship Animal Messenger Animal Shapes Animate Dead Animate Objects Antilife Shell Antipathy/Sympathy Arcane Gate Armor of Agathys Arms of Hadar Aura of Life Aura of Purity Aura of Vitality Awaken Bane Banishing Smite Banishment Barkskin Beast Sense Bestow Curse Bigby's Hand Blade Ward Blight Blinding Smite Blindness/Deafness Blink Branding Smite Call Lightning Calm Emotions Chill Touch Chromatic Orb Circle of Death Circle of Power Clairvoyance Clone Cloud of Daggers Cloudkill Color Spray Commune with Nature Compelled Duel Compulsion Confusion Conjure Animals Conjure Barrage Conjure Celestial Conjure Elemental Conjure Fey Conjure Minor Elementals Conjure Volley Conjure Woodland Beings Contact Other Plane Contagion Contingency Continual Flame Control Water Control Weather Cordon of Arrows Create Food and Water Create or Destroy Water Create Undead Creation Crown of Madness Crusader's Mantle Darkvision Daylight Demiplane Destructive Smite/Wave? Destructive Wave Detect Evil and Good Detect Poison and Disease Detect Thoughts Dispel Evil and Good Dissonant Whispers Divine Favor Divine Word Dominate Beast Drawmij's Instant Summons Druidcraft Eldritch Blast Elemental Weapon Enhance Ability Enlarge/Reduce Ensnaring Strike Entangle Enthrall Etheralness Evard's Black Tentacles Expeditious Retreat Eyebite Fabricate Faerie Fire False Life Fear Feather Fall Feeblemind Feign Death Find Familiar Find Steed Find Traps Fire Shield Flame Blade Flesh to Stone Fog Cloud Forbiddance Forcecage Friends Gaseous Form Geas Gentle Repose Giant Insect Glibness Glyph of Warding Goodberry Grasping Vine Grease Guards and Wards Gust of Wind Hail of Thorns Hallow Hallucinatory Terrain Heat Metal Hellish Rebuke Heroes' Feast Heroism Hex Hold Monster Hunger of Hadar Hunter's Mark Hypnotic Pattern Illusory Script Incendiary Cloud Insect Plague Jump Legend Lore Leomund's Secret Chest Leomund's Tiny Hut Lightning Arrow Locate Animals or Plants Locate Object Longstrider Magic Circle Magic Jar Magic Mouth Meld into Stone Melf's Acid Arrow Mending Message Mind Blank Mirage Arcane Mirrage Arcane Mirror Image Mislead Modify Memory Moonbeam Mordenkainen's Faithful Hound Mordenkainen's Magnificent Mansion Mordenkainen's Private Sanctum Mordenkainen's Sword Move Earth Nondetection Nystul's Magic Aura Otiluke's Freezing Sphere Otiluke's Resilient Sphere Otto's Irresistible Dance Pass without Trace Phantasmal Force Phantasmal Killer Phantom Steed Planar Ally Planar Binding Plane Shift Plant Growth Polymorph Power Word Heal Prismatic Spray Prismatic Wall Produce Flame Programmed Illusion Project Image Protection from Evil and Good Protection from Poison Purify Food and Drink Rary's Telepathic Bond Ray of Enfeeblement Ray of Sickness Reincarnate Reverse Gravity Rope Trick Scorching Ray Scrying Searing Smite See Invisibility Seeming Sending Sequester Shapechange Shillelagh Simulacrum Sleet Storm Slow Speak with Animals Speak with Plants Spike Growth Staggering Smite Stinking Cloud Stone Shape Storm of Vengeance Sunbeam Swift Quiver Symbol Tasha's Hideous Laughter Telekinesis Telepathy Teleportation Circle Tenser's Floating Disk Thorn Whip Thunderous Smite Tongues Transport via Plants Trap the Soul Tree Stride True Polymorph True Strike Tsunami Unseen Servant Vampiric Touch Vicious Mockery Wall of Force Wall of Ice Wall of Thorns Water Breathing Water Walk Weird Wind Walk Wind Wall Wish Witch Bolt Word of Recall Wrathful Smite Zone of Truth
I just finished entering in every spell into handouts by hand, well cut and paste, and it took a good week, on and off. But they are in there! We can't share handouts but if you got this script going it would make entering them in to the character sheet Spell Book much much easier.
If you're a mentor, it's possible to share handouts via the api. :D
Well I would need mentor to use the script anyway ;)