Разработка и ромхакинг > Ромхакинг
[SMD] Неполноценный хак FIFA 96
TAMarcosTranslations:
Not really.
I needed extra space in the ROM so I invaded reserved space for the RAM (0x200000).
That bugs the gameplay and affects internal memory too. For having 4 slots to save the game, this error limits it to just 1 slot. That's why game became slow and clean tackles don't work properly.
StrikeDJU:
Are you made generation results for matches cpu vs cpu?
TAMarcosTranslations:
--- Цитата: StrikeDJU от 07 Январь 2025, 21:02:36 ---Are you made generation results for matches cpu vs cpu?
--- Конец цитаты ---
Nope since FIFA 95 didn't have that screen. In FIFA 96 I hacked just players name and skills, teams names and skills and championships and nothing else.
StrikeDJU:
TAMarcosTranslations,
do you have editing tools for FIFA95-ROM?
Share that please.
TAMarcosTranslations:
--- Цитата: StrikeDJU от 08 Январь 2025, 15:41:57 ---TAMarcosTranslations,
do you have editing tools for FIFA95-ROM?
Share that please.
--- Конец цитаты ---
I have opened a new thread as "[SMD] Неполноценный хак FIFA 95" where I show how to edit teams and players.
There will be more explanations.
I edited everything from the hex, so creating a tool for this game will be cool. It's something that I asked in my first post here.
By the way, there is no problem if you guys answer and write in russian.
All the best,
TAMarcosTranslations:
Working with the compressed sprites of FIFA 96.
See picture attached
StrikeDJU:
Well done! Amazing work! Congratulate for you! How i can change sprite malaysian league?
StrikeDJU:
Очень редкий случай: футболисты получают травмы. Единственная травма за весь чемпионат. Как работает алгоритм получения травм, получения желтых и красных карточек? Никто случайно не в курсе?
Беларус учит русский:
С этой игры остались сохранки? Если повторить травму с неё, то можно было бы изучить.
StrikeDJU:
К сожалению, сохранений не осталось, хотя технически это было возможно.
Я использую эмулятор gens. В нём есть возможность сохранения запущенной игры в фомат .gs0
Rexi:
--- Цитата: Je$TeR от 09 Сентябрь 2023, 11:34:12 ---Уверен, многие, кто играл в фифа, хотели это сделать, но сделал я.
FIFA Soccer 96 с российскими командами
--- Конец цитаты ---
Ну я так делал ещё в далеком уже 2013, правда делал я его добавлением своей лиги из 16 команд, а команды подбирал по "силам" с разных чемпионатов (Голландии, Шотландии, Швеции, Малайзии, США, и Бразилии) Но, мне не понравилось то что в 96-м на симуляции компом команды КРАЙНЕ инертны и практически 8 из 10 матчей это скучные нули. Потому я решил переметнуться в FIFA 2000 (он же 97). Там повеселее играется, и матчи бывают хорошо забивными. Но всё равно попробовал твой хак, оцениваю старания, т.к. это не просто, это много времени, переписать ФИО игроков. Молодец!
Добавлено позже:
--- Цитата: Vurzum от 10 Февраль 2024, 17:56:47 ---Помню, нашел возможность регулировки кол-ва клубов в Лиге, а также в Турнире - кол-во сыгранных туров.
--- Конец цитаты ---
Ну и как эту возможность реализовать? Как сделать нужное колличесво команд в лиге например 12 или 5?
Добавлено позже:
--- Цитата: StrikeDJU от 09 Декабрь 2024, 19:41:15 ---В FIFA97 клубы, пришедшие из вторых дивизионов по умолчанию вообще не были проработаны, пришлось это поправить
--- Конец цитаты ---
а подробнее можно?
Добавлено позже:
--- Цитата: 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.
--- Конец цитаты ---
Хорошо бы такой сделать для FIFA 97
Добавлено 3 июня 2025 года:
Да я знаю что тема для 96-й, но все же. Всем привет!
Ну чито други, любители геймеры ретро фифы, вот и я окунулся в мир РОМ хакинга, благодаря наметкам товарищам с форума (за что огроменное спасибо) мне удалось поработать с 97-й фифой, ибо я больше конечно её играю чем 96-й о чём уже выше писал в некоторых темах. И нашел составы лиг (хотя это уже и не секрет, судя по 96й) и вот делюсь ниже в пишу где искать лиги и вообще как и что. Погнали!
прежде всего команды и номера всех лиг:
для FIFA 97 (она же 2000)
команды в лигах и команды всего
блок от 00151950
блок до 00151B40
номера
00-Америка
01-Бразилия
02-Англия
03-Франция
04-Германия
05-Италия
06-Малайзия
07-Нидерланды
08-Шотландия
09-Испания
0A-Швеция
далее дут сборные в 97й их больше чем в 96-й
0B 06 Алжир
0B 08 Аргентина
0B 0F Австралия
0B 10 Австрия
0B 18 Бельгия
0B 1C Боливия
0B 22 Бразилия
0B 24 Болгария
0B 26 Камерун
0B 27 Канада
0B 2E Чили
0B 2F Китай
0B 30 Колумбия
0B 34 Коста Рика
0B 38 Хорватия
0B 3A Чехия
0B 3D Дания
0B 43 Египет
0B 44 Англия
0B 4E Финляндия
0B 53 Франция
0B 57 Германия
0B 58 Гана
0B 5A Греция
0B 67 Гонг Конг
0B 68 Венгрия
0B 69 Исландия
0B 6C Израиль
0B 6D Италия
0B 6E Кот д`ивуар
0B 6F Япония
0B 7C Литва
0B 80 Луксембург
0B 84 Малайзия
0B 8A Мексика
0B 90 Морокко
0B 97 Нидерланды
0B 9A Новая Зеландия
0B 9D Нигерия
0B 9F Северная Ирландия
0B A0 Норвегия
0B AE Перу
0B B2 Польша
0B B3 Португалия
0B BD Ирландия
0B C0 Румыния
0B C1 Россия
0B CA Саудовская Аравия
0B CC Шотландия
0B D1 Сингапур
0B D2 Словения
0B D3 Южная Африка
0B D4 Южная Корея
0B D6 Испания
0B DD Швеция
0B DE Швейцария
0B E5 Тринидад и Тобаго
0B E6 Тунис
0B E7 Турция
0B E8 США
0B EB Украина
0B ED Уругвай
0B F4 Уэльс
0B F9 Замбия
Ну и таким образом можно из любой лиги сформировать абсолютно любую с нужным количеством команд. Что на мой взгляд очень круто. Году в 2010 когда я только начал изучать хакинг, о таком даже не мечтал, но хотелось.
Вт к примеру я сформировал отборочную группу (типа) из 5 команд. Видео выложу позднее. но я не умею "рисовать графу" и т.к. это всё на лиге Малайцев, я просто убрал Малайские команды "за скобки" добавив им названия с "0C", кстати можно так любые клубы переписать под сборные, ибо редактор игроков тоже теперь возможен благодаря подсказкам. Однако я не смог понять как искать составы, команд. И в отличие от 96-й игроки всех команд уже либо только с лигой, либо ещё и в сборных. А в 96-м если не ошибаюсь игроки сборных были прописаны отдельно (но могу ошибаться). Удобно конечно сделали редактор для 96-го, такой бы для 97... :wow:
Я не смог найти как поменять цвет таблички лиг. Название то найти просто а вот с палитрой.... не знаю где копать, кто знает поделитесь. И да, данная версия 97-й была взята с форума, тут очень удобно уже прописано, что при одинаковых цветах футболок гости играют в гостевой. А то получалось в дефолте что и Германия и Англия играю в белом отличие было только в трусах. В общем потраченным часам для ФИФы остался доволен. Ещё раз благодарю всех участников форума, помогли так или иначе. Не забрасывайте тему.
ну и картинка отборочной группы 1 (A)
p.s. мне конечно ещё не понятно, почему не отображаются забитые и пропущенные мячи??? Этот вопрос меня прямо таки "Ел" и не давал покоя ещё в то время когда играл на Сеге. И как в формате конструктора плей-офф сделать так чтобы при двух играх дома и на выезде учитывались голы на выезде, а финал был только в одном матче. Это конечно остается открытым вопросом!
Rexi:
--- Цитата: Razuka от 04 Январь 2024, 18:59:18 ---Это позволило "перетаскивать" игроков и команды как угодно
--- Конец цитаты ---
А можно поподробнее? Где в каком блоке эта информация. А именно как игроков можно перетаскивать из одного клуба в другой, (не трансфером) ну и отсюда вопрос как в сборных поменять игроков. Например меня не устраивает что в сборной Нидерландов нет таких игроков как Р. де Бур, и Б.Зенден. Это же возможно как я понял - менять (прописывать) игроков в сборных из уже имеющихся в игре, чтобы их не "лепить" из существующих посредством переименования и редактирования скилов.
StrikeDJU:
В FIFA 97 по ходу матча можно сделать три замены, а в FIFA 96 только две. В FIFA97 футболист может устать, перестать бегать и начать ходить пешком по полю. В FIFA96 футболисты не устают. Может кто-то в курсе, как отрегулировать количество замен и усталость игроков?
Добавлено позже:
--- Цитата: Vurzum от 10 Февраль 2024, 17:56:47 ---Ух, какая ностальгия!
Фифа 96 - самая что ни есть основа. Благодаря заморочкам разрабов с турнирками, что бы все было "как по настоящему, по взрослому", атмосфера игры поражала каждого пацана, хоть немного набивавшего мяч по сетке у дома. И для меня игра стала культовой. Я, как и многие, начинал с купленого багованого "фифа99", в котором лига давала error, после сыгранного матча. В лигу можно было играть лишь авторезультатами. и лишь позже мне попался оригинальный 96, да не просто картридж, а с батареечной возможностью. Когда я хвастался, что могу сохранять игру, со всеми лигами, которые к тому же не вылетали, мне никто не верил из ребят. Конечно, уже тогда очень не хватало актуальных составов, а названия некоторых клубов были прописаны не привычно, и постоянно "муляли глаз".
Также не хватало захватывающего экшена комп vs комп, создающего ощущение "игры в менегера". Все это, в купе с желанием создать "Лигу собственного двора", на многие последующие годы "теребило" мою душу. В году эдак 2007 я приобрел смартфон НокиаN80 и стал лазить по интернетам, обнаружил форум ЭмуЛэнда, и узнал, что мечты сбываются. Однако, знакомство с форумом принесло и недоумевание:
Я всегда считал, что топ-5 культовых игруль на Сежке, это - МКУ, РокнРол, Дюна, Блейдс оф Венженс и Фифа. И если темы по первым трем играм - тут не просыхали, то ВНЕЗАПНО по Фифе и Блейдсу - вообще полнейший игнор. Поэтому пришлось пытаться делать все самому. Я всегда был далек от "прогерства", у меня даже банально - компа не было, но некоторые тутешние ребята подсказали как убрать проверку на чек сумму. Я скачал на Нокию Хекс-релактор и погрузился в скролинг Фифы и Блейдса. Конкретно, что я смог сделать: актуализировать (на момент 2009-2010 года) клубы лиг, скилы, форму. Вместо малайзийского, бразильского и нидерладского чемпов - создал чемпы Украины, РФ и Португалии. Вместо США - сокровенную Лигу Своего Двора. Устроить дворовым друзякам ламповый сюрприз мне тогда удалось! Помню, нашел возможность регулировки кол-ва клубов в Лиге, а также в Турнире - кол-во сыгранных туров. В группе на 4 клуба можно сыграть кажись до 24 туров, то есть, 4 круга, и мы в это дело изрядно рубились))
Общем, мне тогда удалось в большей степени реализовать свои детские мечты.
Не удалось лишь разнообразить автосчета поединков, ну и подкрутить АИ игроков для зрелищности. Еще, никогда не нравилась мне статичность сетки ворот..
Черт возьми, со времен моего копырсания в роме уже прошло времени больше, чем от игры на приставке - до копырсания. Летит времечко. Не был уверен, что кто то возьмется за игру с энтузиазмом)
--- Конец цитаты ---
Vurzum, опиши пожалуйста подробнее как регулируется кол-во сыгранных туров в турнирах?
Rexi:
--- Цитата: StrikeDJU от 29 Август 2025, 01:21:07 ---количество замен и усталость игроков?
--- Конец цитаты ---
количество замен если ставишь в опциях настройку action, то замен сколько угодно, если simulation то 2, как менять и где? Не знаю, я не настолько опытный программер, точнее я не программер, могу только копать там где уже знаю.
для 97 FIFA
Что по усталости, тут все зависит от режима игры action/simulation, только в случае "сима" игроки устают, ошибаются в точности передач, и команда проседает. На режиме "экшн" это не заметить но усталось это вроде как agility в свойствах игрока её можно через хак настроить от показателя в блоке игрока 95 до 50/ Конкретнее это 1е значение 17го байта игрока, всего 22 байта на игрока
вот порядок байтов и значений по расположению (по порядку)
от 16 до 21 байта
16й байт 1е значение - skill
16й 2е - speed
17й 1е - shootass
17й 2е - passing
18й 2е - ballctr
18й 1е - aggress
19й 1е - agility
19й 2е - reaction
20й 1е - fitness
22й всегда 00
остальные значения игрока: awarenes accel bicycles headers shot pwr
формируются по первым 5, ими можно "поиграть"
далее инфа уже была на форуме.... ез=щё раз повтор
для 97 FIFA
15й байт: 1я половина - позиция игрока, вторая - номер (A-10. B-11 и т.д.)
Соответственно все возможные позиции с номерами:
00-1F - Goalkeeper
20-3F - Defender
40-5F - Midfield
60-7F - Forward
Но если прописать 80-9F, то у игрока будет позиция X - я не думаю, что это баг, скорее всего разрабы хотели добавить позицию вне амплуа. В игре она нигде не встречается и я не тестировал это.
16 байт, на первый взгляд тоже не отвечает ни за что, но как оказалось, он зачем-то дублирует номер игрока. Более того, у игроков американской лиги номера читаются с 16 байта, а не с 15. Я не знаю с чем это связано.
Все остальные байты, кроме последнего - скиллы игроков, занимающие половину байта каждый, вот они:
Skill | Speed
Agility | Reaction
Shot Acc | Passing
Aggress | Ball Ctl
Fitness | ??? - последнее значение всегда 0
Соответственно величиной от 0 до F каждый:
F - 95
E - 92
D - 89
C - 86
B - 83
A - 80
9 - 77
8 - 74
7 - 71
6 - 68
5 - 65
4 - 62
3 - 59
2 - 56
1 - 53
0 - 50
Однако, в игре можно увидеть, что помимо вышеприведённых 9 скиллов есть еще 5, но они являются производными от первых 9, и чтобы их не пришлось кому-то узнавать методом тыка, я их, пожалуй, тоже распишу:
Awareness = Passing + Ball Ctl
Accel = Speed + Reaction
Bicycles = Agility + Fitness
Headers = Aggress + Agility
Shot Pwr = Speed + Ball Ctl
Для примера, (Passing 95 + Ball Ctl 50) / 2 = Awareness 71 т.к. (F + 0) / 2 = 7
Последний байт всегда пустой - видимо тоже для корректного чтения, но здесь 2 нуля а не один, как у команд, а с предпоследним байтом даже 3.
StrikeDJU:
Rexi, спасибо! По режимам Action/Simulaton и со скилами футболистов всё понятно.
Но проблема с усталостью игроков здесь всё-таки остаётся. Для режима Simulation: В FIFA96 как скилы не докручивай, на усталость это никак не влияет. А вот в FIFA97 по умолчанию в дефолтной версии футболист с мячом может бежать и вдруг остановиться и пойти пешком, т.к. у него закончился ресурс выносливости. Всё! Больше он не побежит до конца матча, его надо менять.
По количеству замен: Вот если бы сравнить код FIFA96 и FIFA97, то можно было бы понять, как работает ограничение на замены в режиме Simulation. Хотя бы приблизительно понять, где искать?
И ещё, как отрегулировать количество туров в чемпионатах? Например в чемпионате шотландии 10 команд, всего получается 2 круга по 9 туров. А по факту чемпионат шотландии должен играться в 4 круга. Любителям британского футбола такие тонкости важны.
Rexi:
по количеству туров не подскажу, тут наверное присутствует какой-нибудь алгоритм общий, потому как все лиги играются в два круга. вроде того как идет подсчет очков, если делать турнир или лигу пользовательскую, то можно выбрать систему 2/1/0, по дефолту набор очков 3/1/0. Ну и так же с "правилом золотого гола" Уже не актуально. Но я не знаю, как это менять. А в остальном то что на форуме подсказали, тем и пользуюсь, начал было разбираться с составами команд, но для меня это оказалось сложной задачей. Не смог. Пока что. Что касается кубковых игр, то также в режиме конструктора система две игры делается странно и определение команды победителя при наборе одинакового количества очков не понятна. Т.е. если победа дома 2-0 и поражение в гостях 1-3, то проходит вторая команда, больше забившая в игре, т.е. исчезает правили выездного гола.
StrikeDJU:
Попробуй воспользоваться HEX-конвертером для вычисления ID футболистов.
https://www.rapidtables.com/convert/number/hex-to-decimal.html
Реально облегчает жизнь, чтобы в ручную не считать.
ID футболистов бери из FIFA96Editor.index
В посте #197 этой темы есть скриншот и сам Editor.
P/S - Может кто-то в курсе, как заставить FIFA95/96/97 - отображаться в широкоформатном виде?
Добавлено позже:
Если сравнить две игры, то FIFA 97 имеет преимущество над предшественницей 1996 года. Но вот модели футболистов в FIFA 97 сделаны отвратительно. Посмотрите на скриншоты. Есть ли у кого-то идеи как модели футболистов перенести из FIFA 96 в FIFA 97? Тогда это будет идеальный футбол для SMD.
Беларус учит русский:
Я, как обычно, предложу свой Переставлятель :)
Игры почти не отличаются по виду, так что может быть и внутри тоже. Можно попытаться найти Переставлятелем графику с футболистами и просто перенести их через хекс-редактор. Даже если не получится, проверить это не займёт много времени.
Razuka:
--- Цитата: perfect_genius от 10 Сентябрь 2025, 01:57:29 ---Я, как обычно, предложу свой Переставлятель
--- Конец цитаты ---
Ну, а мы, как обычно, не откажемся его потестировать :)
Приветствую, тебя, perfect_genius!
Рад, что твоя программа продолжает развитие и совершенствуется.
Обязательно попробую её новую версию в ближайшее время :thumbup:
Беларус учит русский:
Ого, какие люди. Где пропадал полтора года?
Переставлятель не развивается, лишь поправлен неприятный баг интэрфэйса.
А что там с тем багом выпинывания мяча, который удалось исправить Инвертером?
Не выявились баги из-за этого изменения?
Будем исправлять и для верхней части поля?
Навигация
Перейти к полной версии