Current time: 28.11.2021, 08:40 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Звуки объектов на КП
» loop sounds of adventure map objects
Author Message
Berserker Offline
Administrators

Posts: 15537
Post: #16

В настоящее время игра поддерживает 4 активных зацикленных звука с разной громкостью, зависящей от расстояния в шагах от героя (0..3 клетки). По умолчанию поддерживаются 70 звуковых файлов. На каждом шаге героя происходит полная остановка проигрываемых файлов и переопределение мелодий/громкостей (сканируется квадрат в 49 клеток).


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
10.08.2020 23:51
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline
Moderators

Posts: 1594
Post: #17

(10.08.2020 21:37)Bes Wrote:  чё искать звуки то? главное чтобы в коде сами файлы уже были предусмотрены Rolleyes

Заменить всегда можно. В коде у меня добавлены списки на все ID звуков. Да можно любым подтипам объектов свои звуки назначать, добавляя новые массивы индексов. Например, фоновые звуки из Tides Of War вообще не годятся, такое добавлять не стоит (уж лучше взять из Четвёртых или из Пятых Героев).

(10.08.2020 23:51)Berserker Wrote:  По умолчанию поддерживаются 70 звуковых файлов.

Максимум без изменения кода = 115. С мелкой модификацией кода можно сделать 127. С полной переписыванием функции - сколько угодно, в разумных пределах. Лично мне и 115 думаю хватит на всё.
11.08.2020 01:01
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 15537
Post: #18

Непосредственно в коде проверка на 70, возможно, ты её изменил и пишешь в данные вслед за массивом:
Code:
if ( determinedLoopSoundId > -1
  && determinedLoopSoundId < 70
  && !self->cachedLoopSoundWavs[determinedLoopSoundId] )
{
  AdvMgr_FreeCachedLoopSoundWavs(self, 4);
  self->cachedLoopSoundWavs[determinedLoopSoundId] = LoadWAV2((&loopSoundNamesById)[determinedLoopSoundId]);


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
11.08.2020 02:34
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline
Moderators

Posts: 1594
Post: #19

(11.08.2020 02:34)Berserker Wrote:  Непосредственно в коде проверка на 70, возможно, ты её изменил и пишешь в данные вслед за массивом

Количество конечно изменилось. Но и адресация тоже. Соответственно, сколько звуков добавляем, столько же и добавляем памяти для хранения данных. По оригинальным адресам естественно уже ничего нет (нули или мусор). Поэтому напоминаю, что такими вещами должен заниматься кто-то один, не должно быть несколько dll, изменяющих одну и ту же область памяти (получится как в басне Лебедь, Рак и Щука). А в ERA+ эта область памяти уже измена в релизной версии, поэтому либо в патче на loops проверять на typhon.dll, либо переписывать все функции целиком.
11.08.2020 13:48
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5165
Post: #20

(12.08.2020 04:55)V_Maiko Wrote:  Bes, and the thread about loop sounds?

V_Maiko, done.
if you want, change text from eng part of topic name
17.08.2020 04:19
Visit this user's website Find all posts by this user Quote this message in a reply
helgtla Offline
Moderators

Posts: 246
Post: #21

(22.08.2020 13:56)Berserker Wrote:  helgtla, если будет обновление с работой фоновых звуков от объектов, то карте можно будет придать ещё большей жизни.
А какого плана будут эти изменения? Сейчас, на сколько я представляю, есть возможность выставить звуки(с повтором) только двеллингам, некоторым объектам (конюшня, водопад, и.тд.). Для ЭТИХ объектов звук будет воспроизводится только при условии, что есть "жёлтый" квадрат (он является эпицентром распросранения с затуханием в три клетки). И есть объекты типа вулкан (звук возможен только при условии наличия "красной клетки", тут я хз, где эпицентр, надеюсь, что каждая красная точка) и магическая/мёртвая земля ("прозрачная точка"). У последних двух типов объектов (инициатор "красные" или "прозрачные" точки) площадь может достигать размера 192*256, что в теории должно позволять распространять необходимый звук на большую площадь, использую лишь один объект. С объектами первого типа("жёлтый" эпицентр)- приходится чередовать их по "потенциальному" пути следования игрока, при том расставлять так их, чтобы игрок не смог с ними взаимодействовать(у меня по крайней мере пришлось подобную функцию возложить на двеллинги, так как их я на карте не использую). Но всё равно в этом есть неудобство, так как даже если мне необходимо, чтобы игрока сопровождали определённые наборы звуков (уханье совы, карканье+ стрекот сверчков+ отдалённый вой (сам звуковой файл может быть до 40 секунд продолжительностью)),то приходится применять "такие пресеты" только в местах, где игрок может "задержаться". Иначе, сам файл просто не успеет проиграться, а следующий объект-триггер просто начнёт проигрывание с начала.
Потому, как по мне было бы не плохо, если бы была возможность скриптами контролировать звуковое сопровождение (назначение конкретного объекта-источника (идеально просто координаты-эпицентра звука, даже если в этом месте "пустота"), и способа его распространения (есть затухание от источника или отключено, и радиус распространения от указанной координаты(в этом случае затухание(если оно активно) выставить в процентном соотношении(30%, 60%, 100% от эпицентра)))).
22.08.2020 15:48
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 15537
Post: #22

helgtla, силу затухания планирую оставить оригинальную (там до 5-и клеток, но реально только 3 от героя), а вот клетке любой можно будет назначить зацикленный звук по принципу тип объекта, тип + подтип или просто координаты с возможностью изменения на лету. Думаю, этого будет достаточно для всех: от уникальных карт до модов на новые жилища.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
22.08.2020 16:23
Find all posts by this user Quote this message in a reply
V_Maiko Offline

Posts: 564
Post: #23

(03.09.2020 21:00)Berserker Wrote:  
Данный скрипт не рекомендуется использовать в реальных проектах. Он использует механизмы, которые могут быть изменены и позволяет памяти утекать. (Click to View)

Berserker, What you have posted in ERA III thread is an early function that can already be tested or will we have to wait longer to polish its functionality?
04.09.2020 20:07
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 15537
Post: #24

V_Maiko, it can be used temporarily just for fun, but not for players.
I think new Loop Sounds means will be released in 3.0.5 and I almost finished 3.0.4 and first version of interesting mod for it.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
05.09.2020 00:09
Find all posts by this user Quote this message in a reply
V_Maiko Offline

Posts: 564
Post: #25

Berserker, development still on? I want to send you a pack of loopsounds for existing WoG objects so that you can test how they sound, this rather than mod separately I would like it to be included in the official ERA development because WoG objects such as dwellings and creature banks need it. This isn't for a modification to everyone's taste, it's a necessity to improve what WoG had to be
27.09.2020 20:44
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 15537
Post: #26

V_Maiko, nice loops, thanks. I'm quite busy now, but Loop Sounds support is feature #1 for the next release.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
27.09.2020 22:56
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2021 MyBB Group