Скачать TerraMath — Minecraft Моды — MetaMods
TerraMath

TerraMath

Активный

Установок

11

Последнее обновление

10 месяцев назад

Версии

1.20 — 1.21.4
Сервер
Fabric
Forge
Генераторы мира
Образование

TerraMath

Создавайте уникальные миры с помощью математики

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

Интерфейс настроек генерации мира

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

  • Создание уникального ландшафта с помощью математических выражений
  • Настройка базовых параметров генерации: масштаб, высота, вариативность, сглаживание
  • Добавление шумовых эффектов поверх основной формулы
  • Поддержка математических констант в вычислениях

Работа на клиенте

Для настройки генерации мира:

  1. Перейдите во вкладку "Мир" при создании нового мира
  2. Откройте настройки рельефа
  3. Введите желаемую формулу в соответствующее поле
  4. Настройте дополнительные параметры (по желанию):
    • Масштаб
    • Базовая высота (определяет средний уровень поверхности)
    • Вариация высоты (амплитуда изменений)
    • Сглаживание (плавность переходов рельефа)
  5. Выберите тип шума и его настройки (опционально):
    • Тип шума: Perlin, Simplex, Blended, Normal
    • Множители координат X, Y, Z
    • Общий множитель высоты шума

Настройка на сервере

  1. Запустите сервер с установленным модом TerraMath
  2. В папке конфигураций появится файл terramath.json
  3. Настройте параметры вручную в файле, либо...
  4. ...настройте мод на клиенте
  5. Сохраните конфигурацию
  6. Перенесите файл конфигурации в папку config на сервере

Важные замечания для сервера:

  • Для применения конфигурации к новому миру убедитесь, что параметр useDefaultFormula в конфиге установлен в true
  • После изменения настроек необходимо удалить существующий мир и перезапустить сервер для применения новой формулы рельефа
  • Альтернативно, можно перенести всю папку мира с клиента на сервер — мир продолжит генерироваться по той же формуле без изменения конфигурации

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

  • Волнистый ландшафт: 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) - наибольшее целое, меньшее x
- ceil(x) - наименьшее целое, большее 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 - координаты блока в мире

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

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

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

Участие в разработке

Вы можете сообщать об ошибках или предлагать новые функции через систему отслеживания проблем!

Участники проекта
addavriance

addavriance

Разработчик

Создан: 30 ноя 2024

ID: 65773