MudPhysics — настройки через консоль gsMud

Формат команд: gsMud <group> <param> [value] — если value не указан, покажет текущее значение.

Пример: gsMud fx2 maxRev 0.85 Список: gsMud fx2 list Статус: gsMud / gsMud status
Важно: массивы/пути (mudNameNeedles, ignoreNameNeedles, extraParticlesI3D, extraEmitterShapeI3D) через gsMud не редактируем — правь прямо в MudPhysics.lua.

FieldGroundMudPhysics — настройки через консоль gsMudField

Команда для полевой грязи (groundProfiles) и глобальных настроек FieldGroundMudPhysics.

Быстрый старт

Примеры

Изменить любое значение профиля в таблице
gsMudField StubbleTillage mud 0.50
gsMudField Plowed radiusMinFactor 0.32
gsMudField Seedbed permaStuck false
Важно: изменения профиля применяются сразу — на следующем тике физики.
Покрутить глобальные настройки
gsMudField global radiusSinkInSpeed 0.06
gsMudField global wheelBrakeRatio 0.05
gsMudField global wetnessThreshold 0.10
Глобальные настройки после установки автоматически вызывают onSettingsChanged() (если есть), чтобы применилось ко всем машинам.
Core / Debug core
MudPhysics.enabled вкл/выкл мод
gsMud on
gsMud off
# или:
gsMud core enabled on|off

Полностью включает/выключает MudPhysics без перезагрузки карты.

MudPhysics.debug отладка
gsMud debug
# или:
gsMud core debug on|off

Включает подробные сводки/логи (с интервалом из log.intervalMs).

Обновить кэш слоёв грязи перескан карты
gsMud refresh

Полезно после смены карты/слоёв или если добавил новые mud/dirt слои и хочешь пересканить.

Wetness / Weather wet
wetnessThreshold 0..1
gsMud wet threshold 0.20

Порог «мокроты»: ниже — мокрые/грязевые эффекты почти не включаются.

rainForcesWetnessMin 0..1
gsMud wet rainMin 0.55

Если дождь сильнее этого — поверхность форсится как реально мокрая (wetness подтягивается).

rainScaleThreshold 0..1
gsMud wet rainScale 0.02

Минимальная интенсивность дождя: ниже — дождь слишком слабый, wetness не усиливаем.

Mud layers (terrain) layers
mudMinToAffect 0..1
gsMud layers min 0.10

Минимальный «вес» слоя, чтобы считать что колесо реально в грязи. Больше — реже срабатывает.

dirtLayerEffectMult 0..1+
gsMud layers dirtMult 0.50

Ослабляет эффект для слоёв DIRT относительно MUD (0.5 = DIRT в 2 раза слабее).

Не в консоли: mudNameNeedles и ignoreNameNeedles — меняются только в MudPhysics.lua.
Sink / Speed limits sink speed
sinkInSpeed
gsMud sink in 1.75

Скорость нарастания общего «зарывания» (st.sink). Больше — быстрее тонем.

sinkOutSpeed
gsMud sink out 0.35

Скорость восстановления (уменьшения st.sink). Больше — быстрее отпускает.

stuckThreshold 0..1
gsMud sink stuck 0.80

Порог st.sink, после которого считаем «почти встал» (включаются жёсткие лимиты).

maxSpeedMudKph
gsMud speed mud 22

Максимальная скорость в грязи до stuckThreshold.

maxSpeedStuckKph
gsMud speed stuck 3.5

Максимальная скорость когда уже «застрял» (st.sink ≥ stuckThreshold).

Extra Wheel Sink (визуальная просадка) wheel
extraWheelSinkEnable
gsMud wheel enable on|off

Включает дополнительную «просадку» колеса через WheelPhysics sink (визуал + немного ощущения).

extraWheelSinkMax
gsMud wheel max 1.25

Максимальная добавочная просадка (м). Слишком большое значение может ломать подвеску визуально.

extraWheelSinkSpeedIn
gsMud wheel inSpd 1.95

Как быстро нарастает extra sink. Больше — быстрее проваливается.

extraWheelSinkSpeedOut
gsMud wheel outSpd 0.55

Как быстро уменьшается extra sink. Больше — быстрее вылезает.

extraWheelSinkMaxRel 0..1
gsMud wheel relMax 0.28

Лимит доп. зарывания как доля радиуса колеса (например 0.28 = 28% от r0).

radiusMinFactorRelBias 0..1
gsMud wheel relBias 0.70

Смягчение minRadius под большие колёса: 0=как было, 1=сильнее адаптация под rel-логику.

Real radius sink (настоящая физика) radius
radiusMinFactor
gsMud radius min 0.45

Минимальный множитель радиуса колеса (0..1). Меньше — сильнее «зарывание», но риск поломать физику.

radiusSinkInSpeed
gsMud radius inSpd 0.06

Скорость уменьшения радиуса к цели. Больше — быстрее тонет.

radiusSinkOutSpeed
gsMud radius outSpd 0.77

Скорость восстановления радиуса к исходному. Больше — быстрее отпускает.

Anti-jitter (стояние в грязи) freeze
freezeRadiusWhenStopped
gsMud freeze on on|off

Когда почти стоим и slip низкий — прекращаем «пульсацию» радиуса (анти-дрожь).

freezeStopSpeedKph
gsMud freeze speed 0.60

Считаем «стоим», если скорость ниже этого (км/ч).

freezeStopSlip
gsMud freeze slip 0.010

И пробуксовка ниже этого — тогда активируем заморозку.

freezeSettleSeconds
gsMud freeze settle 0.45

Даём «досесть» до цели указанное время, затем фиксируем радиус.

freezeRadiusEps
gsMud freeze eps 0.0015

Игнор мелких изменений радиуса — ещё сильнее убирает дрожь.

Relief (иногда «повезло», можно выехать) relief
reliefChancePerSec 0..1
gsMud relief chance 0.28

Шанс в секунду получить «облегчение» (случайный откат зарывания).

reliefStrength 0..1
gsMud relief strength 0.22

Насколько откатываем глубину (доля от текущего st.sink).

reliefBrakeSeconds
gsMud relief brakeSec 0.70

Сколько секунд после relief ослабляем вязкость/торможение.

reliefBrakeMult
gsMud relief brakeMul 0.65

Множитель вязкого торможения во время relief (меньше = легче выехать).

Вариативность грязи (пятна/колебания) var
mudVarStrength 0..1
gsMud var strength 0.55

Сила вариации по карте: 0 = одинаково везде, 1 = сильно разные участки.

mudVarCell
gsMud var cell 7.5

Размер «пятен» в метрах. Больше — пятна крупнее и реже меняется характер грязи.

mudBobAmp 0..1
gsMud var bobAmp 0.20

Амплитуда «то топит, то отпускает». Больше — сильнее качает глубину.

mudBobFreq
gsMud var bobFreq 0.16

Частота колебаний (Гц). 0.16 ≈ цикл ~6.25 секунды.

Нагрузка на двигатель (тяга/ускорение) motor
motorLoadEnable
gsMud motor on on|off

Включает нагрузку на мотор: двигатель «тяжело тянет», падает тяга/ускорение.

motorLoadFromSink
gsMud motor sink 2.8

Как сильно глубина (st.sink) увеличивает нагрузку.

motorLoadFromSlip
gsMud motor slip 1.7

Как сильно пробуксовка (slip) увеличивает нагрузку.

motorLoadMaxMult
gsMud motor max 14.5

Жёсткий лимит нагрузки, чтобы не «убить» двигатель полностью.

motorLoadMinEffMud 0..1
gsMud motor minMud 0.10

Минимальная сила грязи effMud: ниже — нагрузку не добавляем.

Вязкое торможение (реально «режет скорость») brake
wheelBrakeEnable
gsMud brake on on|off

Самый заметный блок для эффекта «в грязи тянет назад».

wheelBrakeBase
gsMud brake base 6.0

Базовая вязкость даже при небольшой глубине.

wheelBrakeFromSink
gsMud brake sink 10.0

Добавка вязкости от глубины st.sink.

wheelBrakeFromSlip
gsMud brake slip 4.0

Добавка вязкости от slip (газуешь — ещё сильнее вязнет).

wheelBrakeRatio
gsMud brake ratio 0.06

Перевод wheelBrake* в долю от штатной силы тормозов (чем больше — тем сильнее замедляет).

wheelBrakeMaxRatio
gsMud brake max 2.50

Предел, чтобы не клинило физику и техника не превращалась в «бетон».

wheelBrakeMinEffMud 0..1
gsMud brake minMud 0.08

С какого effMud начинаем применять вязкость. Ниже — ничего не тормозим.

Частицы (vanilla WheelEffects) fx
particlesEnable
gsMud fx on on|off

Включает усиление ванильных частиц для мокрой грязи.

emitMultWetMud
gsMud fx emit 30.5

Интенсивность эмиссии (сколько «летит»).

sizeMultWetMud
gsMud fx size 2.2

Размер частиц (насколько крупные брызги).

speedMultWetMud
gsMud fx speed 1.15

Стартовая скорость частиц (высота/дальность вылета).

Extra particles (2nd layer, FS22-style) fx2
extraParticlesEnable
gsMud fx2 on on|off

Включает дополнительный слой мелких частиц (более «живой» фонтан/пыль/грязь).

extraParticleOnlyWetMud
gsMud fx2 onlyWet on|off

Если включено — доп. частицы летят только когда wetMud=true (по погоде/влажности).

extraParticleOffsetY
gsMud fx2 offsetY -0.09

Вертикальное смещение эмиттера (м). Больше — выше от земли/колеса.

extraParticleClipDist
gsMud fx2 clipDist 90

Дистанция отсечения (м): дальше — не рендерим доп. частицы.

extraParticleMaxCount тяжёлый параметр
gsMud fx2 maxCount 1300

Влияет на FPS. Максимум частиц в пуле для доп. слоя.

extraParticleMinSpeedKph
gsMud fx2 minSpeed 2.2

Ниже этой скорости доп. частицы не летят (чтобы не спамить на месте).

Burst (плевок вверх при slip)
gsMud fx2 burstOn on|off
gsMud fx2 slipMin 0.08
gsMud fx2 burstChance 0.65
gsMud fx2 burstY 0.28
gsMud fx2 burstTmin 0.12
gsMud fx2 burstTmax 0.18
gsMud fx2 burstFwd 0.65
gsMud fx2 burstUp 0.65

Настройки «бурста»: когда slip высокий — иногда «плюёт» выше/вперёд, добавляя драму.

Motion shaping (смещение по направлению)
gsMud fx2 moveMax 0.22
gsMud fx2 moveFull 14.0
gsMud fx2 deadzone 0.35
gsMud fx2 revMul 1.15

Управляет тем, как эмиттер смещается к краю колеса по скорости и направлению.

Отдельно для вперёд/назад (важно для реверса)
gsMud fx2 fullFwd 14.0
gsMud fx2 fullRev 2.0
gsMud fx2 minFwd 0.00
gsMud fx2 minRev 0.12
gsMud fx2 maxFwd 0.22
gsMud fx2 maxRev 0.85

Реверс обычно медленнее → поэтому fullRev меньше, а minRev/maxRev задают более агрессивное смещение назад.

Не в консоли: extraParticlesI3D и extraEmitterShapeI3D — это пути, правятся в MudPhysics.lua.
Налипание грязи (Washable) dirt
dirtEnable
gsMud dirt on on|off

Включает загрязнение техники от грязи (кузов + колёса).

dirtMinEffMud 0..1
gsMud dirt minMud 0.06

С какого effMud вообще начинаем добавлять грязь. Ниже — «грязи мало».

dirtWetnessMin 0..1
gsMud dirt wetMin 0.18

Минимальная мокрота для налипания. В сухую грязь — можно ставить ниже.

dirtBodyPerSec
gsMud dirt body 0.020

Скорость загрязнения кузова в секунду при effMud=1.

dirtWheelPerSec
gsMud dirt wheel 0.085

Скорость загрязнения колёс в секунду при effMud=1 (обычно быстрее кузова).

dirtSpeedBoostKph
gsMud dirt speedKph 18.0

Влияние скорости: меньше значение — грязь налипает быстрее на ходу.

dirtMax 0..1
gsMud dirt max 1.0

Потолок грязи (1.0 = полностью грязный).

Deep pocket (случайные «ямы») pocket
При въезде в грязь
gsMud pocket enterChance 0.32
gsMud pocket durMin 0.65
gsMud pocket durMax 0.95
gsMud pocket boost 0.65
gsMud pocket inMul 8.2
gsMud pocket biasEnter 0.57

Иногда колесо резко проваливается на старте входа в слой — грязь ощущается «живой».

Уже в процессе езды
gsMud pocket inMudChance 0.20
gsMud pocket cdMin 1.8
gsMud pocket cdMax 3.8
gsMud pocket slipMin 0.05
gsMud pocket sinkMin 0.25
gsMud pocket biasInMud 0.65

Случайные «дёргания» глубже во время борьбы (slip/зарывание) + кулдауны.

Logs / Debug prints log
logEnterMud
gsMud log enter on|off

Пишет событие в лог, когда колесо впервые въехало в грязевой слой (полезно для диагностики слоёв).

logEnterMudCooldownMs
gsMud log enterCdMs 350

Анти-спам логов на одно колесо.

debugPrintIntervalMs
gsMud log intervalMs 700

Интервал периодических сводок, когда debug=true.

Быстрые подсказки

Быстро сделать грязь «жёсткой» (режет скорость):

gsMud brake on on
gsMud brake base 10
gsMud brake sink 18
gsMud brake ratio 0.09
gsMud speed mud 14

Быстро сделать «фонтан» доп. частиц:

gsMud fx2 on on
gsMud fx2 minSpeed 1.2
gsMud fx2 offsetY 0.12
gsMud fx2 burstChance 0.85
gsMud fx2 burstY 0.38
gsMud fx2 burstUp 0.85

Если FPS проседает: сначала снижай fx2 maxCount и fx emit.

gsMud fx2 maxCount 700
gsMud fx emit 18