Well, are you familiar with Call of Duty games? If you are, you may know of the ability to switch to theater mode and replay games. The reason it is able to do this so quickly without reloading a file is that it doesn’t actually record into a video format. It basically keeps a log of all player locations, who’s shooting, who’s dead, etc… And essentially ‘plays’ the game over again with the same variables, but just disables user input. What you could do is make an array for each player, and each frame, set the array element to their location, and bone locations, or even just what move they made, etc… Then when you want to have them watch it, just use that same array that you recorded to, and set the locations to whatever that frame’s index is. Recording to an AVI also seems like it would be rather expensive for a player with a less capable CPU/GPU combo.