Multiple worldspaces

I’m not sure how I’d prefer something like this to be built into the API, but I’ve frequently run into games that would benefit from this.

Welcome to Venezia / Sunset City - players can but homes in the game and he just copies and pastes the same house serversize times. The server size is 20 so he has 20 duplicates of each house type in the game. He has to use 20 duplicates because he can’t put them all in the same place. If he just put them in the same place, if multiple people were in different houses, they’d all be in the same house because the houses are in the same place. However, if there were multiple worldspaces he could just move the player to the house’s location and switch the worldspace to TargetPlayerHomeLocation and even if all of the places were in the same location you still wouldn’t see other players in the same location because they’re in different worldspaces.

RangeMeludE in Lords of Rangescape (or one of his RPGs) keeps all of the zones (i.e. mountains, plains, swamp, etc) in the workspace and they surround the spawn zone. If you zoom out you can see the other zones, and that’s pretty ugly. It would have been better if they were all in separate worldspaces so that you couldn’t see them unless you were in that worldspace. It would also be a clean and easy-for-greenhorns way to unload parts of the map that aren’t necessary at the current point in time instead of doing lobby.Parent = nil map.Parent = workspace.

Impulse by Rhyles has this 3D room that you select your loadout in. I assume he has it below the map, far far away from the origin, or something like either of those. It would be easier to just move the player to a different workspace instead of having to store that room far off in the distance / under the map.

Flood Escape by crazyblox has different levels for his game. I assume that he just stores them all in separate locations across the workspace. It would be much cleaner to just move players to different worldspaces than to litter the workspace with different maps.

For a plugin even, you could create different workspace “layers” and switch between them on a need-be basis to keep your work area clean.

Every game that I can think of has worldspaces (Skyrim with its interior cells, Mass Effect with its different worldpspaces for each level / planet, Warframe with its relays, player ships, and levels). We could make our games much cleaner if we had access to worldspaces on ROBLOX.

I don’t know about the implementation or how it would work into the engine, but I think this is a really cool idea.

In my recreation of Clock Town I keep the building interiors under the map because they’re generally too big to fit in the actual structures. With this I could just have the player go through the door, fade to black, and then instead of moving the player I’d just switch to another worldspace. The outside map wouldn’t get in the way and I wouldn’t be rendering any unneeded parts. I could also run multiple instances of minigames without having duplicate interiors scattered about the map.

The current alternative to this is universes(or… Games?), but travel between them isn’t necessarily quick and currently not very seamless. There’s also the issue of communicating between servers and returning back to where you came.

  • keeping friends together (another problem with universes). Try to visit the interior of the mall? Whoops! You teleport to a near-full server and not all of your friends / dungeon part if it’s that type of game can follow you in.

I personally did come up with an instancing system for my own game in the past, but I ended up scrapping it because there were problems with trying to get humanoids not to collide with eachother. The method I used with removing Humanoids of hidden players on the client was too hacky for my liking at the time.

A feature like this would be useful to me.

I can see this being useful. It’s perfectly possible with FE, but like Vorlias said, humanoids can cause issues.