14381 Update dice properties when replaying a log file#14382
Open
rlament wants to merge 1 commit intovassalengine:release-3.7from
Open
14381 Update dice properties when replaying a log file#14382rlament wants to merge 1 commit intovassalengine:release-3.7from
rlament wants to merge 1 commit intovassalengine:release-3.7from
Conversation
The decoder only searched for properties of the GlobalProperty class. Expand the search to include implicit global properties created by the Dice components.
This was referenced Dec 8, 2025
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.
When replaying a log file or during online play, the
ChangePropertyCommand(encoded as a MutableProperty message) communicates property changes. The associatedChangePropertyCommandEncodersearches aGlobalPropertiesobject for the property and regenerates theChangePropertyCommand. However it only finds explicit global properties which are of typeGlobalProperty.The Dice Action buttons create implicit global properties. These are of type
MutableProperty. Since these are notGlobalPropertytypes, the encoder fails to find the dice properties returning null. This effectively filters out theChangePropertyCommandmaking it a no-op.This pull request adds a secondary
MutablePropertysearch for when the GlobalProperty search fails.Closes #14381
Closes #13813
For Area of Effect I tested log files and undo. I did not test an online game. The log file must be written with a build that includes this commit. It's the writing, not the reading of the log file that matters.