Bluefissure / Dalamud-OBS

A Dalamud plugin to control obs
11 stars 11 forks source link

Ability to send custom JSON payloads to OBS that are triggered based off chat log. #28

Closed Rietty closed 1 month ago

Rietty commented 1 month ago

So! I think this plugin is great, thank you so much for it. I believe a small enhancement would really help make it a lot more powerful/extendable for a wide variety of situations. The idea I had in mind is essentially as follows:

If you take a look at the obs-websocket docs/protocol you can see that you can send it a JSON input and it'll manipulate OBS to do many many things.

My idea is essentially allow us to have a simple way to designate a JSON to send in (doesn't need to make it or anything, just send in what we paste in) based off some line in the chat log/echo text.

What this allows us to do is control OBS via macros in-game and have it respond. It can be useful for stuff like Job Changes, or different OBS set-ups for when we do different content or any number of possibilities.

Triggernometry has something similar which is nice, but would be better if we can just do it without relying on that.

image

Thank you for consideration!

Bluefissure commented 1 month ago

I understand your idea, but developing a universal trigger system is not the intention of this project. Since Triggernometry already implements a similar functionality, there's no need to duplicate the effort. As you mentioned, use cases like changing layouts based on jobs or controlling via macro commands are excellent, but I prefer to implement them in a way that doesn't require users to go through complex configurations. Instead, I aim for functionalities that users can utilize with just a few clicks.

If you could provide detailed explanations for each requirement and submit separate issues for them, I can work on them based on their priority and difficulty when I have time. Of course, if you have the development capability, you're also very welcome to submit a PR for this plugin.

Thank you!

Rietty commented 1 month ago

I understand your idea, but developing a universal trigger system is not the intention of this project.

Understandable!

As you mentioned, use cases like changing layouts based on jobs or controlling via macro commands are excellent, but I prefer to implement them in a way that doesn't require users to go through complex configurations.

That makes sense. I'll consider what I need and a good way to accomplish it when I have time. I will submit a PR and you can decide if it is a good way to approach the problem/ideas.