introducir

Dark Forest es un juego de estrategia descentralizado basado en la cadena de bloques Ethereum. En el juego, los jugadores pueden recolectar recursos, construir bases, desarrollar tecnología, recolectar armas y luchar con otros jugadores para competir por los recursos.

En Dark Forest, cada jugador controla su propio planeta y necesita recolectar recursos, construir bases y desarrollar tecnología en el planeta para mejorar sus capacidades de combate. Los jugadores pueden utilizar edificios de producción de recursos, investigación tecnológica e instalaciones de fabricación de armas para obtener ventaja en el combate.

A medida que los jugadores vuelan a través del espacio interestelar, necesitan descubrir otros planetas y recursos a través del reconocimiento y la exploración constantes. Cuando dos jugadores descubren el mismo planeta al mismo tiempo, pueden elegir atacar el planeta o escapar. Al atacar, los jugadores deben usar sus propias armas para atacar la base del oponente y apoderarse de sus recursos.

La característica de Dark Forest es que el juego se basa completamente en la tecnología blockchain. El planeta y los recursos de cada jugador se almacenan en la cadena de bloques y no pueden alterarse ni eliminarse. Además, Dark Forest también es un juego descentralizado (DeGame). No hay un servidor central para controlar el proceso del juego, pero todos los jugadores lo mantienen y lo deciden conjuntamente.

Dark Forest es también el primer juego que introduce el sistema de niebla de guerra en un juego descentralizado de cadena completa, lo cual ha sido confirmado por V God. Lo desmantelaremos en profundidad en este artículo para explorar cómo se puede implementar un juego de estrategia en tiempo real en un entorno de cadena completa. Recién el 1 de abril, @DfArchon anunció que pronto se llevará a cabo una "Ronda comunitaria" Los estudiantes interesados ​​también podrán participar en la prueba.

Comencemos con los tipos de juegos y comparemos los juegos MMORPG y MMORTS:

MMO - Juego de rol: juego de rol multijugador en línea, mundo abierto, el juego tiene un principio y un final. La diversión del juego radica en experimentar de manera inmersiva la historia y el mundo del metaverso. Por ejemplo, World of Warcraft. Juego MMO-RTS: enfrentamiento de estrategia multijugador en línea, un mundo cerrado relativamente pequeño, una ronda de juego que tiene un principio y un final. La diversión del juego radica en el enfrentamiento multijugador en el trasfondo de la historia. Se necesitan estrategias para obtener recursos. desarrollo y luego destruir al enemigo. Los representantes típicos son StarCraft y Warcraft, cada juego dura entre 20 y 40 minutos. DF es un juego MMORTS Debido a que hay muchas personas que pueden participar al mismo tiempo (hasta miles de personas) y el TPS de blockchain es limitado, la duración de una ronda es de aproximadamente 10 días. El resultado se basa en la puntuación de la escalera. ranking La puntuación Principalmente de los recursos obtenidos en el juego (adquisición gratuita en PVE y saqueo en PVP). En cuanto a cómo pausar el juego en blockchain, aún no está del todo claro. Operación de oferta real

Cuando solo había Rondas Oficiales, necesitabas un código de invitación (clave) para iniciar sesión y participar. Ahora, con la función de lobby, cualquiera puede crear su propia ronda, por lo que existe la llamada ronda comunitaria (similar a una ronda comunitaria). ). Concurso). Vaya a la página de inicio https://zkga.me/ y haga clic en "Crear Lobby" para ingresar a la página de configuración del Lobby, como se muestra a continuación.

Configuración del juego: La velocidad del juego se puede modificar cambiando la tasa de recuperación de energía/plata y la velocidad de navegación. Tamaño del mundo: cambia el tamaño del mapa modificando el radio del universo. Tipo de espacio y bioma: selecciona un mapa del juego. Planetas: establece los parámetros básicos de los planetas. Generación de jugadores: genera configuraciones de parámetros del jugador. Basura espacial: configuración de parámetros para este accesorio de juego. Zonas de captura: configuración de parámetros de la zona de captura. Artefactos: configuración de parámetros para los accesorios del juego. Permisos de administrador: establezca si desea abrir reproductores en la lista blanca. Configuración de parámetros avanzada de Snarks: Fog of War.

Para obtener más consejos sobre el uso de Lobby, consulte esta respuesta oficial:

https://blog.zkga.me/introduciendo-dark-forest-lobbies

Dark Forest parece complicado en la superficie, pero las reglas básicas del juego son en realidad muy simples: los planetas tienen valores de energía, que decaerán con la distancia. Saltar entre planetas significa atacarse entre sí, y el resultado del ataque se basa en determinar el valor de energía. después de la atenuación. Por supuesto, ya hay muchos artículos y vídeos que describen cómo jugar, así que no los compartiré con más detalle aquí.

Análisis de documentos del desarrollador.

https://dev-guides.zkga.me/

La documentación para desarrolladores proporciona algunas explicaciones marco sobre la arquitectura de desarrollo de juegos, dirigidas a desarrolladores de complementos, desarrolladores de clientes web, desarrolladores de contratos de juegos y desarrolladores de circuitos ZK.

Conéctate a la cadena de bloques

El juego se ejecuta en la capa 2 de xDai, que ahora es Gnosis Chain. Debido a que el juego requiere mucha interacción con el contrato durante la operación, tiene un nodo RPC incorporado. El equipo de Gnosis incluso abrió un nodo de juego dedicado para este juego.

Complementos

Dark Forest permite a los jugadores personalizar el cliente web predeterminado a través de un sistema de complementos. Los complementos son fragmentos de código que los jugadores pueden escribir para generar vistas alternativas de los datos del juego, automatizar procesos de juego comunes o incluso cambiar el aspecto del juego. Básicamente, Dark Forest permite a los jugadores interactuar mediante programación con el cliente de red de la forma que deseen.

Minería

La mecánica clave de Dark Forest es su niebla de guerra criptográfica. Cuando te unes a un juego por primera vez, no tienes idea de dónde están los demás jugadores. Los jugadores deben calcular hashes para descubrir puntos de interés en el universo, como planetas y las ubicaciones de otros jugadores. Estos hashes se guardan en el almacenamiento local del navegador y se tratan como datos secretos. De forma predeterminada, el cliente web predeterminado de Dark Forest utiliza un minero Javascript de un solo subproceso para explorar el universo, pero hay varias cosas que puede hacer para aumentar su tasa de hash, como cambiar los núcleos de la CPU al lado del botón de minería. Si intenta establecer una cantidad de núcleos superior a la cantidad real de núcleos de su computadora, el rendimiento de su minero se estabilizará.

Cuando el minero de un jugador descubre un mapa de áreas del universo, el cliente web guarda información relacionada con estas áreas no descubiertas en el almacenamiento local del navegador. Dark Forest guarda datos en IndexedDB. Los jugadores también pueden actuar como mineros explorando mapas de ubicación ejecutando un servidor remoto.

gruñendo

Dark Forest funciona con la tecnología ZK-Snark, una técnica criptográfica que se puede utilizar para demostrar la exactitud de una función sin revelar sus entradas o lógica. Dark Forest utiliza esta tecnología para verificar que los movimientos del juego sean válidos sin revelar la ubicación del planeta a las personas que husmean en la cadena. ¡Esta técnica (Generación de prueba Zk-snark) es computacionalmente muy costosa! Entonces, este ZK-Proof mueve el cálculo fuera del navegador y requiere que Node.JS se ejecute localmente. Por supuesto, el juego también permite el uso de un servidor remoto para ejecutar este servicio.

Resumir

Como juego de cadena completa muy innovador, el desarrollo de Dark Forest es realmente lento. Una posible razón es que se trata de un proyecto impulsado por la comunidad. Aunque puede garantizar la descentralización, también afecta la eficiencia del desarrollo. La última ronda oficial fue en febrero de 2022. La actualización de Webclient se realizó en octubre de 2020 y las actualizaciones de complementos de terceros (comunitarios) todavía están ligeramente activas, incluido el mercado nocturno (coordenadas planetarias de comercio anónimo) en julio de 2022 y el lobby en marzo de 2022.