gschup / ggrs

GGRS is a reimagination of GGPO, enabling P2P rollback networking in Rust. Rollback to the future!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Input question

logixworx opened this issue · comments

I am evaluating ggrs and admittedly, I havent looked through the code entirely yet.

I am looking into using ggrs with Matchbox. How can I record confirmed inputs so that I can later replay an entire deterministic simulation accurately? At what point in the cycle should I be doing this and how?

Thanks.

Each AdvanceFrame request you will receive from ggrs has a vector of player inputs for that frame:

AdvanceFrame {
        /// Contains inputs and input status for each player.
        inputs: Vec<(T::Input, InputStatus)>,
    }

For each player, you can check for InputStatus::Confirmed to see if the input is confirmed. You will have to save the inputs yourself, ggrs does not offer a full confirmed input history.

Thanks!

Another question - can a Matchbox client without ggrs participate in a ggrs session
that has Matchbox as the transport without any issues? So it can listen to non-ggrs data?

I do not exactly know, sorry. I recommend you ask your matchbox-related questions in the matchbox issues/discussion!