Dark Forest ARES: Milestone 3 Submission and request for feedback

GM optimism!
On behalf of the DFArchon team, I am excited to announce that we have reached Milestone 3 of Dark Forest ARES project, which received an OP grant in Season 5, Cycle 22 .

In this post, we outline our achievements and the upcoming steps. We encourage everyone, especially those interested in innovative game mechanics, to join our community, try out the game, and share your feedback!

What is Dark Forest MUD?

Dark Forest ARES(DFAres) is a community-run development of Dark Forest powerd by DFArchon team. From early 2023 to mid-2024, we developed four versions of DFAres. The code architecture of DFAres is based on the diamond standard (ERC2535).

Since August, we began the process of porting Dark Forest to the MUD engine. For promotional purposes, we renamed the project to Dark Forest MUD, while the development content continues to follow the submitted milestones.

We redesigned the code structure for both the smart contracts and the frontend, replacing many components of the project’s tech stack.

In late October, we held Dark Forest MUD v0.1 Round 1, a six-day public testing event on Redstone mainnet. Players submitted approximately 122,880 transactions, using approximately 90,562,163,600 gas.

What we delivered

  1. We have redesigned the organization of the game’s underlying data and logic architecture. To enhance code composability, the MUD engine follows an ECS (Entity-Component-System) design, where data is stored in tables and the logic for operations is placed in systems, enabling a clear separation between data and operational logic. Following this design principle, we categorize game entities into three main groups: planets, players, and artifacts, each with specific protocols. The protocol design for each entity includes the structure of data, the specific operations for data updates, and reserved interfaces to support interoperability with other entity protocols.

  2. In terms of smart contracts, we transitioned from the diamond (ERC2535) architecture to the MUD engine’s architecture. So far, we have developed the architecture for three main protocols: planets, players, and artifacts. We have fully implemented the planets protocol and completed approximately 60% of the players protocol.

  3. Variable-rate game tick system. Previously, game states were updated strictly based on block time. We have now implemented a tick system on top of block time, where all in-game state updates are driven by ticks. The variable-rate game tick system allows for pausing and resuming the game, as well as dynamically adjusting the rate of in-game state updates.

  4. The frontend tech stack has been updatedand can be mainly divided into the following three aspects:
    4.1. We have upgraded the build tool from Webpack to Vite and performed extensive version updates on various underlying dependencies, addressing numerous compatibility issues.
    4.2. The frontend data update module has transitioned from a data update model based on smart contract events to one that utilizes the MUD engine’s tables for data updates.
    4.3. To reduce the onboarding barrier for users, we have updated the logic of the onboarding pages in the frontend.

Relevant Information

Open Source Code: GitHub - dfarchon/darkforest-mud

Game address: https://r1.dfmud.xyz/ or https://dfmud-r1.netlify.app/

Blockchain explorer: Redstone address details for 0x3aB26A1CF79e5B30F39e8C53dad4627Fa6384a60 | Blockscout

Dark Forest MUD v0.1.1 Player guide

What’s next

You can review all of the upcoming milestones and deliverables on CharmVerse.

Our next step is to develop underlying interfaces for player actions and game data analysis, enabling developers and players to create plugins tailored to their needs. We will also fix commonly used player plugins.

Additionally, we plan to introduce artifacts to further enrich the game content.

Feedback and feature requests

We hope to hear your feedback on our development content and design ideas, as well as any features you would like to see introduced in future development.

You can find the game website and open source code in Relevant Information or Open Source Code section.

Contact info

Please reach out to us by commenting here or using any of the contact information below. We would love to hear your feedback or help you with any issues or ideas related to the explorer.

Stay Optimistic! :love_you_gesture: