If a sprite is duplicated, the sprite fails to update properly when UV Source is changed. The duplicate sprite renders incorrectly. When a sprite is duplicated, UPaperSprite::PostLoad() is called, which sets some baked data, because AtlasGroup == nullptr. BakedSourceTexture, BakedSourceUV, and BakedSourceDimension are all set to the original sprite’s data. When those 3 are commented out, then the sprite updates as intended. I assume those are there for a reason though, so that’s probably not the correct fix. When creating a new sprite, this PostLoad is not called and it does not set the baked data.
Ticket UE-88628 is the only ticket I found that was related to this issue. The tutorial that the original bug referenced was one that I also followed by an Epic Games employee. He instructs the viewers to duplicate the first sprite until there are 9 of them and then use the Bulk Edit Property Matrix to change which tile is shown. This does not work. It also doesn’t work if you go into an individual sprite and try to edit it from there.
As a temporary workaround, however, if you instead select the original Texture and do Sprite Actions → Create Sprite 9 times, the Bulk Edit Property Matrix will work on them to update the UV Source Texture Region. It will also work when editing an individual sprite.
Unrelated I think, but within that same file, there is an if statement that was commented out, except for it’s inner contents, which is bBothModified = true;. Then there are 2 follow up if statements that, if they equate to true, will run that same line, but they are redundant because it’s already true. Something seems wrong there.