So, essentially I’m trying to think of how I could made a round system. This isn’t really a scripting question, I’m mostly just confused on how I should go about it.
Currently, I think I will just communicate with other scripts using remotes and bindables; for stuff such as map choosing. But, I feel like this system could get really messy and the experience can’t be updated.
Heres my main question:
Do you think there is a better way to go about this?
I think you could use attributes/valueObjects, you can detect when they’re changed and they hold data so you don’t have to hold the data in your script.
You could also put the attributes/valueObjects in somewhere like ReplicatedStorage or Workspace!
An example would be a Timer, you could update the timer on the server and the clients will be able to detect when it’s changed and update their ui!
Personally I would create a main Script to handle events like players joining and rounds starting or ending etc, then have it require a module script for each type of round.
If the round is the same each time, in the same map same setup etc, then that is even easier.
You will probably not be able to escape using some bindable events, but you can add events to instances within a script, so long as you place the connection in a named variable you can easily disconnect it again once the round is over.
Hope that helps a little.
Thanks for the feedback! I appreciate your input.
Thank you for expressing your ideas! It helps a lot.