Skip to content

Conversation

@Knightmore
Copy link
Contributor

No description provided.

@github-actions github-actions bot added the requested changes Changes requested through comments label Dec 30, 2025
@github-actions github-actions bot added breaking change PR contains breaking changes and wont be merged before a new patch and removed requested changes Changes requested through comments labels Dec 30, 2025
@Knightmore
Copy link
Contributor Author

We could revert the breaking change if it's wanted, but the rename is more precise to what the struct actually holds

Adjusted some names and comments (for a better understanding) which I forgot last night
@MidoriKami
Copy link
Contributor

The typical process for breaking changes is keeping the old field around, but marking it with a non-erroring [Obsolete(...)] and adding the named field at the same offset.

Obsolete fields get removed from the API a couple weeks after a major game patch.

@Knightmore
Copy link
Contributor Author

The typical process for breaking changes is keeping the old field around, but marking it with a non-erroring [Obsolete(...)] and adding the named field at the same offset.

Obsolete fields get removed from the API a couple weeks after a major game patch.

Sure can do, but what about the changed return type of the function call?

From:
public partial RepairEntry* ChangeInventoryContainer(bool arg0);
To:
public partial ItemEntry* ChangeInventoryContainer(bool arg0);

@MidoriKami
Copy link
Contributor

That one is a bit tougher, because it can't distinguish between the two based on return type alone, sometimes a new name is used, or a note is added to change the return value on the next major game update.

Replaced RepairableItemAmount with ShownRepairEntryAmount and marked the old field as obsolete.
@Knightmore
Copy link
Contributor Author

I don't think that we can get around the last breaking change, as I added an enum so users know right away what the possible values are and don't set any bogus value.

@MidoriKami
Copy link
Contributor

MidoriKami commented Jan 2, 2026

You can by doing the following:

   [FieldOffset(0x5C), Obsolete("Use InventoryContainer field")] public int InventoryContainerIndex; // Used to lookup static array. Mapped index ids of repair gear dropdown. (7 = Equipped, 0 = Main/Off Hand, 1 = Head/Body/Hands, ...)
   [FieldOffset(0x5C)] public InventoryContainer InventoryContainer;

@github-actions github-actions bot removed the breaking change PR contains breaking changes and wont be merged before a new patch label Jan 2, 2026
@Haselnussbomber Haselnussbomber self-assigned this Jan 3, 2026
@Haselnussbomber
Copy link
Collaborator

Worked it out a bit more and made it a bit cleaner. :)

@Haselnussbomber Haselnussbomber removed their assignment Jan 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants