Автор Тема: The Ooze (SMD) - Хакинг и секреты  (Прочитано 18534 раз)

0 Пользователей и 2 Гостей просматривают эту тему.

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #30 : 26 Май 2014, 19:58:18 »
Ещё было бы сделать чтобы до третьего подуровня каждого уровня показывалось сколько ты собрал молекул. А то без предупреждения сразу начинается уровень с боссом. Сегамен сделай ещё это. :)

Добавлено позже:
Цитата
Я эту гаму до сего момента и не видел ни разу. Вот только видео выше пролистал до титров и вот он сюрприз. Правда в комиксе треки посильнее конечно.
Да игра рульная. Жаль на сеге больше нет таких шедевров.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #31 : 27 Май 2014, 10:11:05 »
Roket, обойдёшься. Ишрай по правилам. А хочешь знать колличнство молекул, становись возле конца уровня и жди пока перс тебе покажет колличество собранных. Так можно кстати везде делать. Остановился и ждешь

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #32 : 27 Май 2014, 14:37:49 »
Цитата
обойдёшься. Ишрай по правилам.
По каким ещё правилам играй. Я знаю сколько я молекул собрал например, но вдруг какую-то пропустил, как я это узнаю, если экран с молекулами во втором подуровне не показывается.
Цитата
А хочешь знать колличнство молекул, становись возле конца уровня и жди пока перс тебе покажет колличество собранных.
Ничего он не показывает ты чего :?. После второго подуровня не показывают ничего, сразу арена с боссом начинается. Сам проверь если хочешь.
 Я это прошу подправить, чтобы как после прохождения первого подуровня любого уровня показывался экран с набранными молекулами. Но во втором подуровне показывались.




Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #33 : 27 Май 2014, 17:54:31 »
Roket, не убедил :)

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #34 : 27 Май 2014, 19:46:03 »
Ладно я уже понял. Да не, не убедил нас как раз ты, смысл от твоего хака на кредиты если косяки игры не устранены. :)

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #35 : 28 Май 2014, 00:12:21 »
Roket, косяков в игре нет.

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #36 : 28 Май 2014, 00:49:11 »
Я по крайне мере два знаю - не отображение набранных молекул во втором подуровне и мигание Ооза как при смерти в третьем уровне 2 зона при телепортации в унитазе, даже если у тебя много слизи, ты всё равно мигаешь. Один раз Ооз даже умер при одной такой телепортации.

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #37 : 28 Май 2014, 08:07:54 »
Roket, у меня он ни когда не мигал и ни разу не умер в унитазе

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #38 : 28 Май 2014, 09:16:33 »
Segaman, точно не знаю но надо ловить этот глюк походу. Возникает при телепорте из комнаты с унитазом и кнопкой, где мухи ещё летают и при переходе обратно ооз мигает, как будто жизней нет, хотя жизней дофига. Потом покажу этот глюк, уже пропустил уровень, тоже ностальгирую. :)

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #39 : 29 Май 2014, 08:33:22 »
Roket, то что мигает, это движок сообщает. К нему претензий нет, он со своей работой справляется.
Причем мигание не блокирует действия персонажа(харчки).
А то что умирает, там наверно мухи были. Я снечала убиваю мух, а потом лезу в унитазы

Оффлайн Чинджер

  • Пользователь
  • Сообщений: 51
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #40 : 01 Июнь 2014, 02:05:28 »
Segaman, спасибо. Я уже прошел всю игру собрав 50 днк и прохождение записал. В благодарность могу тебе сказать что в игре 51 молекула днк. Только 51-ю не могу взять. Она находится в уровне 4-1 (то есть, их там 6).
Что ты можешь про неё рассказать? Знаешь как её взять?
p.S. Уже понял что некак.
« Последнее редактирование: 01 Июнь 2014, 02:33:29 от Чинджер »

Оффлайн Roket

  • Пользователь
  • Сообщений: 3324
  • Пол: Мужской
  • Злой Котэ
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #41 : 01 Июнь 2014, 02:19:06 »
Чинджер, это скорее всего молекула с второго подуровня этого же уровня. Её никак не взять. Только если ты не смоешься в унитаз с третьего босса в тот подуровень. От подуровней короче зависит.

Первый унитаз -верхний подуровень, второй унитаз -нижний подуровень.

Запиши всё прохождение со всеми развилками и молекулами. :)

Оффлайн Чинджер

  • Пользователь
  • Сообщений: 51
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #42 : 01 Июнь 2014, 02:32:36 »
Чинджер, это скорее всего молекула с второго подуровня этого же уровня. Её никак не взять. Только если ты не смоешься в унитаз с третьего босса в тот подуровень. От подуровней короче зависит.

Первый унитаз -верхний подуровень, второй унитаз -нижний подуровень.

Точно, большое спасибо. Сразу вспомнил что на третьем боссе два унитаза.

Оффлайн Metamorfer

  • Пользователь
  • Сообщений: 3
  • Пол: Мужской
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #43 : 18 Декабрь 2014, 05:11:38 »
Roket, косяков в игре нет.

Здравствуйте. Все же один косячек есть - это стрельба по умолчанию вниз. Очень хотелось бы, если есть такая возможность (ну и конечно же желание), сделать небольшое исправление этой замечательной игры. Только все остальное оставить как есть, что бы так сказать оригинал, но без этого досадного косячка.  Заранее премного благодарен. 

PS: Подскажите что делать с файлом "Ooze, The (JU) [CreditsFix].ips" который выложил Segamen. Я понимаю что это патч для рома "Ooze, The (JU)" который поправляет какие-то проблемы с "кредитцами", но как именно патчатся ромы файлами ips, пока не в курсе (не сталкивался). Спасибо.
« Последнее редактирование: 18 Декабрь 2014, 05:34:26 от Metamorfer »

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #44 : 18 Декабрь 2014, 08:33:35 »
Здравствуйте. Все же один косячек есть - это стрельба по умолчанию вниз. Очень хотелось бы, если есть такая возможность (ну и конечно же желание), сделать небольшое исправление этой замечательной игры. Только все остальное оставить как есть, что бы так сказать оригинал, но без этого досадного косячка.  Заранее премного благодарен. 
бессмысленно. зачем исправлять это вообще не ясно. и куда же ему стрелять? вправо? или может по диагонали или вовсе вверх?
PS: Подскажите что делать с файлом "Ooze, The (JU) [CreditsFix].ips" который выложил Segamen. Я понимаю что это патч для рома "Ooze, The (JU)" который поправляет какие-то проблемы с "кредитцами", но как именно патчатся ромы файлами ips, пока не в курсе (не сталкивался). Спасибо.
добро пожаловать

Оффлайн krocki

  • Пользователь
  • Сообщений: 1250
  • Пол: Мужской
  • ...:::Hacking_Craft:::...
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #45 : 19 Декабрь 2014, 06:40:32 »
Здравствуйте. Все же один косячек есть - это стрельба по умолчанию вниз. Очень хотелось бы, если есть такая возможность (ну и конечно же желание), сделать небольшое исправление этой замечательной игры. Только все остальное оставить как есть, что бы так сказать оригинал, но без этого досадного косячка.  Заранее премного благодарен.
Он наверное имел ввиду.....куда навёл туда и плюнул, при этом не надо держать стрелку нажатой. :?

Кстати надо будет её взломать!
А то чё-то кодов почти нет на неё.
« Последнее редактирование: 21 Декабрь 2014, 03:51:40 от krocki »

Оффлайн Metamorfer

  • Пользователь
  • Сообщений: 3
  • Пол: Мужской
    • Просмотр профиля
Re: The Ooze (SMD) - Хакинг и секреты
« Ответ #46 : 19 Декабрь 2014, 21:23:41 »
Да-да, именно это и имел ввиду )) куда последний раз направлялся, туда и плевать по умолчанию. Это вроде и не чит- не испортит правил игры, но играть будет приятнее. Это скорее всего просто недочет программистов (имхо).
PS: Спасибо за ссылочку на Lunar IPS.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2506
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #47 : 08 Июль 2017, 23:03:19 »
ковырял звуки Comix Zone, тут смотрю Ooze тоже из той оперы и действительно распаковывается тем-же методом что и Comix Zone. Ааааааднака! есть там некоторые сэмплы, с хитрыми флагами:
FLAGS =$C6

что с ними делать? в каком формате это? это не DPCM, как в МК3 или WWF Arcade, это не просто 4 бита PCM, ну и это не стандартные 8 бит сэмплы как ежели бы флаг был FLAGS =$46

а то я для своей онлайн базы предварительно конвертирую все непонятное в 8бит PCM. иначе при сборке ничего не получится. так МКашные сэмплы теперь доступны для использования в обычном, немодифицированном GEMS. хотя с этим WWF тоже не все так однозначно... видимо там два банка для GEMS... хотелось бы знать точно что там за формат. в Ooze таких сэмплов всего штуки 3 наверное. в Comix Zone побольше, но я думаю это тот-же формат. посему хотелось бы знать, чтоб конвертануть.

Добавлено позже:
Цитата
2017-07-09 00:49:42 ValleyBell ... no, really? Comix Zone has even another custom compression for 4-bit samples
2017-07-09 00:50:31 SeregaZ and where to get key for decompress?
2017-07-09 00:50:51 ValleyBell There is a huge (0x100 bytes) look-up table at offset 0x01F8 in the driver.
2017-07-09 00:51:23 ValleyBell (just btw, I have no clue how to use that table)
2017-07-09 00:52:11 ValleyBell or maybe it's just 0xF0 bytes and begins at 0x200
2017-07-09 00:52:53 ValleyBell Since the table is pretty large, it's probably some sort of ADPCM.
писец... и чо делать?
« Последнее редактирование: 09 Июль 2017, 00:02:45 от SeregaZ »

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #48 : 04 Октябрь 2017, 17:12:15 »
SeregaZ, дебажить

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2506
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #49 : 04 Октябрь 2017, 18:18:09 »
так не умею :) я ж не ромхакер... асмы, брейки, джампы - китайская грамота. с DPCM все было понятно что делать с таблицей, а вот что делать с ADPCM - черт его знает. там таблица куда больше, чем 16 значений таблицы DPCM. мне бы формулу... как в DPCM - берем 4 младших бита, это номер ячейки в таблице из 16 значений. прибавляем к $80, стало $83 скажем, берем старшые 4, опять номер ячейки и прибавляем к $83 - и так до конца сэмпла. получается замечательный 8 битный сэмпл :)

а тут черт знает. предположительная таблица:
Offset      0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F

00000200   00 F9 FA FB FC FD FE FF  00 01 02 03 04 05 06 07    щъыьэюя       
00000210   00 F6 F8 FA FB FD FE FF  00 01 02 03 05 06 08 0A    цшъыэюя       
00000220   00 F0 F3 F6 F8 FA FC FE  00 02 04 06 08 0A 0D 10    руцшъью       
00000230   00 E9 ED F1 F5 F8 FB FE  00 02 05 08 0B 0F 13 17    йнсхшыю       
00000240   00 E2 E8 ED F1 F6 F9 FD  00 03 07 0A 0F 13 18 1E    винсцщэ       
00000250   00 DA E1 E8 EE F3 F8 FC  00 04 08 0D 12 18 1F 26    Ъбиоушь       &
00000260   00 D2 DB E3 EA F0 F6 FB  00 05 0A 10 16 1D 25 2E    ТЫгкрцы      %.
00000270   00 CA D4 DD E6 ED F4 FA  00 06 0C 13 1A 23 2C 36    КФЭжнфъ     #,6
00000280   00 C1 CD D8 E1 EA F2 F9  00 07 0E 16 1F 28 33 3F    БНШбктщ     (3?
00000290   00 B7 C5 D1 DD E7 F0 F8  00 07 10 19 23 2E 3A 48    ·ЕСЭзрш    #.:H
000002A0   00 AD BD CB D8 E3 EE F7  00 09 12 1C 28 35 43 52    ­ЅЛШгоч    (5CR
000002B0   00 A3 B5 C4 D3 E0 EC F6  00 0A 14 20 2D 3B 4B 5C    ЈµДУамц    -;K\
000002C0   00 98 AC BD CD DC E9 F5  00 0B 17 24 32 42 54 67    ˜¬ЅНЬйх   $2BTg
000002D0   00 8C A2 B6 C8 D8 E7 F4  00 0C 19 28 38 4A 5D 73    Њў¶ИШзф   (8J]s
000002E0   00 80 98 AE C2 D4 E4 F3  00 0D 1C 2C 3E 51 67 7F    Ђ˜®ВФду  ,>Qg

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #50 : 04 Октябрь 2017, 18:57:32 »
так не умею :) я ж не ромхакер... асмы, брейки, джампы - китайская грамота. с DPCM все было понятно что делать с таблицей, а вот что делать с ADPCM - черт его знает. там таблица куда больше, чем 16 значений таблицы DPCM. мне бы формулу... как в DPCM - берем 4 младших бита, это номер ячейки в таблице из 16 значений. прибавляем к $80, стало $83 скажем, берем старшые 4, опять номер ячейки и прибавляем к $83 - и так до конца сэмпла. получается замечательный 8 битный сэмпл :)

а тут черт знает. предположительная таблица:
Offset      0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F

00000200   00 F9 FA FB FC FD FE FF  00 01 02 03 04 05 06 07    щъыьэюя       
00000210   00 F6 F8 FA FB FD FE FF  00 01 02 03 05 06 08 0A    цшъыэюя       
00000220   00 F0 F3 F6 F8 FA FC FE  00 02 04 06 08 0A 0D 10    руцшъью       
00000230   00 E9 ED F1 F5 F8 FB FE  00 02 05 08 0B 0F 13 17    йнсхшыю       
00000240   00 E2 E8 ED F1 F6 F9 FD  00 03 07 0A 0F 13 18 1E    винсцщэ       
00000250   00 DA E1 E8 EE F3 F8 FC  00 04 08 0D 12 18 1F 26    Ъбиоушь       &
00000260   00 D2 DB E3 EA F0 F6 FB  00 05 0A 10 16 1D 25 2E    ТЫгкрцы      %.
00000270   00 CA D4 DD E6 ED F4 FA  00 06 0C 13 1A 23 2C 36    КФЭжнфъ     #,6
00000280   00 C1 CD D8 E1 EA F2 F9  00 07 0E 16 1F 28 33 3F    БНШбктщ     (3?
00000290   00 B7 C5 D1 DD E7 F0 F8  00 07 10 19 23 2E 3A 48    ·ЕСЭзрш    #.:H
000002A0   00 AD BD CB D8 E3 EE F7  00 09 12 1C 28 35 43 52    ­ЅЛШгоч    (5CR
000002B0   00 A3 B5 C4 D3 E0 EC F6  00 0A 14 20 2D 3B 4B 5C    ЈµДУамц    -;K\
000002C0   00 98 AC BD CD DC E9 F5  00 0B 17 24 32 42 54 67    ˜¬ЅНЬйх   $2BTg
000002D0   00 8C A2 B6 C8 D8 E7 F4  00 0C 19 28 38 4A 5D 73    Њў¶ИШзф   (8J]s
000002E0   00 80 98 AE C2 D4 E4 F3  00 0D 1C 2C 3E 51 67 7F    Ђ˜®ВФду  ,>Qg
выглядит круто. а что если эта таблица работает от нагнетания?
скажем если сейчас положение динамика 80 (тишина), то используется первые 16 байт,
если 90, то уже вторые и т.д.

а вообще догадки это дичь. как я и сказал, надо дебажить :cool:
по-другому считай никак.
да и ассемблер не такой уж и сложный.
если иметь на руках норм документацию, то можно и тупо по ней работать. А архитектура проста до-нельзя

ставишь бряк на чтение из рома в этой таблице, и как-то лько будет чтение, эмуль остановится и покажет код игры, по которому можно будет понять, что именно он делает со значениями из этой таблицы

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2506
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #51 : 04 Октябрь 2017, 21:55:36 »
 :'( вот вот... пошла китайская грамота. сам файл драйвера не поможет? мортал комбатовский драйвер мне дали в виде asm файла, в котором была таблица. я правда все равно не понял чего они от меня хотят, и потом на пальцах формулу с DPCM объясняли... нельзя ли в данном случае как-то задизасемблеть этот самый драйвер? некоторые корявые сэмплы и файл драйвера приложил:
https://www.dropbox.com/s/aqqwzp3c91uojv6/ComixZone.zip?dl=1
формулу бы :(

Оффлайн Skay

  • Пользователь
  • Сообщений: 4115
  • Пол: Мужской
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #52 : 05 Октябрь 2017, 09:12:38 »
Брал карик соника 2, набирал читы, не выкл-ая консоль, вынимал карик и вставлял Ooze. Результат - меню выбора уровня при нажатии A+Start.
хах, прямо в тему статью сегодня встретил, почему такое происходит https://geektimes.ru/post/293737/

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3240
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #53 : 05 Октябрь 2017, 13:45:11 »
SeregaZ, попробуй корруптить эту таблицу и смотреть чот изменится.
я полагаю что я близок к истине, говоря как работает таблица :)

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2506
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #54 : 05 Октябрь 2017, 13:49:22 »
так проблема в том, что в комикс зон есть в опциях проигрывание мелодий, а вот проигрывание сэмплов, как например в том-же МК3 - там не предусмотрено. то есть я даже не знаю что там должно быть, какие звуки чтоб хоть как-то ориентироваться :) если бы были бы там опции проигрывания всех sfx - можно было бы тупо взять и записать аудио, а после переконвертировать вавку в 8 бит без головы. никто бы и не заметил разницы... но я без понятия что именно там должно быть.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2506
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #55 : 23 Февраль 2018, 18:51:10 »
и что-то я как-то протупил... смотрел в Comix Zone, где не было проигрывателя спецэффектов. сегодня дотумкал посмотрел и в Ooze тоже - и там проигрыватель есть! :) правда допереть еще надо как им пользоваться... так вот первый сэмпл - как оказалось звук смывания унитаза. в смысле тот заковыристый ADPCM. номер 052.

как теперь взять и получить точный лог какие данные там проигрываются? записать wav и потом смотреть думаю плохая идея. ведь не ясно был ли какой модификатор громкости в эмуляторе. любой чих в плане громкости испортит всю картину. хотелось бы четкий итоговый сэмпл снять от сих до сих, а потом сидеть, смотреть на них двоих - оригинальный пожатый и этот распакованный бараньими глазами и думать как же это получается...

Добавлено позже:
в Fusion есть функция записи VGM. записал, потом распарсил, потом собрал по байтно все $2A. согласно флагу частоты из файла сэмпла распакованного GEMS взял частоту 8700. звучит похоже. все равно я не уверен, что там правильные данные. в итоге пожатый ADPCM весит 6.56кб, а этот выдернутый из VGM и получается 8 битный - 11кб. сдается мне это не правильно. смысл тогда было использовать ADPCM, со сложной схемой и таблицей, если тут можно было обойтись обычным 4 битным сэмплом, где без таблицы тупо каждое значение умножать на 15? выигрыш использования ADPCM составил
6.56 * 2 = 13.12 - 11 = 2.12 килобайта? чо серьезно? и столько мороки было?

пойду теперь смотреть на эти данные и думать как оно получается. но это дикая дичь явно :) копаю не в том месте однозначно.
« Последнее редактирование: 23 Февраль 2018, 19:43:36 от SeregaZ »

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2506
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #56 : 24 Февраль 2018, 03:49:43 »
смотрел смотрел... ничего не насмотрел :) алгоритм пока так и не понятен. решил перепроверить - а в правильной ли я громкости получаю данные. нашел в списке обычный 8 битный сэмпл. 048 номер. проиграл его в эмуляторе и записал VGM. после отпарсил и собрал в кучу каждый байт. открываю в хексе - и да :) 1 в 1 данные верны. правда в VGM'ке сэмпл получился на пару десятков байт меньше. фиг знает почему. но это все равно хорошо что данные правильные эмулятор показывает - плохо что я имею подлежащее и сказуемое и даже причастие с частицами - но предложение у меня не получается. ну не вижу я эту формулу. а хотелось бы...

но! с другой стороны - ведь данные я получаю верные, следовательно можно просто взять и записать через VGM сэмплы, которые заковыристые - то есть сразу в нормальных 8 битах и положить в архив, конечно подправив где что надо флаги. то есть формула мне как бы и не нужна - я итак получу все что надо. но это только Ooze имеет проигрыватель всех звуков и песен в опциях - в Comix Zone то этого нет - там только музыка... однако! я ведь имею распакованные эти сэмплы и таблица расшифровки одинаковая. значит мне просто нужно взять и подсунуть Oozу сэмплы Comixа, а потом запустить Ooze, проиграть эти подмененные сэмплы, записать VGM и получить эти сэмплы в нормальном 8 битном виде :)

пойду пробывать.

Добавлено позже:
я прям ромхакером себя почувствовал :) идея была хорошая. даже я бы сказал замечательная... но... не сработало :(((
то есть у меня фиксированный размер сэмпла 6 килобайт. и ежели какой-то из сэмплов больше него - то уже не поместится. ну это не главная проблема. главная проблема если сэмпл меньше. если в обычном 8 битном ваве пиши на весь сэмпл значение $80 - это будет проигрывание тишины, то здесь такого нет :) писал 0 на весь сэмпл - там какой-то скрежет получается и зависает. написал $FF - уже лучше, некий повторяющийся звук тоже скрипение пердение, но не зависает. $80 писал - ваще какой-то бесконечный звук. но это все звуки. а мне то надо чтоб заказанный сэмпл проиграл и дальше тишина проигрывалась до конца сэмпла - я потом отрежу эти значения $80 и готово. то есть в итоге проиграть то я сэмпл короткий может и смогу, но проигрываться он будет с этим искажением в конце сэмпла. и причем каждый раз это искажение будет разным на звук. то есть там как бы следующее значение зависит от предыдущего.

вот жеж блин, а я думал наконец-то это незаконченное дело сдвинется с места, сидел весь такой на позитиве и на тебе :)

то-же самое с одним из сэмплов в самом Ooze - он в спецэффекте включен на рипит, то есть при записи сэмпл звучит не 1 раз - чистая запись для вырезания, а зациклен. я посмотрел - можно ориентироваться на регистры включения проигрывания сэмпла - то есть если пошла команда на включение, значит сейчас начнет играть сэмпл - и значит надо собирать байты с этого момента и до следующего включения. но оказалось на момент последующих включений сэмплов конец этого сэмпла всегда разный. то есть длинна будет высчитана не верно.

 :'(
« Последнее редактирование: 24 Февраль 2018, 05:40:57 от SeregaZ »

Оффлайн Yoti

  • Пользователь
  • Сообщений: 4416
  • Пол: Мужской
  • Не тро-гай ме-ня
    • Steam
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #57 : 24 Февраль 2018, 13:05:37 »
Если в 8 битном сэмпле $80, то для 4 битного $40 не пробовал?)

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2506
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #58 : 24 Февраль 2018, 19:00:57 »
не... не $40. а $88.

$40 это %01000000 - то есть первый тик 4 байтный еще что-то содержит, а вот второй уже нет.

$88 - %10001000 - то есть оба "тика" содержат информацию.

и все равно это не должно было сработать :) ибо сжатие. то есть я полагаю что следующее значение зависит от предыдущего. но однако помогло. весь сэмпл, что я забил в пожатом виде $88 в итоге оказался $80 - тишиной как и требовалось.

ага. оно и несработало :) как я и думал $88 означает что нет изменений по отношению к предыдущему байту, а вовсе не тишину.
в сжатом вбил 88 88 88 11
в расжатом вышло 80 80 80 80 80 80 80 79 72 72 .......... и так 72 будет долбить до конца сэмпла. но все равно начало момента, когда все байты начинают иметь одно и то-же значение - это маркер, что сэмпл закончился :) то есть уже можно его вычленить. то есть с размером сэмпла, менее чем оригинальный 7 или скок там килобайт - утрясли :)

Добавлено позже:
тьфу... опять двадцать пять... обычные сэмплы имеют флаг скажем $45 - 4  что обычный 8 битный и 5 номер частоты из таблицы. 5 это значит 10.4k. в этих Оозах и Комиксах встречаются $25 и $64. черт знает что это точно, но вроде как стандартный GEMS их играет. я их не трогал. шипение и пердение было на сэмплах с флагом $C6 - видимо C означало как раз использование этого ADPCM. и 6 что частота 8.7k. начал перезаписывать комиксные в ром Ооза по плану, что выложил выше и тут мне попадается значение $E6. вот жеж твою заногу... и что эта E означает? по накатанном методу вписал в Ооз, но там то был $C6 и вроде проигрывает. это не шипение, а какой-то крик "кийя!". запишу так, но меня терзают смутные сомнения что это не правильно :)

Добавлено позже:
самое вкусное оставил на десерт - сэмплы, размером больше, чем самый большой в Ooze - 052 - в который я и пишу комиксные.

пункт первый плана - раздуплить каким образом сэмплы в банке сэмплов располагаются. то есть в файле samples.bin, по идее, в самом начале должна быть таблица, с указанием количества всего сэмплов и их адресов, а потом уже само содержимое сэмплов друг за другом пойдет. попробую найти. в статье шелла, к сожалению, не расписано о сэмплах. но у меня есть значения комбайна, а именно флаг частоты и размер. значит мне нужно искать эти два значения где-то в начале файла банка.

Добавлено позже:
ну так оно и оказалось - в начале файла весь заголовок, что шелл так любезно вывесил в файл sfx при распаковке комбайном :)



первый байт - флаг частоты
потом 3 (а может 2... это не точно :)) - адрес, с которого начинается сэмпл, то есть $180 от начала файла.
потом 2 байта некий SKIP - черт знает что делает.
потом 2 байта - размер самого сэмпла.
потом еще 2 раза по 2 байта - тоже черт знает что значит некие LOOP и END.
потом пошло тоже самое, но для второго сэмпла и тд и тп.

и начиная с $180 пошел файл сэмпла.


пункт второй плана: надеюсь общий размер банка сэмплов нигде в другом месте рома не упоминается. то есть я хочу заменить содержимое последнего сэмпла самым большим из комикс зон, тем самым банк сэмплов увеличится. так-же нужно будет внести эти размеры в заголовок последнего сэмпла в начале файла. так-же надо удостоверится что последние данные в файле рома - это именно что данные последнего сэмпла, а то вдруг там какая-то графика в конце? тогда добавляя еще данные я испорчу ром, сдвинув эту самую графику. пошел применять эту теорию на практике :)
« Последнее редактирование: 24 Февраль 2018, 22:55:58 от SeregaZ »

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2506
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
The Ooze (SMD) - Хакинг и секреты
« Ответ #59 : 24 Февраль 2018, 23:09:27 »
итак облом. после последнего сэмпла идут еще какие-то данные. значит малой кровью обойтись не получится. вариант номер два - а кто сказал что нельзя взять и записать сэмпл на сэмпл? то есть если я оставлю все сэмплы со своими адресами, но в последнем возьму и поставлю адрес выше, чем он есть, то есть на 13 килобайт от конца последнего байта последнего сэмпла вверх. предыдущие сэмплы конечно попортятся, но мне то задача вопроизвести только тот, что нужен и записать его в 8 битах для архива :)

сразу надо отметить, если не прокатит и указатель в игре как бы спустившись по файлу сэмплов назад не будет возвращаться - то можно будет изменить размеры всех сэмплов на 1 байт, тем самым освободив кучу места для моего драгоценного большого. тогда уж точно заиграет. но сначала проверим первую теорию с сэмплом поверх сэмпла :)

Добавлено позже:
что-то я залепился велосипедов... упростил - все тот-же 052 трек, $15 сэмпл - ему просто размер увеличил и вписывал в него длинные сэмплы. все. пойду в своей теме архив выкладывать :) два недобитка из оставшегося списка недобитых игр добиты и доступны в онлайн базе GEMS :)

хотя это не совсем правильно - правильней было бы все-таки понять какая там формула для распаковки пожатых сэмплов. и чем C отличается от E.
« Последнее редактирование: 25 Февраль 2018, 00:01:13 от SeregaZ »