ID:2902025
 
Resolved
Visual contents with icon/state inheritance did not inherit the last-changed time from the parent atom, resulting in incorrect timing for looped icon states.
BYOND Version:515.1620
Operating System:Windows 11 Enterprise 64-bit
Web Browser:Firefox 120.0
Applies to:Dream Seeker
Status: Resolved (515.1621)

This issue has been resolved.
Descriptive Problem Summary:

icon_state animations of vis_content children with VIS_INHERIT_ICON_STATE do not play out if they are set to repeat only once. The parent's animation will play, but the child will remain stuck on the last frame of the animation.

Numbered Steps to Reproduce Problem:

1. Create a parent object and a child object.
2. Assign a different icon to each.
3. Set up an animation with the same amount of frames to each icon, and name both icon states the same thing. Set each animation to play only once.
4. Set the child object's vis_flags to VIS_INHERIT_ICON_STATE.
5. Add child to parent's vis_contents.
6. Use either flick() or change the icon_state directly of the parent to see the changes.

Expected Results:

Both parent and child play out an animation sequence as per their respective icon_state. If the animations are of equal steps, they should be synched up and played at the same time.

Actual Results:
The parent's animation plays out from beginning to end. The child does not play out and remains on the last frame of the animation.

Does the problem occur:
Every time.

When does the problem NOT occur?
It always occurs.

Did the problem NOT occur in any earlier versions? If so, what was the last version that worked?
I've tried it on version 514 to the same effect.

Workarounds:
Possibly setting icon_state directly through a number of steps to emulate an animation.

Demo:

https://www.mediafire.com/file/5miqtnlm17opyq3/ vis_child_animation.zip/file
Your description and title of the bug is incorrect. The icon and icon_state would be inherited, but the timing of the last change is not (nor is that timing correctly applied in the animation on the main object).
The title and description refer to the problem I encountered in a way that I would describe it. Sounds like you have a good idea of what is happening and how to fix it.
Lummox JR resolved issue with message:
Visual contents with icon/state inheritance did not inherit the last-changed time from the parent atom, resulting in incorrect timing for looped icon states.