Best way to reset the positions of a puzzle?

Hello I am making a puzzle system (see image below) and our idea is that all of the pieces on the grid (they are all separate actors) can reset if the player makes a mistake. On top of that, the puzzle (The floor with rings) will flip upside down in unison. So the floor will flip, while upside down the pieces will reset, and the floor will come back around. All of the pieces are rooted at the center so there won’t be a problem with rotation, its simply flipping them all at once.

What is the best suggestion to do this?

So could I do something like this:

There Is a button I press. When I press it, In BP it gets all actors of class with a Tag “Piece” and “PuzzleNumber” and that will reset them to the positions they started at from the construction script instance settings (not the blueprint original settings).

And how would I do that (I understand tags, more so what nodes to do plug for the reset)

Yes. Create a variable that will store their initial state (i.e., InitialLocation, InitialRotation, etc…) and then on BeginPlay, you set their values. When you call their reset, just restore their initial location using the saved values.