Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mod Exclusivity [Tweaks/TP] #309

Open
rocket0634 opened this issue Dec 11, 2018 · 6 comments
Open

Mod Exclusivity [Tweaks/TP] #309

rocket0634 opened this issue Dec 11, 2018 · 6 comments
Labels
enhancement Changing the intended behavior. major A big issue to tackle.

Comments

@rocket0634
Copy link
Contributor

With the recent post of adding Tweaks-only features to TP, I wanted to bring up an idea that was brought up early in Tweaks development that's been up in the air of rather or not we're going to go through with it or not.
The idea is to move features shared between Twitch Plays and Tweaks into Tweaks directly, and having Tweaks handle most of the code TP would need to run these modes. The three features I'm aware of right now that have been considered are the Bomb HUD (including bomb edgework), Time mode, and Zen mode.
TP would need to have some individual code for these features, such as point values, but otherwise it should be possible to keep it integrated in one place, as I'd imagine people using Twitch Plays would also have Tweaks enabled.

One thing I've been thinking of in regards to this is something similar to a plugin system, so that the same base code can be bundled with both Tweaks and Twitch Plays. When there's an update, it can be pushed to Tweaks steam entry, and the Tweaks entry can overwrite the TP version as long as it was compatible. (Although, if such a system was implemented, both versions would probably be updated simultaneously.)

This is a heavily unimportant suggestion, but just one I wanted to leave here so that the idea isn't lost or forgotten.

@samfundev samfundev added enhancement Changing the intended behavior. major A big issue to tackle. labels Dec 11, 2018
@samfundev
Copy link
Owner

samfundev commented Dec 15, 2018

Related: samfundev/KTANE-Mods#7

@red031000
Copy link
Contributor

personally I feel that tweaks should give way to TP whenever there's a conflict, as it makes it easier to add TP specific features in TP, rather than having tweaks have a TP specific handler and a non-tp handler

@samfundev
Copy link
Owner

@red031000 Tweaks already does that. But the problem is we have a lot of overlapping code and not many people want to get all of TP and just want some of TP's features.

@red031000
Copy link
Contributor

that's fair, but if that's the case, I believe that tweaks should be listed as a dependency for TP if it's going to completely replacce the UI system, as TP isn't really playable without it

@rocket0634
Copy link
Contributor Author

@red031000 My thought process here is that most TP users would use Tweaks anyway, for the Better Case Selector at the very least. The only features that I was seeing to move were Time and Zen mode, and quite possibly the Bomb HUD as well.

Although I think that these features could be put into a dll generated by Tweaks, but included in the TP package in case Tweaks isn't installed, and when Tweaks is installed, it just overwrites that dll with the one included in the mod. But I wouldn't know how difficult that would be to manage. Not that saying its required isn't an option as well.

@red031000
Copy link
Contributor

while I do see the advantages of not having code duplications etc, I can't help but feel that this will make it harder to maintain the elements that are moved over to tweaks, as we would need a whole new system to get the values required from tweaks, and part of the codebase would be split across two repositories

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Changing the intended behavior. major A big issue to tackle.
Projects
None yet
Development

No branches or pull requests

3 participants