Skip to content

Фикс болтов- улетать из рук и левитировать после крафта не будут#273

Open
gordod3 wants to merge 6 commits into
Forge-Station:mainfrom
gordod3:CrossbowFix
Open

Фикс болтов- улетать из рук и левитировать после крафта не будут#273
gordod3 wants to merge 6 commits into
Forge-Station:mainfrom
gordod3:CrossbowFix

Conversation

@gordod3

@gordod3 gordod3 commented Jun 22, 2026

Copy link
Copy Markdown

О PR

Болты, стрелы и т.п. Projectiles(которые можно пере-использовать)с стали себя последнее время странно ввести - они выпадали из рук\контейнеров и были без гравитации при этом улетали в свободное плавание куда-то далеко пока не упирались во что-нибудь, подобрать их нельзя.
Сложно сказать в чем именно заключается проблема ведь баг проявляется только при нагрузке сервера 50+ игроков, на локалке они работают нормально, но точно дело в том что они в первую очередь являются ProjectileComponent, путем перебора\удаление компонентов они перестают летать если его удалить, углубившись понял что во всем виноват TileFrictionEvent который добавили, как я понял, чтобы исправить снаряды из корабельных орудий которые крутились вокруг своей оси если шаттл крутился во время стрельбы так что я решил что болты не корабельные снаряды и добавил проверку в ProjectileComponent в части OnTileFriction чтобы она проверяла не является ли снаряд одноразовым.

Хотя всё еще может быть проблема куда глубже, нужно понаблюдать как эти изменения сработают при нагруженном сервере, но уже как минимум все многоразовые снаряды перестали летать сами по себе на локалке и работают исправно.

Так же:

  • Исправил баг визуального отображение размера анимации ЭМИ с помощью Copilot - визуально ЭМИ всегда был одинаковым в 5 клеток вне зависимости от актуального радиуса действия.

Я как понял в билде никогда не было логики скалирование визуального размера ЭМИ взрыва, или был, но его переделали так что вместе с Copilot я долго возился и читал каждую строчку в поиске места где впихнуть инициализацию размера визуального отображение(физически он корректно влияет на игру а визуально он всегда 5 клеток шириной), в итоге Copilot создал новый компонент для хранение значения радиуса EmpBlastRangeComponent и прежде чем заспавнить взрыв, создаёт его предварительный объект, добавляет ему этот компонент, предварительно инициализируя range физического взрыва а потом запускает спавн взрыва где уже там он берёт данные размера взрыва из компонента.

  • Увеличил на 0.5 радиус действия ЭМИ болта.

Зачем / Баланс

  • https://discordapp.com/channels/1222332535628103750/1514298167473209574/1514298167473209574
  • Фикс исправляет все снаряды что можно пере-использовать делая щприцемёты, луки, арбалеты снова рабочими.
  • Визуал ЭМИ всегда был одинаково большим вне зависимости от радиуса действия, особенно это абсурдно выглядит при взрыве маленького ЭМИ болта.
  • ЭМИ болт был слишком маленький радиус ЭМИ взрыва и при активном передвижение цели взрыв мог просто его не задевать при прямом попадании а так же настенные ЛКП игнорируют столь маленький взрыв из за столь маленького радиуса хотя болт может влететь прям в стенку куда он установлен.

Медиа

До фикса:

ForgeMonoBefore1.mp4

После:

ForgeMonoAfter1f.mp4

До фикса:

ForgeMonoBefore2.mp4

После:

ForgeMonoAfter2.mp4

Требования

  • Я прочитал(а) релевантные гайдлайны/документацию для этого PR на нашем devwiki.
  • Я добавил(а) медиа в этот PR, либо для него не требуется демонстрация в игре.
  • Подтверждаю, что PR либо не содержит AI-сгенерированного контента, либо этот контент соответствует нашим правилам.

Changelog
🆑 Gordod3

  • fix: Болты, Стрелы, щприце-дротики снова исправны.
  • fix: Визуально ЭМИ корректно соответствует актуальному радиусу действия.
  • tweak: Теперь взрыв ЭМИ от ЭМИ болта размером в одну клетку а не на половину.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant