| Разработка и ромхакинг > Ромхакинг и программирование |
| [NES] Chip & Dale 2 BFS by CaH4e3 |
| << < (2/4) > >> |
| spiiin:
Процесс разбора на исходники отдельный от процесса хака получается - кто-то может специализироваться на разборе игр до исходников и проверки валидности пересборки, а другие могут пользоваться готовыми исходниками для старта проектов по хаку разной направленности |
| Skay:
--- Цитата: Griever от 05 Апрель 2018, 16:35:34 ---А если у меня, например, в 'MGS: GB' 128 банков по 16 кбайт? В основном, конечно, данные, но кода хватает. Вникать в каждую строчку, как в Battle City не вариант. --- Конец цитаты --- а там идут в ход уже скрипты. Главное придумать как. тем более в иде щас в скриптах можно подключать питон, с полноценными структурами и прочими плюшками, в отличии от стандартных. Кажется финалку какую то из первых переводили переводили как есть. Скрипт вроде даже выдрали. Но ни структуры, ни как данные выглядили не знали не хотели. А в итоге с нуля стали дизасм делать нормальный, потомучто всё плохо иначе). |
| CaH4e3:
--- Цитата: Griever от 05 Апрель 2018, 16:35:34 ---Вот я и говорю, что кроме внимательного перечитывания полученного дизасма, 100% гарантии тебе никакой инструмент не даст. А если у меня, например, в 'MGS: GB' 128 банков по 16 кбайт? В основном, конечно, данные, но кода хватает. Вникать в каждую строчку, как в Battle City не вариант. --- Конец цитаты --- я тебе даже больше скажу, даже во время разработки игры лол делают ошибки и ссылки не туда при определенных обстоятельствах. а уж тем более на ранних этапах по всей видимости все руками делалось и считалось по части офсетов, так что только дебаггинг. только хардкор. делать из игры дизасм не намного отличается от этой игры написания, только у моих инструментов возможностей больше для контроля. при аккуратном разборе пусть даже не самом дотошном я делаю на выходе меньше багов, чем разрабы самой игры, да еще при более дотошном исследовании могу их неотловленные баги видеть и править. кстати вот по коду некоторых игр видно, что когда они пишутся, наслоения кода стараются добавлять в конец и не перемещать уже написанное. особенно что касается индексов разных... видно когда в игре таблицы полны дырками неиспользуемых офсетов. их просто оставили, чтобы не ломался код в случае сдвига лол. мой дизасм в этом плане вообще не зависит от таких перемещений, если поиндексировать таблицы офсетов и давать вместо индексов мнемонические имена. я могу вообще все что угодно двигать. баги ессно случаются, но чем больше копаешь, тем меньше их остается. Добавлено позже: --- Цитата: SeregaZ от 05 Апрель 2018, 15:38:56 ---зеру толеранс нам так расковыряйте. а то надо второй банк мелодий... чтоб можно было в нем изменять сэмплы, а остальной код, что после этого банка идет - не плыл. --- Конец цитаты --- я до пересборки зилогов еще не добрался лол. с гб еще не закончено даже... так что не в ближайшей перспективе. Добавлено позже: к слову, как можно обосраться в сорсах игры при разработке. я как-то давно собирал из родных исходников прототип джеймс бонд жуниор для денди. там не много было надо сделать, код вообще не трогал почти. только сконвертил их макросы в дасмовые и рассовал все по банкам как должно было быть... одна только вещь отсутствует в дасме, которой пользовались авторы на родной среде разработки. нативный операнд массива, который берет либо младший либо старший байт 16 офсета. мне пришлось сделать по макросу на каждый вариант такого массива от 2 до 10 элементов и потом все такие массивы в коде сконвертить в новые макросы. те посчитать сколько элементов в каждом и поставить нужный операнд. там их сотни и я сконвертил их все лол кроме одного. самого главного, в котором таблица параметров уровней. и до последнего момента никто этого даже не заметил. потому что даже я не догадался протестить игру на других уровнях кроме первого даже с помощью паролей. а тут такой чел нашелся лол. и я нашел багу за пять минут. а мог бы найти сразу. если бы попытался запустить еще уровни... нот это не дизаси. это родной код. обосраться мог и разраб точно так же... и к слову в прототипе багов достаточно и своих... |
| Griever:
--- Цитата: CaH4e3 от 05 Апрель 2018, 19:23:56 ---там не много было надо сделать, код вообще не трогал почти. только сконвертил их макросы в дасмовые и рассовал все по банкам как должно было быть... --- Конец цитаты --- Кстати, как ты разбиваешь на банки? ИДА-то выдает всё в сплошном листинге. |
| CaH4e3:
а копипасту отменили чтоли? хех |
| CaH4e3:
Залил новую часть, ссылка в шапке. |
| worm:
--- Цитата: CaH4e3 от 03 Апрель 2018, 13:32:25 ---а мне норм. --- Конец цитаты --- Еще одно доказательство того, что санчез - бот :D p.s. спасибо за видео. А то я все сегу изучаю, а про денди почти ничего не знаю. |
| spiiin:
На какой там стадии дизасм вообще? Когда исходники будут? :) |
| CaH4e3:
дизасм давно готов. но не интересно его выкладывать вперед видосов. лол |
| spiiin:
А исходники чёрного плаща ты в открытый доступ выкладывал? Хочу взять какие-нибудь готовые для сборки (ты, если правильно помню, с помощью asm6 их собираешь?) и попробовать, насколько их сложно сконвертировать в синтаксис ca65. |
| CaH4e3:
возьми акиру. у меня дасм а не асм6. и я хз как у других дизасмов с макросами. |
| CaH4e3:
добавил |
| CaH4e3:
восьмая часть готова. ссылка в шапке. девятая на подходе. |
| Yoti:
Жду финальный исходник. |
| CaH4e3:
--- Цитата: Yoti от 01 Май 2018, 02:05:28 ---Жду финальный исходник. --- Конец цитаты --- экий ты торопыжка. все ждут. его сначала сделать надо. еще часов 10 осталось лол |
| worm:
Санч, это случайно не тот самый сорс, с которого ЧиД портировали на сегу? |
| MetalliC:
--- Цитата: worm от 01 Май 2018, 13:07:52 ---Санч, это случайно не тот самый сорс, с которого ЧиД портировали на сегу? --- Конец цитаты --- там же вроде что-то типа эмуляции, или статической рекомпиляции, или еще чего в таком же духе. но не source port. |
| CaH4e3:
--- Цитата: worm от 01 Май 2018, 13:07:52 ---Санч, это случайно не тот самый сорс, с которого ЧиД портировали на сегу? --- Конец цитаты --- ну уж я то своих сорсов никому еще не раздавал лол. Добавлено позже: --- Цитата: MetalliC от 01 Май 2018, 13:47:05 ---там же вроде что-то типа эмуляции, или статической рекомпиляции, или еще чего в таком же духе. но не source port. --- Конец цитаты --- не, там даже похоже не мумуляция. просто симуляция под копирку. если бы там была мумуляция, не было бы такой ущербной безынерционной механики. не все враги ведут себя в точности как в оригинале. например крыса с ложкой во второй локации первого уровня должна сначала впадать в ступор, у нее 2 хитпойнта урона в оригинальных скриптах. а в этом порте она улетает сразу с первого ящика. и так много где. т.е. это даже не какая-то прямая рекомпиляция. это просто имитация оригинала. врядли там что-то кроме графики и уровней от оригинальной игры осталось. этот же разраб делал подобный порт черного плаща, так там видно сразу ему то ли времени не хватило, то ли еще чего, всего пять уровней и половина врагов и их поведения даже не доимплементена. ну т.е. видимо чел (кстати походу русский) очень скурпулезно точно воспроизводит основные элементы игры, но все пишет сам с нуля. а еще там в комментах к муз трекам много интересного размышлизма его и часть треков взяты у Shiru хех |
| worm:
--- Цитата: CaH4e3 от 01 Май 2018, 19:43:24 ---все пишет сам с нуля --- Конец цитаты --- По принципу krikzz'овских танчиков? В принципе, это тоже выход, если лень реверсить или человек не владеет навыками дизасма/не разбирается в денди. Главное - создать лук энд фил, но там, я думаю, еще больше придется продолбаться, изучая поведение игры, чтобы 1 в 1 воссоздать. |
| CaH4e3:
ну как я и сказал, оно воссоздано, но не сто процентно 1в1. хотя некоторые моменты очень точно схвачены. опять же зависит от времени и героизма, насколько хватит человека следить за игрой и поведением персов и определять их модель поведения. например свечки в особянке с привидениями довольно хитрожопо закодированы. если не знать оригинального скрипта, сложно понять, как оно работает в общем случае, потому что это поведение зависит от текущего местоположения. вряд ли это лень на дизасм. ну отдизасмишь ты денди, ну получишь исходник. но его все равно надо в код сеги сконвертировать как-то. это тоже гемор. проще уж мумулятор нормальный написать. |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |