Разработка и ромхакинг > Ромхакинг
[SMD] Неполноценный хак FIFA 96
Марат:
--- Цитата: Je$TeR от 16 Март 2024, 15:51:12 ---Я даже знаю почему.
--- Конец цитаты ---
Потому что я весь необходимый код поправил для Friеndly режима. А остальные режимы я не трогал. Там тоже много чего надо менять.
А Ром я дампил через хекс эдитор дебагера, поэтому он, видимо, 8 мегабайт. Это я не проверял. Но лишние данные можно легко удалить.
Razuka:
--- Цитата: Je$TeR от 16 Март 2024, 15:51:12 ---Ты её в публичный доступ не выкладывал.
--- Конец цитаты ---
Выкладывал уже 2 или 3 раза (точно не помню) на форуме.
Не делал для этого отдельной темы, чтобы не засорять форум.
Добавлено позже:
--- Цитата: Je$TeR от 16 Март 2024, 15:51:12 ---Но так-то она все равно бесполезна станет, как только блок с игроками перенести.
--- Конец цитаты ---
Терзают смутные сомнения уже насчет переносов блоков :lol:
Je$TeR:
--- Цитата: Марат от 16 Март 2024, 16:34:09 ---Потому что я весь необходимый код поправил для Friеndly режима.
--- Конец цитаты ---
Ты хочешь сказать, что ты специально отключил sram?
--- Цитата: Марат от 16 Март 2024, 16:34:09 ---А остальные режимы я не трогал. Там тоже много чего надо менять.
--- Конец цитаты ---
Например?
Указатели на сам текст мне известны (на адрес и размер блока - нет)
На цвета плашек - тоже (там по дебильному устроено, действительно менять нужно)
Спрайты - отдельный разговор.
Если ты пытался еще и устройтсво турниров из 98 перенести, то там у сборных все иначе устроено, там у них меню отдельное. В 96 это проще сделано. Но то, что сейчас даже больше чем 16 лиг можно сделать, все равно круто.
--- Цитата: Razuka от 16 Март 2024, 17:29:45 ---Терзают смутные сомнения уже насчет переносов блоков
--- Конец цитаты ---
Её доработать можно, Sharpnull же её тебе писал
Марат:
Sram был настроен на область после рома, т.е. после 2 мегабайт, я его перенастроил на область после 3 мегабайт. Адрес 0x300000-30ffff.
Работает френдли режим потому что я изменил код чтения составов лиг, чтобы он читал данные от fifa 98. И вообще мог переключать список лиг и список команд.
Всё таки фифа 96 оперирует байтами, а фифа 98 вордами. Это ещё повезло, что была возможность одну из команд, заменить на нужную для меня, не поломав систему.
Добавлено позже:
Например, нужно научить игру понимать данные из fifa 98. Т.е. почти все тоже самое, что было проделано для friendly режима, но плюс могут быть дополнительные тонкости, связанные с турниром.
Турниры из fifa 98 я не планировал переносить. Только научить читать данные команд, лиг, игроков из fifa 98.
Je$TeR:
--- Цитата: Марат от 16 Март 2024, 19:28:45 ---Sram был настроен на область после рома, т.е. после 2 мегабайт, я его перенастроил на область после 3 мегабайт. Адрес 0x300000-30ffff.
--- Конец цитаты ---
Почему тогда он не сохраняется? Не появляется даже сам файл. Введенные коды для турниров тоже не запоминает.
--- Цитата: Марат от 16 Март 2024, 19:28:45 ---Например, нужно научить игру понимать данные из fifa 98. Т.е. почти все тоже самое, что было проделано для friendly режима, но плюс могут быть дополнительные тонкости, связанные с турниром.
--- Конец цитаты ---
Сейчас вспомнил, что состав турнамента в World встроенный, т.е. все команды прописаны заранее. При этом Champions Cup команды из World не читает. Так что там, скорее всего, действительно надо подправлять, но не думаю, что там что-то сильно отличается. Но это тоже будет полезно, можно будет лигу чемпионов нормальную добавить.
Марат:
Скорее всего я не все адреса изменил. Я особо не искал их. Поменял в двух местах
Je$TeR:
--- Цитата: Марат от 17 Март 2024, 00:25:45 ---Скорее всего я не все адреса изменил.
--- Конец цитаты ---
Чёрт возьми, не удивительно. Только что прошелся по адресам размера на блок игроков, там везде 0DEF, и действительно, почему это система чтения игроков сломалась? Да уж :rofl:
Ты нас так не пугай больше. Сейчас везде поменял на 1519 в твоем роме, все прекрасно работает.
Желательно, записывай где нибудь изменения, которые вносишь, а то размеры составов уже не понятно где находятся, и придется потом гадать, чего ты поменял, а чего нет.
Марат:
Нет, она работала, до того как я внес составы лиг из FIFA 98.
А потом все мои силы были сосредоточены на запуск Friendly режима.
Но, естественно, я не менял все значения. Я изменил какое-то количество, пока игра не заработала во Friendly режиме. Дальше я уже пытался запустить другой турнир. И понял, что там тоже много чего надо менять и бросил. Тем более там не обойтись без переноса кода, так как в FIFA 98, есть команда add.l d0,d0. А в FIFA 99 такой команды естественно нет. И если раньше мне удавалось её записать вместо другой команды, то в других турнирах такой возможности уже не было.
Je$TeR:
--- Цитата: Марат от 17 Март 2024, 16:57:48 ---Нет, она работала, до того как я внес составы лиг из FIFA 98.
--- Конец цитаты ---
Игроки не работали? Или срам не работал?
--- Цитата: Марат от 17 Март 2024, 16:57:48 ---Но, естественно, я не менял все значения.
--- Конец цитаты ---
Но, когда мне нужны были адрес размера игроков, ты ведь сразу нашел все 4 каким-то образом. Возможно остальные следует поискать таким же способом, чтобы потом не думать, что ты что-то сломал? Но сами лиги сейчас вроде бы работают, только с отображением команд проблема.
--- Цитата: Марат от 17 Март 2024, 16:57:48 ---в FIFA 98, есть команда add.l d0,d0. А в FIFA 99 такой команды естественно нет
--- Конец цитаты ---
Если я бы понимал, за что она отвечает, сказал бы, нужна она или нет. Так-то я все турниры проходил, и в 96 и в 98. Возможно и без неё можно обойтись.
Марат:
Отремонтировал запись в SRAM. Пришлось поискать информацию, как работает SRAM.
Отремонтировал остальные турниры. Теперь все турниры работают. Правда, особо их не тестил. Возможно, на финише могут вылезти баги.
По-прежнему, не работают трансферы и кастомные команды.
Je$TeR:
--- Цитата: Марат от 21 Март 2024, 20:43:08 ---Отремонтировал остальные турниры. Теперь все турниры работают. Правда, особо их не тестил.
--- Конец цитаты ---
Если все работает, останется только за графику взяться.
StrikeDJU:
Здравствуйте, фанаты самых древних игр о футболе.
Наткнулся на этот форум и обнаружил великолепный хак FIFA Soccer 96 с российскими командами.
Это просто феноменально. Прочитал данную тему вдоль и поперёк, а также смежные ветки. В результате разобрался и сделал для себя небольшую модификацию FIFA96 и FIFA97. Поправил формы и плашки для некоторых команд (В FIFA97 клубы, пришедшие из вторых дивизионов по умолчанию вообще не были проработаны, пришлось это поправить). Включил смену цветов форм на гостевые, если цвета футболок совпадают.
Огромное спасибо за информацию в этой теме!
По итогам я доволен как слон.
Но теперь хотелось бы разобраться ещё с парой вопросов.
Отсчёт времени тайма:
В современных играх FIFA время тайма показывается как 45 минут не зависимо от того, какую продолжительность выбирает пользователь. Просто минута реального времени отсчитывается как несколько внутриигровых минут. Хотелось бы в FIFA 96 осуществить такую вещь.
Желтые карточки:
В FIFA 96 футболисты, получившие жёлтые карточки, автоматически не попадают в состав на следующий матч. Их можно включить в основу перед матчем. Однако, в случае нарушения, игрок с карточкой получает от судьи прямую красную, как будто эта жёлтая была получена во время текущего матча. Почему разработчики выбрали именно такой алгоритм - не понятно. Хотелось бы сделать обычное накопление карточек: футболист набирает две жёлтые по ходу турнира и уже тогда пропускает следующий матч без возможности включения в состав.
У кого есть идеи, в каком направлении искать? Кто-то может уже задавался такими вопросами, удалось ли чего-то добиться для решения этих задач?
Беларус учит русский:
Точно, забыл, что в этой теме ждали мой следующий инструмент. Конкретно под вашу игру я ничего не делал и пока в планах другие игры, но можете изучать игру с помощью Переставлятеля, дать её внутренностям названия.
Вот эти моменты теперь можно изучить подробнее:
--- Цитата: Je$TeR от 16 Март 2024, 00:10:09 ---Ну и слом формации поведения в одном моменте позабавил
А в другом наткнулся на неиспользованную часть графики.
--- Конец цитаты ---
Получается, были затронуты массивы формаций/поведения и графики, а значит там рядом с ними есть и другие поведение и графика.
Добавлено позже:
--- Цитата: Je$TeR от 04 Март 2024, 21:08:24 ---поменяв выбивание мяча на другую кнопку (а не на B, сейчас) сейчас бы улучшило геймплей многократно и было бы намного проще, но с данной программой сейчас этого и не сделать наверное.
--- Конец цитаты ---
А вот теперь появился шанс поменять кнопки местами.
--- Цитата: Je$TeR от 06 Март 2024, 00:26:33 ---Я с ней смогу спрайты стран заменить?
--- Конец цитаты ---
Тоже теперь можно попробовать.
StrikeDJU:
--- Цитата: Марат от 21 Март 2024, 20:43:08 ---Отремонтировал запись в SRAM. Пришлось поискать информацию, как работает SRAM.
Отремонтировал остальные турниры. Теперь все турниры работают. Правда, особо их не тестил. Возможно, на финише могут вылезти баги.
По-прежнему, не работают трансферы и кастомные команды.
--- Конец цитаты ---
Марат, не подскажешь, при ремонтировании турниров какую информацию тебе удалось выяснить?
При создании кастомного турнира есть настройка количества кругов в лиге. И есть настройка правила жёлтых карточек. Может быть эти настройки применены во встроенных турнирах, возможно эти настройки можно поменять? Если это дело замены нескольких байтов, то открываются интересные перспективы для редактирования.
Lyon1412:
Привет ребята с наступающим!!! Не могу понять как менять название команд и цвета, не подскажите!??
StrikeDJU:
Дополнил РОМ-хак FIFA96.
Для трансферов доступны игроки сборных своих стран не представленные в своих клубах:
I.Korneiev (Russia 96)
J.Papin (France 96)
C.Valderrama (Colombia 96)
D.Maradona (Argentina 96)
Также для трансферов доступны игроки, которые по разным причинам не попали в основной состав и даже на скамейку своих клубов. В основном, это восходящие звёзды 90-х годов:
Скилы взяты из FIFA97 и FIFA98.
A.Nesta (Lazio 97)
J.Stam (PSV 97)
E.Davids (Ajax 97)
W.Bogarde (Ajax 97)
D.Beckham (MU 97)
N.Butt (MU 97)
E.Gudjohnsen (PSV 97)
O.Bierhoff (Udinese 97)
O.Solskjaer (MU 98)
T.Flo (Chelsea 98)
M.Owen (Liverpool 98)
G.Raul (Real Madrid 98)
E.Crespo (Argentina 98)
D.Trezeguet (Monaco 98)
G.Buffon (Parma 98)
N.Anelka (Arsenal 98)
T.Henry (Monaco 98)
P.Di Сanio (Sheffield W 98)
C.Babayaro (Chelsea 98)
J.Chilavert (Paraguay 98)
Y.Nikiforov (Russia 98)
A.Tikhonov (Russia 98)
O.Tetradze (Russia 98)
A.Mostovoi (Celta 98)
L.Figo (Portugal 98)
P.Nedved (Lazio 98)
M.Viduka (Australia 98)
F.Barthez (Monaco 98)
TAMarcosTranslations:
--- Цитата: Sharpnull от 09 Сентябрь 2023, 18:45:37 ---Для графики используется сжатие RefPack, которое использует EA, только они понаделали разных вариантов, ещё нужно найти правильную программу. Например, графика для флага Малайзии при выборе лиги в роме с позиции 12CB68: байты 30 FB, где FB - магический байт всегда, а в байте 30 хранится формат сжатия, вместо него в этой игре может быть 10/11, 46/47, 30/31/32/33/34/35, 7A/7B, 72/73, всего 5 алгоритмов, код распаковки с 0xADD60. Есть хак FIFA Soccer 2020 на основе Hack of FIFA Soccer 95 (https://www.romhacking.net/hacks/5285/, Россия есть), возможно там такое же сжатие, не знаю как они сжимали, можно хранить без сжатия, если хватит места до 4МиБ. Замена только имён - так себе затея.
--- Конец цитаты ---
Hi all,
I was the author of the romhack FIFA Soccer 2020.
Yes, all FIFA Soccer games for SMD had the same compression algorithm, Refback compression by Frank Barchard.
Nonetheless as far as I was concerned, I couldn't edit the menu background or the trophies. Those sprites I couldn't find in the ROM and I guessed that were compressed in any way, shape or form. It happens the same for FIFA 96, trophies, map/flags sprites, background, etc are compressed too.
When I was editing FIFA Soccer 96, (I never released anything) since my hack was intended to modify some errors in Spanish La Liga players name because there are plenty of professional football names that players don't use. For instance, FIFA 96 use the first name or the second surname when the player was known for his nickname or his first surname. And also I pretended with success to include Spanish Segunda División and Spanish third tier (four groups for the third tier).
There was something missing when you guys analised the players hex information which couldn't make any sense.
According to my notes on my excel is the following (see picture).
If the first half part of the byte is 1 or 2: Player level = Novice (Between 50 and 74)
If the first half part of the byte is 3 or 4: Player level = Professional (Between 77 and 86)
If the first half part of the byte is 5 or 6: Player level = Super Star (Above 89)
StrikeDJU:
Hola, Amigo!
Does player level affect the difficulty of gameplay?
For editing players at the FIFA96 exists editor.
Look that please. This will make your work less hard.
TAMarcosTranslations:
--- Цитата: StrikeDJU от 07 Январь 2025, 18:17:56 ---Hola, Amigo!
Does player level affect the difficulty of gameplay?
For editing players at the FIFA96 exists editor.
Look that please. This will make your work less hard.
--- Конец цитаты ---
Hello Strike!
You russian guys are doing an awesome job on reverse engineering some of my favourite games.
I didn't know a FIFA 96 editor existed until sign up here in this very forum.
Regarding the level, I think it must have an effect on the difficulty of the game, specially on goalkeepers.
If you want, I can share my knowledge on romhacking FIFA Soccer 95 which is easier than FIFA 96, FIFA 97 and FIFA 98.
Is there anybody here that can create a tool with the information I will provide?
StrikeDJU:
TAMarcosTranslations,
of course, share your knowledge.
Аny knowledge will be useful for successfull making FIFA95,96,97,98 ROM-hacks.
And more question:
I'm looked in the romhack FIFA Soccer 2020 gameplay different another them original game. You are edited gameplay process? How did you make that?
Навигация
Перейти к полной версии