AndreyFomin

AndreyFomin

Разработчик инди игр: https://store.steampowered.com/app/2722640/CoinOp_Vice/
Пикабушник
поставил 18 плюсов и 1 минус
отредактировал 4 поста
проголосовал за 18 редактирований
в топе авторов на 697 месте
Награды:
5 лет на Пикабу
121К рейтинг 525 подписчиков 21 подписка 293 поста 140 в горячем

Файловый менеджер на марке

Файловый менеджер на марке Norton Commander, Ностальгия

Подготовил hi-res картинки - распечатаю и повешу на стену. Столько провел времени в Norton Commander и клонах. Сейчас использую Far Commander. Как без рук.

Когда надо почистить инструмент и отвлечь мозг мелкой моторикой

Когда надо почистить инструмент и отвлечь мозг мелкой моторикой Клавиатура, Pixel Art, Кот

Все клавиши клавиатуры выстроились в кота с... клубком ниток. Жалко обратно собирать теперь.

Показать полностью 1

Встроенный текстовый терминал с играми внутри игры

В процессе создания sci-fi игры ASCIIDENT пришла идея поместить в игровой мир компьютерные терминалы. К ним можно подойти, подключиться и поработать/поиграть.


Если сама игра стилизована под текстовый режим 80x25 с плавным скроллингом и параллаксом текстовых слоев, то экран встроенных терминалов имеет разрешение 72x20 символов без всякой возможности выйти за пределы этой сетки.


Все приложения для встроенных терминалов (включая загрузчик) написаны на языке программирования DUHASM. Этот язык похож на Ассемблер, но имеет динамические переменные и массивы. Вот, например, кусок кода игры Pi-astre Hanter:

Встроенный текстовый терминал с играми внутри игры Инди игра, Ретро-игры, ASCII, Gamedev, Видео, Длиннопост

Забавная особенность - циклы реализованы в рамках условных конструкций, где вместо END ставиться LOOP.


Все приложения хранятся на сайте игры. В момент запуска, игра закачивает приложения и компилирует их в байт код. Когда игрок активирует консоль, то запускается честный интерпретатор. Исходный код игры Pi-astre Hanter, например, лежит вот тут: asciident.com/demo/res/piastre_hunter.duhasm


Именно этот файл именно по этой ссылке и подгружается в игру.


На данный момент я написал две игры на DUHASM, которые уже доступны в текущей версии. Есть план написать редактор кода (тоже на DUHASM конечно), чтобы каждый игрок мог попробовать создать приложение/игру, которую увидят все другие игроки. Попробовать поиграть можно вот тут: asciident.com.


Нужно дойти до консоли, которая располагается метрах в 50 если пойти влево от места крушения корабля. За каждый пройденный в играх уровень консоль выдает одну единицу валюты, которая называется Пи-астр.


Надеюсь, что я не зря потратил усилия и время на реализацию этой фичи и найдутся люди, которым понравится. Кстати, я создал страничку на Стиме, где можно добавить игру в whish list, если вам интересен проект: store.steampowered.com/app/1113220/ASCIIDENT.


Спасибо!

Показать полностью 1

Как я делал ретро цветовые режимы для игры (VGA/EGA/CGA/Win/Mac/Game Boy)

Решил, что если уж делать ретро игру, так делать несколько ретро цветовых режимов (VGA/EGA/CGA). Сделал 8 штук: true color, три монохромных режима, 16-цветовые режимы (Win/Mac), 2-битный и режим Game Boy. На видео демонстрируются все режимы по очереди.

Алгоритм преобразования цвета для монохромных режимов сделал такой. Сначала рассчитываю яркость цвета (R, G, B):

V = 0,3 * R + 0,59 * G + 0,11 * B

Монохромные ретро-мониторы имеют разные цветовые тона для различной яркости символа. Поэтому, оттенок также должен изменяться. Использую такую линейную интерполяцию:

RR = sqrt(V) * (monoR1 * (1 - V) + monoR2 * V)


GG = sqrt(V) * (monoG1 * (1 - V) + monoG2 * V)


BB = sqrt(V) * (monoB1 * (1 - V) + monoB2 * V)

Окончательный цвет: (RR, GG, BB)

Для 16-цветовых режимов я использую другой алгоритм. Для каждого цвета (R, G, B) ищу ближайший цвет в палитре. Вот и все.

2-битный и режим Game Boy имеет только четыре цвета в палитре. Простой поиск ближайшего цвета дает очень темную картину. Поэтому, прежде чем искать цвет в палитре, я делаю нормализацию:

d = 1 / max (R, G, B)


normR = d * R


normG = d * G


normB = d * B

Формулы схематичные. Проверки на деление на ноль не стал упоминать. В демку самой игры можно поиграть в браузере вот тут: asciident.com.

Показать полностью

ASCIIDENT — научно-фантастическая игра с открытым миром и графикой, стилизованной под текстовый режим

ИСТОРИЯ

Главный герой - клон по имени Анри. Он сбежал от космических пиратов и попал на астероид FA-17, который был колонизирован две тысячи лет назад с целью добычи ценного ресурса - кристаллов. Добыча кристаллов еще идет, но кристаллы сильно упали в цене за последние 200 лет. Если бы не удобное расположение для перевалочной базы, астероид давно был бы заброшен. Почти все зоны астероида покинуты. Жизнь там идет по своим правилам.

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

Первая цель Анри - добраться до космопорта и улететь с астероида, чтобы затеряться на просторах изученной части Вселенной. Космические пираты будут искать Анри, ведь он пролонгер - клон, являющийся частью личности настоящего бессмертного человека. Для реализации своих целей у Анри есть 99 жизней. Именно столько тел сохранилось в выжившем при крушении модуле клонирования.

Вселенная игры основана на научно-фантастическом романе “Аномалия Франго”.

ASCIIDENT — научно-фантастическая игра с открытым миром и графикой, стилизованной под текстовый режим Asciident, Ретро-игры, Инди игра, Компьютерные игры, ASCII, Видео, Гифка, Длиннопост

СТИЛЬ

Абсолютно вся графика в игре выполнена с помощью символов, которые набираются на клавиатуре. Если быть более точным, то используются символы из таблицы ASCII с 32-го по 126-ой символ.

Тексты в игре локализованы на несколько языков и могут содержать символы не из аутентичного диапазона. Однако эти символы не участвуют в дизайне. Графика - только ASCII.

ASCIIDENT — научно-фантастическая игра с открытым миром и графикой, стилизованной под текстовый режим Asciident, Ретро-игры, Инди игра, Компьютерные игры, ASCII, Видео, Гифка, Длиннопост

ЛОКАЦИИ

В разработке сейчас локация “Астероид FA-17”, в которой расположен космопорт. Из космопорта будет возможность перемещаться на соседние планеты и станции, которые являются отдельными локациями. Прохождение локаций нелинейное. В любой момент при наличии необходимых ресурсов и навыков можно переместиться в другую. Список локаций, которые будут реализованы в первую очередь:

1. “Астероид FA-17”, время прохождения 4-6 ч.

2. “Большой транспортный корабль”, время прохождения 2-3 ч.

3. “Межгалактический ретранслятор”, время прохождения 3-5 ч.

4. “Планета Колибри”, время прохождения 4-6 ч.

5. “Крейсер Джучи”, время прохождения 2-3 ч.

6. “Космическая аномалия”, время прохождения 4-6 ч.

7. “Комета”, время прохождения 4-6 ч.

ASCIIDENT — научно-фантастическая игра с открытым миром и графикой, стилизованной под текстовый режим Asciident, Ретро-игры, Инди игра, Компьютерные игры, ASCII, Видео, Гифка, Длиннопост

NPC И БОССЫ

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

Враждебные персонажи наносят ущерб. Если навести курсор на враждебного персонажа, то отобразятся такие параметры как HP и сила атаки.

ASCIIDENT — научно-фантастическая игра с открытым миром и графикой, стилизованной под текстовый режим Asciident, Ретро-игры, Инди игра, Компьютерные игры, ASCII, Видео, Гифка, Длиннопост

УМЕНИЯ

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

1. Жизненная сила

2. Емкость инвентаря

3. Сопротивление радиации

4. Задержка дыхания

5. Холодное оружие

6. Метательное оружие

7. Плазменное оружие

8. Пилотирование

9. Гиперпространство

10. Навигация

11. Рукопашный бой

Каждый навык поддается улучшению. Текущий уровень владения умениями можно посмотреть, открыв инвентарь.

ASCIIDENT — научно-фантастическая игра с открытым миром и графикой, стилизованной под текстовый режим Asciident, Ретро-игры, Инди игра, Компьютерные игры, ASCII, Видео, Гифка, Длиннопост

РЕСУРСЫ, ПРЕДМЕТЫ И ИНВЕНТАРЬ

30+ видов ресурсов

50+ предметов и оружия

Мир в игре ASCIIDENT полон различных ресурсов и предметов. Существуют такие базовые ресурсы как дерево, камень, металл, кристаллы и т.д.

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

Добываемые ресурсы могут использоваться для создания инструментов, оружия и приспособлений. Для того, чтобы носить вещи с собой, они должны быть положены в инвентарь, который оформлен в стиле Norton Commander.

ASCIIDENT — научно-фантастическая игра с открытым миром и графикой, стилизованной под текстовый режим Asciident, Ретро-игры, Инди игра, Компьютерные игры, ASCII, Видео, Гифка, Длиннопост

СУБСИМВОЛЬНАЯ ТОЧНОСТЬ И ПАРАЛЛАКС

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


Внутри одного текстового слоя все статичные объекты четко выровнены по символьной сетке. Более того, каждый спрайт состоит из символов, также выровненных по символьной сетке. Относительно друг друга слои и движущиеся объекты могут находиться на субсимвольном расстоянии. Это обеспечивает плавность движения и, соответственно, комфортный игровой процесс.

В игре присутствует несколько текстовых слоев, которые двигаются с разной скоростью, реализуя эффект параллакса. Символы верхних слоев перекрывают символы нижних. При субсимвольной точности критерий перекрытия - это наложение более 50% от ширины и/или высоты тестовой ячейки.

ЦВЕТА И ШРИФТ

В опциях игры можно выбрать один из восьми ретро цветовых режимов: True Color, три монохромных режима, 16-цветовой режим (DOS/Mac), 2-битный и режим Game Boy. Также в опциях доступен режим LED шрифта. В таком режиме каждый пиксель каждого символа отделен от соседних.

РЕДАКТОР

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

ASCIIDENT — научно-фантастическая игра с открытым миром и графикой, стилизованной под текстовый режим Asciident, Ретро-игры, Инди игра, Компьютерные игры, ASCII, Видео, Гифка, Длиннопост

ВСТРОЕННЫЕ КОМПЬЮТЕРНЫЕ ТЕРМИНАЛЫ И ЯЗЫК ПРОГРАММИРОВАНИЯ DUHASM

В игре встречаются компьютерные терминалы, с помощью которых можно подключаться к локальной, галактической или глобальной вселенской сети. Доступны различные приложения и игры. Терминалы на астероиде FA-17 в начале игры по техническим причинам могут подключаться только к локальной сети.

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

ТЕКУЩЕЕ СОСТОЯНИЕ ПРОЕКТА И РЕЛИЗ

На текущий момент доступно около двух часов игры в локации “Астероид FA-17”.


Демо версия. В открытом доступе находится демо версия игры. В ней доступно 10 минут игрового времени. Это начало игры версии 0.6.3.


Полная текущая версия. Это текущее состояние игры ASCIIDENT, которую я обновляю очень часто. Добавил новый предмет/ресурс - обновил. Появился новый босс в новой локации - обновил. Новая музыка, новые режимы игры и т.д. Те, кто имеют доступ к полной версии получают обновления моментально. Полная текущая версия является Web версией. Тестируется в браузерах Chrome, Firefox, Safari и Opera.


Платформы. Целевыми платформами игры являются Web/PC/Mac/Android/iOS.


Предполагаемая дата релиза: сентябрь, 2020

ДЕМО ВЕРСИЯ

Поиграть в демо версию можно прямо сейчас. Просто зайдите на сайт asciident.com и нажмите кнопку под видео.


Буду очень благодарен за фидбэк по игре!


Спасибо!

Показать полностью 7 4

ASCIIDENT - добыча ресурсов

Начал активную фазу разработки игры ASCIIDENT в стилистике текстового режима. В движок добавил плавный скоролинг с параллаксом, физику, динамическое освещение. При этом, вроде бы, удается сохранить стиль. Как вам? На видео я тестирую функции майнинга — добычи ресурсов для последующего крафта.

Танки против единорогов

Корпорация «Вотвам Динамикс» обнаружила далекую планету с формами жизни из видоизмененного углерода. На планету был отправлен бот «Meat Killer» с искусственным интеллектом с самосознанием. Бот вылетел на планету с небольшой фабрикой, позволяющей производить боевые механизмы для отражения волн атак.

Танки против единорогов Gamedev, ASCII

Зачисти планету от органических созданий в новой ASCII игре Tanks vs Unicorns! Игра создается только с помощью символов, которые можно набрать на обычной клавиатуре. Это позволит хоть как-то смягчить картинку происходящего на планете ужаса и расчлененки.

Действие игры происходит во вселенной фантастического романа «Аномалия Франго».

Показать полностью

Волшебник Зу

Одно из состояний от которого получаю кайф — это когда лежишь на кровати напротив распахнутого настежь окна перед грозой или в режимное время (фотографы знают). Дети наверное это чувствуют и подползают под бок. В это время я обычно вбрасываю идею и, если детеныши на нее среагировали, развиваю в сказку-беседу. Вот как было в этот раз — лежим мы с Мишей, смотрим в окно, и я «вбросил» наобум:


— Сейчас в открытое окно может влететь волшебник Зу!


Миша с явным интересом посмотрел на подоконник и спросил:


— Волшебник Зу?


— Да. Ему можно загадать одно желание. Если оно ему понравится, то выполнит, а если нет —  выдерет один зуб! Например, попросишь у него радио-управляемую машинку и если ему это понравится — подарит сто тыщ машинок. Но если нет — хрясь — и нету зуба!


Миша рефлекторно приложил ладошку ко рту и задумался. Потом озарился и сказал:


— А если я попрошу букет для мамы? Из цветов!


— Мне очень бы понравилось такое желание. Но волшебник Зу может быть в плохом настроении и ему не понравится даже такое. Поэтому надо решать — рискнешь ты загадать желание или нет. Вероятности понравится/не понравится — одинаковые.

Миша задумался, а потом спросил:


— А можно не загадывать желание?


— Конечно можно, но учти, что волшебник Зу прилетает один раз в жизни. Если не загадаешь сейчас, то все — больше не прилетит никогда и не будет волшебства и желаний.


Миша задумался крепче... видно было по лицу как он сопоставляет риски :) В конце концов его ответ был такой:


— Нет. Я не буду загадывать желание.


Ок. Я закрыл окно — было пора идти чистить зубы и спать. Миша сделал правильный выбор. Но вот я бы рискнул.

Показать полностью
Отличная работа, все прочитано!