| Разработка и ромхакинг > Ромхакинг и программирование |
| [NES] Tecmo World Cup Soccer |
| (1/2) > >> |
| neoborg:
всем привет. для меня тема ромхакинга очень и очень нова, пока на уровне "разбираюсь что к чему", но уже хотя бы примерно представляю, как что работает. пришла в голову идея хакнуть сабж, причем не просто изменить цвета команд\поменять названия, а внести изменения в игровой процесс. для тех, кто играл, будет проще понять. список идей: - поменять названия команд - поменять цвета команд, а так же сделать майки двухцветными, полосатыми, как, например, команда ФК Шахтер - во втором тайме команды меняются местами - вратарь будет валяться не так долго; быстрее выбивает мяч, то есть не держит его в руках 60 секунд - поменять стандартные игровые мелодии и звуки на другие. например, на некоторые мелодии из captain tsubasa II - сделать 2 мелодии для каждой команды, то есть какая команда разводит, та музыка и играет - добавить судью на поле. игрок, в черно-белом шмоте, который бегает по полю быстрее других игроков, не вмешиваясь в игру - увеличить интеллект ботов, чтобы они не убегали от мяча и нормально ловили пасы - поправить момент, когда твой управляемый игрок появляется не возле мяча, а где-то на краю экрана - отображение текущего счета; карта с передвижением игроков (опции) - добавить возможность играть com vs player - увеличить варианты выбора времени, добавить больше команд в игру - добавить возможность игры 4 игроками. двое играют, двое на воротах - добавить функцию крупного турнира навылет для 2 или 4 игроков - при игре с компьютером сделать скорость ботов нарастающей - добавить погодные условия; поменять вид футбольного поля (опции) - изменить скорость навеса (кнопка B) при ударе по воротам, сделать его похожим на удар бота поскольку я только-только начал во все это вникать, процесс обучения продвигается слишком медленно. например, я знаю, где можно менять цвет игроков, но я не знаю, где в коде прописано, какой команде какие цвета, и как потом эти изменения сохранить. для работы пользуюсь FCEUX 2.2.2. само собой, я не жду, что вы будете делать всю работу за меня, ни в коем случае. но помощь мне не помешает. если у кого-то есть желание принять участие в модификациях, пишите, буду очень благодарен. или добавляйте свои идеи, в пределах разумного, естественно. также предлагаю вам вступить в нашу группу http://vk.com/tecmo_world_cup_soccer , где мы проводим регулярные чемпионаты по этой замечательной игре. у нас более 20 игроков, 8 в высшей лиге и 10 в средней, несколько запасных. матчи проводим по интернету. мы будем рады новым игрокам в Tecmo. возможно, играя с нами, у вас появится свой интерес помочь моему проекту. спасибо за внимание |
| Mad:
neoborg, Планов много написал. Начинай с малого, отписывайся о результатах, может найдутся желающие помочь делом или советом. |
| DANGER X:
Good start. Keep it up :cool: |
| neoborg:
2 рома, посвященных чемпионату мира 2014 в Бразилии. Изменены названия, цвета команд близкие к оригиналу. Также нашей группе будет проводиться чемпионат по настоящему календарю на этих ромах, можете поучавствовать. http://vk.com/tecmo_world_cup_soccer |
| DANGER X:
Awesome :cool: |
| DANGER X:
Continue dude this is great :D |
| neoborg:
версия рома на четвертый игровой сезон. изменения: - меню, команды и таблицы на русском языке; - мерцание индивидуальных команд в такт болельщикам на заднем плане; - собственные цвета у индивидуальных команд; - посекундный отсчет времени, стандартный тайм увеличен на 30 сек; - вратарь поднимается в 2 раза быстрее; - несколько незначительных изменений большая просьба к хакерам форума: подскажите, как можно поменять расположение игроков во втором тайме? чтобы они менялись сторонами, как в настоящем футболе. дайте пару советов. спасибо. |
| neoborg:
помогите, пожалуйста, разобраться в коде. хотел сделать, чтобы когда выбираешь команду, цвет индикатора становился цветом майки выбранной команды. для этого заменил кусок кода на свой (предварительно убедившись, что он не используется). первая строчка кода (87C0) - 60BCD987BEA803B9D0879D93032078C060 - сам код вторая строчка кода (87D0) - 30120D2A26310A14052C301630163711 - нужные мне цвета третья строчка кода (87E0) - 01FFFFFF02FFFFFFFFFFFFFFFFFFFFFF - два значения для выбора нужного индикатора в двух нужных местах поменял JSR на адрес 87C0 02:87BF:60 RTS ----------------------------------------- 02:87C0:BC D9 87 LDY $87D9,X - загрузка в У нужного номера индикатора, первый или второй 02:87C3:BE A8 03 LDX $03A8,Y - загрузка в Х положение индикатора в списке команд, от 00 до 0F 02:87C6:B9 D0 87 LDA $87D0,Y - загрузка в А нужного цвета 02:87C9:9D 93 03 STA $0393,X - установка в адрес нужного цвета 02:87CC:20 78 C0 JSR $C078 - оставил продолжение кода, как было 02:87BF:60 RTS ----------------------------------------- в продолжении кода Х и У сразу заменяются другими значениями, поэтому то, что я их поменял, не страшно. до этого было: 02:8804:60 RTS ----------------------------------------- 02:8805:14 UNDEFINED 02:8806:10 0C BPL $8814 02:8808:08 PHP 02:8809:A9 2A LDA #$2A - была ссылка сразу вот сюда 02:880B:9D 93 03 STA $0393,X 02:880E:20 78 C0 JSR $C078 02:8811:80 UNDEFINED 02:8812:03 UNDEFINED 02:8813:60 RTS ----------------------------------------- как только выбираю команду, все зависает. что я делаю не так? :neznayu: |
| Ti_:
--- Цитата: neoborg от 30 Август 2014, 17:18:44 --- 02:8809:A9 2A LDA #$2A - была ссылка сразу вот сюда 02:880B:9D 93 03 STA $0393,X 02:880E:20 78 C0 JSR $C078 02:8811:80 UNDEFINED 02:8812:03 UNDEFINED 02:8813:60 RTS ----------------------------------------- как только выбираю команду, все зависает. что я делаю не так? :neznayu: --- Конец цитаты --- Не смотрел , но там где в оригинале JSR $C078 вроде загрузка таблицы из поинтеров идёт. А ты ее переместил и поэтому грузятся совершенное левые данные. |
| neoborg:
--- Цитата: Ti_ от 30 Август 2014, 21:53:00 ---Не смотрел , но там где в оригинале JSR $C078 вроде загрузка таблицы из поинтеров идёт. А ты ее переместил и поэтому грузятся совершенное левые данные. --- Конец цитаты --- так а какая разница, что там дальше будет после JSR $C078. моя команда выполняется до нее. и этот JSR $C078 я оставил в конце как и было, чтобы цепочка не обрывалась. или я не совсем понял пояснения. команда раньше выполнялась по адресу 8809 (JSR 8809), но поскольку я переместил код в другое место, указал на него уже другой JSR 87C0. меня больше волнует, правильно ли я написал код, и если нет, где ошибка. у меня это впервые, я целый час думал над этой строчкой, параллельно заглядывая в мануал по ассемблеру, но вроде все правильно написал, хоть он и не пашет почему-то Добавлено позже: я кажется понял, где ошибка ... 02:87C3:BE A8 03 LDX $03A8,Y - загрузка в Х положение индикатора в списке команд, от 00 до 0F ... 02:87C9:9D 93 03 STA $0393,X - установка в адрес нужного цвета мне необходимо иметь в конце первое значение Х, а я его поменял, поэтому здесь 02:87C9:9D 93 03 STA $0393,X адрес в итоге получается неверный. хотя в этой строчке и строчке ниже находятся значения цветов на экране, подумаешь сменил другой цвет, а не тот, который хотел, зачем сразу виснуть-то. Добавлено позже: ладно, у меня еще вопрос есть. вот я смотрю на места, где написан код, а эти места целиком забиты, куски программы идут одни за другим. если я хочу внести свой кусок кода, мне что, обязательно нужно писать его поверх старых? или есть еще свободное место, которое не используется, и в него можно что-то записать, чтобы работало? не в графику же совать... |
| Ti_:
--- Цитата: neoborg от 30 Август 2014, 23:12:53 ---так а какая разница, что там дальше будет после JSR $C078. моя команда выполняется до нее. и этот JSR $C078 я оставил в конце как и было, чтобы цепочка не обрывалась. или я не совсем понял пояснения. команда раньше выполнялась по адресу 8809 (JSR 8809), но поскольку я переместил код в другое место, указал на него уже другой JSR 87C0. --- Конец цитаты --- А в данном случае разница есть, потому что функция $c078 работает таким образом что загружает какие-то данные с места после которога она была. А при jsr это место записывается в стек. А место то это, у тебя изменилось. Вот, например тут: --- Код: ---BANK4:812D JSR loc_4200_C078 BANK4:812D ; --------------------------------------------------------------------------- BANK4:8130 .BYTE $80 BANK4:8131 .BYTE 3 BANK4:8132 ; --------------------------------------------------------------------------- BANK4:8132 LDA #$15 --- Конец кода --- Ты ведь знаешь после jsr код должен вернуться на BANK4:8130 , а там кода нет. Потому что сама функция C078 умеет считывать и пропускать эти два байта. --- Код: ---BANK6:C078 loc_4200_C078: ; CODE XREF: BANK4:812DP BANK6:C078 ; BANK4:880EP BANK6:C078 JMP loc_4200_CB18 --- Конец кода --- --- Цитата ---BANK6:CB18: loc_4200_CB18: BANK6:CB18 TSX BANK6:CB19: LDA unk_0_101,X --- Конец цитаты --- Добавлено позже: --- Цитата: neoborg от 30 Август 2014, 23:12:53 ---ладно, у меня еще вопрос есть. вот я смотрю на места, где написан код, а эти места целиком забиты --- Конец цитаты --- В твоём роме вроде есть место $fc78-$ffcf (rom $fc88-) |
| neoborg:
--- Цитата: Ti_ от 31 Август 2014, 00:05:33 ---А в данном случае разница есть, потому что функция $c078 работает таким образом что загружает какие-то данные с места после которога она была. А при jsr это место записывается в стек. А место то это, у тебя изменилось. --- Конец цитаты --- понятно. просто как я писал, значения А, Х, У после JSR $C078 начзачаются по-новой. --- Цитата --- Добавлено позже:В твоём роме вроде есть место $fc78-$ffcf (rom $fc88-) --- Конец цитаты --- о, круто. мне вполне хватит ^_^ спасибо за ответы. |
| DANGER X:
What happened with the hack??? |
| SeregaZ:
probably good :) them group in "contackt" still play in championats. |
| neoborg:
--- Цитата: DANGER X от 28 Март 2015, 18:15:16 ---What happened with the hack??? --- Конец цитаты --- я пока не забил на него) работаю над ромом для 6-го сезона. вот пока предварительная версия основные изменения рома относительно Tecmo World Cup Soccer (V) - 48 команд (команда из первого набора выбирается клавишей B, второго A+B, третьего A+Start+B. значок сменится на зелёный, жёлтый и красный соответственно) - расширенные ворота - вратарь может бегать по всей штрафной - время останавливается, если вратарь взял мяч в руки, можно бегать с мячом сколько угодно - навес вратаря похож на навес игрока - вратарь может пасовать как игрок - ускорен навес с углового - с углового можно пасовать - поправлена графика поднимающегося вратаря - выбирать время тайма и ставить на паузу может любой игрок |
| DANGER X:
Great :ohmy: Are you planing on add more? |
| neoborg:
--- Цитата: DANGER X от 22 Апрель 2015, 17:47:01 ---Great :ohmy: Are you planing on add more? --- Конец цитаты --- вряд ли много чего еще добавлю, по крайней мере до 6 сезона. буду чисто шлифовать :oldgamer: |
| neoborg:
это не финальная версия, но добавлять в принципе уже больше нечего. из основных изменений (то, что было добавлено после Tecmo World Cup Soccer (V) final 3.4.3 GK): - возможность играть от 2 до 4 игроков одновременно - переключение игроков на экране кнопкой select - отображение счета на экране - во втором тайме команды меняются сторонами - добавлен капитан команды - и еще куча всего по мелочи, все подробности читай тут |
| booook:
Здравствуйте! Помогите плз! решил поиграть и пройти этот замечательный футбол (не конкретно в этой версии а просто в сборнике ромов для эмулятора) снова который я задрачивал в детстве и проходил. Но ахуел когда на второй же команде комп дал мне пизды потому что его игроки бегали в два раза быстрее. 1. Это так всегда было что бы игроки сразу во второй игре бегали быстрее? Не припомню такого что то... 2. Я могу сделать так что бы мои игроки тоже так бегали? 3. В этой версии тоже такая канитель? Спасибо! |
| neoborg:
--- Цитата: booook от 07 Июль 2015, 18:53:51 ---1. Это так всегда было что бы игроки сразу во второй игре бегали быстрее? Не припомню такого что то... --- Конец цитаты --- в оригинале всегда со 2-го матча они вдвое быстрее --- Цитата: booook от 07 Июль 2015, 18:53:51 ---2. Я могу сделать так что бы мои игроки тоже так бегали? --- Конец цитаты --- только если хакнуть, либо с читами --- Цитата: booook от 07 Июль 2015, 18:53:51 ---3. В этой версии тоже такая канитель? --- Конец цитаты --- в этой версии нет игры против компа --- Цитата: booook от 07 Июль 2015, 18:53:51 ---Спасибо! --- Конец цитаты --- Не за что :) |
| Навигация |
| Главная страница сообщений |
| Следующая страница |