Godot Version
4.3
Question
Hello!
I am currently working on a networked FPS in Godot. So far I have had no issues setting up a working and reliable P2P connection that supports synchronization of players and weapons respectively. However, my codebase is not really “future-proof” with respect to creating a finished product to test and share.
The issues I would first like to tackle are:
Hosting the Player, Weapon, and Map Scenes server-side and lending client access once the client has connected to the server and “spawned”.
This would be accomplished by having the client side player be assigned a unique ID upon connection, then instantiating a player relative to this ID with its own authority. The Weapon Scene is a child of the Player and has unique Weapon Scenes as its own children. All of which would be instanced upon player connection. Swapping would simply be handled by choosing which instance would be visible and active at a time.
The issue I aim to solve is inheriting custom weapon parameters for each weapon from a client UI customization menu.
This customization WILL NOT affect visual data, only float variables like damage, spread and fire rate.
What is the best way to go about this that allows for the most modularity as the codebase grows?