Разработка и ромхакинг > Ромхакинг и программирование
[SMD] хакинг Dune: The Battle for Arrakis
<< < (45/447) > >>
MrFlibble:

--- Цитата: Ti_ от 06 Январь 2010, 20:20:47 ---в сеговской у компа десант всегда повторяется), а игроку только один раз приносят.

--- Конец цитаты ---
Интересно! Впрочем, я так и подумал :D

Вот еще какой вопрос хотел задать: в PC-версии были задуманы атакующие группы юнитов для ИИ, однако из-за ошибки в скриптах работали они только для пехоты, а легкую и тяжелую технику ИИ слал по одному на базу игрока по мере производства (как раз работала команда Hunt). В сеговской версии такие скрипты есть?
ALEX_230_VOLT:

--- Цитата: Ti_ от 06 Январь 2010, 01:35:41 ---сделал почти что...

вот тестовая миссия - где 150 юнитов , сражение 75 танков на 75 ракетниц)
атредес-миссия 1

dunehackX


эмуль заново качаем, еще добавил разгон мгц (а то 15мгц стока не тянет юнитов)
GENS xz mhz +2mbram
 можете сами еще побоьше поставить/отрегулировать или чтобы заново не качать
 менять частоту по $2ECE06 , $15 на другое число. много не ставьте на слабых машинах если cама эмуляция может тормозить начать(фпс).


--- Конец цитаты ---
почему то  dunehackX не запускается. пробовал на разных эмулях (в том числе на том что ты выкладывал в этом посте) и нифига - чёрный экран. смена расширения на bin тоже не помогла
Ti_:
кстати сами лимиты если кому над. (;C8- строки до 200расширил)


--- Код: ---#gui
162AA, 76B0
#ram-strings
26A1A, 0C43 00C9
43666, 0C41 00C9
43400, 0C46 00C8
43406, 0C43 00C8
43206, 0C43 00C9
435F8, 0C44 00C8
#index?(WTF)
6BCF6, 00C8
6BD52, 00C8
6BDAE, 00C8
6BE0A, 00C8
6BEC2, 00C8
6BF1e, 00C8
6BF7A, 00C8
6BFD6, 00C8
6C032, 00C8
6C08E, 00C8
6C0EA, 00C8
6C146, 00C8
6c1A2, 00C8
6C1FE, 00C8
6C25a, 00c8
--- Конец кода ---
список адресов ram юнитов -   ROM:0004A85A   (упоминалось уже),  ($FEEE0 в хаке.)

Добавлено позже:

--- Цитата: ALEX_230_VOLT от 06 Январь 2010, 20:30:04 ---почему то  dunehackX не запускается. пробовал на разных эмулях (в том числе на том что ты выкладывал в этом посте) и нифига - чёрный экран. смена расширения на bin тоже не помогла

--- Конец цитаты ---
править crc рома поставь в свойстах эмуля.     вроде правил значит забыл. (перезалью еще )

Добавлено позже:

--- Цитата: MrFlibble от 06 Январь 2010, 20:26:39 ---В сеговской версии такие скрипты есть?

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

Добавлено позже:

--- Цитата: ALEX_230_VOLT от 06 Январь 2010, 20:30:04 ---почему то  dunehackX не запускается
--- Конец цитаты ---
перезалил с fixed checksum. (и в ссылке и на форуме)
ALEX_230_VOLT:
да я и сам уже понял как включать фикс контрольной суммы  ;) Битва конечно мощная, но всё же тормозит. Наверное надо всё же использовать эмуль на 64 мгц
Ti_:

--- Цитата: ALEX_230_VOLT от 06 Январь 2010, 21:06:53 ---Наверное надо всё же использовать эмуль на 64 мгц

--- Конец цитаты ---
в том что я выложил (XZ Mhz ) около 50.  тут скорее сотню надо ,
это дюна кривая) много юнитов не любит.
  
вот 100... gens_100mhz_2RAM

p.s.в аську зайди -тут вроде думаем 4-ом счас рубануть RRR.
Ti_:
пока вроде как выяснил из-за чего глюк с пропаданием иконок, адреса новые используются не полностью, так в некотором случае он считает походу без учета полного адреса, последние 2байта только - т.е. опять FFxxxx., вместо xxxxxx.
строениям пробовал полностью новые адреса прописать - для всех строений новая память, так вот здания пашут- но перестает работать плитки-кокрит), а у меня этот глюк незаметен был потому что адреса как бы совмещенные получились типа FF4Eb8, Fe4eb8. и вроде прокатывает -или незаметно просто. конечно можно и так оставить, но в случае с юнитами надо фиксить, а как пока не знаю. (именно поэтому и получалось без глюков на 11 юнитов добавить- ведь у самолетов нет иконок и полосок жизни- а новые адреса там были как раз FE1000  ( как FF1000 для самолетов)

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


Добавлено позже:
кстати вот уточнение насчет кругляшков.
1) лампочки (те что горят на рефинери)

--- Код: ---RAM_:00FFD4B8 lampo4ki:       ds.b 2                  ; DATA XREF: sub_D65A+12Eo
RAM_:00FFD4BA                 ds.b 1
--- Конец кода ---

по 2байта для кажого здания.; 1цифра стоит другая меняется когда они мигают. (если здание без лампочек - 0000)

их ограничивалка:

--- Код: ---ROM:0000D77E                 cmpi.w  #$49,(a2)
ROM:0000D788                 lea     (lampo4ki).l,a3
--- Конец кода ---

2) кругляшки (которые показывают какой дом)


--- Код: ---RAM_:00FFD54C kruglyashki:    ds.b 1                  ; DATA XREF: sub_D65A+4CCo
RAM_:00FFD54D                 ds.b 1
--- Конец кода ---
на каждое здание по байту, цифры все время крутятся) причем для кажого здания по-своему. (хотя внешне-то одинаково вращаются! )  (если здания нет - 0)

их ограничивалка:

--- Код: ---ROM:0000DB1E                 cmpi.w  #$49,(a2) ; 'I'
ROM:0000DB22                 bge.w   loc_DC3A
ROM:0000DB26                 lea     (kruglyashki).l,a3
--- Конец кода ---
Segaman:
Не забывай записывать и выкладывать, как ты фсего добиваешся. Ато не прикольно когда ты один всё умеешь делать.

А так молодец, так держать.
Ti_:

--- Цитата: Segaman от 09 Январь 2010, 19:52:03 ---Не забывай записывать и выкладывать, как ты фсего добиваешся.

--- Конец цитаты ---
тебя метод поиска интересует или что.
ALEX_230_VOLT:

--- Цитата: Ti_ от 09 Январь 2010, 22:39:07 ---тебя метод поиска интересует или что.

--- Конец цитаты ---
ну хотябы азы обьясни ;) ну вот открыл я ром хекс редактором и что дальше? Как определить где кончается графа и звуки и начинается напосредственно игра?
topos84:
ALEX_230_VOLT, http://romhacking.net.ru/forum/4-45-1

А вообще, Ti_, пора тебе за написание книжки садиться: "Ромхакинг без программирования"  :)
r57shell:
неайс неайс задумка :D, это получится тогда ресурс хакинг восновном ^^. но где-то можно догадаться, или кого-нить попросить ^^.

Добавлено позже:
Лучше напиши книгу "как тяжело хакать, без прогинга"  :'(
Ti_:

--- Цитата: r57shell от 10 Январь 2010, 00:29:15 ---Лучше напиши книгу "как тяжело хакать, без прогинга"
--- Конец цитаты ---
понимаешь основная проблема, когда новички спрашивают "я хочу научится ломать ромы", "я хочу что-нибудь изменить в игре" и им отвечают:
"тебе надо учить программирование" или "тебе надо учить ассемблер 68к".
ну и что они пойдут учить через годик выучат какой-нибудь язык только ради того чтобы что-то попробовать изменить в любимой игре? а что они поймут если прочитают этот ассемблер - вообще ничего.

Добавлено позже:
ещё интерес тот факт что многие знают программирование, а что такое хекс и ром и как они ломаются не понимают ну или не знают.   :)

Добавлено позже:

--- Цитата: r57shell от 10 Январь 2010, 00:29:15 ---это получится тогда ресурс хакинг восновном ^^
--- Конец цитаты ---
да понимаешь ресурс хакинг он уже ромхакинг.  смотря что за игра, можно многого добиться без измения кода вообще. 
самое главное понять что такое код,данные, где это в роме и как выглядит, а дальше уже сам смотришь на него в ИДЕ и решаешь - 1) да я его выучу это круто 2) нет мне лень учить, я лучше поизменяю все что не код.
Segaman:
Да я не о том ваапще. Я говорю, как ты юнитов добавил, строений, червей и т.д.
чтоб хаки можно было сделать. А я мог бы DuneCore написать. типа мугена, только про дюну на сегу.
Ti_:

--- Цитата: Segaman от 10 Январь 2010, 09:41:09 ---Да я не о том ваапще. Я говорю, как ты юнитов добавил, строений, червей и т.д.
чтоб хаки можно было сделать.
--- Конец цитаты ---
червей я не добавил.  вначале я добавил здания - , ну как 1)посчитали их  макс. кол-во; 2) нашли в памяти текущее кол-во. 3)дебаг на это адрес. 4) оказалось что это только за иконку отвечает.(но уже не помню). 5) нашли строки и список адресов которые отвечают за распеределние зданий в рам. в IDE.  это вообще вроде либо ты написал либо они там рядом были.
6)смотрим все xrefs'ы от этого списка и  в каждом смотрим куске что-то связанное с $49 или $46, например cmpi.w $49;   ($49=73 ,  72 в оригинале здания или сколько там)
7)заменяем везде $49 на  $69
8)проверяем пропал ли лимит, он пропал - но 73-е здание не ставится.
9)перемещаем и дописываем список адресов зданий в роме., добавляя новые адреса из новой рам.
10)кругляшки были рядом в рам после основных.

юниты - там было сложнее , потому что кол-во юнитов 77, а с $4D сравнение ток в 1месте и  оно отвечает за значок перечекрунтый.
а остальные там либо $65 либо 66$, - лимит строк, если посчитать этот список 101получается; , если изучить память то видно что память юнитов начинается не с 1-ой а с 25-ой., поэтому также $66-$4D =$19, и с $19тоже сравнения идут.   вообщем во всех xref'aх идут сравнения c $66 и $19, а не $4d, меняем $66 и $65 на $СС скажем,  перемещаем и удваиваем список адресов. и ничего не получаем.
а все потому что в одном из кусков было еще 1сравнение которой каждый раз бралось разное, из рома а задавалось от-ным адресом.


--- Код: ---ROM:000433AA                 move.w  $34(a4),d3
ROM:000433AE                 move.w  $36(a4),d6
ROM:000433B2                 lea     (units_offs).l,a1
--- Конец кода ---



--- Код: ---ROM:000433E2 loc_433E2:                              ; CODE XREF: sub_4332E+98j
ROM:000433E2                 cmp.w   d6,d3
--- Конец кода ---

ну вот палим дебаг или трейс чему равно A4, добавляем +$36, и смотрим там опять теже 19$ и 65$, вот после этого уже пашут юниты.

http://www.emu-land.net/forum/index.php/topic,16864.885#msg502048



r57shell:

--- Цитата: Ti_ от 10 Январь 2010, 01:41:01 ---понимаешь основная проблема, когда новички спрашивают "я хочу научится ломать ромы", "я хочу что-нибудь изменить в игре" и им отвечают:
"тебе надо учить программирование" или "тебе надо учить ассемблер 68к".
ну и что они пойдут учить через годик выучат какой-нибудь язык только ради того чтобы что-то попробовать изменить в любимой игре?

--- Конец цитаты ---
годик?) да ты гонишь )))) я вот язык (программный) изучаю за неделю (это редкость) обычно за день-два. Язык изучить - это тупо знать синтаксис, а все функции (инструкции) - найди того, кто все знает, сомневаюсь, что найдёшь, исключая разработчиков самого языка.


--- Цитата: Ti_ от 10 Январь 2010, 01:41:01 ---а что они поймут если прочитают этот ассемблер - вообще ничего.

--- Конец цитаты ---
Вот если C++ только изучат - то наверно и не поймут. Для того, чтобы понять, надо именно знать ассэмблер, а вот теперь найди тех, кто его знает. Утверждаю, что большинство тех кто знает ассэмблер - поймут как хакать и без тебя :) (но это моё личное мнение) Просто может методы, которые они будут использовать, будут не совсем совершенными.


--- Цитата: Ti_ от 10 Январь 2010, 01:41:01 ---Добавлено позже:
ещё интерес тот факт что многие знают программирование, а что такое хекс и ром и как они ломаются не понимают ну или не знают.   :)

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


--- Цитата: Ti_ от 10 Январь 2010, 01:41:01 ---Добавлено позже:
да понимаешь ресурс хакинг он уже ромхакинг.  смотря что за игра, можно многого добиться без измения кода вообще. 
самое главное понять что такое код,данные, где это в роме и как выглядит, а дальше уже сам смотришь на него в ИДЕ и решаешь - 1) да я его выучу это круто 2) нет мне лень учить, я лучше поизменяю все что не код.

--- Конец цитаты ---
Хм... есть два смысла "одно не другое":
1) Одно не другое в смысле что они не одно и то же. ("вода не жидкость" так как жидкость не вода.)
2) Одно не другое в смысле что одно не является частью другого. ("вода жидкость" так как вода же жидкая!!)  Ну или как-то так. Не охото давать чёткое определение, надеюсь все поняли, что я иммею ввиду.
Тут таже самая фигня: Ресурсхакинг не Ромхакинг так как Ромхакинг не Ресурсхакинг, и в то же время, ресурсхакинг является состовляющей Ромхакинга. Такчто если ты в роме ресурсы хакаешь, это не означает что ты не занимаешься ромхакингом, но в тоже время означает что ты не занимаешься ромхакингом в целом, так как ты не трогаешь код :]

Надеюсь написал достаточно популярно.
topos84:

--- Цитата: r57shell ---1) Одно не другое в смысле что они не одно и то же. ("вода не жидкость" так как жидкость не вода.)
2) Одно не другое в смысле что одно не является частью другого. ("вода жидкость" так как вода же жидкая!!)  Ну или как-то так. Не охото давать чёткое определение, надеюсь все поняли, что я иммею ввиду.
Тут таже самая фигня: Ресурсхакинг не Ромхакинг так как Ромхакинг не Ресурсхакинг, и в то же время, ресурсхакинг является состовляющей Ромхакинга. Такчто если ты в роме ресурсы хакаешь, это не означает что ты не занимаешься ромхакингом, но в тоже время означает что ты не занимаешься ромхакингом в целом, так как ты не трогаешь код :]

Надеюсь написал достаточно популярно.
--- Конец цитаты ---
Такая "популяризация" понятий "род" и "видовые отличия" запутают всякого, кто с этими понятиями еще не знаком. :lol:
Ti_:

--- Цитата: r57shell от 10 Январь 2010, 20:53:11 ---изучаю за неделю (это редкость) обычно за день-два.
--- Конец цитаты ---
ок напиши книгу как научится прогить за неделю для новичков с нуля, и о том как это легко. а вторую неделю на асм и далее перед ними все пути в ромхакинге открыты.


--- Цитата: r57shell от 10 Январь 2010, 20:53:11 ---Для того, чтобы понять, надо именно знать ассэмблер, а вот теперь найди тех, кто его знает. Утверждаю, что большинство тех кто знает ассэмблер - поймут как хакать и без тебя :)

--- Конец цитаты ---
ок все новички знают ассемблер.  они поймут без меня я в этом не сомневаюсь.


--- Цитата: r57shell от 10 Январь 2010, 20:53:11 ---но в тоже время означает что ты не занимаешься ромхакингом в целом, так как ты не трогаешь код :]

--- Конец цитаты ---
ромхакинг взлом ромов, что меняешь не важно.  с таким же успехом я могу сказать ты в целом не ромхакер- ты музыку и звук не заменяешь - только код.
другое дело что интересный или качественный хак можно сделать только измением кода, исключение - создание новых уровней например которые кодом не являются. (миссия в дюне, трасса в rrr.), а также RRR hack v0004 ).





Добавлено позже:

--- Цитата: r57shell от 10 Январь 2010, 20:53:11 ---1) Одно не другое в смысле что они не одно и то же. ("вода не жидкость" так как жидкость не вода.)
2) Одно не другое в смысле что одно не является частью другого. ("вода жидкость" так как вода же жидкая!!)
Надеюсь написал достаточно популярно.

--- Конец цитаты ---
напиши 1) и 2) на asm 68k  может мне понятнее будет что ты хотел сказать.

Добавлено позже:

--- Цитата: Ti_ от 10 Январь 2010, 01:41:01 ---да понимаешь ресурс хакинг он уже ромхакинг.
--- Конец цитаты ---

romhacking =  (resourse hacking) or (graphic hacking) or (code hacking) or (music hacking) or (perevod) or (fcking 100500 hacks mario color)

хотя последние 2 я за ромхаки не считаю.
r57shell:

--- Цитата: Ti_ от 10 Январь 2010, 21:18:21 ---ок напиши книгу как научится прогить за неделю для новичков с нуля, и о том как это легко. а вторую неделю на асм и далее перед ними все пути в ромхакинге открыты.

--- Конец цитаты ---
А чего не так чтоли?) если они это будут знать.


--- Цитата: Ti_ от 10 Январь 2010, 21:18:21 ---ок все новички знают ассемблер.они поймут без меня я в этом не сомневаюсь.

--- Конец цитаты ---
Оу, я не говорил что все новички знают ассэмблер, я сказал что ТЕ кто знают ассэмблер (а это уже не новички) те поймут без тебя.

Сначало надо было понять вот это

--- Цитата: Ti_ от 10 Январь 2010, 21:18:21 ---Добавлено позже:
напиши 1) и 2) на asm 68k  может мне понятнее будет что ты хотел сказать.

--- Конец цитаты ---
которое я не хочу писать на asm 68к....

А потом уже говорить об этом:

--- Цитата: Ti_ от 10 Январь 2010, 21:18:21 ---ромхакинг взлом ромов, что меняешь не важно....

--- Конец цитаты ---

Так как оно относится к предыдущей цитате...
И это тоже:

--- Цитата: Ti_ от 10 Январь 2010, 21:18:21 ---Добавлено позже:
romhacking =  (resourse hacking) or (graphic hacking) or (code hacking) or (music hacking) or (perevod) or (fcking 100500 hacks mario color)

хотя последние 2 я за ромхаки не считаю.

--- Конец цитаты ---
Ti_:

--- Цитата: r57shell от 10 Январь 2010, 21:26:27 ---А чего не так чтоли?) если они это будут знать.

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

было у меня 2дизасма вначале я ради интереса их юзнул посмотреть что получится- ну текст какой-то и всё толку 0., посмотреть на него только.   если бы сразу с IDA начал другое дело, потому что вначале через хекс делал, хорошо потом подсказали что IDA рулит, Смоук вроде бы, причем советал иммено для нахождения всяких таблиц) типа хар-ки машин игроков и прочее, так как код отделяется и сразу видно.  а не то что забито всяким софтом ромхаксайты типа поинтерсечеры какие-то, круптары и прочая дребень оно вообще ненужно нахрен кто придумал.  вот во всё этом тока путаются новички и не знают с чего начать. 
ИДАпро единственно правильный подход я вам говорю, знаешь ты ассемлер или нет это неважно, главное понятна сразу структура рома становится, много найти можно , изменить и т.д.
 



Добавлено позже:

--- Цитата: r57shell от 10 Январь 2010, 21:26:27 ---Я сказал что ТЕ кто знают ассэмблер (а это уже не новички) те поймут без тебя.

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

Добавлено позже:

--- Цитата: r57shell от 10 Январь 2010, 21:26:27 ---Сначало надо было понять вот этокоторое я не хочу писать на asm 68к....
А потом уже говорить об этом:
Так как оно относится к предыдущей цитате...
И это тоже:

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

--- Цитата: Ti_ от 10 Январь 2010, 22:05:46 ---не знаю я когда заинтересовался про взлом ромов, искал всякий софт для ромхакинга, статьи, скачивал манулки всякие и ассемблер и сега док и прочее всё было, но про что там пишут 90% все равно ниче не ясно пока сам не попробуешь. смысл было читать то че не понимаешь что это такое.
ну а если "учи программирование под сегу" и научишься ромы ломать это как думаешь у меня было желание учить программирование спецом чтобы в игре че-нить изменить , да еще вопрос в том как его учить. и вообще не верю я что программирование так легко дается!! и уж точно не всем.

--- Конец цитаты ---
За пол года можно освоить программирование неслабо, а за год вообще...


--- Цитата: Ti_ от 10 Январь 2010, 22:05:46 ---ИДАпро единственно правильный подход я вам говорю, знаешь ты ассемлер или нет это неважно, главное понятна сразу структура рома становится, много найти можно , изменить и т.д.

--- Конец цитаты ---
Согласен.


--- Цитата: Ti_ от 10 Январь 2010, 22:05:46 ---Добавлено позже:
это я типа меньшими знаниями должен писать книгу там или че для тех кто знает ассемблер и вообще такой все знает и без меня.?
или это прикол такой? во чел мутит хакает при этом ваще ниче не знает, а мы такие умные знаем программирование хаха ..

--- Конец цитаты ---
Это да, прикол, и в каждой шутке есть доля правды.


--- Цитата: Ti_ от 10 Январь 2010, 22:05:46 ---Добавлено позже:
ресурс хакинг это уже ромхакинг(один из видов, а не какая-то там всеголишь составляющая) какой-бы он не был плохой или хороший.
а ты пытаешься это отрицать, что будто тока кодахакинг тру!!, а все остальное лишь жалкие составляющие

--- Конец цитаты ---
Ну жаль что ты не понял что я кокраз это не отрицаю, а наоборот соглашаюсь.
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

Перейти к полной версии