Перейти к содержимому

AI Player

Minecraft-мод, цель которого — добавить в игру «второго игрока», который действительно будет разумным.

Fabric
Загрузчики
Fabric
Скачиваний на Modrinth
174 тыс.
Подписчиков на Modrinth
303
версий
25
Обновлён
13 августа 202613 авг.
Опубликован
в 2024
Spawning a bot "Steve" — Command: /bot spawn <BotName> For testing purposes, please keep the name to Steve. · свайп

Коротко о моде

Работает на Fabric
Для Minecraft 1.21.1, 26.1–26.2 …
Работает и в игре, и на сервере — ставьте, где нужен
Последняя версия — 1.0.6.1-release+26.1 от 13 августа 2026
Нужен Carpet и Fabric API
Лицензия GPL-2.0-or-later — бесплатно
Где нужен
В игренеобязателенНа серверенеобязателен

Работает и в игре, и на сервере — ставьте, где нужен

Версии игры1.20.6, 1.21.1, 26.1–26.2 …
Описание переведено автоматическиПоказать оригинал (EN)

Пожалуйста, прочитайте этот раздел.

Этот проект на данный момент является результатом тысяч часов бесконечных исследований, проб и ошибок, и просто простой цели — максимально избавить Minecraft от одиночества. Если вам понравилась моя работа, пожалуйста, подумайте о донате, чтобы я мог спокойно продолжать работать над этим проектом и действительно доказать своим родителям, что моя работа имеет значение. (А также чтобы не пришлось просить карманные деньги у мамы).

Просто знайте, что я никогда не откажусь от этого проекта.

Купите мне кофе

https://buymeacoffee.com/shasankp000

Paypal

https://paypal.me/shasankp000


Текущий этап разработки мода

Поскольку в этом месяце начался новый семестр в моём колледже, я буду под очень сильным давлением, так как мне нужно изучать 11 предметов в общей сложности (машинное обучение, линейная алгебра, физика, кибербезопасность и многое другое, лол). Но не волнуйтесь, я не перестану работать над этим проектом, просто обновления будут выходить довольно медленнее.

Вполне понятно, если вы к тому времени уйдёте или забросите этот проект, так что я не буду против. :))

Спасибо вам всем от всего сердца за поддержку. Я никогда не представлял, что мы зайдём так далеко.

Последнее обновление: 21/8/2025 в 04:08 утра IST (индийское стандартное время)

Пожалуйста, наберитесь терпения в ожидании обновлений. Поскольку я единственный человек, работающий над этим проектом, мне действительно нужно время, чтобы решить все проблемы/добавить новые функции.


Список изменений v1.0.5.2-release+1.21.1

Важно: ранее предложенные функции второй части будут добавлены в следующем патче, и это новое обновление знаменует конец поддержки 1.20.6 и ниже.

Благодаря https://github.com/arichornlover AI Player теперь обновлён до версии 1.21.1

Это небольшое обновление AI player обновляет мод до версии 1.21.1, а также добавляет поддержку других пользовательских API-провайдеров.

Поддержка пользовательских провайдеров, совместимых с OpenAI

Эта функция позволяет использовать альтернативных AI-провайдеров, совместимых со стандартом OpenAI API, таких как OpenRouter, TogetherAI, Perplexity и других.

Как использовать

1. Включите режим пользовательского провайдера

Установите системное свойство (аргумент JVM) при запуске игры:

-Daiplayer.llmMode=custom

2. Настройте параметры API

  1. Сначала удалите существующий settings.json5 в папке config (сохраните все api-ключи в другом месте на время)
  2. Откройте экран настройки API-ключей в игре (/configMan) и затем нажмите кнопку API Keys.
  3. Заполните следующие поля:

    • Custom API URL: базовый URL вашего провайдера (например, https://openrouter.ai/api/v1)
    • Custom API Key: ваш API-ключ для провайдера
  4. Нажмите сохранить. Если вы не видите список моделей сразу, нажмите кнопку "Refresh Models" один или два раза.
  5. Если вы всё ещё не видите список моделей, закройте менеджер конфигурации, введите /configMan снова, и вы должны увидеть список доступных моделей.
  6. ollama всё ещё требуется держать открытым в фоне из-за используемой модели эмбеддингов, но я полностью отделю это в следующем мини-патче, добавив эмбеддинг API-эндпоинт от провайдеров, а также обновившись до модели embedddinggemma с nomic-embed-text

3. Выберите модель

Система автоматически получит доступные модели с эндпоинта /models вашего провайдера и отобразит их в интерфейсе выбора модели.

Поддерживаемые провайдеры

Должен работать любой провайдер, реализующий стандарт OpenAI API. Несколько примеров:

  • OpenRouter: https://openrouter.ai/api/v1
  • TogetherAI: https://api.together.xyz/v1
  • Perplexity: https://api.perplexity.ai/
  • Groq: https://api.groq.com/openai/v1
  • Локальный LM Studio: http://localhost:1234/v1

Совместимость с API

Реализация кастомного провайдера использует следующие эндпоинты OpenAI API:

  • GET /models — для получения списка доступных моделей
  • POST /chat/completions — для отправки запросов на генерацию ответов в чате

Ваш провайдер должен поддерживать эти эндпоинты с тем же форматом запросов и ответов, что и OpenAI API.

Решение проблем

  • "Custom provider selected but no API URL configured": убедитесь, что вы заполнили поле Custom API URL
  • "Custom API key not set in config!": убедитесь, что вы заполнили поле Custom API Key
  • Пустой список моделей: проверьте, что ваш API-ключ действителен, а URL указан верно
  • Ошибки подключения: убедитесь, что URL провайдера доступен и поддерживает формат OpenAI API

Список изменений v1.0.5.1-release+1.20.6-bugfix-2

  • Исправлено множество багов, которые были упущены на предыдущем этапе тестирования.

Список изменений v1.0.5.1-release+1.20.6

Я понял, что многие обещания из прошлого анонса были слишком амбициозными, чтобы уложиться в одно обновление. Чтобы разработка шла гладко, этот релиз — первая часть обновления из двух.

Это обновление сосредоточено на переписывании ключевых систем и улучшении принятия решений ИИ, закладывая основу для следующей волны функций.

Также поддержка версий ниже 1.20.6 была прекращена из-за изменений в кодовой базе, которые я просто не могу перенести в одиночку. Впрочем, другие могут свободно портировать мод на более низкие версии.

В грядущей второй части обновление для 1.20.6 станет финальным для 1.20.6, а также выйдет новое обновление сразу для 1.21.6, с которого и будут продолжаться будущие версии.


Что нового в 1.0.5.1

Переработанная система NLP

  • Полностью переработана обработка естественного языка (NLP) — больше никаких "Я не смог тебя понять."
  • Это новая экспериментальная система, которую я проектировал и тщательно тестировал последний месяц.
  • Результаты многообещающие, но пока не дотягивают до моих личных стандартов — ждите дальнейших доработок в будущих обновлениях.

Переписанная система RAG и базы данных (с веб-поиском)

  • Новая система Retrieval-Augmented Generation (RAG), интегрированная с базой данных и веб-поиском.
  • Теперь ИИ выдаёт точную фактическую информацию о Minecraft, что резко снижает количество галлюцинаций.
  • Поддерживаемые поисковые провайдеры:

    • Gemini API
    • Serper API
    • Brave Search API (в разработке, перенесу это в следующий патч)

Слой мета-решений

  • Добавлена система цепочек задач:

    • Вы даёте высокоуровневую инструкцию → бот автоматически разбивает её на более мелкие задачи → выполняет шаг за шагом.
Текущие поддерживаемые задачи:
  • Перейти к локации
  • Перейти к локации и добыть ресурсы
  • Обнаружить ближайшие блоки и сущности
  • Сообщить статистику (здоровье, кислород, голод и т. д.)

Интеграции с API

AI Player теперь поддерживает несколько LLM-провайдеров (настраиваются через API-ключи):

  • OpenAI
  • Anthropic Claude
  • Google Gemini
  • xAI Grok

Инструмент веб-поиска

Если вы выберете Gemini Search в качестве инструмента веб-поиска для LLM, он автоматически использует API-ключ, который вы указали как ключ вашего LLM-провайдера в файле settings.json5.

Для поиска через https://serper.dev/ получите API-ключ на serper.dev, затем перейдите в папку config в игре, откройте ai_search_config.json и вставьте ключ:

Содержимое json-файла веб-поиска

(Примечание: я не смог протестировать всё это сам, кроме Gemini API, так как API-ключи дорогие, но интеграции готовы.)


Исправления багов

  • Исправлен баг, из-за которого не читались аргументы JVM.
  • Удалён owo-lib. AI-Player теперь использует собственную систему конфигов.
  • Исправлены проблемы с сохранением API-ключей.
  • Добавлена новая система определения лаунчера. Поскольку лаунчер Modrinth конфликтовал своей собственной системой путей к переменным, QTable не загружался. Поддерживаются: Vanilla MC Launcher, Modrinth App, MultiMC, Prism Launcher, Curseforge launcher, ATLauncher и даже неизвестные лаунчеры, которые по умолчанию не поддерживались бы, при условии, что они следуют схемам путей ванильного лаунчера Minecraft.
  • Переработан интерфейс Config Manager — теперь он адаптивный, а также добавлен поиск по провайдерам с большим количеством моделей (например, gemini).

Config Manager New UI with search options and responsive UI


Заметки о разработке

  • Хотя это обновление может показаться небольшим на первый взгляд, проектирование систем, написание кода и отладка заняли огромное количество времени.
  • Вдобавок ко всему, я взял ещё несколько фриланс-контрактов и мне нужно сосредоточиться на дипломном проекте.
  • Обновления будут продолжаться — просто медленнее.

Скоро во второй части

Вот что запланировано в следующем патче:

  • Улучшения боя и выживания

    • Бот использует оружие (включая дальнобойное) для отражения мобов.
    • Улучшения модуля рефлексов.
    • Больше естественных взаимодействий с миром (например, сон ночью).
  • Улучшенный прокладчик пути

    • Более умная навигация через воду и сложный рельеф.
  • Система самостоятельной постановки целей

    • Бот сам ставит себе цели, как настоящий игрок.
    • Будет начинать разговоры с игроками и двигаться автономно.
  • Система настроения (на стадии проектирования)

    • Добавляет эмоциональный контекст и разнообразное поведение.
  • Интеграция Player2

    • Очень востребовано — это будет первая крупная функция второго обновления.

Предстоящие изменения (некоторые из них могут появиться во втором патче).

  1. Переход на Deep-Q обучение вместо традиционного q-learning (TLDR: использовать нейросеть вместо таблицы)
  2. Создать собственный код передвижения для бота для точного перемещения вместо серверного кода передвижения из carpet.
  3. Реализовать рассуждения на уровне человеческого сознания??? (в какой-то степени, возможно) (БОЛЬШОЕ ВОЗМОЖНО)

Текущие баги в этой версии :

  • Нашёл ещё несколько багов, исправление выйдет завтра.

Описание мода

Когда-нибудь чувствовали себя одиноко, играя в minecraft в одиночку в течение той двухнедельной фазы? Что ж, этот мод призван решить проблему одиночества, причём не только для этого конкретного случая, но даже (надеюсь, в будущем) для игры на мультиплеерных серверах.

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

Обратите внимание, что это не какой-то коммерческий AI-продукт. Этот проект — просто решение проблемы, с которой сталкивались и продолжают сталкиваться многие игроки в Minecraft.


Что делает этот мод?

На данный момент этот мод добавляет второго спавнящегося игрока (или бота) через carpet mod, и вы можете общаться с ним через большую языковую модель через ollama полностью офлайн на своём пк, и на данный момент я интегрировал обучение с подкреплением, чтобы бот взаимодействовал с окружением и учился на нём в контексте "рефлекторных действий".

Обучение на основе целей будет добавлено в ближайших обновлениях.

Этот мод также зависит от мода owo-lib для обработки конфигурации.

Этот мод опирается на внутренний код мода Carpet, пожалуйста, поставьте звезду репозиторию мода: https://github.com/gnembon/fabric-carpet (Отдаём должное)

Этот мод также опирается на проект ollama4j. https://github.com/amithkoujalgi/ollama4j


Требования для установки

Требуется последняя версия Fabric api.

Требуется версия мода Carpet, указанная в разделе зависимостей


Пример видео мода (по состоянию на версию 1.0.5.1)

https://streamable.com/imko3x?src=player-page-share


Пример видео мода (по состоянию на версию 1.0.3-alpha-1)

Видео с изменениями (по состоянию на текущую версию 1.0.3-alpha-2)

лучшие и более быстрые рефлексы, сокращённое время обучения.

реакция на окружение

Скоро видеоурок на YouTube


Руководство по установке и настройке

Шаг 1: Установите Java 21

Для работы этого проекта требуется Java 21.

  • Скачайте Java 21 с BellSoft JDK 21 LTS.

  • В Windows: нажмите Download MSI и завершите установку.

  • В Linux: установите через ваш пакетный менеджер, например

    sudo apt install openjdk-21-jdk

Шаг 2: Установите Ollama

Перейдите на

https://ollama.com/

Скачайте версию для вашей операционной системы.

После установки запустите ollama с рабочего стола. Это запустит сервер ollama.

Доступ к нему можно получить через системный трей

image


Шаг 3: Настройте модели Ollama

Откройте командную строку (CMD/Терминал) и выполните:

ollama pull nomic-embed-text   # Embedding model (required)
ollama pull qwen3:8b           # Preferred language model (used in testing)

Для тех, кто пользовался ранее:

ollama rm gemma2               # Remove old model if installed
ollama rm llama2               # Remove old model if installed
ollama rm llama3.2             # Remove old model if installed

Если вы уже запускали мод раньше, удалите старый конфиг:

.minecraft/config/settings.json5

✅ Убедитесь, что сервер Ollama запущен, прежде чем запускать игру.


Шаг 4: Скачайте зависимости

Убедитесь, что все необходимые зависимости (включая Carpet mod) установлены.


Шаг 5: Настройка аргументов JVM

Перед запуском игры необходимо указать следующий аргумент JVM:

-Daiplayer.llmMode=<provider>

Примеры:

  • Локальный Ollama (по умолчанию):

    -Daiplayer.llmMode=ollama
  • OpenAI:

    -Daiplayer.llmMode=openai
  • Anthropic Claude:

    -Daiplayer.llmMode=claude
  • Google Gemini:

    -Daiplayer.llmMode=gemini
  • xAI Grok:

    -Daiplayer.llmMode=grok

Шаг 6: Настройте API-ключи

В Config Manager теперь есть отдельный раздел для ввода API-ключей для всех поддерживаемых провайдеров.

  • Для локальных моделей вы можете выбрать предпочитаемую Ollama LLM.
  • Для хостинговых провайдеров введите соответствующие API-ключи.

⚠️ Примечание: Ollama должна быть всегда запущена, так как embedding-модель (nomic-embed-text) локальная и обязательная.


Шаг 7: Запустите игру

  • Запустите Minecraft.
  • Перед загрузкой мира (если вы в одиночной игре), когда экран загрузки мира достигнет 100%, может немного лагнуть (или нет) из-за загрузки NLP-модели в игре
  • Перед загрузкой мира подождите, пока не увидите все папки в структуре с такими файлами: NLP Models directory structure
  • Эти файлы скачиваются только один раз, так что это только при первом использовании этой версии.
  • Оказавшись в игре, если вы использовали провайдера, отличного от ollama, в аргументе JVM, используйте config manager, чтобы выбрать нужную LLM/провайдера и задать их API-ключи.
  • Введите следующую команду, чтобы заспавнить вашего бота:
/bot spawn <yourBotName> <training|play>
  • training → Спавнит бота в режиме обучения (не подключается к LLM).
  • play → Обычный режим с полным набором AI-функций.

Важные примечания

  • Лучше создать отдельный модпак для этого мода, так как Ollama должна работать в фоне всякий раз, когда вы играете.
  • Сама Ollama использует минимум памяти, так что на производительность это сильно не повлияет.

Инструмент веб-поиска

Если вы выберете Gemini Search в качестве инструмента веб-поиска для LLM, он автоматически использует API-ключ, который вы указали для своего провайдера LLM в файле settings.json5.

Для поиска через https://serper.dev/ получите API-ключ на serper.dev, затем перейдите в папку config в игре, откройте ai_search_config.json и вставьте ключ:

Содержимое json-файла веб-поиска


Внутриигровые команды

Основная команда:

/bot

Пример использования:

/bot spawn Steve training

Обновлённый синтаксис предоставлен Mr. Álvaro Carvalho.

Так как мод зависит от Carpet, вы также можете спавнить ботов с помощью команд Carpet. Если вы играете в офлайн-режиме, рекомендуется использовать встроенную команду спавна из мода.


Важно

Также помните: если вы используете этот мод, лучше создать для него отдельный модпак, так как вам придётся запускать сервер ollama в фоне каждый раз при запуске самой игры. Сам сервер Ollama не потребляет много памяти, так что всё должно быть в порядке.


В игре

Основная команда

/bot

Подкоманды:

Многие команды изменились с прошлой версии. Пожалуйста, проверьте список изменений последней версии.

Пример использования:

/bot spawn Steve training

За изменение синтаксиса вышеупомянутой команды спасибо Mr. Álvaro Carvalho

И да, поскольку этот мод зависит от carpet mod, вы также можете спавнить бота с помощью команд carpet mod и попробовать мод. Но если вы играете в офлайн-режиме, то я рекомендую использовать встроенную команду спавна из мода.


Частые вопросы

Как установить AI Player?

Установите Fabric под свою версию Minecraft, скачайте AI Player под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть AI Player?

У AI Player есть сборки для Minecraft 1.20.4, 1.20.6, 1.21.1, 26.1–26.2 ….

Нужен ли AI Player на сервере?

Работает и в игре, и на сервере — ставьте, где нужен

Лицензия и источник
GNU General Public License v2.0 or laterможно использовать и распространять; изменённые версии — под той же лицензией и с исходным кодом
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее