Разные уровни сложности
Сложность автоматов варьируется от простой до многоуровневой.
Некоторые автоматы рассчитаны на опытных игроков.
Практически любой проект легче и дешевле делать, при условии что с самого начала четко ответить на вопрос для себя: в чем его смысл. В случае игровых автоматов это критично — без исходной цели легко уйти в бесконечно идущие переделки, пересборки и обновления, которые никогда не заканчиваются.
Именно поэтому прежде чем заказывать элементы, покупать материалы и загружать программное обеспечение, я выделил для своего проекта ключевые требования к будущему автомату.
Начал я что я определил — сценарий использования. Не теоретический «идеальный автомат», а максимально реалистичный вариант:
Мне хотелось автомат формата «пришли друзья — нажали кнопку — начали играть». Без всяких рассказов, мануалов и подготовки.
Классические аркадные автоматы кажутся стильно, в то же время для квартиры это не всегда подходящий вариант. Поэтому я отказался от варианта классического корпуса и выбрал уменьшенный формат.
Главные условия по физическим размерам были такие:
Такой подход по умолчанию наложило ограничения на размер экрана, по глубине корпуса и массу устройства.
Далее был принципиальный момент — игры. Я сразу для себя решил, что вариант планируется совсем не «для архива игр», а именно для практической игры.
Отсюда появились конкретные требования:
Наиболее удачно под такой набор условий подпадают игры-файтинги, beat ’em up, гонки и старые добрые шутеры.
Комфорт от игры в большой степени определяются от контроллеров. Можно использовать самый мощный ПК и отличный дисплей, при этом когда кнопки «ватные», а джойстик болтается — нормальной игры не останется.
Если оценивать как сделать игровой автомат, то необходимый набор параметров можно описать так:
По числу кнопок я рассматривал два сценария: 4 либо 6 кнопок на игрока. В конце концов решил ориентироваться на 6 — это практичнее и дает возможность комфортно играть в игры-файтинги.
На этом этапе у меня еще не было окончательных габаритов корпуса, но уже осознавал, какие моменты нужно обратить внимание:
Все эти вещи трудно рассчитать «на глаз», в результате я сразу добавил этап прототипирования, о котором будет рассказано далее.
Даже когда устройство стоит дома и эксплуатируется аккуратно, он в любом случае обязан быть простым с точки зрения обслуживания. Я сразу заложил набор обязательных моментов:
Когда все условия были определены, стало ясно, в каком направлении стоит двигаться. Следующим шагом стало планирование и создание первого макета.
Когда общие требования были определены, стало понятно, что собирать «чистовой» корпус — неудачная идея. Без опыта просто допустить ошибку в размерах, углами и размещением деталей. Поэтому логичным шагом стало прототипирование.
В теории и в представлении все всегда выглядит безупречно. Фактически же выясняется, что:
Макет необходим не для эстетики, а именно для оценки удобства. Цель прототипа — дать ответ на вопрос: комфортно ли играть на практике.
Наиболее дешевый и дешевый вариант проверить расположение — использовать картон и картон. Я сделал:
Все это располагалось на столе в разных конфигурациях. Я пробовал менять дистанцию между участниками, угол экрана, ширину панели и оценивал, как это чувствуется на практике.
Еще на стадии макета стало понятно, что часть идей изначальные идеи оказываются неудобными.
После бумажного этапа я перешел создать черновой контроллер для тестов. Без полноценного корпуса, без внешнего вида — просто чтобы понять чувство от контроллеров.
Для сборки потребовалось:
Я смонтировал элементы управления в корпус, соединил их к плате и включил несколько игр на телевизоре. Это принес больше ясности, чем любые теоретические расчеты.
Спустя пару вечеров проверок прояснились детали, о таких вещах обычно не думаешь:
Этот этап сохранил для меня кучу времени и денег в дальнейшем. Переделывать картон — почти бесплатно. Переделывать фанерный корпус — дорого и неприятно.
Когда основная компоновка стала понятна, я перенес все ее в 3D. Это дало возможность:
На этом этапе оформление еще неоднократно менялся, но главное стало понятно: устройство будет удобным, небольшим и ориентированным на игру вдвоем.
Дальше можно было перейти к выбору начинки и «мозга» автомата.
Когда стало понятно, каким образом автомат должен выглядеть и чувствоваться физически, настал момент решить, с тем будет внутри. От подбора «основного блока напрямую зависит сложность сборки, стабильность работы и количество времени, которое придется потратить на настройку.
В начале я рассматривал несколько популярных вариантов:
Десктоп и ноутбук исключились почти сразу: эти варианты занимают много места, потребляют больше питания и заметно усложняют сборку. Мне хотелось небольшое, простое и предсказуемое решение.
По итогу выбор пал на Raspberry Pi. Не из-за того, что это «безальтернативное решение», а из-за того, что он отлично подходил под мои требования:
Для классических аркадных и консольных игр прошлых поколений производительности Raspberry Pi вполне достаточно.
С экраном все было не таким простым. Хотелось подобрать баланс между размером, стоимостью и удобством.
Основные требования выглядели так:
Я сознательно не гнался за максимальным разрешением экрана — для старых игр оно просто избыточно.
На этом этапе экономить деньги не имеет смысла. Дешевые кнопки могут залипать, а некачественные джойстики — иметь люфт буквально через пару недель.
Я отбирал компоненты по следующим критериям:
Проще сразу взять не самый дешевый вариант, чтобы потом не разбирать автомат по мелким причинам.
Чтобы Raspberry Pi распознавал органы управления в виде стандартный геймпад либо клавиатуру, применяются USB-энкодеры.
Это небольшие печатные платы, к которым подсоединяются:
Затем вся система одним кабелем подключается к плате, и система определяет контроллеры автоматически.
Даже при небольших систем есть моменты:
Перегрев у Raspberry Pi не опасен в аркадных задачах, однако разумнее заранее предусмотреть отверстия вентиляции либо малошумный вентилятор.
Когда все компоненты были подобраны и куплены, можно было переходить к следующему шагу — к сборке пробной системы и настройке программной части.
Прежде чем устанавливать компоненты в корпус, я решил собрать систему в максимально простом виде и убедиться, что система работает корректно по плану. Данный этап позволяет выявить большую часть ошибок без риска испортить корпус либо переделывать заново готовую конструкцию.
На этом этапе не важен дизайн. Критична исключительно работа системы.
Я разложил на поверхности:
Кнопки и джойстики временно были подключены вне корпуса — просто ради проверки логики управления и ощущений.
Для программной части я использовал готовый образ с эмуляторами игр. Этот способ сильно экономит время: не нужно отдельно устанавливать каждый компонент и настраивать каждый отдельно.
Последовательность действий выглядел к следующему:
После старта ПО автоматически предлагает привязать кнопки — достаточно нажать кнопки в нужной последовательности.
Это — один из критичных этапов. Даже если все подключено правильно, на практике могут всплыть неприятные мелочи:
Я тестировал разные типы игр и проверял, насколько удобно играть, не тянется ли руку к кнопкам и не задевают ли игроки локтями.
Сама система поставляется без игр, поэтому ROM-файлы загружаются вручную. Заранее подготовил небольшой набор:
Важно на этом этапе не пытаться загрузить «все и сразу». Ограниченный список игр позволяет сконцентрироваться на тестировании удобства, а не на выборе из огромного списка.
Без сложностей, разумеется, не получилось обойтись. В процессе тестов выяснилось:
Все эти проблемы было легко исправить в данный момент, поскольку ничего не встроено в конструкцию.
После нескольких вечера тестов вся система оказалась стабильной и понятной. Контроллеры функционировало так, как было задумано, проекты запускались быстро, ничего не подвисало и не просило доработок.
Это означало, что теперь пора переходить к наиболее сложному этапу — проектированию и сборке корпуса.
Корпус автомата — это самая наиболее трудоемкая и наиболее «физическая» часть всей конструкции. Именно корпус определяет визуальный облик устройства, а также его вес, прочность и удобство эксплуатации. Ошибки на этом этапе обходятся дороже всего, поэтому к материалам я решил подойти особенно внимательно.
Перед тем как подбирать материалы, я сформулировал базовые требования к корпусу:
Корпус должен оставаться утилитарным, и не выставочным экспонатом.
Первым и логичным выбором оказалась фанера. Это выбор для аркадных автоматов, и у него имеется ряд очевидных плюсов:
Я рассматривал лист фанеры с толщиной от 10 до 15 мм. По итогу я остановился на компромиссном решении — такая толщина дает достаточную прочность, но не превращает корпус слишком тяжелый ящик.
Мысль сделать корпус из массива смотрится заманчиво, но на практике у нее есть ряд недостатков:
Для начального проекта такой вариант слишком сложно и дорого.
Я также рассматривал идею частично использовать 3D-печать. Такой подход подходит в случае:
Целиком печатать весь корпус нецелесообразно: это долго, дорого и часто не достаточно прочнo.
Геометрия непосредственно зависит от формата автомата. В моем случае использовался компактный вариант, поэтому:
Я сознательно старался избегать замысловатых криволинейных форм — чем проще форма, тем легче производство и сборка.
Когда форма и материал были определены, я составил первичные чертежи. Эти чертежи не получились идеальными, и пару раз менялись в процессе работы, однако давали понимание:
С этими чертежами уже можно было перейти к производству корпусных деталей и его сборке.
После того как материал был выбран и чертежи готовы, началась самая физически ощутимая часть всей работы — сборка корпуса. Именно здесь из отдельных элементов устройство превращается в реальный объект, и не абстрактную идею.
Все детали конструкции я заранее распилил по размерам. Это можно разными способами:
Я остановился на способе с ЧПУ — в этом случае детали получаются более точными, и отверстия под кнопки и экран сразу совпадают чертежам. Но такой способ не обязателен, особенно когда устройство собирается в единственном экземпляре.
Прежде чем что-либо склеивать и закручивать намертво, я сделал «сухую» сборку — без клея и без финального крепежа.
Это позволило:
На этом этапе часто всплывают мелкие ошибки по размерам, и такие ошибки легче поправить на этом этапе, чем после завершения окончательной сборки.
По завершении сухой подгонки конструкция был разобран и собирался в финальном виде.
Для соединения элементов я применял:
При этом важно не переусердствовать с крепежом и сохранить возможность при необходимости разобрать корпус в будущем.
Особого внимания заслуживает панель управления. На ней:
Я не раз проверял панель до финальной фиксацией, чтобы, что играть действительно удобно.
Дисплей крепится внутри конструкции таким образом, чтобы:
В большинстве случаев достаточно обычных деревянных планок либо металлических уголков.
Заранее заложил доступ внутрь автомата. Для этого задняя панель:
Такое решение заметно упрощает обслуживание системы, смену кнопок и работу с начинкой.
Когда корпус был собран, стало возможно перейти к установке всей электроники и внутренней разводке.
На этом этапе устройство уже смотрелся как законченное устройство, но без корректной настройки ПО он оставался просто коробкой с кнопками управления. Моя цель была простой и понятной: включить питание и сразу же оказаться в меню игр, без лишних экранов и действий.
Я сразу предполагал что устройством пользуются не только один человек. Соответственно:
По сути устройство должен работать как бытовой прибор: включил — работает.
После финального монтажа электроники внутри я заново выполнил конфигурацию управления в системе. Это необходимо, потому что после окончательной укладки проводов иногда всплывают небольшие нюансы.
Я проверил:
Если этого не сделать некоторые игры будут управляться «зеркально» либо просто неудобно.
Чем меньше всего пунктов меню видит пользователь, тем лучше. Я убрал все ненужное:
В итоге получился компактный список проверенных игр, в которые действительно хочется играть вдвоем.
Я сделал настройку ПО таким образом, чтобы:
Это особенно актуально, когда устройство используют разные люди или стоит в общем пространстве.
Перед тем как считать проект готовым, я пару вечеров просто играл на автомате:
Именно в таком режиме всплывают мелкие детали, которые невозможно учесть заранее: в одном месте неудобно тянуться до кнопки, в другом нужно другой порядок игр, а иногда — более быстрый возврат в меню.
К этому моменту автомат получился тем, чем я его задумывал изначально. Это уже девайс, который не требует объяснений и работает предсказуемо.
Если подытожить всю работу, то как сделать игровой автомат — это в первую очередь не столько про электронику или фанеру, сколько продуманную последовательность шагов: от постановки задачи до финальных тестов в реальных условиях.
В следующем разделе я опишу о практическом использовании, о ошибках и выводах, которые возникли в процессе использования устройства в жизни, а не в теории.
Сложность автоматов варьируется от простой до многоуровневой.
Некоторые автоматы рассчитаны на опытных игроков.
Темы варьируются от приключений до фантастики.
Многие автоматы используют популярных персонажей.
Музыка усиливает атмосферу игры.
Звуки вовлекают игрока в процесс.






