Убран замер фризов FreezeProbe; закоммичены звук, пирамида и necroboneshiv

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
AlexCube
2026-10-10 23:05:08 +03:00
co-authored by Claude Opus 5.5
parent 0c1235b079
commit 0d55f895de
7 changed files with 47 additions and 47 deletions
+47
View File
@@ -0,0 +1,47 @@
<config>
<!-- ПЕРВЫЙ СОБСТВЕННЫЙ ЗВУК МОДА (2026-09-10). До этого весь мод переиспользовал ванильные
звуковые id: разбор 2026-08-30 показал, что новый звук нельзя просто положить файлом
рядом с XML. Аудио в этой версии игры - единственный тип ассета, который идёт через
DataLoader.LoadAsset<AudioClip> -> Resources.Load, а тот читает только запечённое в
сборку самой игры; ванильные "@:Sounds/..." идут вообще третьим путём, через
Addressables, чей каталог модам недоступен. Единственная работающая дорога для НОВОГО
аудио - синтаксис "#bundlePath?assetName", то есть настоящий Unity AssetBundle.
Бандл собирается из Unity-проекта в _private/Extracted/ItemsUnityProject скриптом
Assets/Editor/NecroSoundSetup.cs (копия - _private/tools/UnityEditorScripts/) и кладётся
в Resources/necrosounds. Исходники звуков и настройки импорта - там же, здесь только
ссылка. Пересобрать: Unity.exe -batchmode -nographics -quit -projectPath <проект>
-executeMethod NecroSoundSetup.SetupAndBuild -logFile <лог>.
ЕСЛИ ЗВУКА НЕТ В ИГРЕ: отказ здесь ТИХИЙ - ни краша, ни ошибки загрузки XML, только
строка "AudioManager LoadAudio failed to load audio clip" в логе игры. Проверять надо
именно лог, а не "ну наверное не слышно за другими звуками".
-->
<append xpath="/Sounds">
<!-- Камень духов: попадание по зомби (то есть попадание, которое реально накладывает
charm). Вешается на triggered_effect в items.xml, там же и отсечка "только зомби".
AudioSource_Impact.prefab - ровно тот же ванильный источник, что у сиблинга
stonehitorganic, который звучит на этом же событии: одинаковые кривые затухания и
та же группа микшера, поэтому два звука удара не разъезжаются по громкости.
Имя клипа С РАСШИРЕНИЕМ (soulstone.mp3) - не опечатка. Игра ищет ассет в бандле по
имени файла, а не по пути внутри Unity-проекта; ровно эта форма уже подтверждена в
игре на ноже ("...necroknife?necroKnifePrefab.prefab").
Узла <Noise> здесь сознательно НЕТ. Шум для стелса на этом попадании уже создаёт
stonehitorganic (Noise ID=1, noise=7), и второй узел просто удвоил бы привлечение
зомби на ровном месте - звук чармa не должен быть громче в смысле AI, чем сам удар
камня. -->
<SoundDataNode name="necroSpiritStoneHit">
<AudioSource name="@:Sounds/Prefabs/AudioSource_Impact.prefab"/>
<AudioClip ClipName="#@modfolder(NecromancerTome):Resources/necrosounds?soulstone.mp3"/>
<MaxVoices value="3"/>
<MaxRepeatRate value="0.1"/>
</SoundDataNode>
</append>
</config>