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

Math Function

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

NeoForge
Загрузчики
NeoForge
Скачиваний на Modrinth
416
Подписчиков на Modrinth
4
версий
13
Обновлён
7 августа 20267 авг.
Опубликован
в 2026

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

Работает на NeoForge
Для Minecraft 1.21.1
Нужен и в игре, и на сервере
Последняя версия — 2.10 от 7 августа 2026
Лицензия GPL-3.0-only — бесплатно
Где нужен
В игреобязателенНа сервереобязателен

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

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

Math Function

Вдохни жизнь в математику в Minecraft с помощью снарядов и графиков на основе функций!

License GitHub Release GitHub code size in bytes


📖 Введение

Math Function — это мод для Minecraft на NeoForge, который превращает математические выражения в интерактивный игровой опыт. Хочешь визуализировать функции в виде графиков из блоков или запускать снаряды по заданным кривым — этот мод привносит красоту математики прямо в твой мир.

Две ключевые возможности в одном моде:

1. Построение графиков из блоков — визуализируй любую функцию как трёхмерную структуру из блоков одной простой командой.

2. Зачарование функций — задавай оружию и инструментам собственные математические траектории, превращая стрелы, TNT, фейерверки и даже собственный полёт в управляемые функциональные кривые!

Поддерживаемые функции

КатегорияФункции
Базовая арифметика+ - * /
Степень^ (например, x^2)
Унарный оператор-x (отрицательные числа)
Тригонометрияsin(x) cos(x) tan(x)
Логарифмыlog(x) ln(x) log(base, value) log2 log10
Корниsqrt(x) sqrt(root, value) (например, sqrt(3, 27) = кубический корень)
Округлениеfloor(x) (округление вниз), ceil(x) (округление вверх), round(x) (округление до ближайшего), trunc(x) (отбрасывание дробной части)
Прочееabs(x) exp(x) min(a, b) max(a, b) mod(a, b)
СлучайныеRan# (0~1) RanInt(min, max)
Константыe pi
Вложенность3*x^2 + sin(2*x)

Пользовательские функции

Определяй собственные переиспользуемые функции командой /customfunction! Идеально подходит для сложных выражений, которые ты используешь часто.

  • Добавить: `/customfunction add — например,/customfunction add square x^2`
  • Список: /customfunction list — показать все сохранённые функции
  • Получить: `/customfunction get ` — посмотреть определение функции
  • Вычислить: `/customfunction eval ` — быстро посчитать значение
  • Изменить: `/customfunction modify <new_expression>` — обновить функцию
  • Удалить: `/customfunction remove ` — удалить функцию
  • Удалить все: /customfunction remove-all — очистить всё (только для операторов)

Пользовательские функции сохраняются в custom_functions.json и остаются после перезапуска. Их можно использовать везде, где принимаются выражения: команды /fx, переименование в наковальне и траектории зачарований.

Примечание: Имена функций не могут совпадать со встроенными функциями (sin, sqrt, log и т. д.), константами (e, pi) или зарезервированным именем f (во избежание конфликтов с префиксом f(x)=).


🧪 Команда построения графиков из блоков

/fx "<expression>" <min_x> <max_x> <block> [scale] [mode] [coordinateSystem]

Параметры

ПараметрОписание
expressionМатематическое выражение относительно x (например, "x^2 + 3*x - 5"). Поддерживает + - * / ^ sin cos tan sqrt log ln.
min_x, max_xОбласть определения функции (значения x).
blockБлок для построения графика (например, minecraft:red_concrete).
scale (необязательно)Сколько блоков представляет одну единицу (по умолчанию = 1, диапазон 1–10).
mode (необязательно)stand — вертикальный график (Y = f(x)), floor — горизонтальный график (Z = f(x)).
coordinateSystem (необязательно)true / false — создавать ли координатную систему из кварца (начало в (0,0), смещено на 1 блок влево/вниз).

Пример

/fx "x^2" -5 5 minecraft:blue_wool 2 stand true

Создаёт параболу из синей шерсти от x=-5 до x=5, каждая единица = 2 блока, с системой координат.


⚔️ Зачарование функций

Переименуй любой подходящий предмет в f(x)=выражение или y=выражение (например, f(x)=x^2), и зачарование активируется автоматически. Команды не нужны — просто переименуй предмет в наковальне!

Подходящие предметы и их поведение

ПредметЭффект
Лук / АрбалетСтрелы летят по кривой функции y = f(x), где x — горизонтальное расстояние, а y — высота относительно точки запуска.
ОгнивоПодожжённый TNT летит по кривой функции, прежде чем взорваться.
ФейерверкФейерверки скользят по кривой и взрываются при попадании в блоки или сущности.
Трезубец (с Тягуном)Игрок летит по кривой функции во время рывка в воде/под дождём — нажми клавишу прыжка, чтобы остановиться в любой момент!

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

  1. Возьми лук и зачаруй его на Математическую функцию или получи через команды.
  2. Переименуй лук в наковальне в f(x)=sin(x)*2.
  3. Выстрели стрелой — она полетит красивой синусоидой!
  4. Для TNT: переименуй огниво в y=cos(x) и подожги TNT.
  5. Для трезубцев: переименуй трезубец с Тягуном в f(x)=x^2/10 и соверши рывок в воде!

Технические детали

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

✨ Возможности

  • Разбор выражений в реальном времени — быстро и надёжно, без внешних библиотек.
  • Непрерывные линии графиков — алгоритм Брезенхэма заполняет промежутки между точками выборки.
  • Автоматическая обработка разрывов — обрывается в недопустимых точках (например, 1/x около 0, tan(x) на асимптотах).
  • Размещение по осям — график строится вдоль ближайшего кардинального направления в зависимости от того, куда ты смотришь.
  • Траектория снарядов — полноценный полёт по функции с частицами-следами и столкновениями.
  • Совместимость с мультивыстрелом — стрелы слегка разлетаются при использовании зачарования «Мультивыстрел».
  • Безопасность по умолчанию — предотвращает отрисовку за пределами высоты мира и превышение лимитов производительности.
  • Обратная связь с игроком — сообщения в чате показывают выражение, название блока, время выполнения и координаты начала.
  • Пользовательские функции — определяй и переиспользуй свои математические функции командой /customfunction.

🧩 Требования

  • Minecraft: 1.21.1 (NeoForge)
  • NeoForge: 21.1.176 или новее

📦 Установка

  1. Скачай последний JAR с Modrinth или GitHub Releases.
  2. Помести его в папку mods.
  3. Запусти Minecraft с установленным NeoForge.
  4. Начинай строить графики или запускать снаряды, управляемые функциями!

⚖️ Лицензия

Этот мод выпущен под GNU General Public License v3.0.
Ты можешь свободно использовать, изменять и распространять его при условии, что делишься своими изменениями под той же лицензией.
Подробности смотри в файле LICENSE.


🔗 Ссылки



中文介绍

📖 概述

Math Function — это мод для Minecraft на NeoForge, который превращает математические выражения в игровой интерактивный опыт. Строите ли вы графики функций из блоков или заставляете снаряды лететь по заданным кривым — этот мод покажет красоту математики прямо в вашем мире.

Один мод, две ключевые функции:

1. Генерация графиков из блоков — одной простой командой превратите любую функцию в 3D-структуру из блоков.

2. Функциональные чары — наделите оружие и инструменты математическими траекториями: стрелы, TNT, фейерверки и даже ваш собственный полёт станут управляемыми кривыми функций!

Поддерживаемые функции

КатегорияФункции
Базовые операции+ - * /
Возведение в степень^ (например, x^2)
Унарный минус-x (отрицательные числа)
Тригонометрияsin(x) cos(x) tan(x)
Логарифмыlog(x) ln(x) log(основание, число) log2 log10
Корниsqrt(x) sqrt(показатель, подкоренное) (например, sqrt(3, 27) = кубический корень из 27)
Округлениеfloor(x) (вниз), ceil(x) (вверх), round(x) (математическое), trunc(x) (отбрасывание дробной части)
Прочееabs(x) exp(x) min(a, b) max(a, b) mod(a, b)
Случайные числаRan# (случайное число от 0 до 1) RanInt(min, max) (случайное целое в диапазоне)
Константыe pi
Вложенность3*x^2 + sin(2*x)

Пользовательские функции

Создавайте свои многоразовые функции командой /customfunction! Идеально для часто используемых сложных выражений.

  • Добавить: /customfunction add <имя> <выражение> — например, /customfunction add square x^2
  • Список: /customfunction list — показать все сохранённые функции
  • Просмотр: /customfunction get <имя> — посмотреть определение функции
  • Вычислить: /customfunction eval <имя> <значение x> — быстро вычислить значение функции
  • Изменить: /customfunction modify <имя> <новое выражение> — обновить функцию
  • Удалить: /customfunction remove <имя> — удалить функцию
  • Удалить всё: /customfunction remove-all — очистить всё (нужны права администратора)

Пользовательские функции сохраняются в файле custom_functions.json и остаются после перезапуска. Их можно использовать везде, где принимается выражение: в команде /fx, при переименовании в наковальне и в траекториях чар.

Внимание: имя функции не должно совпадать со встроенными функциями (sin, sqrt, log и т. д.), константами (e, pi) или зарезервированным именем f (чтобы избежать конфликта с префиксом f(x)=).


🧪 Команда построения графика из блоков

/fx "<выражение>" <мин_x> <макс_x> <блок> [масштаб] [режим] [координаты]

Описание параметров

ПараметрОписание
выражениеМатематическое выражение с переменной x, поддерживает + - * / ^ sin cos tan sqrt log ln
мин_x, макс_xОбласть определения (диапазон значений x)
блокБлок для построения графика (например, minecraft:red_concrete)
масштаб (необязательно)Сколько блоков соответствует 1 единице длины, по умолчанию 1, диапазон 1~10
режим (необязательно)stand — вертикальный график (Y = f(x)), floor — горизонтальный график (Z = f(x))
координаты (необязательно)true / false, создавать ли оси из кварцевых блоков (начало в (0,0), смещение на 1 блок влево/вниз)

Пример

/fx "x^2" -5 5 minecraft:blue_wool 2 stand true

Строит параболу из синей шерсти от x=-5 до x=5, где 1 единица длины = 2 блока, с отображением осей координат.


⚔️ Функциональные чары

Переименуйте любой совместимый предмет в f(x)=выражение или y=выражение (например, f(x)=x^2) — и чары активируются автоматически. Никаких команд, достаточно переименовать в наковальне!

Совместимые предметы и эффекты

ПредметЭффект
Лук / арбалетСтрела летит по кривой y = f(x), где x — горизонтальное расстояние, y — высота относительно точки выстрела.
ОгнивоПодожжённый TNT летит по кривой функции и взрывается при столкновении.
ФейерверкФейерверк скользит по кривой и взрывается при касании блока или сущности.
Трезубец (чары «Тягун»)Игрок летит по кривой функции при рывке в воде/под дождём — нажмите прыжок, чтобы остановиться в любой момент!
Другие снаряды (снежки, яйца и т. д.)Также поддерживают траектории функций, просто переименуйте нужный предмет!

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

  1. Возьмите лук и зачаруйте его функцией или получите через команду.
  2. Переименуйте лук в наковальне в f(x)=sin(x)*2.
  3. Выстрелите стрелой — она полетит по красивой синусоиде!
  4. Использование с TNT: переименуйте огниво в y=cos(x), затем подожгите TNT.
  5. Использование с трезубцем: переименуйте трезубец с чарами «Тягун» в f(x)=x^2/10 и совершите рывок в воде!
  6. Использование со снежком: переименуйте снежок в f(x)=sqrt(25-x^2) — после броска он полетит по полукруглой траектории!

Технические детали

  • Начальная высота автоматически устанавливается в f(0), чтобы даже константные функции работали корректно.
  • Скорость касательной вычисляется через численное дифференцирование в реальном времени для плавного движения.
  • Обнаружение столкновений не даёт снарядам проходить сквозь блоки.
  • При выходе за пределы, по тайм-ауту или после столкновения автоматически возвращается ванильная физика.
  • Поддерживается с версии 2.0, постоянно дорабатывается.

✨ Особенности

  • Разбор выражений в реальном времени — быстро и надёжно, без внешних библиотек.
  • Непрерывные графики — алгоритм рисования линий Брезенхэма заполняет промежутки между точками выборки.
  • Автоматическая обработка разрывов — при недопустимых точках (например, 1/x вблизи 0, асимптоты tan(x)) график автоматически разрывается.
  • Размещение вдоль осей — график автоматически выравнивается по сторонам света в зависимости от направления взгляда игрока.
  • Траектории снарядов — полноценный полёт по функции со следом из частиц и обработкой столкновений.
  • Совместимость с «Мультивыстрелом» — при использовании чар «Мультивыстрел» стрелы слегка разлетаются.
  • Встроенные механизмы безопасности — ограничение случаев выхода за высоту мира или чрезмерных затрат производительности.
  • Обратная связь с игроком — в чате отображаются выражение, название блока, время выполнения и координаты начала.
  • Пользовательские функции — определяйте и переиспользуйте свои математические функции командой /customfunction.

🧩 Требования

  • Версия Minecraft: 1.21.1 (NeoForge)
  • Версия NeoForge: 21.1.176 или выше

📦 Установка

  1. Скачайте последний JAR-файл с Modrinth или GitHub Releases.
  2. Поместите его в папку mods вашего Minecraft.
  3. Убедитесь, что установлен NeoForge, и запустите игру.
  4. Начинайте строить графики функций или запускать функциональные снаряды!

⚖️ Правовая информация

Этот мод распространяется под лицензией GNU General Public License v3.0.
Ты можешь свободно использовать, изменять и распространять его, но свои изменения обязан публиковать под той же лицензией GPLv3.
Подробности в файле LICENSE.


🔗 Полезные ссылки

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

Как установить Math Function?

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

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

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

Нужен ли Math Function на сервере?

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

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

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