1615

Косари на Dendy1

Недавно в поисках идей для новых статей про Денди/NES я разбирал старые картриджи на антресолях и нашёл вот такой интересный экземпляр:

На этом этапе, у многих возник вопрос что такое антресоли что за бред? Не было на этой приставке игры про косарей! Ну да, не было. Теперь есть. Потому что ещё в девяностых, проходя очередной восьмибитный шедевр, я мечтал что когда-нибудь внесу и свой вклад в игростроение на этой платформе.

Тогда мои познания в программировании начинались с QBasic и заканчивались где-то там же.

Приставки менялись, изучались новые языки, уже пришёл PC, а мечта оставалась. В какой-то момент я таки занялся изучением предмета - разобрался с ассемблером процессора MOS 6502, архитектурой приставки, существующими диалектами и даже написал небольшую програмку с двигающимся спрайтом на ASM6, но дальше процесс особо не пошёл. В какой-то момент я наткнулся на серию статей https://nesdoug.com/ где описывается разработка игр для NES на языке C, с использованием библиотек от Shiru (Русский программист, создавший кучу софта для NES и не только) и собственно от Nesdoug.


И вот это уже было то, что надо, процесс пошёл и спустя несколько дней я задался вопросом, а про что же написать игру? Для прочитавших название поста интриги не будет, конечно, были выбраны Косари, поскольку тогда они были на слуху, весь стиль рисования комиксов циника напоминает восьмибитную графику, да и несколько игр уже было сделано, почему бы не добавить ещё одну.


Конечно, всё это было не быстро, сама разработка не раз забрасывалась, поскольку программист из меня средний, а уж художник или музыкант ещё хуже. Но гештальт должен быть закрыт! Плюс на один из дней вырождения друг вручил мне такой презент:

После чего я уже обязан был довести процесс хотя бы до уровня завершённого прототипа. И этот момент наступил - я достиг той точки в разработке программы, когда следует сказать "Я наконец понял, -как- надо было делать, пора всё сжечь и начать заново", но энтузиазм к этому времени уже несколько поугас.


Игра тем не менее в какой-то степени закончена - её можно запустить, поиграть, пройти до конца, посмотреть титры и даже (я надеюсь) получить удовольствие от процесса.

Вся разработка велась в NP++ с плагином NPPExec, большего в общем не требовалось. Музыка в Famitracker, графика в Nes Screen Tool, так что весь процесс выглядит вот так:

В общем, хватит истории, образ для эмулятора можно скачать здесь:

https://drive.google.com/drive/folders/1-JVBO6kfadfxEtonnZp4IlNyaWltuR5R?usp=sharing


Проверено на FCEUX, Nestopia и NesMini.


Там же есть архив с эмулятором, чтобы просто запустить start.bat и играть:

Start - Enter

A - X

B - Z

Turbo A - S

Turbo B - A


Гифка с геймплеем

Бонус в комментариях, программисты!

Cynic Mansion

1.8K поста21K подписчиков

Правила сообщества

НОВОЕ ВНИМАНИЕ! По еще более многочисленным просьбам, при добавлении поста в сообщество готовьтесь к гневу публики, если в комментариях не будет бонуса.

ВНИМАНИЕ! По многочисленным просьбам при добавлении фанарты/комикса с косарями обязательно ставьте в теги "Косари"

376
Автор поста оценил этот комментарий

Ссылка на Гитхаб с исходными кодами, если вдруг кто хочет посмотреть, как оно выглядит изнутри

https://github.com/SperlingsKauz/ks

Иллюстрация к комментарию
показать ответы
7
Автор поста оценил этот комментарий

А как прошивали на физический картридж?

раскрыть ветку (1)
21
Автор поста оценил этот комментарий

Никак ) это было одним из пунктов далеко идущих планов. Сделать физическую копию и отправить Цинику.

Запросить это планировал у Кластера - у него опыт есть и несколько видео создания картриджей для NES.

показать ответы
5
Серый
Автор поста оценил этот комментарий

Привет, увлёкся программированием под GBA, могу в качестве учебного проекта использовать твои наработки, и портировать на GBA?)

раскрыть ветку (1)
14
Автор поста оценил этот комментарий

Конечно, можно, для этого я код и выложил, берите, кто хотите =) Но не уверен, что это так просто перенести получится - код несмотря на то что не на асме, всё равно специфичен из-за архитектуры процессора, который у NES и GBA разные.

показать ответы
9
Автор поста оценил этот комментарий
Я недавно сыну купил приставку. В ней "зашиты" игры денди и сега. Так же есть слот под флешку. Интересно пойдёт?
раскрыть ветку (1)
13
Автор поста оценил этот комментарий

Если с флешки читаются стандартные iNES образы, то должно. Мне самому интересно, отпишитесь о результатах )

показать ответы
2
Автор поста оценил этот комментарий

а 4 способность это что?

раскрыть ветку (1)
12
Автор поста оценил этот комментарий

Скорость движения косаря. Можно было сделать русские подписи, но название хотел оставить на английском, а два языка делать - это реально много мороки. Вот, подписал всё:

Иллюстрация к комментарию
показать ответы
6
Автор поста оценил этот комментарий

А в чем секрет прохождения? Я дошел до 6 уровня и стал проигрывать. И что за показатели после каждого уровня? На видео что-то в птиц отлетает, у меня такого нет

раскрыть ветку (1)
12
Автор поста оценил этот комментарий

После каждого уровня список способностей для улучшения - сила косьбы, скорость, ширина. Внизу слева название и стоимость улучшения, справа количество очков, которые зарабатываются за траву и птиц (Они тоже разные по живучести и очкам за убийство).

Летает маленькая коса - первая способность, которая даётся, если улучшить пятый пункт, SPECIAL, тогда появляются дополнительные способности, справа список и как их выполнять.


Секрет в грамотном распределении очков и применении способностей =) На высоком уровне сложности ещё везение нужно.

Иллюстрация к комментарию
показать ответы
18
DELETED
Автор поста оценил этот комментарий

91 плюсик и 0 звёзд на Гитхабе. Мне так это странно, разработчики в своем большинстве задавятся звезду поставить. Я играть в эту игру не буду и мне был бы более интересен чистый ассемблер в игре для NES, но звезду поставил, потому что это круто когда человек развивается и делает подобные штуки.


Ставьте звёзды, господа. Это приятно и это мотивирует других развиваться и делать в будущем более крутые бесплатные Open Source штуки, которые в итоге повышают вашу зарплату.

раскрыть ветку (1)
12
Автор поста оценил этот комментарий

Мне изначально тоже чистый асм был интересен, поэтому попробовал nesasm, asm6, ca65, остановился на втором, потом к нему препроцессор писать пришлось... Через какое-то время посмотрел на результаты и затраченное время и понял, что не осилю, глядя на примеры кода, обвешанные логическими сдвигами и непрямой адресацией.

Изучить асм просто, а научиться правильно писать эффективный код - на такое ради одной поделки тратить время я был не готов.

показать ответы
18
Автор поста оценил этот комментарий

Видосик бы не помешал. А так прикольно

раскрыть ветку (1)
11
Автор поста оценил этот комментарий

Он есть, забыл сразу приложить. Добавил в конец поста

1
Автор поста оценил этот комментарий

Можно бригаду? Что это за косари?

раскрыть ветку (1)
9
Автор поста оценил этот комментарий

Смертельное

Это то, с чего всё началось.


Потом во многих комиксах от циника их добавляли в коментах.

Первая игра - Косари на ПК и WebGL!

Тема для часов - Ты доволен?!

В сувенирной лавке - Пара косарей в сувенирной лавке

И куча ещё постов на актуальные темы, которые отсылают к косарям. По тегам "Косари", "CeynicMansion" можно найти.

показать ответы
3
Автор поста оценил этот комментарий

Гейм овер если ты сдался и перестал косить ебаную траву?)

раскрыть ветку (1)
8
Автор поста оценил этот комментарий

Именно так =)

показать ответы
0
DELETED
Автор поста оценил этот комментарий

жму косить но трава все равно вырастает и ест меня, не понимаю(

раскрыть ветку (1)
7
Автор поста оценил этот комментарий

Первые несколько уровней не успеет, даже если ничего не делать. Дальше всё зависит от того, как правильно были распределены очки на улучшение параметров между уровнями.

Если всё равно сложно - можно в начальном меню уменьшить сложность OPTIONS -> LEVEL -> EASY.

2
Автор поста оценил этот комментарий

Так а можно запилить, чтобы прям из браузера работало?

раскрыть ветку (1)
7
Автор поста оценил этот комментарий

https://4gameground.ru/battle-city-nes/?emul4=emu2

В эмуляторе есть кнопка "Открыть ROM", можно загрузить любой образ, проверил, работает

Иллюстрация к комментарию
показать ответы
2
Автор поста оценил этот комментарий

а там чит коды можно? ПИКАБУ вводишь и чтобы грабить корованы!

раскрыть ветку (1)
6
Автор поста оценил этот комментарий

Пикабу там вводить негде, но код Конами работает =)

3
Автор поста оценил этот комментарий

А в игре бонус после прохождения есть?

Естественно, бонус должен быть лучше чем пост игра.

раскрыть ветку (1)
4
Автор поста оценил этот комментарий

Так же, как и куча других вещей, только в нереализованных планах.

Есть меню, косьба, апгрейды и титры. Ну и Konami Code ещё.

1
Автор поста оценил этот комментарий

Дождь нужен.


И второй чувак при достижении n очков.


Апгрейд косы.

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

Дождь есть, апгрейды есть. Второго чувака сделать просто, но не уверен, что в лимит спрайтов он влезет и производительность не пострадает.

4
Автор поста оценил этот комментарий

главное комментарии к коду! народ допилит и в виде образа на виртуалку выложит!

спасибо огромнеёшее за труды!

раскрыть ветку (1)
3
Автор поста оценил этот комментарий

На здоровье =) Коментариев там немного, только чтобы понять, какая функция зачем, если руки дойдут, распишу, чтобы логика была понятна.

С учётом ограничений по использованию конструкций С она там достаточно мутная.

2
Автор поста оценил этот комментарий

Спасибо! сначала надо развивать книжку, чтобы получать остальные способности, правильно? И скорость косаря развивается автоматом в зависимости от первых трех показателей? Жена увидела меня за игрой и покрутила у виска)

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

На мой взгляд да, сначала стоит развить книжку до третьего уровня, чтобы на птицах быстрее набивать очки. Там по уровням:

1. Маленькая коса с уроном 1 и скоростью 1

2. Прыжок на 3 клетки

3. Маленькая коса с уроном 2, Прыжок на 5 клеток

4. Три быстрых удара косой

5. Маленькая коса с уроном 2 и скоростью 2, Прыжок на 7 клеток, Пять быстрых ударов косой.

Если также прокачана скорость движения до 5, появляется возможность одновременно ходить и косить.

Так что да, я пытался заточить игру так чтобы без абилок не пройти, но варианты их прокачки на поздних этапах особо не проверял.


Скорость именно движения косаря - это четвёртый пункт.


Жене привет =)

Моя, наблюдая, как я это всё дело писал не один вечер, просто спросила:

- Чего делаешь?

- Пишу игру на Денди про косарей.

- Зачем?

- Хочу.

- А, ну ок.


Правда, мы с ней и в Dr. Mario время от времени играли, так что ей эта тема ближе =)

показать ответы
0
Автор поста оценил этот комментарий

*шепотом* а под андроид можно, плз?

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

Да, любым эмулятором - Nostalgia.NES, NES.emu, Super8Plus. Нативно портировать проблематично, проще с нуля написать, но тогда сразу захочется реализовать все прошлые хотелки и процесс затянется надолго =)

0
Автор поста оценил этот комментарий

На каком маппере игра? Лениво искать инфу по файлам на Гитхабе.

раскрыть ветку (1)
2
Автор поста оценил этот комментарий

NROM. На C в принципе мало мапперов адаптировано (У Nesdoug есть примеры MMC1/MMC3), но мне это не потребовалось, я даже возможности нулевого до конца не использовал.

показать ответы
1
Автор поста оценил этот комментарий

Круть. :) И это даже без каких-либо там поправок на "первый проект, вы понимаете".


Сложности не оттолкнули от процесса разработки? Может быть, в планах замахнуться на большую игру?


Ретрогейминг сейчас в почете, вполне может зайти. Не массовая популярность, конечно, но и не только ностальгирующие по девяностым увлекаются.

Игры-то действительно в геймплее часто очень клевыми делали.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Сложности не оттолкнули, но сам процесс сильно замедлили ) планов и так было выше крыши, далее сразу на вторую часть, но со временем только вычеркивал пункты.

Ретро гейминг интересен в плане новых игр, стилизованных под старые, да и то эта волна мне кажется уже утихает. Разработкой под старые платформы занимаются в основном для себя - как челлендж или просто узнать, как оно там работает. Есть несколько коммерческих проектов на kickstarter, раньше ещё greenlight был, но их по пальцам пересчитать можно.


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

Можно, конечно, купить NesMaker и мышкой всю игру нарисовать, но тогда совсем дух ретро в разработке потеряется.


Так что может когда-нибудь ещё возьмусь за другой проект, а может допилю этот, список хотелок же остался )

Ну а может кто ещё за это возьмётся - все исходники я выложил, посмотрим.

показать ответы
0
Автор поста оценил этот комментарий

Так тут же в описании разный функционал повешен на кнопки, или я не туда смотрю? Если не туда, прошу прощения, бес попутал. :)


Я просто о том же - кнопок только две в контроллере, независимо от того, какие реплики у нас там популярны были. Турбокнопки-то не канон и являются специальным бонусом.


Пользуясь случаем спрошу - были ли какие-то моменты, где пришлось совсем тяжко? Может, приходилось упрощать где-то графоний, или еще что-то?


Было бы здорово затестить на олдовом "железном" устройстве.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Так тут же в описании разный функционал повешен на кнопки, или я не туда смотрю? Если не туда, прошу прощения, бес попутал. :)

Не, не туда =) Одна кнопка - косить, вторая - кидать косу, на этом всё.

Пользуясь случаем спрошу - были ли какие-то моменты, где пришлось совсем тяжко? Может, приходилось упрощать где-то графоний, или еще что-то?

Всё, что было с графикой - было тяжело, потому что почти всё приходилось самому рисовать. На уровне кода самое сложное собственно процедуры увеличения и уменьшения травы - поскольку архитектурно можно отображать только конкретный тайл в конкретной ячейке сетки.

Например, высота травы была 9, то есть тайлы 1, 5 и 5, сила косьбы = 3, то есть, стало 6,  это спрайты 2 и 5. Надо первый тайл стереть, второй поменять с 5 на 2, третий не трогать. Из-за ограничения на количество изменяемых в один момент тайлов фона нельзя просто ставить на все три позиции нужные тайлы каждый раз, нужно именно вычислять, что где требует перерисовки.

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

Было бы здорово затестить на олдовом "железном" устройстве.

Теоретически всё должно работать также, эмуляторы передают все игры достаточно точно, даже медленную работу, исчезновение спрайтов и прочие ограничения приставки.

Выше кидали контакт человека, который может на физический картридж игру записать, Так что вполне возможно, физический вариант я тоже как-нибудь проверю =)

Иллюстрация к комментарию
показать ответы
Автор поста оценил этот комментарий

На NES же нет турбокнопок. :)

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Изначально не было. Впрочем и геймпады изначально были впаяны в приставку, а на втором вместо Select и Start был микрофон для голосового управления в играх.

Но в 1987 был выпущен контроллер с турбокнопками. Поскольку он официальный, от Nintendo и именно для NES, можно сказать, что кнопки таки были. Хотя геймпады в базовой поставке вроде так и остались без них.

Иллюстрация к комментарию
показать ответы
0
Автор поста оценил этот комментарий

Если есть заинтересованность, могу дать контакт человека, который занимается изготовлением картриджей, в том числе и на NROM. Может сделать полнокомплекты. Это не Кластер, хотя они хорошо знакомы. Кластер вечно занят))).

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

В принципе, на память можно сделать несколько штук, так что давай, поставлю себе в планы пунктик =)

показать ответы
2
Автор поста оценил этот комментарий

Так а можно запилить, чтобы прям из браузера работало?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий

В браузере что угодно запилить можно, но я знаю только про ресурсы, где эмуляторы с готовыми библиотеками игр, такие чтоб свой образ залить и играть, не встречал, надо поискать.

показать ответы
1
Автор поста оценил этот комментарий
Я бы поиграл)
Ну или хоть видео оставьте, интересно же!)
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Гифку сделал, добавить в пост забыл. Исправлено =)

показать ответы
0
Автор поста оценил этот комментарий

Такого все же стоит избегать везде, где можно. ;) В обычном втором контроллере NES и микрофон есть, но используется полтора раза и чаще так, что можно обойтись. А тут - и не обойтись, и требует докупки аксессуара.


...но это не отменяет факта того, что работа проделана офигенная. ;)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

А тут - и не обойтись, и требует докупки аксессуара.
Вот тут я не понял, чего следует избегать и почему без турбо кнопок нельзя обойтись? 0_о

Даже в NARC, где четыре разных действия повешены на кнопки, всё равно можно без турбо играть. Да, во многие игры с ними играть удобнее, в нашей стране на большинстве реплик были турбо кнопки, но пройти любую игру можно было и без них, эта - не исключение.

То, что в эмулятор турбо кнопки встроены - это же не я придумал =)

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества