kakaroto / Beyond20

D&D Beyond Character Sheet Integration in Roll20
GNU General Public License v3.0
497 stars 145 forks source link

Adding support for Roleplay.tv #955

Closed ClaudeSutterlin closed 2 years ago

ClaudeSutterlin commented 2 years ago

We added support for Roleplay.tv!

We made minimal changes to the Beyond20 codebase to allow for dice rolls and health updates to sync to the Roleplay.tv platform. Thanks for creating and supporting this extension.

Aeristoka commented 2 years ago

https://beyond20.here-for-more.info/faq#can-you-add-support-for-insert-new-vtt-name

I would not anticipate this getting merged. Certainly neat, and you can maintain this on your side for your use, but please read on that link.

Final decision is with @kakaroto, who is currently out on vacation.

ClaudeSutterlin commented 2 years ago

That makes sense and I totally get it. We'd love to be maintainers for those portions and for our users, but we can just publish our fork separately if that's what @kakaroto prefers. We sponsored the project at a very basic level and would expand that if we become a burden. Just let me know, thanks.

kakaroto commented 2 years ago

Hi @ClaudeSutterlin, thanks for the contribution! As discussed with @Aeristoka, unfortunately, I won't be merging this PR because of the problem explained in the FAQ and we don't want to add more complexity to the extension than needed.

That being said, I can see that your PR doesn't actually add any support for interacting with roleplay.tv but only sends DOM messages to it, and I assume that you made roleplay.tv itself support receiving those messages and acting upon them. That's really great, because it means it should work without needing to add any explicit support for your website. If you look at issue #833, I already do have a plan for sending those kinds of events to any website, and you can also see in this commit https://github.com/kakaroto/Beyond20/commit/54037c7065861140c764019a92888b650973e766 that I send the parsed roll requests to the DOM, unfortunately they are only getting sent to the DDB site itself at the moment, and what's remaining in #833 is to basically have a setting where a user could add a list of domains in which Beyond20 would be loaded, in which case, it would be able to prompt the user to give permission to load on that site (like we're doing now with Foundry VTT, see #179).

If you want to work towards that and contribute that feature, that's one that I'd be glad to merge, basically :

This is a planned feature, if you want to contribute it, great, I'll happily review and merge it, if not, then I'll probably implement it myself soon(-ish) anyway! At that point, the idea is that any website could directly add support for Beyond20, or separate extensions could add support for beyond20, so you could release an extension which would work only on roleplay.tv and which would depend on Beyond20 and it would just listen to the DOM events and act on them without needing to duplicate all the D&D Beyond side of things (avoids possible conflicts).

I hope that helps, Thanks again!