DoubleDeez / MDFramework

A multiplayer C# game framework for Godot 3.4 Mono.
https://discord.gg/UH49eHK
MIT License
77 stars 13 forks source link

GameClock RPCs don't set SenderRpcId + Remove config settings to disable GameClock/Synchronizer #83

Closed DoubleDeez closed 3 years ago

DoubleDeez commented 3 years ago

I have an RPC I call with this.MDRpc(), but in the body of the RPC, when I call GetTree().GetRpcSenderId(), the result is 0 when it should be the ID of the original sender.

DoubleDeez commented 3 years ago

@Beider I don't know if it's possible to set the sender id in the tree, but otherwise we'll need some sort of alternative.

Beider commented 3 years ago

Add an MDGetRPcSenderId()?

DoubleDeez commented 3 years ago

Yeah, looks like Godot's is read-only so we'll have to

Beider commented 3 years ago

For non-game clock this is easy enough we can just set the sender value right before we call. For game clock values we have to store the sender id, we already got a custom class to store data for game clock calls so this shouldn't be too hard either.

Beider commented 3 years ago

This expands the scope of this issue, but it has been decided that GameClock and GameSynchronizer should always be on. Might as well fix that in the scope of this issue. This involves: