| Разработка и ромхакинг > Ромхакинг и программирование |
| [SMD] хакинг Dune: The Battle for Arrakis |
| << < (29/447) > >> |
| Марат:
В общем, выложу пока Пакер, а то у меня что-то с Дельфи проблемы возникли. Целый день уже маюсь не могу решить. http://slil.ru/27957920 Как искать сжатую графику: 1. Запускаем игру в эмуляторе Gens VKNT Tracer от Юрия Яковлева. 2. Перед тем как грузится нужный участок с графикой ставим бряк в дебагере на выполнение инструкции по адресу $000C32 и смотрим в регистр A2. Число в регистре - это и есть адрес начала графики в РОМе. Далее ставим бряк на выполнение инструкции по адресу $000CCA, число, на которое указывает регистр A2 - это уже адрес начала другого куска сжатой графики. Соответственно, если от этого числа отнять 1 получится адрес конца искомой графики. Если найдёте какие-нибудь баги, то отписывайтесь здесь. |
| Segaman:
Слушай, меня тут очередная утренняя гениальная мысль посетила, а не вар всё в одном слепить? |
| Марат:
У меня и так все в одном. Держи http://slil.ru/27959764 дописал распаковщик. |
| Segaman:
Там помоему несколько форматов сжатия. всё что нужно твой пакер невзял. посмотри ещё раз. |
| Марат:
Так ты скажи, что нужно? Я-то думал ты хочешь объекты перерисовать. Добавлено позже: Можешь скрины приложить, чтоб наверняка. Добавлено позже: --- Цитата ---Перед тем как грузится нужный участок с графикой ставим бряк в дебагере на выполнение инструкции по адресу $000C32 и смотрим в регистр A2. --- Конец цитаты --- Здесь я немного ошибся, нужно не в регистр A2 смотреть, а в регистр A0. Пересылка в регистр А2 происходит немного ниже. Segaman, напиши конкретно какие ресурсы тебя интересуют. Я сейчас посмотрел, графика титульника тоже пожата этим алгоритмом. Добавлено позже: И карты и спрайты - всё пожато этим методом сжатия. Вот главный титл с логотипом Weswood и Virgin и планета Arrakis. Добавлено позже: Сжатый массив данных чаще всего начинается с числа $81 и всегда заканчивается числом $80. $80 - означает прекратить распаковку данных. |
| Segaman:
Я извиняюсь, но у меня вся охота отбилась, что либо с дюной делать. Поэтому непосмотрю и напишу какие файлы нераспаковываются. |
| Dunerunner:
Привет всем. Недавно скачал редактор DuneMapEd последней версии, от Segaman`а. Огромный респект его создателю! :thumbup: Это моя давняя мечта, редактировать уровни Дюны на сеге! Первые впечатления от редактирования: Редактор удобен, не слишком сложен в освоении (особенно с мануалом), притом памяти жрёт немало, но это пустяки. Пробовал сделать свою миссию, получилось запустить в игре с 7-го раза, до этого вылетало. Прочитал всю тему на этом форуме, нашёл какие числа ставить в misc1, 2, 3, вроде заработало, но только при изменении 9-й миссии за Харконенов, остальные, изменённые мной миссии, вылетают. Ещё, редактор грузит не все миссии (objpos), на некоторых зависает (Атрейдес 7, Ордос 9). Так вот, изменил 9-ю миссию за Харконенов, перестроил ландшафт, сделал новую базу имперцам, игроку поставил Ордосов. Всё в игре запустилось отлично. Затем начались проблемы: Имперцы почему то лишились десанта, за 3 часа игры, у меня ни один вражеский носитель не высадил на моей базе ни одного танка, естессно из-за этого, первыми имперцы не напали, хотя ждал минут 40 (в оригинале высаживали десант через 10-11 минут). Дальше: атака врага почему то стала слишком слабой, посылает 2-3 танка в 2 минуты, хотя врагу я поставил целых 3 завода по производству техники, соотвессно сдержать его напор не составило труда; это малость огорчило, т. к. хотел чтоб миссия была трудная (в оригинале атака была много мощнее). Кстати, респект за добавление диверсанту возможности повреждать\уничтожать различные строения! :thumbup: До этого против зданий он был бесполезен. Собснно хотелось бы знать, как запустить высадку десанта врагам и как сделать, чтоб он посылал в атаку много мощной техники. |
| Segaman:
пока што только вручную. в этой теме написано, из чего состоят десанты. сёдня скачал среду C++, попробую освоить и написать на нём. так что ждите. будет и функция редактирования десантов. Добавлено позже: А ты ещё танку поставь аи саботаж, так он мужиков давить будет. только привстрече с вр. танком, упротся в него. тоже и с вражеской базой. |
| Dunerunner:
--- Цитата: Segaman от 12 Сентябрь 2009, 13:04:15 ---так что ждите. будет и функция редактирования десантов. --- Конец цитаты --- Это радует. Кстати, я сделал, чтобы комп атаковал первым. Для этого, в угол карты поставил отряд имперских пехотинцев, чтоб они с начала миссии шли к моей базе, а пока они идут, можно немного отстроиться. --- Цитата: Segaman ---А ты ещё танку поставь аи саботаж, так он мужиков давить будет. только привстрече с вр. танком, упротся в него. тоже и с вражеской базой. --- Конец цитаты --- Так ведь танк итак может давить вражеских солдат или ты имеешь ввиду возможность давить солдат игрока своим же танком? o_0 |
| pedro:
--- Цитата ---Всё, что выгледит некрасиво и заменю на красивое. например титл скрин. ну и т.д. --- Конец цитаты --- интересно, а спрайты зданий? =) |
| Марат:
--- Цитата: pedro от 12 Сентябрь 2009, 13:58:21 ---интересно, а спрайты зданий? =) --- Конец цитаты --- А что некрасивые? |
| pedro:
Марат, ну думаю те что на PC вервии покрасивше будут)) |
| Segaman:
аи - это поведение юнита. у саботёра стоит всегда саботаж и он атакует вражескую базу. если указать аи саботаж танку и на карте появится вражеский солдат, танк автоматически поедет на него, следовательно задавит. |
| topos84:
--- Цитата: Dunerunner ---Кстати, респект за добавление диверсанту возможности повреждать\уничтожать различные строения! До этого против зданий он был бесполезен. --- Конец цитаты --- Эта проблема когда-то уже обсуждалась на этом форуме: диверсант наносит повреждения зданиям не во всех версиях игры/рома (видимо, ошибка разрабов). Вот только забыл, в каких именно версиях. |
| Segaman:
Я знаком только с версией U на сегу. никаких прочих не знаю, ни писишных, ни пиэсиксышных и т.д. так что у меня ничего неспрашивайте про другие дюны. |
| sergi:
Этот камикадзе забирает жизней много, когда стреляет может машинку одним выстрелом снять, видать стреляет прям водителю в голову Говорят что профессиональные снайпера снимали механиков-водителей в БМП наших и танк с 2-х выстрелов, хотя прикольнее было бы чтобы он выносил здание с одного забега, а то ниодно целое здание не выкашивает с одного раза, хотя возможно какойнибудь силос выносит я точно не помню |
| topos84:
Segaman, не пробовал решить проблему старпорта? Мне Ti_ говорил, что там в роме вначале каждой миссии прописывается, какие юниты могут быть заказаны в старпорте в этой конкретной миссии. Я так понимаю, что в редакторе этого все равно сделать никак не получится, так может, если ты знаешь где в роме это прописано и как изменять, то сможешь, наверно, написать прожку, которая будет патчить ром соответствующим образом? Да, и как там успехи с десантами? Есть какой-нибудь прогресс? |
| Ti_:
--- Цитата: topos84 от 21 Сентябрь 2009, 00:53:46 ---Segaman, не пробовал решить проблему старпорта? Мне Ti_ говорил, что там в роме вначале каждой миссии прописывается, какие юниты могут быть заказаны в старпорте в этой конкретной миссии. Да, и как там успехи с десантами? Есть какой-нибудь прогресс? --- Конец цитаты --- именно там. где и юниты, строения и т.д. соб-но десант лимитирован в кол-ве 16или 15 штук.(это на всех сразу; и можно сделать "повторять высадку бесконечно(насчет Nраз непомню) или только 1 раз прислать". и тут даже в этой теме должно быть описание про десант (так как я его менял - должен был выложить) в писишной дюне дляя старпорта идет что-то вроде: --- Код: ---[CHOAM] Trike=5 Quad=5 Tank=6 Launcher=5 Siege Tank=6 Harvester=4 MCV=2 Thopter=5 Carryall=2 --- Конец кода --- а потом [units] |
| Segaman:
Я плохо код дюны знаю. Шарится в ней мне под надоело. Слишком сложная она. Вот если б там было всё проще, я б уже давно всю бы её перебрал и наделал кучу прог-патчеров. а тут ещё и мой новый жк монитор разбили. вообщем плохи мои дела и я ничем в данныи момент помочь не могу. ваапще из меня ромхакер некудышный, я код сеги даж до конца незнаю, а для ромхакера это желательный параметр. я знаю только, что есть там код который текст пишет на экране и где, удалив одну сточку, можно заставки сега лишиться и всё. пробовал добавить свою заставку влепить. невышло, так как он после показа текста виснул. видимо это в коде прописано. если б я умел vdp-шкой управлять, давно бы всё разобрал, а я даже незнаю, что означает sr, sp и pc в асм-коде сеги. ваапще, я щас самообучением занимаюсь. тут на форуме есть тема, про sound driver из соника 1. там я ром-проигрыватель пишу и драйвер наворачиваю, а заодно и, кодом балуясь, обучаюсь ему. кстати, я 4pad reader рипнул из бомбермена. работает, все 4 пада читает. вот тема http://www.emu-land.net/forum/index.php/topic,30754.new.html. ром пока что я не вылажил, но там уже интерфейс есть, даже для пад-ридера. а ещё я планирую рипнуть экран соунд теста из Knuckles Chaotix. уж очень он там красивый. а ещё можно будет редактор голосов сделать. Ещё я новую среду C++ скачал, чтоб проги лепить, но не как в ней разобраться немогу, как компилить проги. так бы я уже приступил бы к последнему редактору. а ещё я знаю, как сейв-рам прописывать. можно было б дюну без кодов прописать, чисто с сейвами и даж можно было б прописать сохранение миссии прям посреди боя (естественно окончив его). О! меня тут осенило. можно адреса крякнуть, чтоб он чтение и запись карты и юнитов в сейв рам-е проделывал. правда как-нибудь надо написать код для загрузки миссии из сейв рам-а, а я незнаю как и где ваапще находится код загрузки и как он вызывается. вообщем для такой красоты надо ещё работать и работать, а у меня работать неначем. 2 моника сгорели и я на телике сижу, а телик меньше чем мои мониторы. у мего разрешение гдет 400х300, а видюха моя такое не держит, да где прога, которая с таким разрешением работает. щас миниму надо 1024х768. у меня даж дебаггер на экране непомещается. и мало того ещё и нифига нивидно, а лупа пол экрана занимает. страшно неудобно. щас полезу искать приличную лупу в инете. |
| Ti_:
--- Цитата: Segaman от 21 Сентябрь 2009, 04:40:56 ---а ещё я знаю, как сейв-рам прописывать. можно было б дюну без кодов прописать, чисто с сейвами и даж можно было б прописать сохранение миссии прям посреди боя (естественно окончив его). --- Конец цитаты --- не актуально. актуально хакнуть , чтобы сейвило 2игроков в каиллере и далее синх с сейва. (я не про дюну конечно :D ) да блин хотя бы для 1-ого игрока не блокировали бы кнопку! хотел проверить кое-что думал баг, так гадина не давала - cannot save during netplay ... вротимноги шоб их блейн скукожил. Добавлено позже: --- Цитата: Segaman от 21 Сентябрь 2009, 04:40:56 ---Шарится в ней мне под надоело. --- Конец цитаты --- Что надоело верю. А про то что не знаешь это бред.. я вообще знал только jsr, rts, nop, move.b(pc) (не обращая внимания что такое .b) и не использовал всяких ассембелеров и этого мне хватило чтобы сделать хак. а дюну вообще делал вообще без всего. конфиг карты - проверяется всё практикой . меняем смотрим че изменилось (здание сменили/подвинули) и т.д. и я подозрвеаю там всего 1указатель на карту на каждую карту.(т.е. не отдельно на юниты, здания,десант и т.д.)- или всё же н-ко и ты не все нашел? |
| Навигация |
| Главная страница сообщений |
| Следующая страница |
| Предыдущая страница |