| Guru105   
 Posts: 835
 
 | 
			| 
 
				 (27.05.2014 03:21)hippocamus Wrote:  Спрошу здесь: как заставить игру проиграть bik, если он есть?В подавляющем большинстве случаев проигрывается smk, невзирая на наличие bik, на параметр в реестре...
 
Возможно, кто-то уже может ответить на этот вопрос? 
Ведь времени прошло немало.
 
В первую очередь меня больше всего интересует воспроизведение credits.bik вместо credits.smk в главном меню, так как smk в 256 цветов дисгармонирует с полноцветной фоновой картинкой. В некоторых случаях можно четко различить границу краев анимации. 
Может можно где-то это пропатчить?
 
Ну и насчет всего остального видео тоже интересно.
			 |  | 
	| 06.01.2022 08:42 |  | 
	
		| XEPOMAHT   
   
   Posts: 2481
 
 | 
			| 
 
				 (06.01.2022 08:42)wessonsm Wrote:  В первую очередь меня больше всего интересует воспроизведение credits.bik вместо credits.smk в главном меню, так как smk в 256 цветов дисгармонирует с полноцветной фоновой картинкой. В некоторых случаях можно четко различить границу краев анимации.Может можно где-то это пропатчить?
 
Можно, но есть пара моментов:
 
I. Кодировщика формата bik нет ни у кого, т.к. Bink Tools 0.5 никогда не выкладывался в открытый доступ. 
Решения: 
1. использовать решение от MyOffice91, подменяющее библиотеку воспроизведения видео (порт с HoMM4 насколько помню), но там придётся перекодировать все видеоролики игры из старого формата bik в новый. 
2. использовать решение от ГрейФейса из WoG 3.59, грузящее обе библиотеки и распределяющие вызовы к ним на основе данных заголовка bik-формата. Но оно сделано целиком на lua, что сильно затрудняет портирование на Ассемблер или Дельфи. 
3. скопировать с кода Хроник Героев. Но тамошний код не разобран вообще никак и вряд ли кто-то станет этим заниматься.
 
II. Воспроизведение bik в главном меню вызывает сильное падение fps. По крайней мере в тестах на ERA+ у меня было так, поэтому я оставил там smk.
			 |  | 
	| 06.01.2022 09:35 |  | 
	
		| Guru105   
 Posts: 835
 
 | 
			| 
 
				XEPOMAHT, может подскажешь как?
 Quote:I. Кодировщика формата bik нет ни у кого 
В первую очередь интересует воспроизведение уже готового видео bik. 
О том, как добавить свои ролики, можно будет подумать потом.
 Quote:II. Воспроизведение bik в главном меню вызывает сильное падение fps. 
Можно сделать опционально, с возможностью отключения на слишком слабых ПК.
			 
				
(This post was last modified: 06.01.2022 12:26 by Guru105.)
 |  | 
	| 06.01.2022 12:07 |  | 
	
		| XEPOMAHT   
   
   Posts: 2481
 
 | 
			| 
 
				 (06.01.2022 12:07)wessonsm Wrote:  может подскажешь как?
 
 Quote:I. Кодировщика формата bik нет ни у когоВ первую очередь интересует воспроизведение уже готового видео bik. О том, как добавить свои ролики, можно будет подумать потом.
 
Соотвествующий флаг в таблице с настройками видео выставляешь нужному тебе видеоролику. Таблица копируется вогом в динамическую память, поэтому патч - или в SoD до вога, или в ВоГ после. В Тифоне гораздо проще - готовая таблица тупо компилируется прямо из исходного кода, без воговских приблуд, соотвественно, можно изменять в текстовом виде на уровне исходников (т.е. принцип такой же как в исходниках SoD).
  (06.01.2022 12:07)wessonsm Wrote:  Quote:II. Воспроизведение bik в главном меню вызывает сильное падение fps.Можно сделать опционально, с возможностью отключения на слишком слабых ПК. 
В SoD так и было сделано. Но в модах на ERA было убрано, т.к. в меню ВоГа всегда smk, в bik видео конвертировать было невозможно как 20 лет назад, так и сейчас.
			 
				
(This post was last modified: 06.01.2022 12:53 by XEPOMAHT.)
 |  | 
	| 06.01.2022 12:51 |  | 
	
		| Guru105   
 Posts: 835
 
 | 
			| 
 
				XEPOMAHT, спасибо.А не подскажешь ещё, по какому адресу эту таблицу искать?
 |  | 
	| 06.01.2022 13:15 |  | 
	
		| XEPOMAHT   
   
   Posts: 2481
 
 | 
			| 
 
				 (06.01.2022 13:15)wessonsm Wrote:  А не подскажешь ещё, по какому адресу эту таблицу искать? 
683A10h
 
PS: В lua из WoG 3.59 к этой таблице тоже есть доступ через константу "VidArr", так что можешь попробвать практиковаться там (+ там поддерживается финальный bik, т.е. заменить видео в WoG 3.59 - вообще не проблема благодаря разработчикам CoreWoG Team, чего на ERA увы пока ещё никто не портировал).
			 |  | 
	| 06.01.2022 13:21 |  | 
	
		| Guru105   
 Posts: 835
 
 | 
			| 
 
				XEPOMAHT, спасибо за помощь.Нашел я эту таблицу, по базе IDA вычислил, что за Credits отвечает последовательность из 20 байт по адресу 00683СA4h, надеюсь не ошибся.
 В SoD там такое:
 54 49 68 00 60 12 69 00 01 00 00 00 00 00 00 00 00 00 00 00
 В Эре такое:
 54 49 68 00 60 12 69 00 00 00 00 01 00 00 00 00 00 00 00 00,
 то есть отличаются 2 байта по адресам 00683CACh и 00683CAFh.
 Предположительно, какой-то из них переключает воспроизведение bik/smk.
 Сделал бинарный патч:
 00683CAC 01000000, закинул в AfterWoG.
 Но эффекта это не дало, по прежнему воспроизводится smk.
 Пробовал и в BeforeWoG кидать, тоже никакого эффекта.
 На этом я и застрял. Что-то я не так делаю?
 |  | 
	| 11.01.2022 10:32 |  | 
	
		| Berserker   
   
   Posts: 16785
 
 |  | 
	| 11.01.2022 13:12 |  | 
	
		| XEPOMAHT   
   
   Posts: 2481
 
 | 
			| 
 
				 (11.01.2022 10:32)wessonsm Wrote:  Сделал бинарный патч:00683CAC 01000000, закинул в AfterWoG.
 
В Тифоне было бы так:
 
Code:
 dd WOG_T, 691260h ;   033: Credit.bik        видео в главном менюdb 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
 
Как-то наверное можно найти адрес этой 1 в содовском exe. 
  (11.01.2022 11:46)igrik Wrote:  Я где-то уже об этом писал (не помню где): ты упускаешь одну важную проверку в функции OpenVideo 0x597891, где конкретно и точно сравнивается видео по id=33, коим и является анимация в главном меню. 
Да, я уже забыл, что в ERA+ все проверки в этой функции были убраны и формат видео выбирается чётко исходя из флага isBink без исключений.
			 |  | 
	| 11.01.2022 13:34 |  | 
	
		| Bes   
   Posts: 5451
 
 |  | 
	| 11.01.2022 14:29 |  | 
	
		| Berserker   
   
   Posts: 16785
 
 |  | 
	| 11.01.2022 15:49 |  | 
	
		| Berserker   
   
   Posts: 16785
 
 |  | 
	| 11.01.2022 17:44 |  |