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

[Suggestion] Allow configuration of the mod through data pack tags #688

Open
Not-February opened this issue Jul 6, 2024 · 5 comments
Open

Comments

@Not-February
Copy link

Not-February commented Jul 6, 2024

I've enjoyed this mod for a very, very long time - but I think it is perhaps at last time to admit that the config system it currently uses has become archaic by modern modded MC standards.

I think it would be a lot easier for end users/pack developers to manage Reliquary in a larger modded ecosystem with datapacks than it is to use the current default configs.

Plus, with conditional data files, other mods could potentially add their own optional built-in support for Reliquary much more easily. This ranges from QOL to avoiding actual game-crashing problems like #684 brings up.

I don't know how hard it would be to convert everything over to this kind of system, but it would be nice! I'm not against the config option sticking around for those who prefer it.

Things currently in the config that would be easier to configure with item/entity/block tags:

  • Mob Charm entity blacklist
  • Interdiction Torch entity/projectile blacklists
  • Seeker shot entity blacklist
  • Rod of Lyssa entity blacklist
  • Rending Gale pushable entity/projectile blacklists
  • Valid torches for the Lantern of Paranoia/Sojourner Staff
  • Touchstone of Midas golden items
  • Destruction Catalyst mundane blocks
  • Apothecary Cauldron heat sources
@Not-February Not-February changed the title [Suggestion] Allow configuration of the mod through data pack item/entity tags [Suggestion] Allow configuration of the mod through data pack tags Jul 6, 2024
@Somdudewillson
Copy link

Seconding this.

@P3pp3rF1y
Copy link
Owner

Sounds like a good suggestion, I would just not agree with converting configs to tags, but rather having tags as another option. I am pretty sure that if you asked a regular player to configure anything with datapacks they wouldn't know how, but they could still just go into config text file and make changes based on example mentioned in there.
So I would rather see it as an addition that may be easier for modpack developers in some cases (I still would expect that if they are making minor adjustments they are not going to use datapacks) and as you suggested would allow other devs to tag their entities / items / blocks for automatic compatibility.

@Somdudewillson
Copy link

Another potential enhancement would be to convert some of those (primarily the Touchstone of Midas) into using full-on JSON recipes, which would allow for easier compatibility with mods that have multiple items share one ID or otherwise store important information in NBT (i.e. Tinker's Construct).

@P3pp3rF1y
Copy link
Owner

@Somdudewillson what do you mean with json recipe for touchstone of Midas? Like it already is a json or you mean having some way of defining that an item with specific nbt can be repaired by it vs not?

@Somdudewillson
Copy link

@P3pp3rF1y I am suggesting that the Touchstone of Midas could operate off of specific recipes defined in JSON the same way as any other recipe type (With one default recipe that uses the tag, and a bit of code to add configured items to said tag). I am suggesting this in order to take advantage of the increased specificity available to recipes (i.e. define that an item with only specific NBT can be repaired), as well as to (potentially) open up further config options like configuring some items to be more expensive to repair.

However, any method that would allow items with specific NBT to be repaired would be nice.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants