PS2 “Хак” Silent Hill: Origins (PS2)

  • Автор темы Автор темы GaryZon
  • Дата начала Дата начала
она может просто не прописана для остальных треков?
 
Вполне возможно. Может быть надо просто активировать триггер. Но как узнать, так ли это? И как потом триггер активировать?
 
Найдите человека, который знает ассемблер и работает в среде программирования несколько лет. Он сможет помочь тогда.
А так как никто ассемблера из нас не знает, мы ничего не сможем сделать.
 
Не знаю я, где такого спеца найти...
Значит выход один - правка треков, может быть The REAL сможет расковырять заголовок.
Ну или ждать европейку, но не факт, что там это исправят.
 
Вот вам небольшой пример header'а, правда он ADX, но принцип ясен.
sfaheaderqh8.jpg
 
GaryZon, взгляни на пост тов.Riku, общий смысл там ясен. Потом возьми Total Commander (он же Windows Commander), и сделай сравнение по содержимому двух разных по длинне RWS-файлов (выдели по файлу в правом и левок окне коммандера и жми Файлы->Сравнить по содержимому, на англ. Files->Compare by content). Тебе откроются файлы в 16-ричном виде, там красным будет выделены различия. Т.К. заголовок имеет одинаковый размер и структуру, отыскать нужные байты не должно составить труда (если они там есть).
(Я бы и сам глянул, но диска с игрой под рукой сейчас нет)
 
The REAL, у меня ничего не вышло. В заголовках что-то очень много различий, и мне не удалось найти параметр отвечающий за длину файла. Пробовал искать значения длительности в секундах, или размер в байтах, переводя значения в hex формат (например, 27 сек = 1b в хексе) и не нашёл. Походу они там ещё и зашифрованы. Но точно могу сказать, что значения длительности есть в заголовке, т.к. когда я попробовал просто вырезать заголовок winhex-ом (из минутного трека) и сохранил его отдельно, то потом открыв его в винампе услышал писк длящийся ровно минуту.
 
Нашёл-таки я этот параметр! Если его изменить, то и время трека меняется.

7dyn3.jpg


Он потом ещё в заголовке несколько раз повторяется (не знаю, важно это или нет).
Но только у них как-то странно сделано, допустим этот 7D, стоит в треке DARKTOWN.RWS, который длится 2:43. Ну главное, что хоть что-то откопал.
 
GaryZon, ты крут :D
Небольшая поправка то что ты нашел - это длинна файла минус 12, занимает 4 байта (32-битное целое).
То есть в твоем примере:
0D 08 00 00 - допустим идентификатор файла
F4 67 7D 00 - это длинна всего файла минус 12 байт
....

Конечно если её изменить, то плагин in_cube будет думать что у файла другой размер.
 
The REAL, то есть это только в in_cube изменения видны будут? А в самой игре ничего не поменяется? :ph34r:
 
Меня беспокоит почему замена MENU.RWS не повлияла на замену музыки в игре.
GaryZon, ты вроде играл в игру, сможешь сказать какой трек играет вначале? Или даже лучше - не сочти за труд - проведи следующий эксперимент: замени трек музыки в первом уровне на другой, например тот же MENU.RWS. Ты понимаешь о чем я?
Собсвенно исходники in_cube есть, там я и подсмотрел откуда берется(считается) длинна треков самим плагином. Там же есть интересное наличие параметра loop_flag в некоторых типах ADPCM-файлов...
 
The REAL, да я в неё играл, конечно. :) Потому и недоволен качеством порта.
В начале? Ты имеешь ввиду, когда после самого первого ролика управление переходит к игроку? Если ты об этом, то там играет SHPSP01.RWS (классная песня). Эксперимент пока провести не cмогу... Может только завтра, или послезавтра.
Про loop_flag я тоже уже упоминал, если помнишь (плагин показывает в свойствах файла no loop). Оптимально было бы, если этот flag можно проставить в самом треке. Все проблемы с музыкой были бы решены.
 
Для формата RWS плагин параметр loop_flag вообще не считывает, там заранее он = 0. :( Поэтому неясно, если он в файле вообще.
Сделать тебе програмку, которая будет делать трек RWS в 2 раза длиннее?
 
Для формата RWS плагин параметр loop_flag вообще не считывает, там заранее он = 0. :( Поэтому неясно, если он в файле вообще.
Блин, жалко...

Сделать тебе програмку, которая будет делать трек RWS в 2 раза длиннее?
Если не трудно, то сделай конечно. Потом попробую поэксперементировать на живой игре. :D
 
GaryZon, держи :D (для работы нужон NET Framework 2.0 или выше, скачивается с сайта майкрософта если нету)
 

Вложения

  • rws.zip
    rws.zip
    18,9 КБ · Просмотры: 303
  • rws_src.zip
    rws_src.zip
    87,9 КБ · Просмотры: 238
The REAL, громадное спасибо! :)
Надеюсь, на выходных смогу потестить на самой игре.
 
Давай, жду отзывов.
 
Смог выкроить время, и проверил сегодня. Результат нулевой. :)
Удлинённые треки длятся по времени столько же, сколько и оригиналы. Эта игра не хочет поддаться так просто, она издевается над нами.
Похоже, остаётся только сдаться...
 
Назад
Верх