Разработка и ромхакинг > Ромхакинг
[SMD] Неполноценный хак FIFA 96
Je$TeR:
--- Цитата: perfect_genius от 03 Март 2024, 13:16:48 ---Je$TeR, я имел в виду про один элемент. Т.е. и у мигающей иконки тоже два указателя
--- Конец цитаты ---
Понятное дело, просто если ломать глитчером в конкретном месте, скорее всего на оба поочередно наткнешься.
--- Цитата: perfect_genius от 03 Март 2024, 13:16:48 ---А ещё вспомнил, что должна быть ещё палитра
--- Конец цитаты ---
Зачем? Они все одну палитру используют. Или я не понимаю о чем речь.
--- Цитата: Марат от 03 Март 2024, 14:13:59 ---Вот тебе таблица со списком адресов:
$15AEF0 - $15E0E3 - таблица с 4 байтными относительными поинтерами (3196 поинтеров)
--- Конец цитаты ---
Это что угодно, но только не то, что мне нужно. Спрайт, который мне надо заменить, начинается в 12CB68, где 30 FB - отвечает за сжатие или чего-то там.
Твоя таблица же идет после нужной мне графики, блоков с командами, с игроками, и чем только можно. Т.е. почти в конце рома. На что она может ссылаться - я не знаю.
--- Цитата: perfect_genius от 03 Март 2024, 16:08:12 ---Таких списков указателей в роме несколько же?
--- Конец цитаты ---
Мне Sharpnull находил: D0D22 адрес (00063ADA) на блок с игроками (133854) при этом ссылается он относительно CFD7A (63ADA+CFD7A = 133854), этих списков определенно несколько.
Марат:
--- Цитата: Je$TeR от 03 Март 2024, 20:05:33 ---Это что угодно, но только не то, что мне нужно. Спрайт, который мне надо заменить, начинается в 12CB68, где 30 FB - отвечает за сжатие или чего-то там.
Твоя таблица же идет после нужной мне графики, блоков с командами, с игроками, и чем только можно. Т.е. почти в конце рома. На что она может ссылаться - я не знаю.
--- Конец цитаты ---
Так это не тебе. Это для поиска вбрасывания мяча. Флаги бы я нашёл без проблем 100%. Искать графику дебагом это вообще проще простого. Гораздо сложнее искать функции движка игры.
Razuka:
--- Цитата: Марат от 03 Март 2024, 20:28:30 ---Так это не тебе. Это для поиска вбрасывания мяча.
--- Конец цитаты ---
Спасибо за наводку, Марат! :thumbup:
Je$TeR:
--- Цитата: Марат от 03 Март 2024, 20:28:30 ---Флаги бы я нашёл без проблем 100%. Искать графику дебагом это вообще проще простого.
--- Конец цитаты ---
Ну так нашел бы уже, чего уж там :lol: Я пол года спрайт заменить не могу. Хотя найти и заменить - это не одно и то же.
Rexi:
--- Цитата: Razuka от 02 Март 2024, 18:58:16 ---Да, будем искать и тестировать :)
Я уверен, что всё можно поправить - это лишь вопрос времени.
--- Конец цитаты ---
я конечно извиняюсь, Но тут пробел у Вас в географии на лицо, карта нашей страны другая... Или может быть Вы живёте в какой-нибудь другой стране и не знаете границы Российской Федерации?
Razuka:
--- Цитата: Rexi от 03 Март 2024, 23:44:01 ---я конечно извиняюсь, Но тут пробел у Вас в географии на лицо, карта нашей страны другая... Или может быть Вы живёте в какой-нибудь другой стране и не знаете границы Российской Федерации?
--- Конец цитаты ---
Вы о чём, дружище? o_0
Каким образом мои слова про тестирование багов могут быть соотнесены с географией?
Беларус учит русский:
Марат, оказывается я не спросил, что же ты искал и нашёл. Думал, флаги. А это могут быть предпросчитанные углы вбрасывания, да? Или это вообще указатели на блоки кода, т.е. это switch?
Razuka, он явно отвечал не тебе, а Je$TeR с картой России без Крыма и новых территорий :lol:
Вот мой тот набор сохранений бросков влево на нижней линии. Нулевое сохранение - это вброс мяча вправо, но его бегут встречать игроки - это баг или нет?
Девятое сохранение - верхняя линия вправо.
Razuka:
--- Цитата: perfect_genius от 04 Март 2024, 00:19:06 ---Razuka, он явно отвечал не тебе, а Je$TeR
--- Конец цитаты ---
А, понятно :facepalm:
Просто обратился он ко мне, что меня несколько удивило и позабавило одновременно.
Добавлено позже:
--- Цитата: perfect_genius от 04 Март 2024, 00:19:06 ---Вот мой тот набор сохранений бросков влево на нижней линии. Нулевое сохранение - это вброс мяча вправо, но его бегут встречать игроки - это баг или нет?
Девятое сохранение - верхняя линия вправо.
--- Конец цитаты ---
Спасибо большое, perfect_genius!
Я завтра постараюсь потестировать их.
Razuka:
--- Цитата: perfect_genius от 04 Март 2024, 00:19:06 ---Вот мой тот набор сохранений бросков влево на нижней линии. Нулевое сохранение - это вброс мяча вправо, но его бегут встречать игроки - это баг или нет?
Девятое сохранение - верхняя линия вправо.
--- Конец цитаты ---
Я проверил все сохранения и вроде бы проблем нет, кроме "rom.gs5" - в нем игрок Нигерии (зеленая футболка) бросает мячик налево и ровно по линии поля (баг) и сломан циферблат (время матча).
Остальные сэйвы подозрений не вызвали.
Vurzum, ты не смотрел?
Беларус учит русский:
Ты проверял именно на версии FIFA_Soccer_96_(F)_UEFA_only_v1_1?
Старая версия Глитчера оставляет найденную инструкцию изменённой в роме, если что.
Je$TeR:
--- Цитата: Razuka от 04 Март 2024, 18:02:32 ---в нем игрок Нигерии (зеленая футболка) бросает мячик налево и ровно по линии поля (баг)
--- Конец цитаты ---
А я ведь предупреждал, результат не соразмерен усилиям когда речь идет о поведении ИИ. Ты еще месяц будешь ковыряться с этим броском мяча, да и не баг это. В подобных случаях бот кидает мяч ровно по штрафной линии, на которой мяч принимает другой игрок и выбивает его головой в центр поля. Просто иногда там игрок не стоит.
Для сравнения, поменяв выбивание мяча на другую кнопку (а не на B, сейчас) сейчас бы улучшило геймплей многократно и было бы намного проще, но с данной программой сейчас этого и не сделать наверное.
Razuka:
--- Цитата: Je$TeR от 04 Март 2024, 21:08:24 ---результат не соразмерен усилиям когда речь идет о поведении ИИ. Ты еще месяц будешь ковыряться с этим броском мяча, да и не баг это.
--- Конец цитаты ---
Да хоть два месяца, но баг рано или поздно победим.
Добавлено позже:
--- Цитата: perfect_genius от 04 Март 2024, 20:24:49 ---Ты проверял именно на версии FIFA_Soccer_96_(F)_UEFA_only_v1_1?
Старая версия Глитчера оставляет найденную инструкцию изменённой в роме, если что.
--- Конец цитаты ---
Да. На ней и дополнительно на "чистой" другой версии ROM.
Из 7-ми сэйвов только на "rom.gs5" баг проявляется + поломаны часы.
А так, вроде по остальным все пока хорошо.
Добавлено позже:
--- Цитата: Je$TeR от 04 Март 2024, 21:08:24 ---не баг это
--- Конец цитаты ---
Je$TeR, это тебе. Кол-во попыток вбрасывания можешь посчитать :)
Je$TeR:
--- Цитата: Razuka от 04 Март 2024, 22:40:24 ---Je$TeR, это тебе. Кол-во попыток вбрасывания можешь посчитать
--- Конец цитаты ---
Ты читал, что я написал?
--- Цитата: Je$TeR от 04 Март 2024, 21:08:24 ---В подобных случаях бот кидает мяч ровно по штрафной линии, на которой мяч принимает другой игрок и выбивает его головой в центр поля. Просто иногда там игрок не стоит.
--- Конец цитаты ---
Иногда - означает в другой расстановке.
Если тут и есть баг, то лишь в том, что после такого броска команда бросающего не меняется.
Сделать так, чтобы за подобный бросок игрок желтую карточку получал, или менялась команда, мне кажется, гораздо проще, чем пытаться ковырять направление броска со всех позиций.
Razuka:
--- Цитата: Je$TeR от 05 Март 2024, 00:21:09 ---Сделать так, чтобы за подобный бросок игрок желтую карточку получал
--- Конец цитаты ---
Т.е. за 5 подряд бросков ровно по линии (как на видео выше) - 5 желтых карточек одному игроку?
Да... это выход. Гениально, Je$TeR! :facepalm:
Vurzum:
--- Цитата: Razuka от 04 Март 2024, 18:02:32 ---
Vurzum, ты не смотрел?
--- Конец цитаты ---
Неа. Сейчас времени хватает только глянуть мельком че да как тут происходит.. Честно говоря, я не понимаю Jestera. Вернее, я только понимаю, что ему это не интересно, как собственно, и сам режим бот vs бот. Но предлагать не считать багом то, что мешает, прерывает игру, образуя цикличную петлю, да еще и считать допустимым решением давать за это карточку и/или менять вбрасывающую команду за некорректный вброс... :neznayu:
Беларус учит русский:
А ещё случилась немыслимая вещь. Я сделал несколько сохранений бага на одной версии Gens, а на другой версии у Razuka эти сохранения показывают другое поведение бага! Он то есть, то нет. Мы даже сверили ромы.
Т.е. против нас теперь даже кривость эмуляторов Gens :lol: Получается, я мог исправить баг только для своей версии эмулятора - у меня он больше не встречался.
Нам надо использовать один общий эмулятор и желательно точный, как BlastEm.
Почему бы не попробовать тогда исправить расстановку игроков, как предлагает Je$TeR?
В моём нулевом сохранении игрок скидывает мяч как при баге, но мяч ловят. Т.е. перерасстановка действительно может решить проблему.
--- Цитата: Je$TeR от 04 Март 2024, 21:08:24 ---поменяв выбивание мяча на другую кнопку (а не на B, сейчас) сейчас бы улучшило геймплей многократно и было бы намного проще
--- Конец цитаты ---
А в чём проблема такого управления?
Je$TeR:
--- Цитата: Vurzum от 05 Март 2024, 01:50:59 ---Но предлагать не считать багом то, что мешает, прерывает игру, образуя цикличную петлю
--- Конец цитаты ---
Я сказал что баг - не сам бросок мяча, а то, что на позиции игрока не хватает, читай внимательно.
Он не образует цикл, бот может кинуть по линии пару раз, но потом кидает нормально, это не критичный баг. Задачи для разбора рома есть более интересные и критичные, например баг с пенальти, про который никто из вас даже и не вспомнил.
--- Цитата: Vurzum от 05 Март 2024, 01:50:59 ---Честно говоря, я не понимаю Jestera. Вернее, я только понимаю, что ему это не интересно
--- Конец цитаты ---
Поймешь, когда узнаешь, что починив один баг, ты получил 2 новых, потому что возможно окажется, что все элементы поведения ИИ взаимосвязаны, и для исправления одного бага или коррекции геймплея скорее всего придется разбирать весь ИИ. Потому что, чтобы исправить поведение ИИ, нужно понимать как он в игре устроен. И никто этого сейчас не понимает.
--- Цитата: perfect_genius от 05 Март 2024, 02:19:00 ---А в чём проблема такого управления?
--- Конец цитаты ---
Есть 2 способа отбрать мяч: подкат через А (= штрафные\карточи\травмы), или выбивание через B. Но B это еще и переключение между игроками. Т.е. хочешь выбить мяч и вместо этого ты куда-то переключился, потому что, недостаточно близко к мячу. По сути, 2 разных действия на одну кнопку.
Razuka:
--- Цитата: Je$TeR от 05 Март 2024, 08:09:05 ---бот может кинуть по линии пару раз, но потом кидает нормально, это не критичный баг.
--- Конец цитаты ---
Если бы пару раз...
Бывает и по 5 раз легко. А это уже напрягает.
Добавлено позже:
--- Цитата: Je$TeR от 05 Март 2024, 08:09:05 ---Задачи для разбора рома есть более интересные и критичные, например баг с пенальти, про который никто из вас даже и не вспомнил.
--- Конец цитаты ---
Пенальти в игре ботов - вещь достаточно редкая, так как они предпочитают удары за пределами штрафной. Редко входят в саму штрафную. :)
Добавлено позже:
--- Цитата: Je$TeR от 05 Март 2024, 08:09:05 ---Поймешь, когда узнаешь, что починив один баг, ты получил 2 новых, потому что возможно окажется, что все элементы поведения ИИ взаимосвязаны
--- Конец цитаты ---
Этого, конечно, исключать нельзя, но и пытаться что-то исправить в данном процессе тоже возможно. Нужно лишь время на тестирование.
Вот, например, perfect_genius вроде бы смог исправить вбрасывание на ближней линии в левую сторону - по крайней мере, я пока не встречался с повтором ошибки в данной ситуации.
И каких либо прочих отрицательных отклонений после внесенного изменения в код игры я пока не заметил (надеюсь, что и не замечу :lol:)
Добавлено позже:
--- Цитата: perfect_genius от 05 Март 2024, 02:19:00 ---Почему бы не попробовать тогда исправить расстановку игроков, как предлагает Je$TeR?
--- Конец цитаты ---
Если это возможно сделать и ошибка исчезнет, то все будут только рады этому :)
Беларус учит русский:
Je$TeR, мда, это дикость o_0
Вот почему я не смог разобраться в управлении.
Да, Глитчер пока не может такое изменить, он только инвертирует. Т.е. выключив проверку на нажатие B, игра будет постоянно переключать игроков, но и автоматически выбивать, если расстояние подходит.
У меня есть старые наработки по автопоиску драйвера геймпада в роме, чтобы можно было переназначать кнопки. Подумаю, что можно сделать.
Razuka, надеюсь, насчёт эмулятора ты понял, это серьёзное препятствие вообще что-то делать с игрой. Т.е. тебе теперь надо копить сохранения в BlastEm, я переключаюсь на него.
Razuka:
--- Цитата: perfect_genius от 05 Март 2024, 12:17:49 ---теперь надо копить сохранения в BlastEm, я переключаюсь на него.
--- Конец цитаты ---
Так точно, сэр!
Будем осваивать новые технологии :thumbup:
P.S
0.6.2 - Released March 28th, 2019
Эту сборку использовать?
Навигация
Перейти к полной версии