Skip to content

Should Decentraland transition to a single realm?

RejectedPoll

Proposal Details

Author0x5e5d…de99
PublishedJun 13, 2023 17:34
Voting beginsJun 13, 2023 17:34
Voting endsJun 18, 2023 17:34
Snapshot#4e009ad

Description

## The Problem Decentraland currently operates with multiple realms, presenting a challenge in understanding how to meet other users within the virtual world. To successfully connect with another user, one must understand realms, realm navigations, location coordinates, and the concept of islands or user clusters, all these must match in order for a user to be able to interact with a friend. This fragmentation hinders the platform's potential for social engagement, collaboration, and the sense of a unified metaverse experience. There have been press reports that highlighted instances where high-profile events hosted in Decentraland did not witness expected user numbers or engagement due to participants unintentionally joining realms with a low user base. ## Solution The proposal is to transition from the current 11 realms in Decentraland to a unified single realm. This initiative aims to address a critical weak point in the platform by significantly improving how users are grouped in the world and removing a layer of complexity caused by the segregation of realms. While transitioning to a single realm would require a new centralized communication service, the commitment is to maintain decentralization by making the single realm service open source and easy to launch, allowing anyone to operate their own realm. On the other hand, the Catalysts will continue to exist and be in charge of managing the decentralized content. The cost of the single realm service will be covered by Decentraland Foundation using the existing LiveKit Cloud solution and might be transferred to the DAO in the future. As this implementation implies protocol changes, it will go through a three-stage governance process. Today the catalyst nodes have two responsibilities: - Decentralized Content Storage: Ensuring the content of Decentraland will be replicated and live forever. - Real-time Communications (Realms): Grouping users, messaging, voicechat, etc. Nowadays a user can only interact with another user connected to the same catalyst. The proposed solution is to move the communications service out of the Catalysts nodes to a centralized, highly replicated, service that will receive all platform users' positions and be able to group them based on their location, regardless of the catalyst node that they are using for content management. ![model](https://images2.imgbox.com/c1/4b/wYIys9j8_o.png) ## Benefits: - Unified and Connected Metaverse: A single realm fosters a more unified and connected metaverse, enabling users to seamlessly interact, collaborate, and engage with each other. - Enhanced User Experience: With a single realm, users no longer have to navigate multiple realms to meet with friends, reducing confusion and complexity. This streamlined experience improves user satisfaction, encourages longer engagement periods, and makes the platform more accessible and appealing to new users. - Cost Reduction for Catalyst Owners: Currently, each node owner must maintain a LiveKit Cloud account or host a LiveKit cluster, incurring infrastructure costs. Transitioning to a single realm eliminates the need for individual node owners to bear these expenses, resulting in cost savings for community members. - Although the solution may appear more centralized, the reality is that most real-time communications are currently managed by a few LiveKit instances. Unifying these instances with the single realm service enables the implementation of the single realm model. - Simpler and More Accurate Hot-Scenes Calculation: Currently each catalyst node must gather communication information from all nodes in the network and perform its own hot-scenes calculations, resulting in potential delays and slight variations in the data across realms. A single-realm model reduces the number of necessary requests and increases the accuracy and consistency of real-time data.

34 Comments

HPrivakosJun 22, 2023

That was destined to CryptoTengu, not you.

akasya.ethJun 22, 2023

I believe I said my opinion properly about me being a noob on Technical stuffs. If you don't like how I post my opinions, then I should obey. hahaha

TheCryptoTenguJun 21, 2023

https://www.youtube.com/watch?v=fQztoPcMdgc&ab_channel=RipperX yea man 100 users on a island peak

HPrivakosJun 21, 2023

Islands are still 100 users at once. lol imagine you don't know how infra and comms works and you try to look smart.

TheCryptoTenguJun 19, 2023

lol imagine dcl trying to host events like yuga. We already barely make it for some big stuff. Look forward to seeing servers not pull people or collapse.

daoJun 18, 2023

Should Decentraland transition to a single realm? This proposal is now in status: REJECTED. Voting Results: * Transition to a single realm 24% 1,201,053 VP (38 votes) * Keep 11 realms 10% 506,874 VP (10 votes) * Invalid question/options 66% 3,200,859 VP (21 votes)

web3nitJun 15, 2023

I think we need to have more discussions on this topic to move forward in order to hear all the Community's thoughts and reach consensus.

HugoJun 15, 2023

To expand a bit about scalability, having one realm doesn't mean having fewer servers, on the contrary, we may have even more servers. Currently, 1 catalyst is one server due to the nature of the catalyst deployment and the cost for catalyst owners, here the proposal is to have a single massive realm, which may consist of multiple server machines, perhaps autoscaling the number of servers according to the number of users.

akasya.ethJun 15, 2023

Then no problem with me. Unified realm is a great idea then. I just thought that 1 realm is equivalent to 1 server as we are thrown to other realm when there are too many people in a scene. It's an error on my side. My apologies. I am just concern with the DCL's competitiveness as more metaverse projects emerge. Cheers men

paralaxJun 15, 2023

Thanks for all the questions. > Can you give us an explanation how a single realm can handle, let’s say, 1 million online users in DCL? Single realm doesn't mean having 1 server, it only means that all people will walk on the same virtual worlds and run into each other based on their position and not in the server that they are downloading the scenes from. To explain how to support 1M users I have to go a bit technical, the general rough idea would be to have several service components that will work together, the first is a WebSocket service that manages users' connection with the single realm comms, this service has a simple implementation and can be added to an auto-scaling group in AWS with a Load Balancer and can have instances in several places in the world to run with regional affinity. More users just mean more instances of this service. Then there will be a centralized Archipelago service in charge of receiving all user's positions and calculating the islands groups, this service is low in CPU and can be re-implemented using something better than node JS to make use of multi-threading and scale better. To connect all we use NATS, high-performance messaging system, open-sourced, implemented in GO. Finally, we put a stats service that exposes the platform information: users, positions, hot-scenes, this service communicates with Archipelago through NATS. All these components are highly scalable. WebRTC comms will continue to work over LiveKit. > My unqualified opinion is telling me that a single realm is beneficial to new users. Is it worth the risk to > sacrifice the scalability for onboarding new users using a single realm? Scalability is everything, it wouldn't be sacrifice. > Is it really about the cost of infrastructure, not the user experience and user retention? I mean user experience will improve temporarily as we have low daily active users. It's all about User Experience, not cost. It would just remove some cost from node owners, more in the case that the platform user base scale up fast. > Are you familiar with Roblox? Yes, Roblox work with isolated experiences, this is what Worlds bring to the table, where users can create scenes isolated from Genesis City, they can even perform better as they are not affected by the soundings and the full loading of the city. Worlds is another way to scale the Platform that would work in parallel to this.

HPrivakosJun 15, 2023

[quote="akasya.eth, post:24, topic:19559"] * Can you give us an explanation how a single realm can handle, let’s say, 1 million online users in DCL? [/quote] A single realm doesn't mean a single server, it can still be scaled across several servers (and region around the world, so no latency issues).

akasya.ethJun 15, 2023

Hi @paralax, sorry for being noob on technical stuffs. It seems to me that you are proposing a single realm that will improve some part but add problem to the other part. 1. Can you give us an explanation how a single realm can handle, let's say, 1 million online users in DCL? 2. My unqualified opinion is telling me that a single realm is beneficial to new users. Is it worth the risk to sacrifice the scalability for onboarding new users using a single realm? 3. Is it really about the cost of infrastructure, not the user experience and user retention? I mean user experience will improve temporarily as we have low daily active users. The metaverse trend is declining but the adoption from brands is increasing. There will be a point where DCL needs to host 1million active users, maybe from different brands, metaverse shops, banks, and other businesses. With a single realm, new users will highly benefit from the unified realm regardless of the latency but old users may find it unattractive as soon as the realm became overcrowded or reached the time that it cannot load any scenes anymore. Are you familiar with Roblox? You can ignore my concerns too as I have only a tiny-little voting power.

paralaxJun 15, 2023

The purpose of the poll is to enhance user grouping on the platform and revamp the user experience. The goal is to make newcomers unfamiliar with the concept of realms feel at ease. When the users join Decentraland, they will be directed to the default realm without any suggestions in the user interface to switch realms or display a list of realms along with the number of users. Additionally, the calculation of hot-scenes will be limited to the current realm. If a catalyst owner wishes to continue hosting comms service, it will still be possible. Nevertheless, users must explicitly specify the realm name in order to connect to it. Regarding the LiveKit cost it will be low as long as the platform user base is low or users are not concentrated in your realm, if you use LiveKit cloud you pay based on the consumed bandwidth and if you are with the free tier then you have a realm that cannot host much more than 100 concurrent users. In the case that you run your own infra, again you will need to have a cluster instead of a LiveKit node, to be able to manage more users and this is not only infra cost, it also requires some operational time to configure, deploy, monitoring, troubleshooting, etc. The IPFS point, in theory, seems nice but in practice, it doesn't work that well in terms of performance, you would still need a fast content server on top so that files can be consumed by the client but IPFS it can be used as a decentralized bkp system.

paralaxJun 15, 2023

Increasing the size of an island is not a problem for comms but for the client, user data is exchanged fast but the client has to render the scene + all the avatars. The experienced performance depends on many factors, including how the scene was designed and coded. What this is trying to improve is not the in-world performance and lag but the user's grouping and connections and make it easier for new users to meet with friends. Right now baldr es one of the servers with more users and the average comms performance for data exchange is between 200ms and 500ms.

paralaxJun 15, 2023

If I understand correctly, your concern is about the scaling and performance of the single realm, having a single realm doesn't mean having fewer servers or computational capacity, on the contrary, the idea is to have several components that would work together and be able to scale independently. This model would enable to support more users on the platform and will release resources on the catalyst nodes (CPU & Network used for comms). If this poll passes, I will post the second stage with the proposed implementation, adding the solo mode that has been requested, and details for how anyone could run their own realm.

HPrivakosJun 15, 2023

[quote="web3nit, post:12, topic:19559, full:true"] Hey @BaconGrease :wave: What do you think about this ? > This single-realm concept could offer a solo mode where you can either dive into the virtual world with others or have the whole place to yourself. [/quote] You can hide other users on a scene level, or even just disable passport AFAIK. [quote="dax, post:3, topic:19559, full:true"] i’d like to hear from @HPrivakos before voting on this :bat: :rotating_light: [/quote] I have a big problem with centralizing a core feature of Decentraland into the Foundation hands which will then use a third-party service to serve that feature. We need more technical info on how it will actually be implemented and if users will still be able to use a different "centralized comms" than the Foundation one. Concerning costs for Catalyst owners, in most cases the free tier of livekit is enough for most catalysts. I'm self-hosting mine and it costs me a whole 10 USD per month. If Catalysts are solely used for content storage, we might as well migrate that to IPFS and get rid of catalysts altogether, hosting IPFS instances to keep the DCL content pinned.

METATIGERJun 15, 2023

I've voted no, from a pure technical aspect here while I'd appreciate a better solution, if there is any at all. I'm just quoting the Wikipedia article of "MMORPG" to adress the general problem and - why I think - we have different realms/islands atm: "One of the biggest problems with modern engines has been handling the vast number of players. Since a typical server can handle around 10,000–12,000 players, 4000–5000 active simultaneously, dividing the game into several servers has up until now been the solution. This approach has also helped with technical issues, such as lag, that many players experience. Another difficulty, especially relevant to real-time simulation games, is time synchronization across hundreds or thousands of players." I remember my time with the online Game "Elite Dangerous" which had the same problem. And they've used a lot of servers to bypass it, running unstable for a long time. It is not as trivial as it seems. Maybe just increasing the number of players per Island could be a better solution, if the backbone can handle this.

szjankoJun 14, 2023

I agree with @BaconGrease here! If DCL did go to a single realm (if its even possible without creating too much lag for players) then there should 100% be a feature for players to explore DCL in solo-mode and have the ability to turn the chat off without it popping up from simply the mouse clicking above its area.

akasya.ethJun 14, 2023

This will be a tough decision. Even with multiple realms, we still experienced lag and delay issues. If we want to expand to millions of users, similar to Roblox, I believe multiple realm is required. *Personal opinion only. Not a ChatGPT.*

BaconGreaseJun 14, 2023

Exactly my point, the entire idea would have to be put up for a vote, a dozen people will say NO, it will not pass. I will stay in DCL if there is way to solo, but without that option I cannot play the games I love here.

paralaxJun 14, 2023

OK I think this is totally possible, it would be exploring Decentraland without being connected to comms so a user would not receive any nearby chat messages or see any users around.

web3nitJun 14, 2023

Hey please give it a try, stay in our Community. > The only thing that would keep me in this community is an option in the DCL settings for solo mode, some sort of toggle switch defaulted to OFF for the noobs that join, but allows those few of us that want the solo experience the option to stay in DCL. I support this idea.

web3nitJun 14, 2023

Thank you for this initiative, please consider Community members opinion here in comments.

web3nitJun 14, 2023

Hey @BaconGrease :wave: What do you think about this ? > This single-realm concept could offer a solo mode where you can either dive into the virtual world with others or have the whole place to yourself.

paralaxJun 14, 2023

The idea of having a solo mode in Decentraland can be on the table. I'm not entirely sure if it's something many users would be interested in, but hey, if there's a real concern within the community, why not give it a shot? This single-realm concept could offer a solo mode where you can either dive into the virtual world with others or have the whole place to yourself. Regarding the Voting Power, I'm personally backing this initiative, and my VP is sitting at a solid 150. The main goal here is to throw the idea out there, gather feedback, and make decisions based on what you all think. Decentraland is shaped by the community, so your opinions and preferences really matter.