Repository navigation
Conversation
config/polydecorations.json sets every feature to true, false or "hard". A hard disabled feature registers none of its blocks, items, block entities or entities, requests no Polymer block states (trapdoor/campfire states are only requested if a feature using them is registered) and its vanilla behaviour mixins aren't applied. With false everything stays registered, so existing worlds keep their blocks, but the feature can't be obtained anymore. Missing keys default to true.
Generated recipes and their advancements get a polydecorations:feature load condition, so they only load if the feature is enabled. Loot tables load as long as the feature isn't hard disabled. The feature is found by entry name the same way as assets. Tag entries of this mod are optional, so hard disabled blocks and items don't break their tags.
A resource converter drops models, textures and item definitions of hard disabled features and removes their translations, sounds, gui font glyphs and atlas palette entries. Sign post models of modded woods are now written with sign posts instead of statues, so they don't depend on statues being registered.
Owner
|
Yeah no |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
config/polydecorations.json, which lets server owners turn off individual features without needing a datapack.Each feature can be set to:
true- enabled (default)false- recipes are removed, but blocks and items stay registered, so existing worlds keep them.wall_lanternsandfence_leadshave no recipes, so withfalsetheir interaction stops working instead."hard"- removed completely. No blocks, items, block entities or entities are registered, no Polymer block states are requested, behaviour mixins aren't applied and assets are left out of the resource pack.{ "features": { "bench": false, "statues": "hard" } }The file is created with everything enabled on first start, and missing keys default to
true, so nothing changes unless it's edited.How it works
DecorationsFeaturelists the features with name patterns that match their assets, recipes, loot tables and translation keys.polydecorations:featureload condition. Loot tables get the same condition with"registered": true, so they're only dropped for hard disabled features. Tag entries of this mod are now optional.Testing
falsedisables wall lantern placement (with and without sneaking), fence leads and the recipe book entries, and that they all work withtrue.Unrelated, but I noticed
WallAttachedLanternBlockhas no default state set, so/setblockplaces it waterlogged.