Автор Тема: [NES] T-Rex Runner — порт динозаврика из Chrome  (Прочитано 349 раз)

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

Оффлайн Денди разработчик

  • Пользователь
  • Сообщений: 10
    • Просмотр профиля
Я сделал еще одну игру а точнее порт знаменитой игры с динозавриком из Google Chrome для Dendy, Famicom и NES. Проект написан с нуля на ассемблере 6502 и собирается в обычный ROM-файл формата .nes.



Я постарался сохранить оригинальную механику игры:

  • физику прыжка и управление его высотой;
  • постепенное увеличение скорости;
  • кактусы разных размеров и их комбинации;
  • птеродактилей на разных высотах;
  • подсчёт очков и сохранение рекорда;
  • смену дня и ночи;
  • паузу, экран Game Over и перезапуск;
  • музыку и звуковые эффекты через четыре звуковых канала NES.

Как это сделано

Внутри игровая логика работает в координатах оригинальной браузерной версии. Дробные значения, скорость и физика реализованы через fixed-point арифметику 8.8, поскольку у процессора 6502 нет чисел с плавающей точкой.

Кактусы выводятся не спрайтами, а тайлами фона и постепенно записываются в nametable во время прокрутки. Это помогает экономить спрайты и избегать мерцания.

Для независимой прокрутки игрового поля и неподвижной строки очков используется sprite-zero hit.

ROM имеет простой формат NROM-256, mapper 0:

  • 32 КБ PRG-ROM;
  • 8 КБ CHR-ROM;
  • вертикальный mirroring.

Он подходит для эмуляторов и флеш-карт для NES, Famicom и Dendy. Игра рассчитана прежде всего на NTSC 60 Гц. На 50-герцовых клонах Dendy игровой процесс и темп музыки могут быть немного медленнее.

Сборка

Для сборки нужны только make и пакет cc65, в который входят ассемблер ca65 и линкер ld65.

git clone https://github.com/atonamy/nes-t-rex-game.git
cd nes-t-rex-game
make

Графика build/trex.chr уже включена в репозиторий, поэтому дополнительные инструменты для её генерации не нужны.

Лицензия

Проект бесплатный и с открытым исходным кодом. Код NES-порта распространяется по лицензии MIT. Элементы, основанные на Chromium, сохраняют условия BSD-лицензии.

Ссылки

Готовый ROM и последняя версия:
Скачать T-Rex Runner для NES

Исходный код и инструкция по сборке:
GitHub — atonamy/nes-t-rex-game

Для разработки и отладки использовался Mesen и инструмент:
atonamy/mesen-agent

Буду рад отзывам, результатам запуска на реальном железе и сообщениям о найденных ошибках.

Оффлайн vitsum

  • Пользователь
  • Сообщений: 56
    • Просмотр профиля
[NES] T-Rex Runner — порт динозаврика из Chrome
« Ответ #1 : 30 Июля 2026, 08:56:57 »
Денди разработчик, Прикольно, но исходный код никому не интересен если у каждого есть клод)

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

  • Пользователь
  • Сообщений: 1934
  • "А ты...знаешь что такое Red Sky Project!?"
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[NES] T-Rex Runner — порт динозаврика из Chrome
« Ответ #2 : 30 Июля 2026, 09:47:23 »
Уу. Интересно. Будет во что побегать в дороге и во время блэкаутов  :lol:
А проект завершен? Если нет - хотелось бы видеть доработки в виде бонусов а-ля двойной прыжок (для прыжков через страуса как в Короле Льве) или плевки огненным шаром для пробивания стенки/врага.
p.s. Плюс одна игра в "нубофон".

Оффлайн Werton

  • Пользователь
  • Сообщений: 1078
  • Пол: Мужской
    • Youtube
    • Просмотр профиля
[NES] T-Rex Runner — порт динозаврика из Chrome
« Ответ #3 : 30 Июля 2026, 13:06:26 »
Я Claude code сделал еще одну игру а точнее порт знаменитой игры с динозавриком из Google Chrome для Dendy, Famicom и NES
Исправил, не благодари :lol:

Проект написан с нуля на ассемблере 6502 и собирается в обычный ROM-файл формата .nes.
С нуля, это когда с нуля, а не конвертацией из готовых открытых исходников через нейронку.

Я постарался сохранить оригинальную механику игры:

физику прыжка и управление его высотой;
постепенное увеличение скорости;
кактусы разных размеров и их комбинации;
птеродактилей на разных высотах;
подсчёт очков и сохранение рекорда;
смену дня и ночи;
паузу, экран Game Over и перезапуск;
музыку и звуковые эффекты через четыре звуковых канала NES.
Блин как же нейронка наваливает, аж рука сама тянется к кошельку :biggrin:

Ну а вообще, я считаю автор изменяет себе и явно упускает возможность, стоило заменить динозавра на слона и продавать по 2 бакса, как ту самую игру про Дэнди, все таки 40 кB это вам не это :biggrin:

Оффлайн Agent Smith

  • Пользователь
  • Сообщений: 95
    • Просмотр профиля
[NES] T-Rex Runner — порт динозаврика из Chrome
« Ответ #4 : 30 Июля 2026, 15:06:31 »
порт знаменитой игры с динозавриком из Google Chrome для Dendy
Денди разработчик, вещь! Всегда удивлялся, почему такого до сих пор не выпустили.
музыку и звуковые эффекты через четыре звуковых канала NES
Так там же пять каналов?

Оффлайн Денди разработчик

  • Пользователь
  • Сообщений: 10
    • Просмотр профиля
[NES] T-Rex Runner — порт динозаврика из Chrome
« Ответ #5 : 30 Июля 2026, 15:18:26 »
нубофон
А проект завершен? Если нет - хотелось бы видеть доработки в виде бонусов а-ля двойной прыжок (для прыжков через страуса как в Короле Льве) или плевки огненным шаром для пробивания стенки/врага.

Пока у меня нет планов по дальнейшему развитию проекта, но пул-реквесты приветствуются. Исходный код открыт: ты можешь реализовать новую фичу в игре или исправить ошибку и отправить изменения на ревью. Если всё работает корректно и код не создаёт новых проблем, я объединю его с основной веткой и включу в следующий релиз.

Добавлено позже:
Так там же пять каналов?
Пятый канал отличается от остальных: DMC предназначен для воспроизведения цифровых сэмплов из памяти, а не обычных нот. В этой игре все звуки и музыка синтезируются четырьмя основными каналами, поэтому DMC пока не используется.
« Последнее редактирование: 30 Июля 2026, 15:35:14 от Денди разработчик »

Оффлайн vitsum

  • Пользователь
  • Сообщений: 56
    • Просмотр профиля
[NES] T-Rex Runner — порт динозаврика из Chrome
« Ответ #6 : 30 Июля 2026, 18:46:25 »
Денди разработчик,

такое уже делали, и наверное не раз:

https://theberg.itch.io/

https://youtu.be/KKACaHw3DSY?is=BlGcAKdu2Uzea4ar

Оффлайн Smoke_John

  • Пользователь
  • Сообщений: 1046
    • Просмотр профиля
[NES] T-Rex Runner — порт динозаврика из Chrome
« Ответ #7 : 31 Июля 2026, 23:36:48 »
С такой (двухцветной) графикой можно для спектрума собрать, без потерь получится.
.