-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Feature] Changes From Discord Votes #194
Conversation
Signed-off-by: Remuchi <[email protected]>
Signed-off-by: Remuchi <[email protected]>
Signed-off-by: Remuchi <[email protected]>
WalkthroughИзменения охватывают несколько файлов прототипов сущностей, включая оружие (винтовки, пистолеты-пулемёты, дробовики, снайперские винтовки) и некоторые технические структуры. Основные модификации включают добавление компонентов ближнего боя к оружию, изменение параметров огня, обновление графиков конструкции и добавление новых сущностей для вентиляторов и сливных отверстий. Changes
Suggested labels
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🔭 Outside diff range comments (1)
Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml (1)
Обнаружены несоответствия в механике удержания оружия
В результате проверки кодовой базы выявлено, что компоненты
Wieldable
иGunRequiresWield
используются непоследовательно:
- Базовый класс
BaseWeaponShotgun
содержитGunRequiresWield
- Некоторые дочерние классы дополнительно наследуют
BaseGunWieldable
и добавляют компонентWieldable
- У
WeaponShotgunBulldog
есть комментарий "#remove when inaccuracy on spreads is fixed", указывающий на временное решениеРекомендации:
- Удалить дублирование компонентов
Wieldable
, так как базовый класс уже содержитGunRequiresWield
- Создать задачу для отслеживания исправления неточности при стрельбе
- Стандартизировать наследование от
BaseGunWieldable
для всех дробовиков, требующих удержания🔗 Analysis chain
Line range hint
1-300
: Необходима стандартизация механики удержания оружияОбнаружены следующие проблемы с конфигурацией:
Некоторые сущности всё ещё содержат компонент
Wieldable
:
- WeaponShotgunDoubleBarreled
- WeaponShotgunEnforcer
- WeaponShotgunKammerer
- WeaponShotgunBlunderbuss
Комментарий "#remove when inaccuracy on spreads is fixed" указывает на временное решение, которое может быть забыто.
Необходимо:
- Стандартизировать поведение удержания оружия в соответствии с целями PR
- Создать задачу для отслеживания временного решения с неточностью стрельбы
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Description: Verify wielding components across all weapon types # Check for inconsistent wielding configurations # Search for Wieldable components echo "Checking Wieldable components across weapons:" rg "type: Wieldable" -A 2 # Search for GunRequiresWield components echo "Checking GunRequiresWield components across weapons:" rg "type: GunRequiresWield" -A 2Length of output: 10722
🧹 Nitpick comments (4)
Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml (1)
134-134
: Изменения в обращении с Drozd соответствуют общей концепцииУдаление компонента
BaseGunWieldable
и настройка углов разброса (2-14) делают Drozd менее точным по сравнению с C-20r (2-10), что создает баланс между разными моделями ПП.Рекомендуется добавить комментарий в код, объясняющий причину различий в точности между моделями.
Also applies to: 148-149
Resources/Prototypes/Entities/Structures/Piping/Atmospherics/special.yml (1)
21-21
: Форматирование и конфигурация требуют вниманияОбнаружены следующие проблемы:
- Несогласованные отступы в файле
- Отсутствует перенос строки в конце файла
Предлагаемые изменения:
fixtures: fix1: shape: !type:PhysShapeAabb - bounds: "-0.5,-0.5,0.5,0.5" + bounds: "-0.5,-0.5,0.5,0.5" - type: Tag tags: - - SpreaderIgnore + - SpreaderIgnore - type: Construction graph: TinyFan node: tinyFan +Also applies to: 27-31
Resources/Prototypes/_White/Recipes/Construction/Graphs/utilities/atmos_advanced.yml (1)
26-30
: Исправьте форматирование и добавьте документацию
- Исправьте отступы в шагах разборки (должно быть 8 пробелов вместо 6)
- Добавьте комментарии к временным задержкам, объясняющие выбранные значения
- Добавьте перенос строки в конце файла
- to: start completed: - !type:SpawnPrototype prototype: SheetSteel1 amount: 2 - !type:SpawnPrototype prototype: IngotSilver1 amount: 5 - !type:DeleteEntity - steps: - - tool: Screwing - doAfter: 2 - - tool: Welding - doAfter: 5 + steps: + - tool: Screwing + doAfter: 2 # Стандартное время для операций с отвёрткой + - tool: Welding + doAfter: 5 # Увеличенное время для сварки +Also applies to: 58-62
🧰 Tools
🪛 yamllint (1.35.1)
[warning] 26-26: wrong indentation: expected 8 but found 6
(indentation)
[warning] 27-27: wrong indentation: expected 8 but found 6
(indentation)
Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml (1)
65-65
: Добавьте пустую строку в конец файлаОтсутствует символ новой строки в конце файла, что может вызвать проблемы при обработке файла некоторыми инструментами.
Добавьте пустую строку в конец файла:
graph: FloorDrain node: floorDrain +
🧰 Tools
🪛 yamllint (1.35.1)
[error] 65-65: no new line character at the end of file
(new-line-at-end-of-file)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (8)
Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml
(0 hunks)Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml
(4 hunks)Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml
(1 hunks)Resources/Prototypes/Entities/Objects/Weapons/Guns/Snipers/snipers.yml
(0 hunks)Resources/Prototypes/Entities/Structures/Piping/Atmospherics/special.yml
(1 hunks)Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml
(1 hunks)Resources/Prototypes/_White/Recipes/Construction/Graphs/utilities/atmos_advanced.yml
(1 hunks)Resources/Prototypes/_White/Recipes/Crafting/utilities/atmos_advanced.yml
(1 hunks)
💤 Files with no reviewable changes (2)
- Resources/Prototypes/Entities/Objects/Weapons/Guns/Rifles/rifles.yml
- Resources/Prototypes/Entities/Objects/Weapons/Guns/Snipers/snipers.yml
🧰 Additional context used
🪛 yamllint (1.35.1)
Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml
[error] 65-65: no new line character at the end of file
(new-line-at-end-of-file)
Resources/Prototypes/Entities/Structures/Piping/Atmospherics/special.yml
[error] 31-31: no new line character at the end of file
(new-line-at-end-of-file)
[error] 31-31: trailing spaces
(trailing-spaces)
Resources/Prototypes/_White/Recipes/Crafting/utilities/atmos_advanced.yml
[error] 29-29: no new line character at the end of file
(new-line-at-end-of-file)
Resources/Prototypes/_White/Recipes/Construction/Graphs/utilities/atmos_advanced.yml
[warning] 26-26: wrong indentation: expected 8 but found 6
(indentation)
[warning] 27-27: wrong indentation: expected 8 but found 6
(indentation)
[warning] 58-58: wrong indentation: expected 8 but found 6
(indentation)
[warning] 59-59: wrong indentation: expected 8 but found 6
(indentation)
[error] 62-62: no new line character at the end of file
(new-line-at-end-of-file)
🔇 Additional comments (7)
Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml (3)
Line range hint 1-40
: Добавление компонента ближнего боя к базовому ПП выглядит обоснованным
Параметры урона и скорости атаки выглядят сбалансированными для оружия данного типа. Добавление возможности использовать оружие в ближнем бою повышает тактическую гибкость.
91-91
: Изменения в обращении с C-20r соответствуют целям PR
Удаление принудительного удержания двумя руками (BaseGunWieldable
) и корректировка углов разброса делают оружие более удобным в использовании одной рукой. Это соответствует заявленным изменениям в механике обращения с оружием.
Also applies to: 105-106
Line range hint 1-300
: Необходима проверка согласованности изменений
Давайте проверим, что все пистолеты-пулемёты соответствуют новой концепции управления оружием.
✅ Verification successful
Все пистолеты-пулеметы соответствуют новой системе
Проверка показала:
- Компонент
BaseGunWieldable
полностью удален из всех конфигураций ПП - Все ПП имеют корректно настроенные углы разброса:
- BaseSMG: 2-16°
- C-20r: 2-10°
- Drozd: 2-14°
- WT550: 1-6°
Значения углов разброса логично варьируются между моделями, отражая их различные характеристики точности.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Description: Verify weapon handling changes across all SMG configurations
# Expected: No instances of BaseGunWieldable in SMG configurations
# Check for any remaining wielding components in SMG configurations
echo "Checking for remaining wielding components in SMGs..."
rg "BaseGunWieldable" Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/
# Check angle configurations for all SMGs
echo "Checking angle configurations..."
rg "(minAngle|maxAngle):" Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/
Length of output: 1010
Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml (1)
54-54
:
Проверьте необходимость компонента GunRequiresWield
Добавление компонента GunRequiresWield
в базовую конфигурацию противоречит целям PR, где указано, что большинство оружия больше не должно требовать принудительного удержания двумя руками.
- - type: GunRequiresWield
✅ Verification successful
Let me verify this by checking other gun configurations and related changes.
Компонент GunRequiresWield используется обоснованно
Анализ кодовой базы показывает, что компонент GunRequiresWield
используется целенаправленно для определенных типов оружия, которые по игровому балансу должны требовать удержания двумя руками:
- Снайперские винтовки (snipers.yml)
- Дробовики (shotguns.yml)
- Ручные пулеметы (lmgs.yml)
- Луки (bow.yml)
В файле shotguns.yml даже есть комментарий "#remove when inaccuracy on spreads is fixed", что указывает на временную необходимость этого компонента для корректной работы механики разброса.
🏁 Scripts executed
The following scripts were executed for the analysis:
Error: No shell scripts found
Script:
#!/bin/bash
# Check for GunRequiresWield usage across gun configurations
rg "type: GunRequiresWield" -A 2 -B 2
# Look for any documentation or comments about GunRequiresWield
rg "GunRequiresWield" --type yaml
# Check for base weapon configurations
fd "weapons.*\.yml" Resources/Prototypes/Entities/Objects/Weapons/
Length of output: 3446
Resources/Prototypes/_White/Recipes/Crafting/utilities/atmos_advanced.yml (1)
1-29
: Проверьте балансировку ресурсов и конфигурацию
Конфигурация рецептов выглядит корректной, но рекомендуется:
- Проверить баланс ресурсов для крафта относительно других предметов той же категории
- Убедиться, что иконки существуют по указанным путям
- Добавить перенос строки в конце файла
✅ Verification successful
Let me verify the existence of the icon files and check the construction graphs for resource balance.
Let me check the construction graphs' content to verify resource requirements.
Конфигурация рецептов корректна, но требуется добавить перенос строки
Проверка показала:
- Файлы иконок существуют в правильных директориях
- Баланс ресурсов одинаковый для обоих предметов (5 стали, 10 серебра)
- Все необходимые компоненты и сущности определены корректно
• Добавьте перенос строки в конце файла Resources/Prototypes/_White/Recipes/Crafting/utilities/atmos_advanced.yml
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Проверка существования файлов иконок
fd -e rsi "tinyfan.rsi$" "Structures/Piping/Atmospherics/"
fd -e rsi "drain.rsi$" "Objects/Specific/Janitorial/"
# Поиск других рецептов в той же категории для сравнения баланса
rg "category: construction-category-utilities" -A 10
Length of output: 55234
Script:
#!/bin/bash
# Check for icon files in Resources directory
fd -e rsi "tinyfan.rsi|drain.rsi" Resources/
# Check construction graphs for TinyFan and FloorDrain
rg "graph: (TinyFan|FloorDrain)" -A 10 Resources/
Length of output: 2621
Script:
#!/bin/bash
# Check construction graph definitions
fd -e yml "TinyFan.yml|FloorDrain.yml" Resources/
# Search for graph contents
rg -A 20 "id: TinyFan\$|id: FloorDrain\$" Resources/
Length of output: 9349
🧰 Tools
🪛 yamllint (1.35.1)
[error] 29-29: no new line character at the end of file
(new-line-at-end-of-file)
Resources/Prototypes/_White/Recipes/Construction/Graphs/utilities/atmos_advanced.yml (1)
9-13
: Проверьте баланс ресурсов для крафта
Текущий баланс ресурсов:
- Создание: 5 Steel + 10 Silver
- Разборка: 2 Steel + 5 Silver
Потеря 60% стали и 50% серебра при разборке кажется значительной. Рекомендуется проверить, соответствует ли это общему балансу игры.
Also applies to: 41-45
Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml (1)
63-65
: Проверьте баланс крафта слива
Добавление компонента Construction корректно реализовано и соответствует целям PR. Однако, согласно описанию PR, разборка должна давать меньше ресурсов, чем сборка.
Выполните следующий скрипт для проверки баланса крафта:
✅ Verification successful
Let me check the construction recipe details for the drain to verify the crafting balance.
Баланс крафта слива корректен
Анализ рецепта показывает правильный баланс крафта:
- Для создания требуется: 5 стали и 10 серебра
- При разборке выдаётся: 2 листа стали и 5 слитков серебра
Это соответствует принципу, что разборка должна давать меньше ресурсов, чем требуется для создания.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Описание: Проверка конфигурации крафта слива
# Поиск рецептов крафта
rg -A 10 "FloorDrain" --type yaml
Length of output: 33125
Script:
#!/bin/bash
# Поиск всех файлов, связанных с крафтом слива
rg -l "FloorDrain" --type yaml Resources/Prototypes/_White/Recipes/
Length of output: 226
Script:
#!/bin/bash
# Проверка содержимого файлов рецептов
cat Resources/Prototypes/_White/Recipes/Construction/Graphs/utilities/atmos_advanced.yml | grep -A 15 "FloorDrain"
Length of output: 689
🧰 Tools
🪛 yamllint (1.35.1)
[error] 65-65: no new line character at the end of file
(new-line-at-end-of-file)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Марок нет, а так все нормально
Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml
Outdated
Show resolved
Hide resolved
Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml
Outdated
Show resolved
Hide resolved
Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml
Outdated
Show resolved
Hide resolved
Resources/Prototypes/Entities/Structures/Piping/Atmospherics/special.yml
Outdated
Show resolved
Hide resolved
Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml
Outdated
Show resolved
Hide resolved
Co-authored-by: Spatison <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (2)
Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml (1)
67-67
: Добавьте пустую строку в конец файлаВ соответствии с YAML-спецификацией, файл должен заканчиваться символом новой строки.
# WD EDIT END +
🧰 Tools
🪛 yamllint (1.35.1)
[error] 67-67: no new line character at the end of file
(new-line-at-end-of-file)
Resources/Prototypes/Entities/Structures/Piping/Atmospherics/special.yml (1)
33-33
: Исправьте форматирование файла!Необходимо:
- Удалить пробелы в конце файла
- Добавить пустую строку в конец файла
- +🧰 Tools
🪛 yamllint (1.35.1)
[error] 33-33: no new line character at the end of file
(new-line-at-end-of-file)
[error] 33-33: trailing spaces
(trailing-spaces)
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (4)
Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml
(4 hunks)Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml
(1 hunks)Resources/Prototypes/Entities/Structures/Piping/Atmospherics/special.yml
(1 hunks)Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml
(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (2)
- Resources/Prototypes/Entities/Objects/Weapons/Guns/Shotguns/shotguns.yml
- Resources/Prototypes/Entities/Objects/Weapons/Guns/SMGs/smgs.yml
🧰 Additional context used
🪛 yamllint (1.35.1)
Resources/Prototypes/Entities/Structures/Piping/Atmospherics/special.yml
[error] 33-33: no new line character at the end of file
(new-line-at-end-of-file)
[error] 33-33: trailing spaces
(trailing-spaces)
Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml
[error] 67-67: no new line character at the end of file
(new-line-at-end-of-file)
🔇 Additional comments (4)
Resources/Prototypes/Entities/Structures/Specific/Janitor/drain.yml (1)
63-67
: Компонент Construction добавлен корректно!
Добавление возможности крафта для сущности FloorDrain соответствует целям PR по расширению системы крафтинга. Структура компонента правильная, с указанием графа и узла.
🧰 Tools
🪛 yamllint (1.35.1)
[error] 67-67: no new line character at the end of file
(new-line-at-end-of-file)
Resources/Prototypes/Entities/Structures/Piping/Atmospherics/special.yml (3)
21-21
: Форматирование выглядит корректно!
Отступы для свойства bounds
теперь соответствуют стандартам форматирования YAML.
27-27
: Тег SpreaderIgnore добавлен корректно!
Тег SpreaderIgnore
правильно предотвращает взаимодействие вентилятора с системами распространения.
28-32
: Проверьте наличие соответствующего графа конструкции!
Компонент Construction добавлен корректно, но необходимо убедиться, что:
- Граф
TinyFan
определен в системе - Узел
tinyFan
корректно настроен - Материалы для крафта соответствуют балансу игры
✅ Verification successful
Граф конструкции проверен - всё корректно!
Проверка показала, что:
- Граф
TinyFan
определен в системе - Узел
tinyFan
правильно настроен и содержит:- Необходимые материалы: 5 стали и 10 серебра
- Корректные инструменты для разборки: отвёртка и сварка
- Правильную сущность:
AtmosDeviceFanTiny
- Возврат материалов при разборке
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Проверка наличия графа конструкции TinyFan
rg -l "graph:\s*TinyFan" "Resources/Prototypes"
# Поиск определения узла tinyFan
rg -l "node:\s*tinyFan" "Resources/Prototypes"
Length of output: 399
Script:
#!/bin/bash
# Проверим содержимое файла с графом конструкции
cat "Resources/Prototypes/_White/Recipes/Construction/Graphs/utilities/atmos_advanced.yml"
Length of output: 1294
Описание
С голосовашек.
Изменения
🆑