[DAO:f585630] Update #1 for proposal "2dcl - DCL's 2D Alternate Universe: Deployment and Discovery"

Author: 0x270722b5222968603e4650c3b70a7dfb971ed5b6
Update Status: On Time
Project Health: :green_circle: On Track

Introduction

TL;DR: New 2dcl version on GitHub. See scenes at 2dcl site.

As a first step to make 2dcl easier to use, we spent this month working on implementing login and deployment flows. Both flows are now available and several rendering and scene processing fixes have been made.

We were also able to upload the list of active scenes to the website. This puts us a week ahead of schedule.

Highlights

For both the login and deployment flow, we implemented a local server to open a web page integrated with Metamask. In the future, other wallets could be added.

We primarily relied on Metamask examples, the code from Decentraland’s CLI (for deployment), and the contributor documentation. We also used some code implemented in the bevy explorer.

I wanted to give a special thanks to the Protocol Squad for documenting and providing reference implementations. The situation for external developers has greatly improved since our first grant, and we value their efforts immensely.

We faced one issue: we found a documentation gap/simple examples regarding uploading files to the catalyst servers. Loomstyla had to discuss with the catalyst team on Discord to get a concrete example of the request, as the API documentation is somewhat incomplete. Nonetheless, this didn’t hinder us too much; just a few days of reverse engineering from the CLI and asking questions on Discord.

With all this scene work, I’ve been thinking more about architectural issues.

Currently, we are reusing Scene entities from catalyst. These entities were created for the 3D scenes of the official explorer. We use them by creating a 2dcl directory and uploading everything related to 2dcl there.

While working on deployment, I wondered if we could create our scene (Scene2d or something similar). Browsing the documentation, I noticed catalyst validates the entity format, which I find appropriate. The result of this validation is that one cannot create new entities, and without a Custom entity, we’re limited.

I was told this would turn catalyst into an S3 bucket. I won’t opine on this, as I don’t feel I have the full context or understand the implications.

Yet, there were two recommended solutions, both highlighting the open and distributed nature of the project:

  1. Launch a dedicated Catalyst for 2dcl, allowing us to create any entities. We won’t pursue this short term, but this capability underscores Decentraland’s advantage over other multiverses.
  2. Start a DAO process to add the Scene2d entity. This possibility of an outsider proposing a change, even if not in the foundation’s interest, represents direct democracy in action.

It’s noteworthy how both solutions lean towards decentralization, aligning with the project’s vision. It’s great to see consistency in the world :grin:.

I’d love to hear your thoughts on which path to take. Should we launch our catalyst or propose adding a new entity?

Blockers

At this moment, we don’t have any blockers beyond the issue with the scenes. It’s not fully hindering us, but it would be good to proceed with one of the two solutions.

Next steps

We will integrate the scenes database into the client.

On the other hand, during September and October, I’d like to have calls with LAND owners who are interested in uploading 2D scenes to guide them through the process.

I will also be recording a video in September to show the step-by-step process for uploading scenes.

Additional notes and links

New version of 2dcl: https://github.com/2dcl/2dcl/releases
List of scenes: https://2dcl.org/scenes/
Every two weeks we post updates on our blog: https://blog.hiddenpeople.club/

View this update on the Governance dApp

2 Likes