[ d ] [ b / cu / dev ] [ r ] [ a / ts ] [ ci ] [ gnx / int ] [ misc ] [ dev / stat ]
[Burichan] [Futaba] [Gurochan] [Tomorrow] [Архив-Каталог] [Главная]

Файл: cover.gif -(1 KB, 240x136, cover.gif)
1 No.17813  
Предлагаю приобщиться к модной теме - вымышленные игровые приставки. По сути это эдакое легковесное IDE+Runtime для небольших программ, с существенными ограничениями на способы IO (несколько кнопок, крошечный экран, ограниченная палитра, процедурный sfx), но с гибкими скриптовыми языками под копотом, что позволяет разрабатывать игры, выглядящие как приставочные игры детства, без утомительной возни с ассемблером.

Началось всё с коммерческого проекта pico-8, представляющего интегрированную среду для разработки, редактирования ресурсов и запуска игр. Сейчас у pico-8 существует большое количество клонов, в том числе опенсорсных, они отличаются друг от друга "аппаратной" спецификацией и накладываемыми на код и ресурсы ограничениями. Более-менее полный список fantasy-консолей есть тут: : https://github.com/paladin-t/fantasy
>> No.17814  
Файл: 788d7cf554f7dcf5d46fd31d02f157b0.png -(4 KB, 600x332, 788d7cf554f7dcf5d46fd31d02f157b0.png)
4
Хабрастатьи по теме:
https://habrahabr.ru/post/311698/ "Pico8 — несуществующая игровая консоль"
https://habrahabr.ru/post/340502/ "Создание платформера для виртуальной консоли TIC-80"
https://habrahabr.ru/post/340234/ "Пишем движок трёхмерного ретро-шутера с нуля"
>> No.17816  
Файл: platformer.png -(8 KB, 768x456, platformer.png)
8
Мне понравилась бесплатная консоль Tic-80.

Основные фичи:
-экран 240x136, 16-цветная палитра в рамках каждой строки
-2 джойстика со стрелками и 4 кнопками (на клавиатуре Z,X,A,S) или МЫШЬ
-80кб бинарных ресурсов
-64кб Lua-кода
-код, графика и звук - всё может быть создано внутри Tic-80
-возможна публикация картриджей прямо на сайте консоли

RTFM: https://github.com/nesbox/TIC-80/wiki

Мои эксперименты:
https://tic.computer/play?cart=258 - порт чьей-то крошечной демки для проверки сил и пробы пера
https://tic.computer/play?cart=263 - библиотека для отображения пиксельных шрифтов, шрифтовый редактор и набор самих шрифтов
https://tic.computer/play?cart=313 - библиотека для распаковки ресурсов, поддерживается Huffman, RLE и LZ-77
>> No.17852  
Файл: serveimage7.jpg -(52 KB, 1280x720, serveimage7.jpg)
52
>>17813
>но с гибкими скриптовыми языками под копотом, что позволяет разрабатывать игры, выглядящие как приставочные игры детства, без утомительной возни с ассемблером.
Я считаю это откровенным позёрством.
Возня с ассемблером - неотъемлемая часть того, что делало эти игры такими, как мы их знаем.
Хотя понять причину такого явления можно - полная неспособность многочисленными индивидами объять необъятное в одиночку: миллионы цветов, возможность воспроизведения любых звуков, разрешения, при которых можно рисовать высококачественную картинку - казалось бы, рисуй не хочу; но ни рисовать, ни музыку сочинять, ни на ассемблере писать никто не умеет - вследствие чего и появились эти "виртуальные" консоли.
>> No.17853  
>>17852
Не соглашусь. Игры были такими в основном из-за острой нехватки памяти и других ресурсов, приводившей к грамотному реюзу, условности, бережливости и всяким хакам. А вот язык программирования - всего лишь инструмент, его низкоуровневость не влияла ни на геймплей, ни на UX, ни на что. Только на сроки разработки и необходимость каждый раз велосипедировать стандартную библиотеку.
>> No.17861  
Файл: 001m.png -(105 KB, 480x360, 001m.png)
105
>>17853
>А вот язык программирования - всего лишь инструмент, его низкоуровневость не влияла ни на геймплей, ни на UX, ни на что. Только на сроки разработки и необходимость каждый раз велосипедировать стандартную библиотеку.
Влияла, и ещё как. Высокоуровневые языки тормозили прилично по сравнению с программами, написанных на ассемблере.
В то время ограничения были обоснованы, такие машины были. А сейчас что? Если сильно хочется написать компактно, почему бы не взять и не написать на существующем оборудовании? Потому что никто не знает ничего кроме JS? Или потому что интерпретаторов JS под те платформы не было?
Так, чёрт возьми, сделайте!
Но никто не сделает. Не сделает потому, что на такой платформе никто не захочет писать на JS, выйдет очень медленно. На 486 (хотя это мощная машина) эти игры не пойдут, хотя они выглядят куда технически хуже, чем, скажем, Дум.
Но как же так, чтобы нельзя было такую игру сделать, сейчас же так модно под восьмибитки! Вот и появляются эти "виртуальные консоли".
Вспомогательных инструментов разработки под те платформы с тех времён завались, а сколько было создано уже в новое время, и непосредственно в память эмулируемой платформы можно залезть, и т.д., и т.п.
И кто хочет сделать по-настоящему игру с ограничениями тех времён, те и делают. А эти поделия только для потехи хипстерам.
>> No.17867  
Можно на си, что за крайности. Либо асм, либо джс.
>> No.17868  
Файл: 687474703a2f2f616e61656c2e6d61726174697333642e636f.gif -(1873 KB, 732x290, 687474703a2f2f616e61656c2e6d61726174697333642e636f.gif)
1873
>>17861
Чиочую сишечку. Для неё, кстати, есть пикрелейтед.
Линк: https://github.com/anael-seghezzi/CToy
>> No.18210  
>>17867
Слишком казуально. Попробуй лучше на брейнфаке: https://github.com/lolbot-iichan/TIC-80/wiki
>> No.18218  
>>18210
Чому не вайтспейс?
>> No.18250  
>>18218
Переносы строк в качестве управляющих символов - так себе.
>> No.18251  
>>18250
Зато сможешь всем показать длину своего пинуса.
>> No.18252  
>>18251
Вайтспейс показывать вообще затруднительно, лол.
>> No.21741  
>>18252
>> No.22198  
...



[ d ] [ b / cu / dev ] [ r ] [ a / ts ] [ ci ] [ gnx / int ] [ misc ] [ dev / stat ]
[Burichan] [Futaba] [Gurochan] [Tomorrow] [Архив-Каталог] [Главная]