Hey, I’m very new to all things networking. I have some questions about how I should do some things.
To give some context, the project I’m working on is server-authoritative, where almost all the logic is computed on the server. Using Godot Engine. I’m going to describe what would be a “short game” against a bot.
First the client receives information about an enemy (which enemy it is and its stats). And now I want to do damage to him, so I send a signal that I have pressed the attack button and the server takes care of subtracting the enemy’s life and send me his update.
Here appears my first doubt, how can I create an AI inside the server? I need the server to create games and match a player with a bot. Where would I program the bot? What would happen if there were several players against several different bots each in their own sessions? How do I create parallel processes for each of the sessions?
I have seen that all this logic can be done through typescript, but is that (adding the files to the nakama modules) how it should be done? Or should I create a server with the godot headless that takes care of all that?
Another simpler question is, if I first register the user with the Device ID, and inside the game I create an option to link that Device ID with an Email+Password. There shouldn’t be any problem, right? (Giving preference to the email if there is another new device?)
And another question about performance, with the basic setup of nakama + docker. When would the database reads start to slow down? (requests per minute?) And does it take the same time to send a short json fragment than a much longer one?
Sorry if this is a lot of questions, I really can’t find many resources that talk about these topics and I thought I’d ask through here. Thanks for reading everything!