| ?? Английский | ?? Русский | ?? португальский |
|---|
Клиент Minecraft, работающий на веб -странице. Живая демонстрация на https://prismarinejs.github.io/prismarine-web-client/
Prismarine-Web-Client запускает MineFlayer и Prismarine-Viewer в браузере, который подключается через WebSocket с прокси, который переводит соединение WebSocket в TCP для подключения к обычным серверам Minecraft. Prismarine-Web-Client основан на:
Проверьте эти модули, если вы хотите узнать больше, как это работает и внести свой вклад!

Нажмите на эту ссылку, чтобы открыть ее в своем браузере, не требуется установка: https://prismarinejs.github.io/prismarine-web-client/
Протестировано на Chrome & Firefox для настольных платформ.
Чтобы разместить его самостоятельно, запустите эти команды в Bash:
$ npm install -g prismarine-web-client
$ prismarine-web-client Наконец, откройте http://localhost:8080 в вашем браузере.
Если вы вносите/вносите изменения, вам нужно установить его по -разному.
Во -первых, клонировать репо.
Затем установите свой рабочий каталог для репо. Например:
$ cd ~ /prismarine-web-client/Наконец -то беги
$ npm install
$ npm startЭто запустит Express и WebPack в режиме разработки; Всякий раз, когда вы сохраняете файл, сборка будет переделана (она занимает 5 с), и вы можете обновить страницу, чтобы получить новый результат.
Подключитесь к http: // localhost: 8080 в вашем браузере.
Возможно, вы захотите отключить автоматическую экономию в своей IDE, чтобы избежать постоянного восстановления; См. https://webpack.js.org/guides/development/#adjusting-your-text-editor.
Чтобы проверить производственную сборку (займет минуту, чтобы построить), вы можете запустить npm run build-start .
Если вы заинтересованы в участии, вы можете проверить проекты по адресу https://github.com/prismarinejs/prismarine-web-client/projects.
Некоторые переменные выставлены в глобальном объекте window для отладки:
botviewermcDataworldViewVec3pathfinderdebugMenuDebugmenu.customentries ['mykey'] = 'myvalue' Delete Debugmenu.customentries ['mykey']
В Chrome Devtools:
bot.chat('test') позволяет использовать чатbot.chat(JSON.stringify(Object.values(bot.players).map(({username, ping}) => ({username, ping})))) отображать пинг всехwindow.bot.entity.position.y += 5 прыжковbot.chat(JSON.stringify(bot.findBlock({matching:(block) => block.name==='diamond_ore', maxDistance:256}).position)) находит положение алмазного блокаbot.physics.stepHeight = 2 позволяет ходить вокруг блоковbot.physics.sprintSpeed = 5 прогулок быстрееbot.loadPlugin(pathfinder.pathfinder) Тогда bot.pathfinder.goto(new pathfinder.goals.GoalXZ(100, 100)) переходит в положение 100, 100Для получения дополнительной отладки идей прочитайте Doc Mineflayer.