Щоденник розробки Nizam, мультиплеерної гри три-в-ряд для мобільних платформ. Частина 1

Всім привіт! Після завершення роботи над Galaxy Recon ми взялися за новий проект — мобільна мультиплеерна версія настільної гри Nizam, над якою працюємо вже другий тиждень.

Ця частина щоденника буде стосуватися роботи в рамках першого спринту, а також підготовчих робіт. Ми розберемо по кісточках процес адаптації настільної гри до мобільних пристроїв, вибір графічного стилю, написання дизайн-документа, розробку в рамках методології Scrum та інші теми. Отже, почнемо.

Всі частини щоденника

Настільна гра

В основі ігрового процесу лежить популярна механіка три-в-ряд. Гравці по черзі переміщують ряди на полі, складаючи комбінації та витрачаючи «драгоцінні камені», які в початку ходу беруться з колоди. Чим більше комбінацій на полі, тим більше очок перемоги отримує гравець (всю систему комбо можна побачити на бірюзовій картці нижче). Також є поле, на якому відзначається, у кого скільки очок. Після того, як колода закінчиться два рази (для випадку з двома гравцями), гра закінчується — перемагає той, хто зібрав більше очок.

Ігрове поле 5 на 5 викладається з карт восьми кольорів (драгоцінні камені), на якому і відбуваються всі ювелірні маніпуляції. Є біла карта «перлина», але вона не використовується в оригінальній грі, а призначена для доповнення «Перлина Сходу» — так, у настільних іграх вони теж є.

Щоденник розробки Nizam, мультиплеерної гри три-в-ряд для мобільних платформ. Частина 1

Ранній прототип

Над цим проектом вже встигли попрацювати в студії раніше: зробили робочий прототип з мультиплеером (до 4 осіб одночасно), відповідно написали серверну частину, реалізували можливість скасовувати переміщення камінців в рамках ходу. Але були й явні проблеми: гравцям доводилося довго чекати свого ходу, грати було нудно, хотілося більше динаміки. Відчувалася повна відсутність графіки та зворотного зв'язку.

Щоденник розробки Nizam, мультиплеерної гри три-в-ряд для мобільних платформ. Частина 1

Використовувати код старого прототипа ми не стали. Можливо, ми ще задіємо частину, що відповідає за мультиплеер, але в основному все буде переписано з нуля.

Адаптація правил

Наскільки сильно потрібно змінити правила, яку родзинку додати, щоб урізноманітнити проведення часу гравця? Щоб відповісти на ці питання, ми звернулися до розробників настільної гри з IGAMES Олександра Невського та Олега Сидоренка. Спільно з нашою командою була розроблена концепція кольорових сувоїв, які заряджаються замиканням рядів відповідного кольору. Після зарядки сувої виконують корисні дії: відновлюють ману, завдають шкоди противнику, ставлять захист. Для прототипу ми вирішили обмежитися одним видом сувою, який відновлює здоров'я.

Зміни в правилах торкнулися і концепції ходів: по-перше, ми обмежили час до 45 секунд і прибрали колоду. Тобто тепер у гравця немає карт «на руках» (тих самих коштовних каменів), які витрачаються, щоб перемістити ряд відповідного кольору. Умова перемоги також змінилася: кожному гравцеві додається шкала мани, вичерпавши яку, супротивник здобуває перемогу, замикаючи ряди.

Дизайн-документ

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

Щоденник розробки Nizam, мультиплеерного три-в-ряд для мобільних платформ. Частина 1

Вибір графічного стилю

Nizam розробляється для казуальної аудиторії. Тому графічна складова повинна подобатися дуже широкому колу гравців. Ми обрали більш реалістичний стиль у порівнянні з Galaxy Recon — м'які відблиски та тіні, без обводки, реалістичні пропорції персонажів.

Щоденник розробки Nizam, мультиплеерного три-в-ряд для мобільних платформ. Частина 1

Зміна движка

Движок AndEngine нас не влаштовував з багатьох причин: відсутність кросплатформенності, тривале очікування компіляції та копіювання гри на мобільний пристрій, незадовільна швидкодія, припинення розвитку та багато іншого. Ми давно шукали альтернативу, дуже уважно розглядали Unity. Особливо після виходу доповнення для розробки 2D-ігор. Але вивчення нової мови зупиняло.

Щоденник розробки Nizam, мультиплеерного три-в-ряд для мобільних платформ. Частина 1

Позбавленим цього недоліку виявився безкоштовний кросплатформений фреймворк libGDX, написаний на Java. Дуже вчасно ми знайшли його за кілька днів до початку розробки Нізама. Ми не так довго працюємо з цим фреймворком, але поки дуже задоволені. Особливо радує можливість скомпілювати гру на будь-якій десктоп-платформі, в моєму випадку це OS X:

Щоденник розробки Nizam, мультиплеерного три-в-ряд для мобільних платформ. Частина 1

Перший прототип

Розробка першого прототипу зайняла один тиждень. Ми реалізували всю механіку в рамках дизайн-документа з повноцінною графікою (з невеликими винятками), але без ефектів. Hotseat-режим дозволяє грати на одному пристрої двом гравцям, що було дуже до речі на демо.

Перший спринт був проведений за всіма канонами методології Scrum: був сформований резерв продукту (product backlog), зроблені оцінки по часу, фічі розбили на підзадачі, кожного ранку проводили збори (standup, в якому брав участь навіть віддалений художник), заповнювали графік спалювання завдань (burndown chart), а в кінці спринту провели демо. Раніше ми також працювали по спринтах, але багато моментів упускали. В результаті маємо більш злагоджену команду, в якій кожен учасник несе однакову відповідальність за продукт.

Нашій команді особливо сподобалася заключна стадія спринту — демонстрація робочої версії всім співробітникам студії, в результаті якої були отримані цінні коментарі та ідеї щодо подальшого розвитку продукту. Отримана зворотна зв'язок лягла в основу наступного спринту.

Що ж було запропоновано? Основна претензія — відсутність зворотного зв'язку з гравцем. Будь-яка взаємодія з ігровим полем повинна супроводжуватися анімацією або спеціальним ефектом. Тому більшість учасників демо пропонували, яким чином цей зворотний зв'язок можна реалізувати. Ідей було дуже багато, більшість з яких ми записали в список побажань для подальшої опрацювання та перенесення в product backlog.

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

Щоденник розробки Nizam, мультиплеерного три-в-ряд для мобільних платформ. Частина 1

Ключовий арт

Наш основний художник — Толік, займається всіма графічними ресурсами, за винятком ключового арту, над яким паралельно трудиться другий художник — Сергій. Хочу показати вам три відхилені ескізи та один прийнятий:

Щоденник розробки Nizam, мультиплеерного три-в-ряд для мобільних платформ. Частина 1

Як і в минулій грі, ключовий арт буде використовуватися в маркетингових матеріалах + екран завантаження. Всього заплановано три ключових арта.

До зустрічі!

На сьогодні все, дякуємо, що читаєте наш блог! Залишайтеся з нами, все найцікавіше попереду — підписуйтеся на нашу сторінку в Facebook, щоб бути в курсі останніх подій. Вже скоро можна буде пограти в Nizam на платформі Android. Для цього вступайте в нашу групу в Google Plus. Удачі!