Сандали vabish'а
1.68K subscribers
741 photos
339 videos
96 files
84 links
Бот для предложений: @SuportUMSBot . Форум с гайдами: https://t.me/+xx91B4zhoMZlNjRi
Download Telegram
🥰18🔥31👍1
Изменил сообщение
Делвин познает моддинг
😱10👍2
Было 3к строк с чем-то днем. А сейчас 4300
Обновил пост. Читаем
👍4🤔2
👋 Доброго времени суток, уважаемые друзья!

🚀┃Моддинг продолжает развиваться и это нас радует. Наш русский разработчик активно его обновляет и хочет, чтобы с помощью моддинга можно было сделать всё что угодно

📊┃Мы внимательно изучили новую документацию и сравнили ее с первым анонсом. Количество функций выросло в несколько раз! Мы подготовили для вас полный список всех новых функций, которые не были показаны ранее

Какие же новые функции в нём будут:

🌐Глобальные функции и Математика
Появился полный набор математических и временных утилит:
time.getTime(): Получение времени (в секундах) с момента запуска игры.
math.lerp(a, b, t): Плавная интерполяция между двумя числами.
math.clamp(value, min, max): Ограничение числа в заданном диапазоне.
math.randomInt(min, max): Получение случайного целого числа.
math.randomFloat(min, max): Получение случайного дробного числа.
math.randomBool(): Получение случайного true или false.
math.perlin(x, y): Генерация 2D-шума Перлина (для процедурной генерации).
math.abs(v): Модуль числа.
math.sqrt(v): Квадратный корень.
math.sin(v) / math.cos(v): Синус и косинус (в радианах).
math.round(v) / math.floor(v) / math.ceil(v): Различные методы округления.

🖥Функции GUI (Интерфейс)
Модуль GUI был невероятно расширен. Теперь это полноценная система для создания меню:
Расположение:
gui.beginArea() / gui.endArea(): Создание фиксированной области на экране.
gui.beginScrollView() / gui.endScrollView(): Создание прокручиваемой области.
gui.space(pixels): Добавление пустого пространства.
gui.flexibleSpace(): Добавление "пружины", заполняющей пустое место.
Новые Элементы:
gui.checkbox(state, text): Стандартный чекбокс.
gui.repeatButton(text): Кнопка, которая срабатывает, пока зажата.
gui.textArea(text): Многострочное поле для ввода текста.
gui.toggle(value, text): Переключатель в стиле "Вкл/Выкл".
gui.selectionGrid(...): Сетка для выбора (например, в инвентаре).
gui.passwordField(...): Поле для ввода пароля со скрытыми символами.
Стилизация:
gui.createStyle(...): (Очень важно!) Создание кастомных стилей с указанием цвета текста, текстуры фона и выравнивания.
gui.setStylePadding(): Установка внутренних отступов.
gui.setStyleMargin(): Установка внешних отступов.
gui.setStyleFontSize(): Установка размера шрифта.
gui.setStyleFontStyle(): Установка стиля шрифта (жирный, курсив и т.д.).
Утилиты:
gui.getLastRect(): Получение размеров последнего элемента.
• gui.setEnabled() / gui.getEnabled(): Включение/выключение всего GUI.
• gui.setColor() / gui.setBackgroundColor(): Глобальное изменение цвета GUI.

#новости #игра #обновление #моддинг

➡️ [1/3]
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰3🔥1
🏠Объекты (GameObjects)
Появились ключевые функции для управления компонентами и свойствами:
gameObject.setName() /gameObject.getName(): Управление именем объекта.
gameObject.isActive(): Проверка, активен ли объект (включая проверку родительских).
gameObject.setTag() / gameObject.getTag(): Управление тегами.
gameObject.findWithTag(): Поиск объектов по тегу.
gameObject.getTransform(): Получение ID трансформа объекта.
gameObject.addComponent():
(Ключевая функция!) Добавление на объект компонентов (`Rigidbody`, `AudioSource`, `BoxCollider` и т.д.).
gameObject.getComponent(): Получение компонента с объекта.


📌┃Трансформы (Позиция и ротация)
Модуль для перемещений теперь позволяет работать с иерархией и локальными осями:
transform.getLocalPosition() / transform.setLocalPosition(): Работа с позицией относительно родителя.
transform.getRotation() / transform.setRotation(): Работа с вращением через кватернионы.
transform.getEulerAngles() / transform.setEulerAngles(): Работа с вращением через углы Эйлера (градусы).
transform.getScale() / transform.setScale(): Управление размером.
transform.getForward() / transform.getRight() / transform.getUp(): Получение векторов направления (вперед, вправо, вверх) объекта.
transform.setParent(): (Ключевая функция!) Прикрепление одного объекта к другому.
transform.getChild() / transform.getChildCount(): Получение дочерних объектов.
transform.find(): Поиск дочернего объекта по имени (рекурсивно).
transform.detachChildren(): Отсоединение всех детей.


💥Физика
Модуль физики был значительно расширен для более сложных взаимодействий:
rigidbody.getVelocity(): Получение текущей скорости тела.
collider.setEnabled(): Включение/выключение коллайдера.
collider.isTrigger() / collider.setTrigger(): Управление режимом триггера.
physics.raycastAll(): "Выпустить луч", который возвращает все объекты на своем пути.
physics.sphereCast(): "Выпустить" сферу для проверки столкновений (толстый луч).
physics.checkSphere(): Проверяет, есть ли хотя бы один коллайдер в радиусе.
Управление Слоями:
physics.getLayerName() / physics.getLayerFromName(): Конвертация имени слоя в номер и обратно.
physics.layerMask() / physics.layerMaskInverse(): Создание масок для фильтрации рейкастов (чтобы луч игнорировал игроков, например).
physics.setLayer() / physics.getLayer(): Установка/получение слоя объекта.
physics.setLayersRecursively(): Установка слоя объекту и всем его детям.
physics.layerMaskAll() / physics.layerMaskNone(): Вспомогательные функции для масок.


🔈Аудио
Теперь это полноценная система для 3D-звука:
audioSource.add(gameObjectId): Добавление "источника звука" на объект.
audioSource.pause(): Постановка звука на паузу.
audioSource.setClip(audioClipId): Привязка загруженного аудиофайла к источнику.
audioSource.getVolume(): Получение текущей громкости.
audioSource.setLoop() / audioSource.getLoop(): Управление зацикливанием.
audioSource.setSpatial() / audioSource.getSpatial(): Управление 3D-звуком (0.0 = 2D, 1.0 = 3D).
• audioSource.setPitch(): Изменение высоты тона (и скорости) звука.
• audioSource.isPlaying(): Проверка, проигрывается ли звук в данный момент.
• audioClip.getLength(audioClipId): Получение длительности аудиофайла.

➡️ [2/3]
Please open Telegram to view this post
VIEW IN TELEGRAM
▶️┃Камера
Добавлены важные функции для работы с камерой
camera.getMain(): Получение ID главной камеры
camera.getTransform(): Получение трансформа камеры
camera.setBackgroundColor() / camera.getBackgroundColor(): Управление цветом фона камеры
camera.getFieldOfView(): Получение текущего угла обзора
camera.setOrthographic() / camera.isOrthographic(): Переключение и проверка 2D-режима (ортографического)


🎮┃Ввод (Input)
API ввода был дополнен для отслеживания всех состояний и управления консолью:
• registerConsoleCommand() / executeConsoleCommand(): Регистрация и выполнение своих консольных команд.
• input.getScreenWidth() / input.getScreenHeight(): Получение разрешения экрана.
• input.getMousePosition() / input.getMouseX() / input.getMouseY(): Получение точной позиции курсора.
• input.getMouseLock(): Проверка, заблокирован ли курсор.
• input.getMouseDown(): Проверка нажатия
кнопки мыши (в 1 кадр).
input.getMouseUp(): Проверка отпускания кнопки мыши (в 1 кадр).
input.getButton() / input.getButtonDown() / input.getButtonUp(): Полный контроль над кнопками геймпада (зажатие, нажатие, отпускание).
input.getKeyUp(): Проверка отпускания клавиши (в 1 кадр).
input.getKeyName(): Получение имени последней нажатой клавиши.
input.getAllPressedKeys(): Получение таблицы всех зажатых в данный момент клавиш.


💡┃На данный момент функций сейчас составляет примерно 100+ и то не все показаны, потому что другие ещё разрабатываются, уже были показаны или же запрещено показывать

Моддинг уже запущен, но сейчас доступны только функции из прошлого поста

Если вы хотите начать, я подготовил документацию, которая обновляется почти ежедневно

Ознакомьтесь с ней по ссылке: https://gorebox-modding.github.io/gorebox_modding_api/

➡️ [3/3]
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥52👍2
Сандали vabish'а
Функции моддинга в текущей версии гб. В новом патче добавится еще куча фишек. В мечтах догнать гмод
Ещо Гдев добавил в проект библиотеку для импорта моделей. Завтра сделаю поддержку импорта моделей большинства форматов и поддержку загрузки анимаций(Дженни мод 2.0)
🔥17
Сандали vabish'а
Я переименовал функции gui_update, late_update, fixed_update на guiUpdate, lateUpdate, fixedUpdate. Имейте ввиду
Из новых евентов:
1. onEmote(emoteName)
2. onEndEmote
3. onChatMessage(message, player)
player — новый класс. Проводит методы по типу player.getName(player)
4. onLocalGetUp
5. onLocalRagdoll
6. onLocalSpawned
7. onLocalKnockout
8. onLocalWakeUp
9. onLocalHealed
10. onLocalInfected
11. onKilledSelf
12. onLocalDied
13. onKilledPlayer(player)
14. onPlayerJoined(player)
А как в старом моддинге игрока находили? Я уже не помню
Короче луа полетел изза огромного функционала. Придется переписывать его с нуля на модульную систему
🤬12😢3👏2😁1
Сандали vabish'а
Короче луа полетел изза огромного функционала. Придется переписывать его с нуля на модульную систему
Буду использовать другую библиотеку. АПИ опять поменяется полностью
👏12🤬1
Сандали vabish'а
Буду использовать другую библиотеку. АПИ опять поменяется полностью
Новый моддинг будет выглядить типо так:
'''Lua
LocalPlayer = nil
function start()
LocalPlayer=getLocalPlayer()
PlayerTransform = LocalPlayer.getTransform()
PlayerTransform.setPosition(0, 3, 8)
end
'''
8🔥3
Скиньте мне гб в16 на телефоны пожалуйста
А типо всем горебоксерам пофиг на ноги от первого лица?
👍23
уже 3 часа ночи и этот код теперь работает:
function OnLocalSpawned()
Main:log("Player returns")
local player = Main:getLocalPlayer()

if player == nil then
Main:log("Player is nil!")
return
end

Main:log(player)
Main:log(player.LocalScale)

local newScale = Vector3.New(2, 3, 4)
player.LocalScale = newScale

Main:log("New scale applied: " .. tostring(player.LocalScale))
end
3👍2🔥1👏1
Я спать. Завтра тут будет раз так в 5 больше контента
👍7
Сандали vabish'а
Я спать. Завтра тут будет раз так в 5 больше контента
С новой библиотекой, которую мне порекомендовал чел я думаю, что верну прошлый функционал за +- 2 дня
👍5