Skip to content

Add option to allow auto-socketing timeless jewel - #10226

Open
cupkax wants to merge 3 commits into
PathOfBuildingCommunity:devfrom
cupkax:auto-socket-timeless-jewel
Open

Add option to allow auto-socketing timeless jewel#10226
cupkax wants to merge 3 commits into
PathOfBuildingCommunity:devfrom
cupkax:auto-socket-timeless-jewel

Conversation

@cupkax

@cupkax cupkax commented Aug 15, 2026

Copy link
Copy Markdown
Contributor

Fixes # .

Description of the problem being solved:

Adds an option to auto allocate timeless jewel directly through the jewel finder window.

auto.socket.jewel.jewel.mp4

Steps taken to verify a working solution:

  • Tested with timeless jewels

Link to a build that showcases this PR:

Before screenshot:

After screenshot:

Comment thread src/Classes/TreeTab.lua

-- sits on the same row as the socket filter, right of the node distance slider it can show
controls.socketAllocate = new("CheckBoxControl"):CheckBoxControl({"LEFT", controls.socketFilter, "RIGHT"}, {165, 0, rowHeight}, nil, function(value)
timelessData.socketAllocate = value

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[P2] Persist the auto-socket option and mark its change dirty

Codex reproduced that this checkbox only updates the in-memory timelessData.socketAllocate value. Build:Save does not serialize it, Build:Load does not restore it, and this callback does not set self.build.modFlag. Consequently, the option resets after a build reload and changing it alone does not mark the build dirty. The neighboring socketFilter option is both persisted and marks the build modified. Could we add this boolean to the TimelessData load/save attributes, set self.build.modFlag = true here, and cover the behavior with a save/load round-trip test? If reset-on-reload is intentional for safety, that session-only lifecycle should instead be made explicit.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey thanks for catching that, should be fixed now.

cupkax added 3 commits August 24, 2026 09:34
Save socketAllocate to the TimelessData element and restore it on load, and mark the build modified when it is toggled, matching socketFilter. The attribute is only written when the option is enabled.
@cupkax
cupkax force-pushed the auto-socket-timeless-jewel branch from 90864d7 to 5285048 Compare August 24, 2026 00:06
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.

2 participants