0 votes

making a multiplayer game and I want an authoritative dedicated server.

trying to understand which keywords I want to be using to achieve this. at the moment from what I understand I should use puppet and master and ignore remote.

the server code would be marked as master and all nodes will be owned by the server (id 1). then server can make calls to puppet rpcs.

For example, player movement would work as follows:

client input is passed on to a master function which handles calculating the players position which then calls a puppet rpc with the new position of the player.

This seems like it would be authoritative?

in Engine by (26 points)

This seems like it would be authoritative?

If that's your question, the answer is yes.

Yeah, i was basically asking if what I proposed would work AND if it the 'right' way to do it

1 Answer

0 votes

Yes, what you described should work and is actually the default behavior as the server is automatically set to be the master node if you don't change that manually.

However, you could easily achieve the same thing by just using the "remote"-key. That comes basically down to a matter of preference. There is no "right way" - just multiple solutions for the same problem. Just try it and see which fits you best!

by (10,227 points)
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to webmaster@godotengine.org with your username.