представлять

Dark Forest — это децентрализованная стратегическая игра, основанная на блокчейне Ethereum. В игре игроки могут собирать ресурсы, строить базы, разрабатывать технологии, собирать оружие и сражаться с другими игроками, конкурируя за ресурсы.

В Dark Forest каждый игрок управляет своей планетой и ему необходимо собирать ресурсы, строить базы и развивать технологии на планете, чтобы улучшить свои боевые возможности. Игроки могут использовать здания по производству ресурсов, технологические исследования и предприятия по производству оружия, чтобы получить преимущество в бою.

Когда игроки летают через межзвездное пространство, им необходимо открывать другие планеты и ресурсы посредством постоянной разведки и исследования. Когда два игрока одновременно обнаруживают одну и ту же планету, они могут либо атаковать планету, либо сбежать. При атаке игрокам необходимо использовать собственное оружие, чтобы атаковать базу противника и захватить ресурсы противника.

Особенностью Dark Forest является то, что игра полностью основана на технологии блокчейна. Планета и ресурсы каждого игрока хранятся в блокчейне и не могут быть изменены или удалены. Кроме того, Dark Forest также является децентрализованной игрой (DeGame). Центрального сервера для управления игровым процессом нет, но он поддерживается совместно и принимается всеми игроками.

Dark Forest также является первой игрой, в которой система тумана войны представлена ​​в полноцепной децентрализованной игре, что было подтверждено V God. В этой статье мы подробно разберем ее, чтобы изучить, как такую ​​стратегическую игру в реальном времени можно реализовать в среде полной цепочки. Буквально 1 апреля @DfArchon объявил, что скоро будет проведен «Раунд сообщества». Заинтересованные студенты также могут принять участие в тесте.

Начнем с типов игр и сравним MMORPG и MMORTS-игры:

MMO - ролевая игра: многопользовательская ролевая онлайн-игра, открытый мир, в игре есть начало и конец. Увлекательность игры заключается в захватывающем переживании сюжета и метавселенной игрового мира. Например, Мир Варкрафта. Игра MMO-RTS: многопользовательское онлайн-стратегическое противостояние, относительно небольшой закрытый мир, игровой раунд, имеющий начало и конец. Веселье игры заключается в многопользовательском противостоянии, на фоне которого необходимы стратегии для получения ресурсов. развитие, а затем уничтожить врага. Типичными представителями являются StarCraft и Warcraft, каждая игра длится 20-40 минут. DF — это игра MMORTS, поскольку одновременно может участвовать много людей (до тысяч человек), а TPS блокчейна ограничен, продолжительность раунда составляет около 10 дней. Результат зависит от рейтинга. Рейтинг В основном за счет ресурсов, полученных в игре (бесплатное приобретение в PVE и добыча в PVP). Что касается того, как поставить игру на паузу на блокчейне, пока не совсем ясно. Реальная работа предложения

Когда были только официальные официальные раунды, для входа в систему и участия требовался пригласительный код (ключ). Теперь с помощью функции лобби каждый может создать свой собственный раунд, поэтому существует так называемый раунд сообщества (аналог раунда сообщества). ). Конкурс). Перейдите на домашнюю страницу https://zkga.me/ и нажмите «Создать лобби», чтобы перейти на страницу настроек лобби, как показано ниже.

Настройки игры: Скорость игры можно изменить, изменив скорость восстановления энергии/серебра и скорость плавания. Размер мира: измените размер карты, изменив радиус вселенной. Тип пространства и биом: выберите игровую карту. Планеты: установите основные параметры планет. Спаун игрока: генерирует настройки параметров игрока. Космический мусор: настройки параметров для этой игровой реквизита. Зоны захвата: настройки параметров зоны захвата. Артефакты: настройки параметров игрового реквизита. Разрешения администратора: укажите, следует ли открывать белый список игроков. Расширенные настройки параметров Snarks: Fog of War.

Дополнительные советы по использованию лобби можно найти в этом официальном ответе:

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

Темный лес на первый взгляд выглядит сложным, но его основные правила игры на самом деле очень просты: у планет есть энергетические значения, которые уменьшаются с расстоянием. Прыжок между планетами означает нападение друг на друга, а результат атаки основан на определении значения энергии. после затухания. Конечно, уже есть множество статей и видеороликов, описывающих, как играть в игру, поэтому более подробно делиться ими здесь я не буду.

Анализ документации разработчика

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

В документации для разработчиков содержатся некоторые пояснения по архитектуре разработки игр, предназначенные для разработчиков подключаемых модулей, разработчиков веб-клиентов, разработчиков игровых контрактов и разработчиков схем ZK.

Подключитесь к блокчейну

Игра работает на втором уровне xDai, который теперь называется Gnosis Chain. Поскольку во время работы игра требует большого взаимодействия с контрактом, в ней есть встроенные узлы RPC. Команда Gnosis даже открыла специальный игровой узел для этой игры.

Плагины

Dark Forest позволяет игрокам настраивать веб-клиент по умолчанию с помощью системы плагинов. Плагины — это фрагменты кода, которые игроки могут писать для создания альтернативных представлений игровых данных, автоматизации общих игровых процессов или даже изменения оформления игры. По сути, Dark Forest позволяет игрокам программно взаимодействовать с сетевым клиентом любым удобным для них способом.

Добыча

Ключевой механикой Dark Forest является криптографический туман войны. Когда вы впервые присоединяетесь к игре, вы понятия не имеете, где находятся другие игроки. Игроки должны вычислять хэши, чтобы обнаруживать интересные места во вселенной, например планеты и местоположения других игроков. Эти хеши сохраняются в локальном хранилище браузера и рассматриваются как секретные данные. По умолчанию веб-клиент Dark Forest по умолчанию использует однопоточный майнер Javascript для исследования вселенной, но есть различные вещи, которые вы можете сделать, чтобы увеличить скорость хеширования, например, изменить ядра ЦП рядом с кнопкой майнинга. Если вы попытаетесь установить количество ядер больше, чем фактическое количество ядер вашего компьютера, производительность вашего майнера выйдет на плато.

Когда майнер игрока обнаруживает карту областей вселенной, веб-клиент сохраняет информацию, относящуюся к этим неоткрытым областям, в локальное хранилище браузера. Dark Forest сохраняет данные в IndexedDB. Игроки также могут выступать в роли майнеров, исследующих карты локаций, запустив удаленный сервер.

Подкрадывание

Dark Forest основан на технологии ZK-Snark — криптографическом методе, который можно использовать для доказательства правильности функции без раскрытия ее входных данных или логики. Dark Forest использует эту технологию, чтобы проверять правильность игровых ходов, не раскрывая местоположение планеты людям, шпионящим за цепочкой. Этот метод (генерация доказательств Zk-snark) требует очень больших вычислительных затрат! Таким образом, это ZK-Proof переносит вычисления за пределы браузера и требует локального запуска Node.JS. Конечно, игра также позволяет использовать удаленный сервер для запуска этой службы.

Подведем итог

Поскольку Dark Forest — это высокоинновационная полносетевая игра, разработка действительно идет медленно. Одна из возможных причин заключается в том, что это проект, реализуемый сообществом. Хотя он может обеспечить децентрализацию, он также влияет на эффективность развития. Последний официальный раунд состоялся в феврале 2022 года. Обновление веб-клиента было выпущено в октябре 2020 года, а обновления сторонних плагинов (сообщества) все еще немного активны, включая ночной рынок (анонимная торговля планетарными координатами) в июле 2022 года и лобби в марте 2022 года.