GraveStones Bug: Elytra Loss With Enchantments

by Alex Johnson 47 views

Experiencing issues with the GraveStones mod and losing your enchanted elytra? You're not alone! This article dives into a specific bug reported by players where enchanted elytra equipped in the accessories slot are not being recovered from gravestones, leading to their disappearance. We'll explore the details of the bug, how to reproduce it, expected behavior, and provide a comprehensive analysis of the error reports and additional context.

Understanding the GraveStones Mod Bug

This bug specifically affects players using the GraveStones mod in conjunction with an accessories mod. The core issue arises when an enchanted elytra is placed in an accessory slot (like a cape slot) and the player dies. Instead of the gravestone correctly storing and allowing retrieval of the elytra, it appears to be deleted along with all other accessories. This can be incredibly frustrating, especially after investing time and resources into enchanting your gear.

Key Takeaway: The bug seems to be triggered by the combination of an enchanted elytra, its placement in an accessory slot, and the GraveStones mod's interaction with the accessories mod.

Reproducing the Bug: A Step-by-Step Guide

To better understand and potentially find a fix for this issue, it's crucial to reproduce the bug consistently. Here's a step-by-step guide on how to replicate the problem:

  1. Equip Enchanted Elytra: Obtain an elytra and enchant it using an enchanting table or enchanted books. Any enchantment seems to trigger the bug, so try various enchantments like Unbreaking, Mending, or Protection.
  2. Place in Accessory Slot: Use an accessories mod that provides extra equipment slots (such as a cape slot). Place the enchanted elytra in this accessory slot. Ensure the mod is compatible with the GraveStones mod.
  3. Meet Your Demise: Find a way to die in the game. This could be through falling, combat, or any other means that results in death and the creation of a gravestone.
  4. Attempt Recovery: Locate your gravestone and attempt to recover your items. If the bug is present, the enchanted elytra and potentially other accessories will be missing from the gravestone's inventory.

By following these steps, you can confirm if you're experiencing the same bug and provide valuable information for developers to address the issue.

Expected Behavior vs. Actual Behavior

In an ideal scenario, the GraveStones mod should preserve all equipped items, including enchanted elytra in accessory slots, upon death. The expected behavior is that when a player dies, a gravestone is generated containing all the player's inventory and equipped items, allowing for easy retrieval.

However, the actual behavior observed is that the enchanted elytra placed in the accessory slot is not being saved in the gravestone. This discrepancy between expected and actual behavior clearly indicates a bug in the interaction between the GraveStones mod and the accessories mod when dealing with enchanted elytra.

Visual Evidence: Screenshots

The user who reported this bug provided helpful screenshots demonstrating the issue. These screenshots show the player's inventory and accessory slots before death, as well as the contents of the gravestone after death. The absence of the enchanted elytra in the gravestone inventory visually confirms the bug's occurrence.

The screenshots also help rule out other potential causes, such as the player misplacing the elytra or a general inventory loss bug. The clear visual evidence strengthens the case for a specific issue related to enchanted elytra in accessory slots.

Version Information: Pinpointing the Problem

Providing detailed version information is crucial when reporting bugs. The user has helpfully included the following:

  • Minecraft Version: 1.21.10
  • Fabric Version: 0.18.0 (also tested with 0.17.3)
  • Mod Version: gravestones-1.2.3+1.21.9+A
  • Mod List:
    • accessories-fabric-1.4.0-beta+1.21.10
    • accessorify-2.3.5+1.21.10
    • fabric-api-0.138.3+1.21.10
    • fabric-language-kotlin-1.13.7+kotlin.2.2.21
    • fzzy_config-0.7.3+1.21.9
    • modmenu-16.0.0-rc.1
    • owo-lib-0.12.24+1.21.9
    • pneumonocore-1.2.0+1.21.9+B

This information allows developers to identify potential compatibility issues between specific versions of the mods involved. It also helps narrow down the scope of the bug and potentially pinpoint the exact cause. The fact that the bug was reproduced across different Fabric versions (0.18.0 and 0.17.3) suggests the issue may lie within the GraveStones mod or its interaction with the accessories mod itself, rather than a Fabric-specific problem.

Diving into the Error Report

The error report provided offers valuable clues about the underlying cause of the bug. The key line in the error report is:

[23:49:49] [Server thread/ERROR]: Gravestones Data Type 'gravestones:accessories' failed to write data:
java.lang.IllegalStateException: Can't access registry ResourceKey[minecraft:root / minecraft:enchantment]

This error message suggests that the GraveStones mod is having trouble accessing the enchantment registry when trying to save the accessories data. This could indicate a problem with how the mod is serializing or deserializing enchanted items, specifically when they are in accessory slots.

The stack trace provides further context, highlighting the specific methods and classes involved in the error. It points to issues within the net.pneumono.gravestones.compat.AccessoriesDataType class, which likely handles compatibility with accessories mods. This reinforces the idea that the bug stems from the interaction between GraveStones and the specific accessories mod being used.

Additional Context: Similar Issues with Other Mods

The user also mentions a similar issue encountered previously with the Traveler's Backpack mod. In that case, an enchanted book inside the backpack, when equipped in the