I should create a package out of the scripts that follows the necessary conventions. Figure out what functionalities are game specific and what is needed in the package.
Menu logic, spawning etc. should be handled by the user.
User should define inputs so we can process it correctly and then based on inputs received he should be responsible for handling that inputs (that package will provide), for example interpolation between previous and current frame
Functionalites
User input handling
Sending/receiving inputs
Delaying/queuing
Replace input if arrives too late
Functions to call
ServerStart() --> setting up all parameters
ServerListening() --> listening for incoming connections
IInputComponentData (IDeterministicInput) is used to define inputs
Deterministic components needs to be added by the user
Exposed parameters to set
Netcode config or bake monobehaviour config
How many frames of rollback/catch up at a time
What should happen if input is delayed?
What strategy for input prediction (later)
Parameters possible to get
Is system catching up or rollback
Optional functionalities
Checking if we need to rollback (when we predicted correctly) is optional
I should create a package out of the scripts that follows the necessary conventions. Figure out what functionalities are game specific and what is needed in the package.
https://www.youtube.com/watch?v=mgsLb3TKljk https://www.youtube.com/watch?v=OhwP5TYgucM
https://docs.unity3d.com/Manual/upm-manifestPkg.html#example