Автор Тема: [NES] Contra Force - повышенная частота кадров на MMC3  (Прочитано 1468 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля


Короче скормил нейронке исходники игры с задачей выйти на 50+ фпс, удалось не везде, но играется в разы лучше чем оригинал. Проверилось на фсеуксе, нестопии, месене - работает, на пунес виснет после выбор персонажа, разбирать почему - лень. У кого есть возможность, потестируйте пожалуйста на флешкарике и реальной консоли и напишите результат.
--
v09 - рекомендованная версия, но если прямо не запускается или вас очень сильно парит еę размер то см. ниже
v10 - размер с 640кб до 384кб уменьшен, но может быть небольшой откат в фпс 1-2 и какие-то баги (тесты особо не проводились). Оставляю оба рома на выбор.
v17 - перевод на новый маппер VRC6 ещё выше средний фпс, финальная, дальше заниматься уже не хочется. Только если багофиксы.

Ниже более подробное описание составленное нейронкой.
« Последнее редактирование: Вчера в 18:42:43 от vova791 »

Оффлайн Segaman

  • Пользователь
  • Сообщений: 3203
  • Пол: Мужской
  • Blast Processing!
    • Youtube
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #1 : 01 Октября 2026, 13:07:17 »
размер рома жесть.
играется бодро.
на самолете подлагивает.
на последнем уровне безбожно лагает.
размер рома ёмаё, а под что столько?

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #2 : 01 Октября 2026, 13:16:41 »
Segaman, кеш, кеш и ещё раз кеш. (но есть 128кб пустых). Я не очень с размером пока заморачивался раз работает.
Да, самый идеал 1й получился, второй так сяк, потом оставшиеся уже 40-45+. Но когда я запустил оригинал то был в шоке насколько он тормозной, так что сойдёт. Я разные оптимизации с нейронкой перебирал, везде выигрыш по итогу уже в 1 средний фпс долбился.
Так что думаю если сохранять конечный вывод с такой же физикой и прочим - это почти предел. Нужно более радикально игру переписывать для стабильного 60фпс результата.

--

обновил ром с меньшим размером, попробуй
« Последнее редактирование: 01 Октября 2026, 14:44:52 от vova791 »

Оффлайн safronoff

  • Пользователь
  • Сообщений: 393
  • Пол: Мужской
  • Временно недоступен
    • Twitter
    • Youtube
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #3 : 01 Октября 2026, 22:32:03 »
Евгений Кузнецов aka EvgenyKz также делал свой проект по оптимизации Contra Force.
Но у него дизасм не ии анализировал, а он сам.
Не знаю, насколько ии сделал всё адекватно, но Евгений мне говорил, что в игре даже анимации объектов сделаны через одно место, т.е. в оптимизации нуждается даже это, и в целом код игры как будто студентами дописывался.
У него, кстати, ром весит 384 кб, и используется WRAM 128 кб.
Ром пока нуждается в доработке.

Оффлайн MaxWooD

  • Пользователь
  • Сообщений: 1168
  • Пол: Мужской
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #4 : 02 Октября 2026, 07:52:44 »
vova791, ЭТО КРУТО  :thumbup:
За счёт чего можно ещё снизить тормоза и повысить FPS?
Сейчас Rumata придет, за халтуру по шапке надает!

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #5 : 02 Октября 2026, 08:59:07 »
MaxWooD, новый маппер (я решил оставаться в пределах ммс3 и реального железа). И полная переписка движка, его основ логики, но тогда выходной вариант не будет 1 в 1 как в оригинале (к чему я тоже стремился).

Остальные варианты что были перебраны уже сводились к 0,5-1 среднего выигрыша фпс, если такого 10 найти то может в итоге плюс, но не факт и новые ошибки вводит такое.

Оффлайн Arrogant

  • Пользователь
  • Сообщений: 60
  • Пол: Мужской
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #6 : 02 Октября 2026, 13:03:31 »
Попробовал на флеш картридже и на портативке уменьшенный по размеру ром. По сравнению с оригиналом - небо и земля. Да, есть, как выше писали, тормоза на самолёте и в последнем уровне, но играется намного лучше. Спасибо за проделанную работу  :thumbup:

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
Re: [NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #7 : 02 Октября 2026, 13:16:52 »
Arrogant, о классно, что на реальном железе работает хорошо.
На денди кстати возможно меньше тормозов будет.  :lol:

Оффлайн MaxWooD

  • Пользователь
  • Сообщений: 1168
  • Пол: Мужской
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #8 : 02 Октября 2026, 13:51:42 »
новый маппер (я решил оставаться в пределах ммс3 и реального железа)
А почему не использовали VRC6?
Сейчас Rumata придет, за халтуру по шапке надает!

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #9 : 02 Октября 2026, 14:49:56 »
MaxWooD, для меня когда игра на новом маппере уже не то, будто какой-то чит. думаю на ммс5 она бы летала везде.

Оффлайн safronoff

  • Пользователь
  • Сообщений: 393
  • Пол: Мужской
  • Временно недоступен
    • Twitter
    • Youtube
    • Просмотр профиля
Re: [NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #10 : 02 Октября 2026, 19:52:01 »
vova791, это всё, конечно, хорошо, но почему-то очень мало пишут про баги.
Например, при ходьбе влево с зажатой диагональю вверх, ни у одного из персонажей не срабатывает кнопка прыжка, а срабатывает только при зажатом турбопрыжке. Также если без диагонали бежать влево, прыжок может не всегда сработать.
Также хотелось бы, чтобы в игре были доработаны следующие вещи:
1) внедрить неиспользованные анимации Бёрнса и некоторых простых врагов: https://tcrf.net/Contra_Force
2) исправить физику последнего конвейера на 1 уровне (если на нём лечь, персонажа не сносит назад, хотя ящики при этом съезжают влево)
3) решить что-то с возможностью нажатия паузы на экранах с боссом (она то срабатывает, то нет, в зависимости от уровня). Я предлагаю либо вообще отключить паузу на боссах, либо (что куда лучше) сделать недоступным именно вызов временных помощников, чтоб выдавало что-то в духе "choose another player". Раз уж стали оптимизировать игру, то не будет лишним её ещё и доработать.

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #11 : 02 Октября 2026, 19:58:36 »
Например, при ходьбе влево с зажатой диагональю вверх, ни у одного из персонажей не срабатывает кнопка прыжка, а срабатывает только при зажатом турбопрыжке.
так работает, только что проверил. Можете снять мувик в эмуляторе и сказать какой ром чтобы посмотреть что там происходит?

остальное мне не интересно, была задача именно в оптимизации.
« Последнее редактирование: 02 Октября 2026, 20:08:40 от vova791 »

Оффлайн MaxWooD

  • Пользователь
  • Сообщений: 1168
  • Пол: Мужской
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #12 : 02 Октября 2026, 21:57:39 »
Кстати, что касается улучшений, может быть получится прикрутить более продвинутый ИИ для помощников?
Идея у разрабов была очень крутая, но реализовать до нормального уровня так и не получилось...
И время на помощников я бы все-таки увеличил.
Сейчас Rumata придет, за халтуру по шапке надает!

Онлайн Agent Smith

  • Пользователь
  • Сообщений: 193
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #13 : 02 Октября 2026, 22:24:55 »
Раньше играли и всех устраивало. Никто не обращал внимания на проседание скорости.
Но я понял так: старые тормоза убрали, новые добавили?
WinXP, 1600 Mhz AMD Sempron2600+

Оффлайн safronoff

  • Пользователь
  • Сообщений: 393
  • Пол: Мужской
  • Временно недоступен
    • Twitter
    • Youtube
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #14 : 02 Октября 2026, 22:59:50 »
Идея у разрабов была очень крутая, но реализовать до нормального уровня так и не получилось...
Оригинальный Arc Hound разрабатывала сама Конами, но релиз игры в Японии отменили, боясь того, что игра не окупится. Перерабатывала игру уже сторонняя контора, которая и наломала дров по итогу.
Цитировать
И время на помощников я бы все-таки увеличил.
В том-то и дело, что в Arc Hound ии помощники были полноценными игроками. В сети можно найти скрины этой игры, и там у помощников тоже счётчик жизней есть, отличием от реального игрока служит надпись "CPU" выше имени.
А некоторые товарищи считают хак Контры Форс из RHDN, с перехаченным титульником, "тем самым японским прототипом", хотя он на том же маппере, с теми же тормозами и тем же левел-дизайном, что в американке, лол. :lol:

Добавлено позже:
так работает, только что проверил. Можете снять мувик в эмуляторе и сказать какой ром чтобы посмотреть что там происходит?
Сделал мувик, хотя это очевидный баг, когда управление работает нормально только в правой стороне, а в левой не хочет.
Не забудьте отображение нажатых кнопок внизу включить - так виднее будет, в чём проблема.
« Последнее редактирование: 03 Октября 2026, 07:01:17 от ghostdog3 »

Оффлайн Про Игрок

  • Пользователь
  • Сообщений: 1942
  • "Кулхацкер и пограмист 6го разряда"
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #15 : 02 Октября 2026, 23:41:31 »
Взяли сломали пропуск второго уровня своим расширением буфера  :)
"Когда ты уже повзрослеешь и перестанешь делать свои игрушки?"

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #16 : 03 Октября 2026, 04:34:49 »
safronoff, на записи когда влево идёте буквально кнопка прыжка в отображении не жмётся, этого буквально в самом файле нет. У вас всё нормально? Проверяйте проблемы со своей стороны, что у вас там сломалось.
4942  .L.U...A - вот тут у вас первое нажатие А и это турбо нажатие и он его обрабатывает

Вот запись что всё отлично работает.
« Последнее редактирование: 03 Октября 2026, 05:05:11 от vova791 »

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3283
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #17 : 03 Октября 2026, 07:26:35 »
Не запускается уровень на fceux/mesen с настройками ram init random.

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #18 : 03 Октября 2026, 09:31:32 »
Ti_, о, полезный баг. При рандоме и фф там флаг готовности экрана ставился тру и игра пыталась уровень неготовый грузить, пофикшено. По этому и пунес не грузил.

Оффлайн safronoff

  • Пользователь
  • Сообщений: 393
  • Пол: Мужской
  • Временно недоступен
    • Twitter
    • Youtube
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #19 : 03 Октября 2026, 15:13:42 »
safronoff, на записи когда влево идёте буквально кнопка прыжка в отображении не жмётся, этого буквально в самом файле нет. У вас всё нормально? Проверяйте проблемы со своей стороны, что у вас там сломалось.
4942  .L.U...A - вот тут у вас первое нажатие А и это турбо нажатие и он его обрабатывает

Вот запись что всё отлично работает.
Перенастроил управление. Заработало. Видимо, дело в прерываниях. На ноуте относительно недавно начал играть.

Онлайн Agent Smith

  • Пользователь
  • Сообщений: 193
    • Просмотр профиля
[NES] Contra Force - повышенная частота кадров на MMC3
« Ответ #20 : 06 Октября 2026, 22:26:51 »
Работает, тормозов не заметил. По крайней мере на первых двух уровнях.

Но на мой взгляд, пиратская Контра больше требует оптимизации.
WinXP, 1600 Mhz AMD Sempron2600+

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
Добавлена версия на новом маппере, средний фпс стал выше, но ещё есть проблемные места (3й и 5й боссы), версия не финальная.

Оффлайн motorik47

  • Пользователь
  • Сообщений: 1
    • Просмотр профиля
Вова спасибо огромное, буду тестировать на железе

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
выложена 17 версия в которой ещё оптимизации боссов были. Идеального результата не достигнуто но вполне терпимо.
Дальше думаю уже не буду развивать, только чинить баги что найдут.

motorik47, 17 версию потестируй если можешь, будет интересно как работает.

Оффлайн Online

  • Пользователь
  • Сообщений: 118
    • Просмотр профиля
Есть ли в планах из неё сделать Super contra 6 с кодом поднятия жизней и другими героями (Rambo :biggrin:)?

Оффлайн macron

  • Пользователь
  • Сообщений: 53
    • Просмотр профиля
Добавил бесконечные жизни.

Оффлайн vova791

  • Пользователь
  • Сообщений: 28
    • Просмотр профиля
macron, после того как я любым персом на дефолте прохожу (а для тестов прошёл её кучу раз), мне кажется немного лишним такое, но спасибо  :lol:

Online, неее, пусть это останется китайским достоянием.
« Последнее редактирование: Сегодня в 06:46:07 от vova791 »