▶️ ЗАБЕРИ СВОИ 8 ПОДАРКОВ 🎁 ПРИ СОЗДАНИИ СВОЕГО МАЙНКРАФТ СЕРВЕРА
Моды/TerraMath
TerraMath

TerraMath

TerraMath - мод для Майнкрафт 1.20-1.21, позволяющий создавать уникальные ландшафты и биомы с помощью математических формул. Полностью кастомная генерация мира через синусы, косинусы и шум.

Оцените первым
23.8K
147

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

TerraMath (ТерраМат) - довольно необычный мод для Майнкрафт, который кардинально меняет подход к генерации мира. Если в ванильном Minecraft ландшафты строятся на готовых алгоритмах шума, то здесь вы сами создаете рельеф с помощью чистой математики. Вы буквально пишете формулу, и игра рассчитывает высоту каждого блока по ней. Хотите бесконечные волнистые холмы, острые вулканы или плато с кратерами? Всё это можно задать через математические функции.

Мод поддерживает версии Minecraft 1.20 - 1.21.x и работает как на клиенте, так и на серверах. Это идеальный инструмент для тех, кто устал от стандартной генерации и хочет построить свой уникальный мир, ну или просто потестить формулы.

Основные возможности

  • Кастомная генерация мира через ваши математические формулы
  • Настройка базовых параметров: масштаб (scale), базовая высота (height), вариация (variation) и сглаживание (smoothing)
  • Наложение настраиваемого шума поверх вашей основной формулы для естественности рельефа
  • Поддержка математических констант в формулах (Pi, e, Phi и других)

Как настроить на клиенте

При создании нового мира зайдите во вкладку "World" и откройте настройки рельефа (terrain settings). Там будет поле для ввода вашей формулы.

Дополнительно можно покрутить параметры:

  • Scale - масштаб генерации
  • Base Height - средний уровень поверхности
  • Height Variation - амплитуда перепадов высот
  • Smoothing - плавность переходов

Также можно выбрать тип шума (Perlin, Simplex, Blended, Normal), задать мультипликаторы для координат X, Y, Z и общую высоту шума. Это полезно, если формула получилась слишком гладкой и нужно добавить случайных неровностей.

Как настроить на сервере

  1. Запустите сервер с установленным модом TerraMath
  2. В папке config появится файл terramath.
  3. Настройте параметры прямо в файле, либо сконфигурируйте всё на клиенте и перенесите готовый конфиг на сервер

Важный нюанс для серверов

  • Чтобы конфиг применился к новому миру, убедитесь, что параметр useDefaultFormula в конфиге установлен в true
  • После изменения настроек вам придется удалить старый мир и перезапустить сервер. Иначе новая формула не подхватится
  • Альтернативный вариант: просто перенесите папку мира с вашего клиента на сервер. Мир продолжит генерироваться по той же формуле без необходимости возиться с конфигами

Если планируете играть онлайн с друзьями, проще всего развернуть сервер на BungeeHost (https://bungee.host) - мод устанавливается туда в пару кликов, а стабильная генерация кастомных чанков не будет вызывать рассинхрон между клиентом и сервером.

Примеры формул

Если вы не силен в математике, вот готовые примеры для старта:

  • Базовый волнистый ландшафт: sin(x)
  • Острый вулканический рельеф с крутыми склонами: abs(sin(x/10))*exp(cos(z/15))*8 + tanh(sqrt(x^2 + z^2)/20)*15
  • Плавные горы: sin(x/8)*cos(z/8)*10 + abs(sin(x/20))*15 + sqrt(abs(x/10))*5
  • Безумный и тяжелый ландшафт: round(sin(x/15))*10 + round(cos(z/15))*10 + sqrt(abs(sin((x+z)/20)))*15
  • Террасный ландшафт с плато: floor(sin(x/20) * cos(z/20) * 5) * 4 + sqrt(x^2 + z^2)/10
  • Рельеф с кратерами: 10 * (1 - exp(-((x/30)^2 + (z/30)^2) / 2)) + 5 * perlin(x/50, 0, z/50)

Доступные функции и операторы

ТерраМат поддерживает огромный набор математических функций. Ниже полный список, который можно использовать в формулах:

Математические функции:

Тригонометрические:

  • sin(x) - синус
  • cos(x) - косинус
  • tan(x) - тангенс
  • csc(x) - косеканс
  • sec(x) - секанс
  • cot(x) - котангенс
  • asin(x) - арксинус
  • acos(x) - арккосинус
  • atan(x) - арктангенс
  • atan2(x,y) - арктангенс от двух аргументов
  • acsc(x) - арккосеканс
  • asec(x) - арксеканс
  • acot(x) - арккотангенс

Гиперболические:

  • sinh(x) - гиперболический синус
  • cosh(x) - гиперболический косинус
  • tanh(x) - гиперболический тангенс
  • asinh(x) - обратный гиперболический синус
  • acosh(x) - обратный гиперболический косинус
  • atanh(x) - обратный гиперболический тангенс
  • csch(x) - гиперболический косеканс
  • sech(x) - гиперболический секанс
  • coth(x) - гиперболический котангенс
  • acsch(x) - обратный гиперболический косеканс
  • asech(x) - обратный гиперболический секанс
  • acoth(x) - обратный гиперболический котангенс

Корни и степени:

  • sqrt(x) - квадратный корень
  • cbrt(x) - кубический корень
  • root(x,n) - корень n-й степени из x
  • pow(x,y) - x в степени y
  • exp(x) - экспонента (e^x)

Логарифмические:

  • ln(x) - натуральный логарифм
  • lg(x) - десятичный логарифм

Округление и числа:

  • abs(x) - модуль числа
  • floor(x) - округление вниз
  • ceil(x) - округление вверх
  • round(x) - округление до ближайшего целого
  • sign(x) - знак числа (-1, 0 или 1)
  • mod(x,y) - остаток от деления x на y
  • gcd(x,y) - наибольший общий делитель
  • lcm(x,y) - наименьшее общее кратное
  • modi(x,y) - модульный обратный элемент

Специальные функции:

  • gamma(x) - гамма-функция
  • erf(x) - функция ошибок
  • beta(x,y) - бета-функция

Генерация случайных чисел:

  • rand() - случайное число от 0 до 1
  • randnormal(mean,stdev) - случайное число из нормального распределения
  • randrange(min,max) - случайное число в диапазоне от min до max

Функции шума:

  • perlin(x,y,z) - шум Перлина
  • simplex(x,y,z) - шум Симплекса
  • normal(x,y,z) - нормальный шум
  • blended(x,y,z) - смешанный шум
  • octaved(x,z,octaves,persistence) - октавный шум

Утилиты:

  • max(x,y) - максимум из x и y
  • min(x,y) - минимум из x и y
  • sigmoid(x) - сигмоидная функция (1/(1+e^-x))
  • clamp(x,min,max) - ограничение x в диапазоне от min до max

Константы:

  • pi, π - 3.14159... (число Пи)
  • e - 2.71828... (число Эйлера)
  • phi, φ - 1.61803... (Золотое сечение)
  • zeta3, ζ3 - 1.20205... (постоянная Апери)
  • catalan, K - 0.91596... (постоянная Каталана)
  • alpha, α, feigenbaum - 2.50290... (постоянная Фейгенбаума)
  • delta, δ, feigenbaumdelta - 4.66920... (дельта Фейгенбаума)
  • omega, Ω - 0.6889 (космологическая постоянная)

Переменные: x, y, z - координаты блока в мире

Операторы: +, -, *, /, ^, (), !

Известные проблемы и советы

  • Слишком сложные формулы, генерирующие гигантские ландшафты (XXL), могут сильно грузить систему. Это фундаментальная проблема математической генерации, которую полностью не решить.
  • Функции генерации случайных чисел (типа rand()) могут вешать сервер при активном использовании. Они сильно бьют по производительности генерации чанков, вызывают просадки FPS и увеличивают время загрузки кусков мира. Используйте их очень аккуратно.

Вывод

TerraMath - не просто мод, это инструмент для творчества. Если вы устали от одинаковых миров в Minecraft и хотите создать что-то уникальное, этот проект определенно стоит попробовать. Скачайте мод TerraMath для Майнкрафт и начните экспериментировать с формулами. Учтите, что для работы потребуется подходящий загрузчик, так что убедитесь, что ваша версия игры совместима.

Партнёрский материал

Как поиграть с друзьями с модом TerraMath?

Мод TerraMath куда интереснее в компании: поднимите сервер Майнкрафт с уже установленным модом, позовите друзей и играйте по своим правилам. Хостинг Майнкрафт для мода TerraMath будет готов за пару минут - BungeeHost сделает всё за вас.

Часто задаваемые вопросы

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

Minecraft: Java Edition

1.21.x1.20.x

Платформы

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

Клиент и сервер

Зависимости

Ссылки

Создатели

Детали

Лицензия:
Опубликован:1 год назад
Обновлён:1 год назад
Главная