I want to create a system that tracks players’ positions and then updates them for every server but I am worried that Roblox might get suspicious of the amount of times I’m using the MessagingService as I have heard that it can’t be spammed. Is there any way of doing this without having this happen? Like is it possible to set a delay or anything or is it fine to just update it whenever the player moves? I should probably also state that I know how to set everything up, it’s just this one small thing I’m worried about. I apologise if I have this in the wrong place/topic.
Well
MessagingService has limits. These include:
Limit | Maximum |
---|---|
Size of message | 1kB |
Messages sent per game server | 150 + 60 * (number of players in this game server) per minute |
Messages received per topic | (10 + 20 * number of servers) per minute |
Messages received for entire game | (100 + 50 * number of servers) per minute |
Subscriptions allowed per game server | 5 + 2 * (number of players in this game server) |
So You have to figure out how to respect these limits and follow them. Also MessagingService is not a guaranteed, it is a best effort kind of deal. If I were you, I would only update a couple times per minute, and use something like PathfindingService to mimic the movement of the player from going to point A to point B. But other then that, your going to need to find a way to make it smoother as you might not be able to rely only on MessagingService to make this work and you might need to use something else (Maybe something like Memory Stores (I haven’t used Memory Stores, but it does look useful here and allows for quick changing of data within the servers) ).
So what you’re saying is have a specific delay between them? Also I have noticed that when researching it before posting this but never knew what it really meant. The Size of message is obvious but the other ones aren’t so clear. But as you said, I’ll look into the Memory Stores. I never heard of it so maybe it’ll work.
What I am saying really is that yes if you have to use MessagingService, but might be worth using Memory Stores over Messaging Service
This is what the limits mean (I believe):
Limit | Maximum | Explained |
---|---|---|
Size of message | 1kB | The size of the Message that can be sent to the Servers |
Messages sent per game server | 150 + 60 * (number of players in this game server) per minute | How many total :PublishAsync() Calls you can have sent in that game server |
Messages received per topic | (10 + 20 * number of servers) per minute | How many messages can be Received in a Topic (Topic is a Unique String that listens for Messages with the same Topic) |
Messages received for entire game | (100 + 50 * number of servers) per minute | How many Messages you can Recieve with :SubscribeAsync() per minute for all game servers |
Subscriptions allowed per game server | 5 + 2 * (number of players in this game server) | How many :SubscribeAsync() Calls you can actively have in a server at once. |
Yeah, I’m just looking into Memory Stores now and that might be the solution. From a very basic knowledge, it’s like Messaging Service (or the Data Store) but it can send larger amounts of data and is only there temporarily, I hope I’m correct in saying that lol. I’ll definitely need to research more on it but that’s most likely it.
Yes, Kind of. Its closer to Datastores, but isn’t as protective, in the fact that you can call it a lot more. Messaging Service for example is used more for making a global announcement system, where you have a message that can be displayed to all servers, Its fired to all servers, but is never saved. While datastores and Memory stores provide saving that data for it to be used across all servers/Sessions
Yeah, that’s most likely what I’m looking for. As long as I have some way of getting the data across quick without making Roblox mad then that’s perfect lol.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.