Would it be possible to make a spectate system that spectates a different server?

So I’m trying to implement sports into a game that I’m making, and I thought it would be cool if I could make live events where players could watch from any server they are in. By live event I mean they will actually watch the event happen live, and watch real players play rather than making a pre-made event for a certain time. Hopefully with the ability to watch it from an in-game tv rather than with the player’s camera, but either way I’d be happy. I’m a builder, NOT a scripter. My scripting is very minimal so this game is a huge learning experience for me. So what I am wondering is if this is possible and where I would start to make something like this. PLEASE don’t make me scripts all I want is an explanation of how I can do this (if possible) thanks :slight_smile:

9 Likes

This might be possible using MessagingService, you could send a table of every player and their current position, and then pick it up in a different server. Theres a lot you’d have to take into account though, such as the size of the table since it cant exceed 1000 characters, and you’d still be limited by how many times you can update players.

3 Likes

I’m no expert at this but i would say its most likely possible but this would be very hard because communicating with all servers and sending commands to each one in a game can be a very complicated task to get working.

2 Likes

Are you talking about spectating events from different servers, and stream it into the server that you are currently in? I do not think this is possible to do in the ROBLOX engine. If it were, it wouldn’t look as smooth or pretty.

2 Likes

Might be possible using view models and cloning everything to that but like i said, this could be a pain in the butt to get working.

3 Likes

It’s possible but extremely complicated and difficult. A few hours of effort would get something going.

3 Likes

You can get all the players and their names and positions, but you can just use Rigs to give that position to them and the name, to give a somewhat virtual replica of what’s going on.

3 Likes

I’ll definitely look into that and hopefully I can make it work, even if it’s not perfect :sweat_smile: thanks!

3 Likes

Yeah that’s what I meant, but if I’m not able to make it like a real broadcast would I be able to make it where it just shows updates in the game? For example if in the server where the game was being played “player 10” scored a point for their team; could it send a message like that in every server?

3 Likes

If it’s going to be text-based then yes, that would be possible with MessagingService. You might want to take a look at that.

4 Likes

No, it’s not possible. You would have to make too many requests. Just teleport the player and then tell them to spectate in the new server.

3 Likes

You could try to use memorystoreservice and update every players position and actions every second. Not too sure how this would work out though

1 Like

You can use MessagingService like others have mentioned, and try sending over the player’s position you want to spectate as a text. You can then use this information to make a dummy that replicates what was seen from that server. However… as @bluebxrrybot mentioned, there will be too many requests and Roblox would deny your request if it’s being used too quickly.

2 Likes

I have been asking similar questions for my game.
On a web 2D platform, we have up to 150 players per side, attacker & defender.
Roblox’s limitations has stalled this implementation, but recently up’d it to 200 players per experience.

Now I also wanted other players to view, while they either couldn’t get into the match, or bcoz there is a vast following, and could easily reach a few 1000 spectators.

My theory … or was hoping… that the Beta participation would allow me to have up to 700 players… but that ability is taking forever.

Now if this is something that you are also trying to achieve, wouldn’t it be possible to have several screens/tv’s in the “main lobby” that shows what is going on in the battle ?
I would assume that if ever they allow the 700 players (or way more than 200) … that the spectators in the lobby would ease stress on the server (glitches etc) … being away from the action… and cameras/screens as their viewing.

I’m aware that the leader-boards can run in real time across servers, so more can possibly be achieved this way - stats wise.

I would think that there must be a way to stream to discord or youtube… broadcasting live games - but again… I’m not sure & guessing.

Hopefully someone can share some light on this.
Or if Roblox will look into creating a service that can stream games (not events in this case).

2 Likes