Top.Mail.Ru
Ответы

Код мыла в People Playground!

я хотел сделать мылу реализм но не могу найти для мыла modAPI

По дате
По рейтингу
Аватар пользователя
Ученик
3мес

В People Playground нет отдельного modAPI именно для “мыла” — потому что мыло не является отдельным типом объекта с собственной API.
Реализм мыла делается через Lua-скрипт, который меняет физические свойства предмета.

Я объясню по шагам и дам готовый код, который можно сразу использовать.

🔹 Как вообще работает modAPI в People Playground

В PPG:

  • modAPI — это Lua

  • ты пишешь скрипт, который:

    • ищет объект (мыло)

    • меняет его физику

    • реагирует на столкновения

Скрипты лежат в:

12
People Playground/mods/ТВОЙ_МОД/

🔹 Что делает мыло «реалистичным»

Настоящее мыло:

  • очень скользкое

  • легко вылетает из рук

  • почти не тормозит

  • может вызывать «падение» при контакте

В PPG это:

  • низкое трение

  • слабое сцепление

  • небольшая масса

  • реакция при контакте с ногами

✅ Готовый пример кода «реалистичное мыло»

Создай файл, например:

12
soap_realism.lua

И вставь:

123456789101112131415161718192021222324252627
-- Реалистичное мыло для People Playground

function MakeSoapRealistic(soap)
    if soap == nil then return end

    -- Масса
    soap.PhysicalProperties.Mass = 0.15

    -- Очень низкое трение
    soap.PhysicalProperties.Friction = 0.02
    soap.PhysicalProperties.Elasticity = 0.1

    -- Скользкость
    soap.Properties.Slipperiness = 1

    -- Чуть «жидкое» поведение
    soap.PhysicalProperties.LinearDamping = 0.01
    soap.PhysicalProperties.AngularDamping = 0.01
end

-- Автоматически применять к мылу
function OnSpawn(entity)
    if entity.Properties and entity.Properties.Name == "Soap" then
        MakeSoapRealistic(entity)
    end
end

🔹 Как понять, как называется объект

Иногда имя не "Soap", а другое.

Чтобы проверить:

  1. Возьми мыло

  2. Наведи курсор

  3. Включи debug info

  4. Посмотри entity.Properties.Name

Если имя другое — просто замени "Soap" в коде.

🔥 Хочешь ещё реализма?

Можно сделать:

  • падение человека, если наступил

  • постепенное исчезновение (мыло тает)

  • эффект «намокшего пола»

  • реакцию на воду

Например, падение:

123456
function OnCollision(a, b)
    if a.Properties.Name == "Soap" and b:IsHuman() then
        b:BreakBalance()
    end
end

🧠 Итог

  • ❌ отдельного modAPI для мыла нет

  • ✅ всё делается через Lua

  • ✅ меняем PhysicalProperties

  • ✅ можно добиться очень реалистичного поведения

Если хочешь, я могу:

  • 🔧 сделать полный мод под ключ

  • 🧼 добавить эффект воды

  • 🤕 сделать реалистичные падения

  • 📦 объяснить, как упаковать мод в Steam Workshop

Скажи, какую версию People Playground используешь и что именно хочешь от мыла 👍

Аватар пользователя
Ученик
3мес

нейросеть? и моды в people playground сделаны на C# а не на lua



Видео по теме