Recording of Photon Transactions for 'INSTANT REPLAY' ?
Does Photon or Unity implement any data recording mechanisms that will allow Instant Replay of a video game?
I would like to continuously record the last 30 seconds of current game play. A user can then can pause the game and be shown an "Instant Replay" video of cool game events, such as a player exploding.
To solve my problem: Unity plugin video recorders are huge performance hogs. Alternatively, recording GameObject change deltas would be more efficient.
Photon transactions would be ideal to save/serialize to memory during game runtime.
Does Photon or Unity implement any data recording mechanisms that will allow Instant Replay of a video game?
Thanks!
I would like to continuously record the last 30 seconds of current game play. A user can then can pause the game and be shown an "Instant Replay" video of cool game events, such as a player exploding.
To solve my problem: Unity plugin video recorders are huge performance hogs. Alternatively, recording GameObject change deltas would be more efficient.
Photon transactions would be ideal to save/serialize to memory during game runtime.
Does Photon or Unity implement any data recording mechanisms that will allow Instant Replay of a video game?
Thanks!
0
Best Answer
-
Hi @kjhuebner,
Thank you for choosing Photon!
You can use cached events (or buffered RPCs) for replay.
However, you need to add a tag or flag (or counter, number etc.) to the custom events' payload so clients can keep track of which events are already received or which ones are from cache.
You can also clean up those you don't need anymore as the events cache should not be abused and is limited.5
Answers
-
They do not to the best of my knowledge but is it ONLY photon objects you would need recorded?0
-
Not necessarily photon objects. I want to simply replay last 30 seconds of game play.
I just figured... since the Photon framework is already serializing important game events for multiple clients, it might be possible to use the Photon transaction stream to do "Replay" of game. That is, if an app stores the Photon transaction stream (for past 30 seconds), an app may be able to "replay" the data stream and re-generate graphics and sound effects in past 30 seconds.
The Photon framework could provide a performance efficient mechanism for "instant replay."0 -
Hi @kjhuebner,
Thank you for choosing Photon!
You can use cached events (or buffered RPCs) for replay.
However, you need to add a tag or flag (or counter, number etc.) to the custom events' payload so clients can keep track of which events are already received or which ones are from cache.
You can also clean up those you don't need anymore as the events cache should not be abused and is limited.5 -
Just to note, I do not want to replay game on ALL the clients in a multiplayer game.
I only want to replay the game on one client, the client device in which the user tapped the Replay button. So perhaps a solution would be to cache all events on the client, restore state to 30 seconds ago, and playback the cached events. This approach would include an function to remove stale events in cache on an ongoing basis.
0