Add Netherite Colossal Chests as new top tier - #207
Open
rubensworks wants to merge 5 commits into
Open
Conversation
Netherite becomes the new highest chest material, above obsidian: * Inventory multiplier of 5 (obsidian and diamond are 4) * Blast-resistant, like obsidian * Top of the chest upgrade/downgrade tool chain Chest walls are obtained by upgrading diamond chest walls at a smithing table with netherite scrap. The netherite upgrade smithing template is deliberately not used as the template ingredient, since the smithing menu consumes all three input slots, which would cost one template per wall. A gold ingot is used instead, mirroring the scrap plus gold cost of a netherite ingot. Cores and interfaces are crafted from netherite walls just like the other materials. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UQhNuW5hjBYkkuub4MKT3Z
The first pass recoloured the iron textures onto a netherite ramp, which kept iron's clean, flat surface. Vanilla's block of netherite is instead mottled, with irregular brown and neutral patches. The surface roughness is now taken from the interior of the vanilla netherite block texture, as a local-average-subtracted offset field so only its mottling carries over, not its border or overall shading. The field is mirrored when sampled, so it tiles seamlessly. All four textures are also snapped to a single shared 14-colour palette, matching how few colours Minecraft textures normally use (vanilla netherite uses 10) and keeping the material consistent across the wall, core, interface and chest model. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UQhNuW5hjBYkkuub4MKT3Z
Three problems with the previous textures: * They still read as their own material rather than as netherite. They now use the palette of vanilla's block of netherite directly, extended only with darker shades for the recessed detail, which sits below anything on the vanilla block. The mottling is also taken at full scale now instead of high-passed, since the larger blotches are most of what makes netherite look rough, and is applied as a multiplier so the frame around each block and the recessed detail keep their shape. * The wall and core had a recognisable artifact towards the bottom right. The mottling was sampled mirrored, which made rows 10 and 13 and columns 11 and 12 exact duplicates. Patches of the vanilla mottling are now scattered across the texture, each independently placed and oriented, so no row, column or patch repeats. * The chest model z-fought when closed. The lid's underside and the base's top face are coplanar at that point and so must be textured identically, as they are in every other chest texture here. The mottling broke that, and the two faces are now explicitly kept in sync. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UQhNuW5hjBYkkuub4MKT3Z
Two things made the bottom left stand out. The mottling was applied at full strength to the dark frame around each block as well as to the lit surface, so a dark patch landing there punched a visible notch out of the frame: it dropped to a luminance of 11 where the rest of the frame sat at 42. And because each 4x4 patch was copied across with its own average brightness intact, a patch darker than its neighbours read as a block rather than as grain. The mottling now fades out on everything darker than the lit surface, so the frame and the recessed detail stay continuous, and most of each patch's own average is taken back out of it, so no patch lands markedly darker or lighter than the ones around it. The frame is a flat two shades again, and the worst local deviation on the wall drops from -19 to +9, against -22 on the vanilla block itself. The darker shades added for the recessed detail are also no longer reachable from the surface, which was letting the mottling punch pinholes darker than netherite ever gets. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UQhNuW5hjBYkkuub4MKT3Z
The chest texture was carrying the same mottling as the blocks, and its faces are far smaller: only fourteen pixels across, each with a one pixel dark rim and a one pixel light rim. At the strength the blocks use the mottling swamped both rims, leaving faces with no readable border and an interior spanning a luminance of 32 to 88. The chest now takes much less mottling than the blocks, and its greys are mapped onto vanilla netherite's own levels rather than the blocks' plain ramp. Every face is then given the two borders vanilla's block has, lit from the top left: a dark rim at 53 turning to 32 along the bottom and right edges, and a bright inner rim at 88 turning to 75. Interiors now sit between 65 and 75 with a standard deviation under 5, against 9.8 on the vanilla block. The block textures are untouched, and the lid underside and base top stay identical so the closed chest still does not z-fight. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UQhNuW5hjBYkkuub4MKT3Z
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.
Closes #168
Adds netherite as a new chest material, sitting above obsidian as the new top tier.
Behaviour
5(diamond and obsidian are both4), configurable viachestInventoryMaterialFactorNetherite.ItemUpgradeToolwalksChestMaterial.VALUESby ordinal, netherite automatically becomes the final upgrade step and the first downgrade step.metalVariantsconfig option, whose comment was updated accordingly.Recipes
As suggested in the issue, netherite chest walls are made by upgrading diamond chest walls at a smithing table with netherite scrap. Cores and interfaces are then crafted from netherite walls exactly like the other materials.
One deviation from the issue: the recipe does not use
minecraft:netherite_upgrade_smithing_templateas its template ingredient.SmithingMenushrinks all three input slots on craft, so that would consume one smithing template per chest wall — prohibitive when a 5×5×5 chest needs ~98 walls. In 1.21.1 thetemplatefield ofsmithing_transformis still mandatory (it only became optional in later versions), so a gold ingot is used instead, mirroring the scrap + gold cost of a vanilla netherite ingot and keeping the upgrade "not too tough" as the issue asked.Recipes are added for all three loaders, with the appropriate
c:/forge:tag conventions per loader.Assets
Blockstates, block/item models, loot tables, block tag entries, atlas entries and lang keys mirror the existing materials. The three block textures and the chest entity texture were generated by recolouring the grayscale iron textures — the same relationship the existing copper/gold/silver textures have to iron — onto a dark, desaturated netherite ramp, preserving alpha and the chest model's black outlines.
Tests
Added game tests covering the new tier:
base/netheriteandsize/netheriteadvancements (positive and negative)./gradlew buildand./gradlew runGameTestServerboth pass — 94/94 required game tests green on Fabric, Forge and NeoForge.🤖 Generated with Claude Code
https://claude.ai/code/session_01UQhNuW5hjBYkkuub4MKT3Z
Generated by Claude Code