Сколько геймплея можно упаковать всего в 13К?


Учитывая наши ожидания от игр для Xbox, вы можете подумать о написании игры в пределах 13 КБ, что является слишком жесткой проблемой для ежегодного конкурса js13K. Его результаты теперь опубликованы и доказывают, что можно создать игру, в которую приятно играть.

Еще во времена загрузки ленты и на платформах игры вроде Commodore64 имели размер 4K или меньше. В качестве доказательства концепции, вот список нескольких таких игр 4K, скопированных из архива Lemon64:

Шаг в сторону пришельца

Bug Crusher

Точка Gobbler

Близкие контакты

Точка Gobbler v2

Гридраннер

Лазерные циклы

Мариос пивоварня

Космическое действие

Космический Рикошай

Танковые войны

Хесмон64

Ретро мяч

Перенесемся в настоящее время, когда Javascript пожирает мир, делая всевозможные приложения или игры доступными для всех через среду браузера, делая ненужными выделенные платформы и операционные системы, 13 КБ достаточно, чтобы упаковать оба игрового процесса. И классная графика благодаря продвинутым движкам браузера и HTML5.

js13kGames — это соревнование, которое пытается ответить на два связанных вопроса:

Имеет ли смысл рассматривать разработку игр размером с байты в мире широко доступных широкополосных соединений?

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

В этом году соревнования длились с 13 августа по 13 сентября, но обо всем по порядку; почему фиксация с числом 13? почему не 23 или 53? что означает 13? Ответ исходит от самого ведущего js13kGames Анджея Мазура:

Я хотел что-то оригинальное, а не популярное в то время 1k / 4k / 10k, и подумал, что 13 может быть хорошим хитом, также учитывая тему «невезения».

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

1. Как уже было сказано, размер пакета должен быть меньше 13 КБ или 13 312 байт в сжатом виде. Это усложняется из-за правила 2.

2. Никаких внешних библиотек или служб. Вы не можете использовать какие-либо библиотеки, изображения или файлы данных, размещенные на сервере, или службы, которые предоставляют любые типы данных — например, использование шрифтов Google запрещено. Ваша игра должна работать в автономном режиме, запустив файл index.html в браузере (категории Desktop и Mobile, не относящиеся к серверу), и все игровые ресурсы должны соответствовать ограниченному размеру пакета. Если вам удастся сжать вашу любимую библиотеку ниже 13 килобайт, включая сам код, вы можете использовать все, что захотите, просто помните о пределе в 13 килобайт.

3. Два источника — читаемый и сжатый. Предоставьте два источника вашей игры — первый должен быть уменьшен и заархивирован, чтобы соответствовать лимиту 13 КБ, а второй должен быть в удобочитаемой форме с описательными именами переменных и комментариями и размещен на GitHub.

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

5. Только новый контент. Не отправляйте старые игры или демоверсии, принимается только свежий контент.

6. Ошибки и поддержка браузера. Ваша игра должна работать и воспроизводиться как минимум в двух браузерах: Firefox и Chrome, и не должно быть ошибок.

7. Есть несколько категорий, в которых вы можете принять участие. Это:

Рабочий стол

Мобильный

Сервер

A-Frame, мощная веб-платформа с открытым исходным кодом для создания возможностей виртуальной реальности, которая в сочетании с WebVR позволяет веб-разработчикам принимать участие.

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

Например, победителем в мобильной категории «LOSSST» стала игра о долгом путешествии по поиску пропавшего ребенка, которая включала 75 головоломок и 3 различных умопомрачительных механики.

Используя другой подход, кибер-триллер «Затерянные в КИБЕРПРОСТРАНСТВЕ», победитель категории A-Frame, включал в себя как сложный сюжет, так и игровой процесс:

Lost in CYBERSPACE — это кооперативная игра, рассчитанная на 2 игроков, каждый из которых играет на отдельном устройстве. Единственное, что вам нужно между собой, — это ваш голос. Вы можете находиться в одной комнате или в другой части мира, если вы слышите друг друга.

Один игрок играет роль ХАКЕРА, заблудившегося в лабиринте CYBERSPACE корпоративной сети. Им нужно перемещаться по CYBERSPACE, считывать коды доступа к НАВИГАТОРУ и находить узел TARGET, чтобы взломать его. Но будьте осторожны! Взлом неправильных узлов облегчит вам поиск, и вы потеряетесь в CYBERSPACE, когда истечет время!

Другой игрок играет роль НАВИГАТОРА, который использует терминал для декодирования кодов доступа, полученных от ХАКЕРА, читает карту CYBERSPACE и помогает ХАКЕРУ найти путь к узлу TARGET.

Несмотря на установленный лимит в 13 КБ, разработчики использовали новейшие веб-технологии HTML5, CSS3, JavaScript и другие дополнительные инструменты / библиотеки / фреймворки / методы, необходимые для работы.

Примерами являются библиотеки, подобные Kontra (используются для предварительной загрузки игрового цикла и ресурсов) и TinyMusic, фреймворки, подобные Brevis.js, инструменты, такие как самодельный js13k-toolkit, транспиляторы, такие как babel для компиляции кода ES6 в Chrome и Firefox, Webpack для модульного JS-кода, минификаторы для CSS и HTML, а также графические методы, подобные raymarching с помощью функций Signed Distance Functions.

Победители разыграли призы — от игры в Steam до платных планов GitHub и личных учетных записей с неограниченным количеством частных репозиториев до подарочных сертификатов Amazon.

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

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


Добавить комментарий