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

StockMarket wAPI

Виртуальный фондовый рынок для Minecraft 1.21.1 (NeoForge) с новостями на основе ИИ и изменением цен в реальном времени в зависимости от спроса игроков. Использует собственную валюту (KABU) и зависит от aidbwapi_core для ИИ и хранения данных.

NeoForge
Загрузчики
NeoForge
Скачиваний на Modrinth
145
Подписчиков на Modrinth
0
версии
2
Обновлён
4 марта 20264 мар.
Опубликован
в 2026

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

Работает на NeoForge
Для Minecraft 1.21.1
Нужен и в игре, и на сервере
Последняя версия — 1.21.1-0.1.2 от 4 марта 2026
Лицензия Apache-2.0 — бесплатно
Где нужен
В игреобязателенНа сервереобязателен

Нужен и в игре, и на сервере

Версии игры1.21.1
Описание переведено автоматическиПоказать оригинал (EN)
  1. English / 2. 日本語

StockMarket wAPI Mod (stock_wapi)

Аутентичный мод виртуального фондового рынка для Minecraft 1.21.1 (NeoForge), в котором цены акций колеблются в реальном времени на основе экономических новостей, генерируемых ИИ, а также спроса и предложения игроков. Он включает двусторонний механизм обмена между уникальной валютой «KABU» и любыми предметами, позволяя любому легко торговать акциями через интерфейсы на табличках или команды. Вся обработка ИИ и хранение данных делегированы AI DataBase wAPI Core, что позволяет этому моду полностью сосредоточиться на «логике фондового рынка и игровом опыте».

ItemValue
Mod IDstock_wapi
Display NameStockMarket wapi mod
Versioning1.21.1-x.y.z (MC Version-SemVer, independent of core)
Requirementsaidbwapi_core required
LicenseApache License 2.0

🚀 Возможности и архитектура

1. Система колебания цен на основе ИИ (Рыночный движок)

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

  • Внутреннее случайное колебание: Естественное движение цены на основе базовой волатильности, заданной для каждого тикера.
  • Тенденция тренда: На основе начальной тенденции («Бычий / Медвежий / Нейтральный»), заданной для каждого тикера, тренд динамически меняется с определённой вероятностью (8%) во время каждого периодического обновления, формируя волны процветания и рецессии.
  • Влияние спроса и предложения игроков: Агрегирует объёмы покупок и продаж игроков за интервал обновления и отражает их в цене на основе логарифмической функции: $log_{10}(1 + |netDemand|)$. Это отражает действия участников рынка в цене, подавляя резкие колебания. Момент отражения спроса — «периодическое обновление», и цены не двигаются мгновенно в момент сделки.
  • Влияние рыночных настроений ИИ: Данные о рыночных тенденциях отправляются в LLM через aidbwapi_core, а «Оценка рыночных настроений (-N до +N)», возвращаемая ИИ, нормализуется и преобразуется в влияние на цену.
Механизмы безопасности цен
  • Цены акций управляются как целые числа. Диапазон колебаний за обновление ограничен максимумом ±10% (настраивается через конфиг).
  • Каждый тикер имеет минимальную цену (minPrice) и максимальную цену (maxPrice), и цена всегда ограничена этим диапазоном.
  • Механизм отскока: Вблизи минимальной цены понижающее давление ослабляется, а восходящая коррекция усиливается, чтобы цена не приближалась к нулю. Банкротство или делистинг не происходят.
Адаптивное масштабирование спроса (Adaptive Demand Scaling)

Общий объём транзакций сервера за последние 5 дней (по умолчанию: 120 обновлений) сохраняется как скользящее среднее, которое используется для автоматической нормализации влияния спроса и предложения. Даже если количество игроков или масштаб транзакций меняется, поддерживается подходящий баланс без ручной настройки конфига.

2. Генерация новостей ИИ (Рыночные новости)

Во время периодических обновлений данные о рыночных тенденциях (сводки колебаний для каждого тикера, настройки мира и т.д.) отправляются в aidbwapi_core, и ИИ генерирует текст экономических новостей и оценки рыночных настроений.

  • Во время периодических обновлений новости транслируются всем игрокам на сервере в формате [StockWapi] через чат. Если генерация ИИ не удалась, вместо этого транслируются резервные новости («Не удалось получить рыночные новости ИИ из-за ошибки связи. Рынок движется исключительно на основе технических факторов.»), и само обновление рыночной цены проходит нормально.
  • Последние новости и историю прошлых новостей (до 30 записей, с временными метками, сначала новые) можно просмотреть через /stockwapi news.
  • История новостей хранится бессрочно (хранится в GlobalDB).
Поведение при сбое ИИ

Если запрос к ИИ не удался (например, все модели недоступны), цена акции рассчитывается только с использованием других факторов с нулевым влиянием ИИ (sentiment=0). Резервные новости транслируются всем игрокам.

Для администраторов: Устранение ошибок ИИ
  1. /dbwapi ai errors — Проверить недавнюю историю ошибок (HTTP-коды статуса/причины).
  2. /dbwapi model list — Просмотреть статус всех моделей (Включена/Отключена, Штрафные баллы).
  3. `/dbwapi model enable .` — Восстановить модели, автоматически отключённые из-за ошибок аутентификации и т.д.
  4. `/dbwapi model reset .` — Сбросить штрафы и кулдауны.

3. Автогенерация описания компании ИИ (Company Description)

Когда администратор добавляет тикер, имя тикера отправляется в aidbwapi_core, и ИИ автоматически генерирует описание компании и сохраняет его в БД. Этот процесс выполняется только в момент регистрации. Если генерация ИИ не удалась, резервное описание («Описание компании в настоящее время недоступно.») автоматически сохраняется в БД. Игроки могут просмотреть описания компаний через команду `/stockwapi info или таблички. Чтобы вручную исправить или заменить описание компании, отредактируйте ключcompanyDesc_XXX в файле БД (stock_wapi_GlobalDatabase.json). Установка существующего описания компании в пустую строку (""`) и перезапуск сервера вызовет автоматическую регенерацию нового описания ИИ.

4. Уникальная валюта «KABU» и обмен предметов (Currency & Exchange)

Этот мод не зависит от внешних экономических модов и использует собственную валюту «KABU».

  • Название валюты: KABU (только целые числа, начальный баланс 0).
  • Баланс и лимиты транзакций: Максимальный баланс на игрока и лимит на одну транзакцию (включая торговлю акциями и обмен предметов) составляет 2 миллиарда KABU (2,000,000,000) (для предотвращения переполнения целых чисел и экономического коллапса).
  • Игроки могут обменивать любые предметы (включая ванильные и предметы из любого мода) двусторонне на KABU. Обмен можно совершать через интерфейс на табличках или команды.

  • Можно зарегистрировать несколько предметов с разными курсами (например, Diamond = 100 KABU, Gold Ingot = 10 KABU). Регистрация целей обмена выполняется через админ-команду (/stockwapi admin setrate), а информация о курсах сохраняется в config/stock_wapi-exchange.json.
Механизмы безопасности обмена предметов
  1. Предварительное сканирование инвентаря: Чтобы избежать ошибок частичного расходования из-за особенностей ванильной игры, перед процессом обмена сканируется весь инвентарь игрока и проверяется, хватает ли общего количества предметов.
  2. Блокировка превышения лимита: Если обмен приведёт к превышению лимита баланса (2 миллиарда KABU), процесс полностью блокируется без расходования предметов.

5. Предотвращение инсайдерской торговли и целостность рынка (Market Integrity)

Чтобы сделать торговлю до раскрытия новостей структурно невозможной, процесс обновления выполняется в следующем строгом порядке:

Блокировка торговли → Обновление цен → Сохранение новостей → Трансляция → Обновление табличек → Разблокировка торговли Если во время блокировки предпринимается попытка торговли, игроку сообщается, что торговля сейчас заблокирована.

6. Система комиссий (Commission)

  • Комиссии могут взиматься при покупке и продаже. Проценты можно задать отдельно для покупок и продаж. По умолчанию — 0%.
  • Доход от комиссий может либо «исчезать (по умолчанию)», либо поступать на «общесерверный административный счёт (настраивается)». Административный счёт не привязан к UUID какого-либо конкретного игрока.
  • Посмотреть баланс административного счёта можно командой /stockwapi admin balance.

7. Интерфейс табличек (Sign Interface)

Привязав функции к табличкам, размещённым администратором, игроки могут покупать, продавать, обменивать и просматривать новости всего лишь правым кликом.

  • Таблички могут размещать только администраторы (`/stockwapi admin sign [] []`).
  • Таблички автоматически обновляются при обновлении биржевых цен. Торговлю можно вести напрямую с табличек (выполняется мгновенно по правому клику).
  • Таблички не может разрушить никто, кроме администратора (если OP разрушит табличку, она автоматически отвязывается).
Типы табличек (всего 7)
ТипПример командыОтображение на табличкеДействие по правому клику
pricesign price RDMТикер + ценаПоказать подробности тикера в чате
listsign listЗаголовок рынкаПоказать все тикеры + цены в чате
buysign buy RDM 5Тикер + кол-во + ценаМгновенно купить указанное количество
sellsign sell RDM 5Тикер + кол-во + ценаМгновенно продать указанное количество
exchangesign exchange diamond 10Предмет + кол-во + KABUМгновенный обмен предмет → KABU
buyitemsign buyitem diamond 10Предмет + кол-во + KABUМгновенная покупка KABU → предмет
newssign newsЗаголовок новостейПоказать последние новости в чате

Отвязка: /stockwapi admin unsign (выполнить, глядя на табличку)

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

  • Minecraft: 1.21.1
  • Загрузчик модов: NeoForge 21.1.219 или новее
  • Java: Java 21 или выше
  • Обязательная зависимость: aidbwapi_core (основа для AI-связи и базы данных)
  • Сторона: Требуется и на сервере, и на клиенте Установка:
  1. Убедитесь, что aidbwapi_core настроен (AI-провайдер зарегистрирован и модель настроена).
  2. Поместите этот мод (stock_wapi-x.x.x.jar) в папку mods вашего сервера или клиента и запустите.
  3. При первом запуске автоматически создадутся три демонстрационных тикера (RDM, END, OAK).

📖 Использование

Администратор сервера: первичная настройка

Шаг 1: Подготовка aidbwapi_core

Для работы этого мода обязательна настройка aidbwapi_core. Выполните следующие шаги:

1-1. Регистрация AI-провайдера

Зарегистрируйте информацию о подключении к вашему AI-сервису (API, совместимый с OpenAI) как «KeyName».

/dbwapi keyname add <KeyName> <API_Endpoint_URL> <API_Key>

⚠️ Предупреждение о безопасности: Из-за особенностей Minecraft полная команда, которую вы вводите в чат (включая API-ключ в открытом виде), будет записана в logs/latest.log сервера. В целях безопасности настоятельно рекомендуется отредактировать config/aidbwapi_core-keynames.json напрямую в текстовом редакторе, а затем выполнить /dbwapi reload в игре.

1-2. Регистрация модели

Добавьте нужную вам AI-модель к зарегистрированному провайдеру.

/dbwapi model add <KeyName>.<ModelName> <DailyLimit> <MinuteLimit>

Если лимиты опущены или установлены в -1, они регистрируются как неограниченные. Регистрация нескольких провайдеров/моделей позволяет системе автоматически переключаться при сбое одного из них (failover).

1-3. Проверка работы
/dbwapi ai test

Если вы получили ответ от AI, настройка завершена. Если возникла ошибка, проверьте подробности командой /dbwapi ai errors.

Шаг 2: Первый запуск и автонастройка

После помещения этого мода в папку mods и запуска сервера произойдёт следующее:

  • В config/stock_wapi-stocks.json будут определены три демонстрационных тикера (RDM, END, OAK).
  • Описания AI-компаний для каждого тикера будут сгенерированы асинхронно и сохранены.
  • Запустится планировщик периодического обновления рынка (по умолчанию: каждый 1 час).
Шаг 3: Регистрация курсов обмена предметов

Настройте курсы обмена, чтобы игроки могли получать KABU.

/stockwapi admin setrate diamond 100
/stockwapi admin setrate gold_ingot 10

Это включает обмены вроде «1 Diamond = 100 KABU» и «1 Gold Ingot = 10 KABU».

Шаг 4: Размещение табличек (необязательно)

Настройте интерфейсы табличек, чтобы игроки могли взаимодействовать правым кликом. Разместите табличку и выполните следующие команды, глядя на неё:

/stockwapi admin sign price RDM             ← Отображает цену RDM
/stockwapi admin sign buy RDM 5             ← Покупает 5 акций RDM
/stockwapi admin sign sell RDM 5            ← Продаёт 5 акций RDM
/stockwapi admin sign exchange diamond 10   ← Обмен 10 Diamond на KABU
/stockwapi admin sign buyitem diamond 1     ← Покупка 1 Diamond за KABU
/stockwapi admin sign list                  ← Отображает все тикеры
/stockwapi admin sign news                  ← Отображает последние новости
Шаг 5: Добавление/настройка тикеров (необязательно)

Чтобы добавить свой тикер:

/stockwapi admin add ABC "Alpha Beta Corp" 50000

Определение тикера будет добавлено в config/stock_wapi-stocks.json. Чтобы настроить волатильность, тренд или тип рынка, отредактируйте этот JSON-файл напрямую, пока сервер остановлен.

Игроку: базовый геймплей

1. Получение KABU

Сначала получите KABU через обмен предметов.

/stockwapi exchange diamond 10

(Если админ настроил таблички, можно обменять мгновенно, кликнув правой кнопкой.)

2. Изучение тикеров
/stockwapi list                ← Посмотреть текущие цены всех тикеров
/stockwapi info RDM            ← Посмотреть подробную информацию о RDM
/stockwapi news                ← Посмотреть последние сгенерированные ИИ экономические новости
3. Торговля акциями
/stockwapi buy RDM 10          ← Купить 10 акций RDM
/stockwapi sell RDM 5           ← Продать 5 акций RDM

После завершения сделки в чате отображается подробная информация (тикер, количество, цена за единицу, итог, комиссия, оплата/получение, количество акций во владении, средняя стоимость).

4. Проверка активов
/stockwapi myinfo              ← Посмотреть баланс, владения и прибыль/убыток
5. Обмен KABU обратно на предметы

Если вы получили прибыль, можете потратить KABU на покупку предметов (например, алмазов).

/stockwapi buyitem diamond 1        ← Заплатить KABU и получить 1 алмаз

Советы по работе

  • Пауза рынка: Используйте /stockwapi admin pause во время техобслуживания, чтобы остановить всю торговлю и периодические обновления. Возобновите с помощью /stockwapi admin resume.
  • Удаление тикеров: Используйте /stockwapi admin remove ABC <Ваш_UUID>, чтобы удалить тикер. Если есть держатели, их акции будут принудительно ликвидированы по текущей цене. Ваш UUID требуется, чтобы предотвратить случайное удаление.
  • Использование комиссий: Чтобы подавить спекулятивную крупномасштабную торговлю, задайте buyFeePercent / sellFeePercent в конфиге TOML. Установите feeToAdminAccount = true, чтобы собирать комиссии на счёте админа.

⚙️ Конфигурация и структура каталогов

  • config/stock_wapi-common.toml : Базовые настройки всего мода. Секция [general]:

    • commandPermissionLevel: Требуемый уровень OP для админ-команд (по умолчанию: 2).
    • debugLogging: Включить отладочные логи (по умолчанию: false). Обычно не нужно. Секция [market]:
    • updatesPerDay: Количество обновлений рынка в день (по умолчанию: 24, каждые 1 час реального времени).
    • maxPriceChangePercent: Максимальное колебание за обновление (по умолчанию: 10, ±10%).
    • tradingPausedOnUpdate: Приостанавливать торговлю во время обработки обновления (по умолчанию: true). Если false, механизм блокировки инсайдерской торговли отключается. Секция [trading]:
    • buyFeePercent / sellFeePercent: Ставки комиссии за покупку и продажу (по умолчанию: 0).
    • feeToAdminAccount: Собирать ли комиссии на счёте админа (по умолчанию: false, исчезают).
    • allowShortSelling: Флаг для коротких продаж (настройка есть, но на данный момент не реализована; установка в true ни на что не влияет).
    • minTradeUnit: Минимальная единица торговли (по умолчанию: 1).
    • maxTradeAmount: Максимальная сумма сделки за раз (по умолчанию: -1, без ограничений).
    • maxHoldingPerPlayer: Максимальное количество акций на тикер на игрока (по умолчанию: -1, без ограничений). Секция [ai]:
    • sentimentScoreRange: Диапазон оценки настроений ИИ (по умолчанию: 100, от -100 до +100).
    • newsLanguage: Язык новостей, генерируемых ИИ (по умолчанию: ja).
    • worldSetting: Текст с описанием мира, передаваемый ИИ (по умолчанию: "A fictional stock market in the Minecraft world").
  • config/stock_wapi-stocks.json : Файл определения всех параметров тикеров (хранится в виде массива). Определения автоматически дополняются значениями по умолчанию при использовании команды add. Чтобы настроить параметры, кроме начальной цены (волатильность, тренд, сила отскока, тип рынка и т. д.), отредактируйте этот файл, пока сервер остановлен.

    {
      "ticker": "RDM",
      "name": "Redstone Dynamics Mining",
      "initialPrice": 15000,
      "volatility": 0.03,
      "stability": 0.9,
      "trend": "neutral",
      "marketType": "stable",
      "minPrice": 1000,
      "maxPrice": 100000,
      "reboundStrength": 0.1,
      "tradeImpactFactor": 0.4,
      "aiImpactFactor": 0.05,
      "description": ""
    }
  • config/stock_wapi-exchange.json : Сохранённый файл курсов обмена предметов. Хранит информацию о курсах, зарегистрированных через админ-команду (/stockwapi admin setrate).
  • [Корень сохранения мира]/aidbwapi_core/stock_wapi/ : Хранилище рабочих данных (использует категорию БД aidbwapi_core).

    • global.json: Текущие цены, история цен (полная), история новостей, значения настроений, агрегированные данные спроса, счётчики обновлений, история скользящей средней объёма и т. д.
    • `players/.json`: Баланс KABU каждого игрока, количество акций во владении, средняя стоимость покупки и история сделок.

🛠️ Справочник команд

Все команды начинаются с /stockwapi. Символы тикеров используются для указания акций, но при вводе в нижнем регистре они автоматически преобразуются в верхний регистр. Аргументы `и` поддерживают автодополнение по Tab.

📌 Команды игрока (разрешение не требуется)

КомандаОписание
/stockwapi listСписок тикеров и текущих цен всех акций
`/stockwapi info `Подробная информация о тикере (цена, тип рынка, спрос, описание)
/stockwapi myinfoВаш баланс KABU, владения и прибыль/убыток
/stockwapi portfolioСиноним для myinfo (алиас)
`/stockwapi buy `Купить указанное количество акций тикера (мгновенное исполнение по текущей цене)
`/stockwapi sell `Продать указанное количество акций тикера (мгновенное исполнение по текущей цене)
/stockwapi newsПоследние новости рынка + история прошлых новостей (до 30 записей)
`/stockwapi exchange `Обменять указанный предмет на KABU
`/stockwapi buyitem `Купить указанный предмет за KABU

📌 Команды администратора (требуется OP, уровень разрешения по умолчанию 2)

КомандаОписание
`/stockwapi admin add `Зарегистрировать и инициализировать новый тикер. Автоматически генерирует описание компании через ИИ. Тонкая настройка параметров в сгенерированном JSON
`/stockwapi admin remove `Удалить тикер. Требует UUID исполнителя для предотвращения случайного удаления. Принудительно ликвидирует акции у держателей
/stockwapi admin pauseПриостановить все торги на рынке и периодические обновления
/stockwapi admin resumeВозобновить все торги на рынке и периодические обновления
/stockwapi admin balanceПросмотреть баланс административного счёта (пул для комиссий)
`/stockwapi admin setrate `Добавить или обновить курс обмена предмета (например, diamond 100)
`/stockwapi admin removerate `Удалить курс обмена предмета
/stockwapi admin listratesПоказать все курсы обмена предметов
`/stockwapi admin sign [] []`Привязать функцию к табличке (выполнять, глядя на табличку). Аргументы зависят от type
/stockwapi admin unsignОтвязать функцию от таблички (выполнять, глядя на табличку)

🏗️ Дополнение о внутренней архитектуре

Планировщик обновления рынка

Сам таймер работает в демон-потоке ScheduledExecutorService, но для безопасности доступа к базе данных и изменения состояния фактическая обработка обновлений всегда синхронизируется с главным потоком сервера (MinecraftServer.execute()). Таймер обновления основан на реальном времени и продолжает работу с того места, где остановился, после перезапуска сервера.

Обработка результатов сделок (перечисление TradeResult)

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

Структура БД (используется категорийная БД aidbwapi_core)

  • Имя категории: stock_wapi
  • GlobalDatabase: текущие цены, история цен (полная), значения настроений, история новостей, агрегированные данные спроса, счётчик обновлений, история скользящей средней объёма (volumeHistory).
  • PlayerDatabase: баланс KABU (balance), принадлежащие акции (holdings), средние цены покупки (avgPrices), история сделок (tradeHistory).

Потокобезопасность при асинхронной обработке

Доступ к БД из асинхронных потоков, например, при обратном вызове генерации описания компании через ИИ, делегируется главному потоку через MinecraftServer.execute() для гарантии потокобезопасности.

⚖️ Лицензия (License)

Исходный код и предоставленные бинарные файлы этого мода распространяются и публикуются под Apache License, Version 2.0. Создание и распространение коммерческих или некоммерческих модов, использующих или изменяющих этот мод, свободно разрешено в рамках условий лицензии.

Мод StockMarket wAPI (stock_wapi)

Вся обработка ИИ и сохранение данных делегированы AI DataBase wAPI Core, а сам мод отвечает только за «логику акций и игровой опыт». |------|-----| | Mod ID | stock_wapi | | Отображаемое имя | StockMarket wapi mod | | Система версий | 1.21.1-x.y.z (версия MC-SemVer, независима от core) | | Требования | Обязателен aidbwapi_core |

ЛицензияApache License 2.0

🚀 Основные функции и архитектура (Features & Architecture)

1. Система изменения цен на акции на основе ИИ (Market Engine)

Автоматическая адаптация масштаба (Adaptive Demand Scaling)

2. Генерация новостей через ИИ (Market News)

3. Автоматическая генерация описаний компаний через ИИ (Company Description)

Если администратор хочет вручную исправить или заменить описание компании, отредактируйте напрямую ключ companyDesc_XXX в файле БД (stock_wapi_GlobalDatabase.json).

4. Собственная валюта «KABU» и обмен предметов (Currency & Exchange)

Регистрация предметов для обмена выполняется административной командой (/stockwapi admin setrate), информация о курсах сохраняется в config/stock_wapi-exchange.json.

6. Система комиссий (Commission)

  • С помощью /stockwapi admin balance можно проверить баланс административного счёта.

7. Интерфейс на табличках (Sign Interface)

  • Устанавливать могут только администраторы (`/stockwapi admin sign [] []). |------|-------------|---------|-------------| | exchange|sign exchange diamond 10| название предмета + количество + сумма KABU | мгновенный обмен предмета → KABU | |buyitem|sign buyitem diamond 10| название предмета + количество + сумма KABU | мгновенная покупка предмета за KABU | Отмена регистрации:/stockwapi admin unsign` (администратор выполняет, глядя на табличку)

💻 Требования и установка (Requirements & Setup)

  • Minecraft: 1.21.1
  • Загрузчик модов: NeoForge 21.1.219 или новее
  • Java: Java 21 или новее
  • Обязательная зависимость: aidbwapi_core (связь с ИИ и основа базы данных)

📖 Использование (Usage)

Шаг 1: Подготовка aidbwapi_core
/dbwapi keyname add <регистрационное имя> <URL эндпоинта API> <API-ключ>

В целях безопасности настоятельно рекомендуется редактировать config/aidbwapi_core-keynames.json напрямую в текстовом редакторе и выполнять в игре /dbwapi reload.

/dbwapi ai test
  • Определения трёх демонстрационных тикеров (RDM, END, OAK) генерируются в config/stock_wapi-stocks.json
/stockwapi admin setrate diamond 100
/stockwapi admin setrate gold_ingot 10
/stockwapi admin sign price RDM       ← табличка с отображением цены RDM
/stockwapi admin sign buy RDM 5       ← табличка для покупки 5 акций RDM
/stockwapi admin sign sell RDM 5      ← табличка для продажи 5 акций RDM
/stockwapi admin sign exchange diamond 10  ← табличка обмена 10 алмазов → KABU
/stockwapi admin sign buyitem diamond 1   ← табличка покупки 1 алмаза за KABU
/stockwapi admin sign list            ← табличка со списком всех тикеров
/stockwapi admin sign news            ← табличка с последними новостями
/stockwapi admin add ABC "Alpha Beta Corp" 50000

После добавления определение тикера дописывается в config/stock_wapi-stocks.json.

/stockwapi exchange diamond 10
/stockwapi list                ← проверить текущие цены всех тикеров
/stockwapi info RDM            ← проверить подробную информацию о RDM
/stockwapi buy RDM 10          ← купить 10 акций RDM
/stockwapi sell RDM 5           ← продать 5 акций RDM
/stockwapi buyitem diamond 1        ← заплатить KABU и получить 1 алмаз

Советы по эксплуатации

Возобновление — /stockwapi admin resume. Если установить feeToAdminAccount = true, комиссии будут накапливаться на административном счёте.

  • config/stock_wapi-common.toml : основной файл настроек работы всего мода. Секция [general]:

    • commandPermissionLevel: требуемый уровень OP-прав для административных команд (по умолчанию 2).
    • debugLogging: включение отладочных логов (по умолчанию false). Секция [market]:
    • maxPriceChangePercent: максимальный диапазон изменения за одно обновление (по умолчанию 10, ±10%). Секция [trading]:
    • buyFeePercent / sellFeePercent: процент комиссии при покупке и продаже (по умолчанию 0).
  • minTradeUnit: минимальная единица торговли (по умолчанию 1).
  • sentimentScoreRange: диапазон AI-оценки настроения (по умолчанию 100, от -100 до +100).

    {
      "ticker": "RDM",
      "name": "Redstone Dynamics Mining",
      "initialPrice": 15000,
      "volatility": 0.03,
      "stability": 0.9,
      "trend": "neutral",
      "marketType": "stable",
      "minPrice": 1000,
      "maxPrice": 100000,
      "reboundStrength": 0.1,
      "tradeImpactFactor": 0.4,
      "aiImpactFactor": 0.05,
      "description": ""
    }
  • config/stock_wapi-exchange.json : файл сохранения курсов обмена предметов.
  • [корневая папка сохранения мира]/aidbwapi_core/stock_wapi/ : место сохранения рабочих данных (используется механизм категорийной БД aidbwapi_core).

🛠️ Справочник команд (Command Reference)

|---------|------| | /stockwapi myinfo | Показать свой баланс KABU, имеющиеся акции и прибыль/убыток | | /stockwapi portfolio | То же, что myinfo (алиас) | | `/stockwapi buy | Купить указанное количество указанной акции (мгновенное исполнение по текущей цене) | |/stockwapi sell | Продать указанное количество указанной акции (мгновенное исполнение по текущей цене) | |/stockwapi exchange | Обменять указанный предмет на KABU | |/stockwapi buyitem ` | Купить указанный предмет за KABU |

📌 Команды администратора (требуются права OP, по умолчанию permission level 2)

|---------|------| | `/stockwapi admin add | Зарегистрировать и инициализировать новую акцию. |/stockwapi admin remove | Удалить акцию. |/stockwapi admin pause| Приостановить торговлю на рынке и регулярные обновления | |/stockwapi admin resume| Возобновить торговлю на рынке и регулярные обновления | |/stockwapi admin balance| Проверить баланс административного счёта (пул комиссий за сделки) | |/stockwapi admin setrate | Добавить или обновить курс обмена предмета (например:diamond 100) | | /stockwapi admin removerate | Удалить курс обмена предмета | |/stockwapi admin listrates` | Показать все курсы обмена предметов |

`/stockwapi admin sign [] []`Привязать функцию к табличке (выполнять, глядя на табличку).

🏗️ Дополнительно о внутренней архитектуре (Internal Architecture)

Обработка результатов сделок (TradeResult Enum)

Структура БД (используется категорийная БД aidbwapi_core)

  • Имя категории: stock_wapi
  • PlayerDatabase: баланс KABU (balance), количество акций (holdings), средняя цена покупки (avgPrices), история сделок (tradeHistory).

⚖️ Лицензия (License)

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

Как установить StockMarket wAPI?

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

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

У StockMarket wAPI есть сборки для Minecraft 1.21.1.

Нужен ли StockMarket wAPI на сервере?

Нужен и в игре, и на сервере

Лицензия и источник
Apache License 2.0можно свободно использовать и распространять с указанием автора
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

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