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

[Help] Ccreating a way to enable hombrew compendiums for D&D 5e. Input needed!

I've just started work on a project that would enable GMs and players to essentially have homebrew compendium addons for D&D 5e. I haven't found a way to directly add items to an individual user's Roll20 Compendium (nor do I think Roll20 would allow such a thing) but I have discovered a possible method for allowing homebrew items to be easily made, shared, and added to a Roll20 campaign. The whole project is split up into three separate programs: Homebrew Compendium Creator (Desktop Program): This allows GMs to create their own compendium from scratch, making races, classes, spells, feats, backgrounds, monsters, and items. Their homebrew compendium can then be exported as a series of JSON files for use in the second program. Homebrew Character Creator (Desktop Program): This would be similar to the Charactermancer in that it would guide a user through the character creation process. The choices available during chargen is dependent on what's in the JSON files created by the first program. Once the user has a character made, their choices get exported as a single JSON file. Ideally, this program would also allow for a user to level up their current character, outputting a similar JSON with their additions. Character Importer (Roll20 Mod): This mod uses the JSON file created by the second program to create character sheets. It would also take JSONs created by the first program to generate monsters. Ideally, it would also take in smaller JSONs made by the first program to allow things like items or spells to be added to individual sheets, and allow for character level-ups as mentioned previously. While this seemed like the hardest step, I've thankfully already found a method that can create character sheets from JSONs. The reason the first two programs are desktop programs is because that's what I'm comfortable with. I realize the most ideal medium would be a website to increase accessibility, but I have little to no experience with web development, so I'm sticking with desktop programs to try to make development easier for myself. I've also considered trying to make them mods, too, but I feel the processes I've outlined are too UI heavy to work in a simple chat-based JS program running on Roll20. I've started scaffolding UI for the first program and have basic navigation working. My intention is to test out this entire pipeline by seeing if I can get a Feat made in program 1 onto a character sheet using the mod. That said, I'd like a bit of input on this idea before I get too deep into it: Does Roll20 own the terms Compendium and Charactermancer? Could I use these terms for these programs, or should I make more generic names for them? Would this potentially infringe on anything owned by WotC? By default, these programs would not contain any information, though in the end, I'd like to make a pre-built compendium for use in program 1 featuring everything in the SRD as a baseline. What would a homebrew compendium creator need so that every major aspect of the game could be homebrewed? So far I have the following planned: races and subraces, classes and subclasses, monsters, spells, feats, backgrounds, items (including magic items), and actions and traits shared across all monsters. I'd love any advice on making a project like this. Input, feature ideas, things to avoid- all of that would be greatly appreciated. I don't intend on stepping on any toes with this project. I know Roll20 has made an announcement about enabling custom compendiums last year, and that the task is monumental and incredibly difficult to achieve. The project I'm aiming to create here is meant to be a temporary workaround for D&D 5e until they're able to get such a feature implemented. Finally, I'd like to note that there is no guarantee that I see this project to the end. I realize the scope is massive and I've only just started, and have yet to uncover what major roadblocks may exist, if any. If this ever happens, I would try to make my progress open source to allow others to continue the work. For now, I'd like to keep it under wraps to see what everyone says about this project, and especially to see if it's viable from a software and legal standpoint.
If this is something you as an individual are undertaking, you will not be able to compete with the development teams in Roll20 and on D&DBeyond/WotC. On top of that, the fact you're focusing on a desktop programme instead of a web application will reduce your audience massively. As a developer myself, I'd say go spend the time learning web development as a skill to add to your resume, then if you really feel like you want to undertake this project you can at least provide it in a way that the majority of users would prefer to use. You're trying to rewrite the wheel to compete against people driving automatic cars here, so I'd take a step back and think about what you're trying to achieve and why. Having a good project to work on to improve your skills can be great, but I wouldn't go into it aiming to compete with the current big names, especially as a solo developer. If you're still keen to do this, focus on making a MVP prototype first and putting that into the hands of some testers and go from there.
1686062790
GiGs
Pro
Sheet Author
API Scripter
I don't use 5e so cant give much advice there, but can take a stab at answering some of your questions. First and foremost, for the Roll20 side of the process, you are going to have to have a Pro level subscription, and everyone who uses your porgrams will also need to be playing in game where the GM is a Pro subscriber. That's going to cut down your userbase a lot. Compenium and Charactermaner have specific meanings on Roll20, with a certain way of working. Your creations will not do the same thing, so you should use different terms. I don't know if Roll20 own those terms but I wouldnt be surprised in Roll20 claimed those two words and froze you out of Roll20 for using them, Just another  reason to come up with your own terms. Roll20 does allow Mod scrips (which you have to be a pro subscriber to use as noted above) that duplicate some D&D functionality. So as long as you don't include any protected by WOTC, I don't think you'd be infringing. i dont think there's a way to do this, sorry. i think this part of your project is dead in the water. You can create a script that uses JSON contents to create a character, you can also create a script which takes JSON input and adds an item or whatever to a character - if careful (you might be duplicating existing work and I'd recommend having a look at chatSetAttrs). If you have a Pro subscription, I think the desktop PC parts are the trickiest parts of the project and i doubt many people here will be able to help you with that.
I've quoted both Joshua's and Gigs' replies but Roll20 seems to not be displaying them. Hopefully this reply gets through; I'll summarize what I said in those past two replies. Reply to Joshua: While I agree that making a website would allow more people to use the program, I ultimately am creating this program to suit my own needs and to learn MVVM. Maximizing the number of people that can use this program is not a major concern of mine. I recognize that a lot of people who exclusively use Roll20 want the ability to add their own homebrew items to the Compendium, so the proposed project is meant to be a workaround to that until Roll20 is able to create their own system-agnostic homebrew creator. I know DNDBeyond have their own systems for creating homebrew items, but these items cannot translate to Roll20 easily, and their homebrew creators lack the ability to create custom classes. For those reasons, I don't feel I'm reinventing the wheel while people are driving electric cars. It's more like I'm adding flames to an already great car to make it cooler. Additionally, I'm not intending on this project being its own platform or VTT. This project is in service of Roll20 and only works with Roll20 as a way to easily add homebrew items to existing games. I have no intention of putting this project behind a paywall. Reply to Gigs: You make a very good point about the naming, and I'll most likely resort to more generic, descriptive titles for the programs. In regards to the mod, I'm happy to say the project is not dead in the water. I, too, thought it was impossible, but I've found a script that can import DNDBeyond character sheets as JSONs into Roll20 and verified that it worked as intended. The script is a little old at this point and doesn't seem to work 100%, so I intend on spiffing it up a bit and modifying it to meet the needs of this project. Thank you both for your replies, they're very helpful. I'm very excited about this project and hope to see it to fruition!