Pull to refresh
66
0
Андрей Мишкинис @AndreyMI

Indie Game Developer

Send message

От чего зависит интересность геймплея?

Reading time18 min
Views23K
image

Думаю, каждый согласится, что ощущения от игрового процесса в разных играх отличаются. Одни игры кажутся более «игровыми», чем другие. Просто сравните игру в Super Mario с чем-нибудь вроде Dear Esther, и, как мне кажется, ясно, что в первой по ощущениям больше геймплея, чем в последней. Чем вызвано это чувство? Моя гипотеза такова: разница в возможности планирования.

Чем больше игрок может планировать в игре заранее, тем более захватывающей она кажется.

Прежде чем я представлю доказательства того, что это скорее всего правда, мне нужно дать небольшую вводную информацию. Чтобы понять, почему планирование играет такую выдающуюся роль в играх, нам нужно взглянуть на эволюцию нашего вида и ответить на вопрос: почему рыбы такие глупые?
Читать дальше →
Total votes 38: ↑36 and ↓2+34
Comments30

Web crawler с использованием Python и Chrome

Reading time3 min
Views46K
Добрый день, дорогие друзья.

Недавно, сидя на диване, я задумался о том, что хочется мне сделать своего паука, который что-то бы смог качать с веб сайтов. Но качать он должен был бы не простой загрузкой, а как настоящий милый добрый браузер (т.е. JavaScript чтобы исполнялся).

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

  • Дело в том, что я хотел бы писать на своем любимом питоне, потому что очень не люблю JavaScript, а это уже означает, что большая часть уже не работала бы (или пришлось их как-то склеивать, что тоже отстой).
  • Еще эти безголовые браузеры обновляются как когда.
  • Но вот Selenium очень милая штука, но я не нашел, как там отслеживать загрузку страниц, или хотя бы адекватного способа выдрать куку или задать её. Слышал, что многие любители селениума инжектят в страничку JavaScript, что для меня дико, потому что где-то полгода назад я делал сайтик, который отрывал любые JavaScript вызовы с сайта и потенциально мог определять моего паука. Мне бы очень не хотелось таких казусов. Хочется чтобы мой паук выглядел как браузер максимально точно.

Читать дальше →
Total votes 42: ↑39 and ↓3+36
Comments44

Дизайн игрового процесса: как это работает в «больших» играх, и как повторить это в условиях инди

Reading time15 min
Views12K
В силу своего характера и темперамента, играя в игры, я всегда задаюсь вопросами:

  • Почему мне интересно?
  • Как авторы достигли такого эффекта?
  • Почему этот приём работает в этой игре, но выглядит лишним вон в той?
  • Почему игра вызвала такие обсуждения (плохие/хорошие)?
  • Что так (не) понравилось людям?
  • и т.п.

Ответы на подобные вопросы привели меня осознанию “закулисных” методов и приёмов создания игр. Здесь я имею ввиду механизмы, спрятанные за фасадом игры, которые управляют происходящим на экране. Делают игру целостной, гармоничной, глубокой и, следовательно, интересной. Именно об этом я сейчас попытаюсь рассказать.
Читать дальше →
Total votes 21: ↑17 and ↓4+13
Comments16

PHP: Хранение сессий в защищённых куках

Reading time5 min
Views26K
На некоторой стадии развития веб-проекта возникает одна из следующих ситуаций:

  • backend перестаёт помещаться на одном сервере и требуется хранилище сессий, общее для всех backend-серверов
  • по различным причинам перестаёт устраивать скорость работы встроенных файловых сессий

Традиционно в таких случаях для хранения пользовательских сессий начинают использовать Redis, Memcached или какое-то другое внешнее хранилище. Как следствие возникает бремя эксплуатации базы данных, которая при этом не должна быть единой точкой отказа или бутылочным горлышком в системе.

Однако, есть альтернатива этому подходу. Возможно безопасно и надёжно хранить данные сессии в браузерной куке у самого пользователя, если заверить данные сессии криптографической подписью. Если вдобавок к этому данные ещё и зашифровать, то тогда содержимое сессии не будет доступно пользователю. Главное достоинство этого способа хранения в том, что он не требует централизованной базы данных для сессий со всеми вытекающими из этого плюсами в виде надёжности, скорости и масштабирования.
Читать дальше →
Total votes 43: ↑37 and ↓6+31
Comments107

Анимация в Spine, советы и рекомендации, псевдо 3D эффект

Reading time13 min
Views75K
Хочу поделиться своим опытом работы со Spine — программой для создания скелетной анимации, специально заточенной под игры.

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

Читать дальше →
Total votes 29: ↑29 and ↓0+29
Comments7

Игра HellWorm. История разработки

Reading time5 min
Views18K
Доброго времени суток! Я хотел бы рассказать про свой опыт создания мобильной игры на Unity под названием HellWorm. Из названия можно понять, что игра про червяка. Ползаем, кушаем монетки, не врезаемся в препятствия. Казалось бы, клон классической игры, на которой большинство из нас выросло. Но, на самом деле, параллель со змейкой на этом заканчивается.


Игра же позиционирует себя как бесконечный раннер, в котором идет постоянное движение вперед, без возможности свернуть с вертикального маршрута. А сам червь, при всем при этом, может как угодно извиваться (да-да, и даже проползать через себя). Вследствие чего, хотелось бы заострить внимание на трудностях, которые я испытал пытаясь реализовать движение столь незамысловатого персонажа.
Читать дальше →
Total votes 40: ↑34 and ↓6+28
Comments22

Пять мощных паттернов монетизации F2P, использующих в дизайне UX поведенческую экономику

Reading time8 min
Views24K
image

Поведенческая экономика — это потрясающая область экономики, исследующая психологию процесса принятия решений потребителями.

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

В статье представлено пять нетрадиционных паттернов монетизации, каждый из которых основан на строгом принципе поведенческой экономики. Все они отличаются от привычных, но работают невероятно хорошо.
Total votes 29: ↑27 and ↓2+25
Comments9

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

Reading time3 min
Views27K
Пост может быть интересен владельцам сайтов с высоким и средним трафиком, для которых основная монетизация идет за счет рекламы. Или будет идти после прочтения этого текста. Речь исключительно об автоматических партнерских системах (Google Adsence, РСЯ, Adfox т.д.). Работа напрямую с рекламодателем и через рекламные агентства не рассматривается.

Это не советы/рекомендации, а факты и цифры, которые я получил на основе работы с десятками разноплановых сайтов, доведя их до хорошего дохода.

1) Локальные стандарты работают лучше тех, что рекомендует системы

Стоит размещать рекламные блоки тех форматов, что распространены в регионе, откуда ваш трафик. Например, блок 240х400 работает в России лучше всех других, даже большего размера. В идеале, каждому региону со значимой долей трафика, показывать свой формат рекламы.

Также надо учитывать, что цена клика в каждом регионе своя и может различаться в разы.
image
Читать дальше →
Total votes 34: ↑23 and ↓11+12
Comments90

233 орешка для Золушки: отбираем цвета для «идеальной» палитры

Reading time13 min
Views20K


В процессе разработки игры в текстовом режиме, мне пришлось нарисовать больше сотни анимационных ASCII спрайтов. После релиза игра получила неожиданно хорошие отзывы и было принято решение делать продолжение. Рисуя спрайты для первой части и перепробовав с десяток вариантов выбора цвета и несколько десятков различных палитр, я понял, что нужен свой, «идеальный» набор цветов на все времена. За сотни и сотни часов рисования, сложились следующие критерии идеальности палитры:

  • Краткость: небольшое количество цветов в палитре. Весь набор цветов можно охватить одним взглядом.
  • Полнота: цвета палитры должны равномерно и достаточно плотно заполнять цветовое пространство.
  • Дискретность: цвета палитры должны отличаться друг от друга на глаз.
  • Группировка: цвета должны быть удобно сгруппированы для быстрого нахождения нужного.

Оказалось, что можно подобрать набор из ровно 233 цветов, который удовлетворит всем этим критериям.
Посмотреть идеальную палитру
Total votes 65: ↑61 and ↓4+57
Comments43

5 советов по усовершенствованию игровых анимаций

Reading time10 min
Views22K
image

Привет, меня зовут Дэйв Блежа (Dave Bleja), я работаю в студии Volnaiskra. В течение последних 3 лет я создавал Spryke, увлекательный и проработанный платформер о глубоководной морской кибер-рыбе, исследующей чудеса суши.

Как единственный постоянный участник команды Spryke, я нёс ответственность за многие части творческого и технического процесса. Некоторые задачи нудны, но бóльшая часть — увлекательна. Моим любимым аспектом была анимация, и я хочу поделиться с вами пятью советами по анимации, которые выработались у меня за годы работы.
Читать дальше →
Total votes 47: ↑46 and ↓1+45
Comments4

Complete Idiot's Guide: Как начать работать с Google Analytics

Reading time6 min
Views13K
image

Рассказываем, что освоить в Google Analytics, если вы новичок и делаете новостное издание, блог компании или другой контентный проект.

  • Как строятся отчеты в Google Analytics.
  • За какими метриками следить и какие специальные отчеты настроить.
  • Какие готовые отчеты Google Analytics подключить.
Читать дальше →
Total votes 16: ↑16 and ↓0+16
Comments5

Input lag во время рендеринга и как его побеждать

Reading time6 min
Views34K
Привет всем. Многие из вас знакомы с лагом ввода. Это бывает, когда вас в очередной раз убивают в компьютерной игре, и вы кричите: «Ну я же нажал блок/атаку/уворот». Ну а затем джойстик летит в стену. Знакомо? Происходит это потому, что между нажатием клавиш и появлением результата на экране проходит значительное время. Фактически, когда вы смотрите в экран — вы видите прошлое состояние, которое может абсолютно не отражать действительность.

Если вы разрабатываете собственную игру, или вообще занимаетесь рендером, и хотите уменьшить задержки ввода, то крайне советую заглянуть под кат.
Поехали
Total votes 65: ↑64 and ↓1+63
Comments37

Unity с позиции художника при разработке кроссплатформенной игры

Reading time8 min
Views21K
После многих лет работы с Flash и игровыми движками использующими его как оболочку, где все необходимо создавать вручную, а возможности ограничены парой-тройкой пунктов, новость о работе с Unity вызывала у меня эйфорию.

«Работать в Unity так приятно и удобно: много возможностей для самореализации» — говорили мне, но всё оказалось не так просто. В данной статье не будет петься хвалебных од Unity. Эта статья о суровых реалиях, ограничениях и сложностях, с которыми столкнулась наша маленькая команда инди-разработчиков при создании своей первой, но достаточно крупной игры Death Point.



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

Первые проблемы возникли в тот момент, когда я наконец решил попробовать на зубок систему освещения. В виду того, что мы хотели достигнуть кроссплатформенности для игры, было принципиально важно поддерживать одинаково высокий уровень графики на любом устройстве. Именно здесь я впервые погряз в слабой, как потом стало понятно, документации Unity.
Читать дальше →
Total votes 54: ↑53 and ↓1+52
Comments7

2D магия в деталях. Часть первая. Свет

Reading time10 min
Views75K

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

Читать дальше →
Total votes 63: ↑62 and ↓1+61
Comments25

Сравнение eCPM рекламных сетей на личном опыте

Reading time6 min
Views29K
Рейтингов рекламных сетей много, и я не претендую на составление еще одного. Просто я уже давно выпускаю игры для iOS и Android и раньше применял во всех одну и ту же схему монетизации. Со временем она сильно устарела и перестала приносить стабильный доход. Пришлось что-то менять и усиленно экспериментировать с другими рекламными сетями. Именно этими экспериментами я и хочу поделиться. И сразу же хочу уточнить, что ниже речь пойдет в основном о российском трафике, который в моих приложениях составляет порядка 90%.
Читать дальше →
Total votes 16: ↑12 and ↓4+8
Comments5

Скелетная анимация в играх. Обзор техник и ресурсов

Reading time9 min
Views96K
Anima — это душа, отличающая живое от мертвого. Аристотелевская душа — это принцип движения, проявляющегося в четырёх видах: перемещение, превращение, убывание и возрастание. Спустя почти две с половиной тысячи лет мы используем те же категории в компьютерной графике. Скелетная анимация определяет перемещение, морфинг служит для превращений, а убывание и возрастание это обычное масштабирование. Анимированная графика оживляет образ, вдыхает в картинку душу, и это, на мой взгляд, даже важнее, чем достоверная игра света и тени.

image


Создание качественных скелетных 3D анимаций сегодня, пожалуй, самая труднодоступная для инди разработчиков задача. Вероятно поэтому так мало инди игр в 3D, и так много проектов в стилях пиксель арта или примитивизма, а также бродилок без персонажей в кадре. Но теперь это соотношение может измениться…
Читать дальше →
Total votes 43: ↑42 and ↓1+41
Comments29

Как настроить двухфакторную аутентификацию для логина и sudo

Reading time4 min
Views51K


Безопасность в моде, как это и должно быть. Мы живем в мире, где данные — невероятно ценная валюта, которую вы всегда рискуете потерять. Поэтому вы должны сделать все, чтобы убедиться, что то, что вы держите на серверах и десктопах — в безопасности. Для этого администраторы и пользователи создают невероятно сложные пароли, используют менеджеры паролей и т.д. Но что, если я вам скажу, что вы можете логиниться на ваши серверы и десктопы Linux за два шага, вместо одного? Вы можете это делать благодаря Google Authenticator. Более того, это невероятно легко настроить.

Я собираюсь провести вас через процесс настройки двухфакторной аутентификации для использования ее на логине и sudo. Я продемонстрирую это на десктопной Ubuntu 16.04, но процесс также работает и для сервера. Чтобы справиться с двухфакторной стороной вещей, я буду использовать Google Authenticator.
Читать дальше →
Total votes 69: ↑53 and ↓16+37
Comments86

Как побеждать в компьютерных играх [3]: теперь полная книга

Reading time9 min
Views72K


Мы наконец-то довыкладывали книгу «Играй на победу» известного киберспортсмена и гейм-дизайнера Дэвида Сирлина. Ниже — выжимка самого интересного из третьей части и ссылки на полные главы (очень много букв).

В этой части: про стили игроков (найдите себя), про оптимальное поведение на турнирах, и про то, какие навыки нужны, чтобы стать №1 в игре. Плюс что делать в том маловероятном случае, когда вы уже мировой чемпион.
Читать дальше →
Total votes 36: ↑32 and ↓4+28
Comments30

Налоговый суслик. Особенности упрощенной системы налогообложения при работе по договорам с Apple, Google и другими

Reading time46 min
Views53K
В данной статье я постараюсь провести краткий юридический ликбез для разработчиков по некоторым положениям Гражданского кодекса, имеющим значение в контексте деятельности индивидуальных предпринимателей и организаций, применяющих упрощенную систему налогообложения, в работе по договорам с Apple, Google и другими компаниями, а также обратить внимание на некоторые не всегда очевидные налоговые нюансы, которые, как показал личный опыт изучения данной темы, довольно часто ускользают от внимания разработчиков или вызывают множество вопрос и споров.

Прочтите внимательно эту статью, если вы применяете упрощенную систему налогообложения с объектом налогообложения «доход» по ставке 6 процентов и продаете игры или приложения в Google Play, Apple App Store, а также прочий цифровой контент — например, 3D-модели — в Steam, Unity Asset Store или на других площадках, в условиях договоров с которыми фигурируют комиссии, агентские вознаграждения и прочие формы разделения выручки между сторонами.

Из материала вы узнаете:

  • Почему разработчику желательно обладать хотя бы базовой юридической грамотностью
  • Чем с точки зрения Гражданского кодекса являются игры и приложения и какие права на них есть у разработчиков помимо авторского права
  • Что такое агентский договор и почему все это важно при работе по договору с Apple или Google
  • Кто такой налоговый суслик и почему он может превратиться в пушного зверя
  • Какой «подвох» существует для применяющих «упрощенку» в части определения налоговой базы
  • Почему налог на добавленную стоимость (НДС) продолжает преследовать нас, даже когда мы не являемся его плательщиками
  • Как, с точки зрения Федеральной налоговой службы, облагаются НДС внутриигровые покупки (InApp Purchases)
Покажите мне суслика!
Total votes 40: ↑36 and ↓4+32
Comments84

Как продать приложение, которое не приносит прибыль? И сколько оно стоит?

Reading time5 min
Views51K
Давайте посмотрим правде в глаза — заработать на инди-приложении становится все сложнее. Под катом я расскажу, как можно продать ваше приложение, если оно перестало приносить прибыль, и сколько можно получить. В долларах :)
Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments22

Information

Rating
Does not participate
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Date of birth
Registered
Activity