Геймдевелопер как провайдер экспириенса

Читал я тут «нолидж бэйз пейдж» Майкрософта, запнулся о выражение «provides best experience» насчёт того, что обновление для ОС лучше всего брать через Windows Update, а не качать файлом через браузер. И что-то в этом выражении показалось мне странным. Или интересным.

Экспириенс — это опыт, провайдер — это поставщик, т. е. тот, кто предоставляет нечто потребителю. Насчёт видеоигр получается аналогия: геймер — потребитель, геймдевелопер — поставщик. Или всё-таки поставщик — издатель? Или ретейлер? Ладно, давайте пока не будем вдаваться в рынок, и сделаем вид, что мы уже напрямую поставляем игры (по сути, технологии это давно позволяют в масштабе планеты, точнее её информатизованных областей, если уж совсем занудствовать), то есть геймдевелопер для геймера в 2016 году всё равно что сосед. Не как в 90-е, когда все разработки были закрытой темой с жёсткой политикой, Non-Disclosure Agreements и всё такое. Хотя и сейчас практикуют такое, когда платформа жёстко контролируется её производителем-владельцем. Но мы же инде, поэтому не о том.

Геймдевелопер новой эпохи может быть чем-то средним (в разных пропорциях по желанию) между сумасшедшим художником, бизнесменом и придворным шутом «двора» в лице своей аудитории. Более того, игра в будущем может превратиться в услугу, так же как и продукты могут переходить из однократной модели продаж в предоставление по подписке. Есть даже вероятность, что и сами компьютеры будут предоставляться не как железо, а как услуга. Но это уже зависит от будущего социума, в котором, честно говоря, сейчас есть большие сомнения в плане стремления к прогрессу.

Сей пост призван зафиксировать эти мысли.

Бесплатная лекция по монетизации в Москве

Офф-лайн мероприятия

 

Высшая школа бизнес информатики приглашает всех энтузиастов компьютерных игр на открытую лекцию «Монетизационные акции: как удвоить доходы своей игры». 21 сентября 2016 года директор образовательных программ по игровой индустрии ВШБИ Вячеслав Уточкинна протяжении 4 академических часов будет рассказывать всем желающим о том, как улучшить доходы игровых проектов с помощью акций. Вход на мероприятие свободный, по предварительной записи. Число мест ограничено.


Читать дальше...

А давайте разработаем формат записи игровых сессий?

Программирование

Увы, в полный экран не разворачивается — надо переходить на Ютуб.
Это видео входит в плейлист аналогичных режимов других игр.

В 80-е/90-е годы, когда в ходу были аркадные автоматы с видеоиграми, в играх делали специальные режим под названием Attraction mode, в котором, чтобы привлечь посетителей залов аркадных автоматов (отсюда и название), игра играла сама в себя, для чего со стороны одного либо двух игроков выполнялись предварительно записанные действия.

Надо отметить (я не знал, пока не поинтересовался плотно), что Attraction mode не всегда включала в себя демонстрацию именно геймплея. Есть ряд игр, где нам показывают таблицу рекордов (High Scores), или предысторию игры (Cutscenes). Robocop 3, например, просто чередует главное меню с рекордами, но трек играет на протяжении около 4 минут, что для NES порядочно много — большинство треков укладывалсь в те сложные времена секунд в 30-40 максимум. Но как это всё делать, я думаю, и так понятно, а вот как заставить игру играть в себя...

Итак, цель поста: Разработать удобный, открытый и свободный формат хранения игровых сессий. Также я для наглядности привёл здесь текущий формат игровых сессий Замка Невозврата 2.

Интересно? Заходите под кат.


Читать дальше...

Лаги в играх, и почему фреймскип — скорее глупое решение, чем нет

Программирование

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

Фреймскип - пропуск кадров, но в онлайн-играх, раз уж кадры пропускаются, как-то надо идти дальше? Эту разницу пытаются скомпенсировать предсказаниями, а потом — просто приёмом информации об игровом состоянии от сервера (ведущего).

Тут я хотел рассказать про дельта-тайминг. Но создал я этот пост  3 июля 2016, 21:32, а сейчас 25 июля 2017, 3:07, и знаете что? Я просто скажу важную (для меня) мысль, и не буду делать из этого сколь-либо длинный пост.

Кадры пропускать не нужно, потому что это отнимает управление (игровое время и, по сути, игровую волю) у игрока, который пропускает кадры. Лучше уж игра будет медленной у всех, чем нечестной у кого-либо. Авторское ИМХО.

 

https://www.youtube.com/watch?v=BbaN8BN_dkM - а вот с этого я офигел, люди додумались использовать Lag Switch чтобы, управляя лагами, побеждать в игре, использующей уязвимую к этому модель синхронизации игрового состояния!

И ещё тут есть подборка картинок на тему:

Карточное обновление «Интернетов»

Разрабатываемые проекты

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

Главная причина, по которой я пишу сюда — это то, что обновила игру.

Обновление доступно по тому же адресу, если что.

Зомби-карточкагрибочки

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

Кстати, в связи с этим пришлось немало переделывать параметров в игре (раньше не всегда большое число на кубике означало, что это хорошо). А теперь зато четко видно, от какого числа должно выпать на кубике, чтобы победить или успешно смыться.


Читать дальше...

От спрайтов к 3D. Важность оценки графических возможностей на примере игры Wild Terra

Почему изначально мы выбрали спрайты

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

Развитие проекта и возникшие трудности

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

В данный момент все анимации главной героини (при очень посредственном качестве и без полной экипировки) в сжатом виде занимают 30мб. А во время игры, в памяти — намного больше. Это привело к трудностям с оптимизацией графики и поставило под сомнение выбор спрайтов как самого подходящего для нас метода.

3D на замену спрайтов

Читать дальше...

А вот интересно, Коленка, ты как считаешь?

Опросы

Я вот где-то месяц назад прошёл один тест для геймдевелоперов (смело ставьте посту 6 слоупоков из 5, да), и его результаты показались мне весьма двусмысленными. В особенности бросился в глаза один конкретный вопрос и его «правильный», с точки зрения составителей, ответ. Тех, кто знает, откуда этот вопрос, прошу не комментировать этот пост, пока я не закончу сбор статистики (в воскресенье, видимо). Вместе с этим я добавлю в этот пост ссылку на страницу с вопросом в оригинале, «правильным» ответом и его пояснением от авторов.

Очень хотел бы услышать рассуждение, почему тот или иной вариант верен по вашему мнению, господа коленкожане. А, и да, ответ "≈50%" в смысле «или да, или нет» — это логически неправильный ответ по своей формулировке. Если вы получили ≈50% из каких-то других соображений чем «да или нет», жажду их услышать.

Источник вопроса:

https://gd.zeptolab.com/ru/answers/17

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

Вероятность противоположного события («одна игра не стала хитом») равна: 1 — 0,1 = 0,99.

Тогда вероятность события «хотя бы одна игра стала хитом» вычисляется по формуле: 1 — 0,99^365.

[13:31:59] Xitilon: Ну, да, для математика — верно.

[13:33:00] Xitilon: А для геймдевелопера — вот не уверен. Всё-таки, зачем пихать в геймдев-тест чисто математический вопрос, замаскированный под геймдевный? Я думал так. Я ошибался — это вопрос тупо о теории вероятностей, и в этом составитель резко не прав.

Я хотел бы рассмотреть ещё некоторые вопросы из этого теста, но внимательный и заинтересованный читатель может их просмотреть и покритиковать сам. ZeptoLab организовали не «Game Designer Challenge», а просто свой нишевой междусобойчик, даром что в нём запрещено участвовать всем работникам компании. Выиграли в нём скорее всего перспективные кандидаты для трудоустройства в эту же конторку, которым и вручили главные призы… что оно там вообще.

Pau Sanchez - Испания - Поедет на GDC 2016

Zach Bohn - США - Хозяин мощного MacBook Pro

Денис Мрыхин - Украина - Держит в руках новенький iPhone 6S

За какие-то нишевые знания, которые никому толком в настоящем (не мобилко-центрированном) геймдеве не впёрлись.

Вердикт:

405 литров кофе

Выпито организаторами за время 

подготовки и проведения конкурса

ПЕРЕПИЛИ.

Ответ Нупру про VG-квалификацию «линкер»

С древних времен разработки все работы по созданию игры были «размазаны» по всем участникам разработки, которых редко было больше десяти человек. Смирись, ты придумал новую профессию в индустрии, функции которой издревле ложились на представителей разных профессий в разработке. Нигде и никогда не будет MAIN LINKER/JUNIOR LINKER. Никогда. Нигде. Ты проиграл.

А я тебе скажу вот что, Нупр.

Хейзер не «придумал профессию», нет. Он заявил некое название «линкер» к которому даже не пояснил ничего, а я это уже тогда понял. Ты вот почему-то не понял, и больше не знаю кто что понял, даже после расширенного пояснения. А он подал годную идею, которую я внесу в ШпильКрафтВерк по-любому, потому что в ней есть смысл. Теперь «линкер» является «VG-квалификацией», которая неминуемо присваивается Хейзеру, а ШпильКрафтВерк 3.0 будет представлен где-то в этом году.

А едал ли ты такого блюда, как Табель о рангах? Знавал ли его историческое значение? Текущая терминология геймдева мне, например, совершенно остофигела. Одно название «эйч ар менеджер» чего стоит. Нам нужна своя система, со своими заново перекроенными званиями и должностями, для отражения современных реалий, причём инди/додзин/коленка-реалий, а не вездесущего проклятого бизнеса-ради-бизнеса.

Этим постом я протестую против попыток опровергнуть геймдев-самоидентификацию Коленки! У нас нет продюсеров, но есть линкеры. Наши геймеры, операторы архивов видеоигр и спидраннеры называются шпилерами; спрайтеры, композиторы и ассет-менеджеры - крафтерами; а тестеры, тех-(и этих-)админы и программисты - веркерами. Те, кто имеет уровень 4 и выше (из 5) в какой-нибудь квалификации — имеют суффикс -мейстер, лично я имею префикс обер-, а всё это вместе называется Обер-ШпильКрафтВерк-Мейстериат. И так тому и быть!

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

У нас тут идёт подвальный геймдеваж, и большие фирмы со своими уставами нам тут не закон! Don'tcha dare ta stop me, niggah!


Читать дальше...

bump.lua

LÖVE

bump.lua

Оригинал этого текста а также сама библиотека — https://github.com/kikito/bump.lua

Библиотека для обнаружения коллизий невращающихся прямоугольников на языке Lua. Основные особенности библиотеки:

  • bump.lua работает только с невращающимися прямоугольнками (axis-aligned bounding-box, AABB). Если вам нужно что-то сложнее (круги, многоугольники), вас может заинтересовать HardonCollider.
  • Обрабатывает туннелирование. Это можно делать быстро, потому что обрабатываются только ААВВ. (В терминологии этой статьи все предметы считаются “пулями”)
  • Пытается быть быстрой и не тратит много памяти.
  • Основана на обнаружении коллизий, но также присутствует (базовая и небольшая) реакция коллизий (collision responce).
  • Может возвращать предметы, которые касаются точки, отрезка или прямоугольной области.
  • Обрабатывает предметы по очереди. Это делает обработку коллизий нереалистичной.

Читать дальше...