1. Кладём ролик в папку gamedata\textures\sleep\. Собственно, в любую папку, лишь бы она была в каталоге textures. Просто в sleep лежат ролики сна в оригинале.
имя файла любое, формат ogm, а разрешение ролика вроде можно сделать
любое. Я не стал заморачиваться и просто скопировал существующий ролик
сна с монолитом. 2. Озвучку ролика кладем по той-же схеме в папку в
корневом каталогу gamedata\sounds\. У меня папка называется my_sleep.
Имена файлов для левого и правого канала должны выглядеть так my_sleep_sound_l.ogg и my_sleep_sound_r.ogg длина звуков может быть разной и вообще говоря не совпадать с длиной ролика. 3. Правим файл \gamedata\config\ui\ui_movies.xml. Добавляем туда что-то в этом роде: Code <my_dream> <play_each_item>1</play_each_item> <global_wnd x="0" y="0" width="1024" height="768"> <auto_static x="0" y="0" width="1024" height="768" stretch="1"> <window_name>back</window_name> <texture>intro\intro_back</texture> </auto_static> </global_wnd>
<item type="video"> <sound>my_sleep\my_sleep_sound</sound> <pause_state>on</pause_state> <function_on_stop>sleep_manager.stopper</function_on_stop> <video_wnd x="0" y="0" width="1024" height="768" stretch="1"> <texture x="0" y="1" width="512" height="286">sleep\dream_sarcofag</texture> </video_wnd> </item> </my_dream>
Название тега my_dream - это моё имя для сна. Если я верно всё понимаю,
то вся эта фигня описывает окно, в котором играется видеоролик. 4. Теперь собственно добавляем сон. Правим файл gamedata\config\misc\dream.ltx.
Там есть секции с именами [regular_dream#] где # - это номера снов.
Сейчас там есть regular_dream1, regular_dream2 и regular_dream3.
Добавляем секцию Code [regular_dream4] dream = my_dream probability = 40 type = happy параметеры dream - это ранее заданное имя сна (в нашем случае my_dream).
probability - ясное дело, что нужно для вычисления вероятности
появления именно этого сна. Но я пока не понял по какому алгоритму она
вычисляется на основе этого параметра. Я просто сделал число побольше,
дабы протестировать побыстрее. type - может быть nightmare, normal и happy. По названию вроде понятно, что это. Но на что влияет пока не ясно.
5. Ну и завершающий этап. В этом же файле в секцию [dreams] к параметру
regular добавляем к списку новый сон regular_dream4. Вроде такого regular = regular_dream1, regular_dream2, regular_dream3, regular_dream4
Тестируем... Опа! Новый сон. Поскольку я звуки взял случайно, то при
этом в левом ухе у меня орет кот, а в правом играет мрачный эмбиент =)
Ну и естественно работать будет только при установленном АМК. Что там
именно сделано, для того чтобы сон вообще был, я пока не разбирался. |