Як зробити візуальну новелу в поодинці
Привіт, печенькофіли, це знову я, Рисователь анімешних дівчаток, бажаючий робити гри.
Раніше я вже писала пост, про те, як в один прекрасний день я вирішила зробити поодинці візуальну новелу і навіть написала для неї сценарій. Якщо ви не бачили той пост, то раджу прочитати його, так як даний пост - його продовження.
Також хочеться подякувати за ту купку голосів, які допомогли з просуванням гри в Грінлайт.

Зупинилися ми на тому, що у нас є текст нашої новели. Але ж ми розуміємо, що текст (навіть написаний в особливому стилі) грою не є. Не хвилюйтесь! Найважливіша частина вже зроблена. Ви скажете мені: "Оріка, а як же графон. Адже новела-то візуальна!". Вірно. І не вірно. Якщо ми не будемо тупити і все-таки хоча б трохи ознайомимося з миром візуальних новел, то напевно знайдемо сотні прикладів, які нам скажуть: графіка в ВН не так важлива. Ми до неї обов'язково повернемося, але не зараз.

Я знову збиваюся з думки, але ж ця частина моєї розповіді повинна була бути про [раптово] програмної складової. Готовий сценарій ВН нам вже дозволяє зібрати сиру версію нашої гри і скласти список того, що ми повинні зробити, для того, щоб її висушити ^ __
Багато на цьому моменті такі: "Ой, все, треба шукати програміста!" Але на наше щастя індустрія розробки візуальних новел насправді вже досить розвинена, що мабуть не очевидно - багато хто стверджує, що ось тільки в останні пару років все почали робити ВН, а до цього ніхто не робив. Дурниці!

Renpy. Написаний на Python насправді майже необмежений постійно розвивається движок.
- можна створювати комерційні проекти;
- готові гри майже під всі платформи;
- простий синтаксис. Навіть якщо ви ніколи нічого не програмували, то з ним, при бажанні, можна розібратися за день. А величезна вики і форум допоможуть у важких ситуаціях - майже по всім необхідним рішенням можна знайти приклади і зробити подібне;
- формально розширюваний до нескінченності функціонал за рахунок PyGame. В цьому випадку, звичайно, треба вміти кодувати :)
- малі витрати оперативної пам'яті в класичних ВН (тобто без наворотів типу анімації кадру, тисячі партіклов на квадратний сантиметр і т.п.)
- НЕ костильного. Чи не вилітає, якщо ви все правильно написали. Чи не тупить-гальмує. чудовий :)
- треба розуміти як взагалі кодіть, але мені здається, що якщо ви не розумієте принципів, то вам взагалі не варто лізти в програмну частину і найняти кодера;
- досить непривітний інтерфейс - по суті, весь скрипт пишеться в блокноті (що насправді є плюсом - можна писати гру навіть на калькуляторі);
- викликає залежність :) Один раз попрацювавши зі скриптами ренпая, ви не за що не станете збирати свою гру на якомусь Тирано (але це ви зрозумієте тільки тоді, коли зберете ВН на ньому. Так, все складно: D)
- Не підтримує анімацію. Ну як. Формально, можна завантажити тисячі ПНГ-шек для покадрового анімації і а) вбити оптимізацію, б) померти від безвиході в спробі прописати це в коді. Не раджу навіть намагатися. Модні live2d і подібні не дружать з пітоном, так що підключити їх теж не вийде.
Якщо ви це прочитали, то ймовірно задається питанням, а нафіг взагалі інші движки, якщо ренпай по суті ідеальний?
Не знаю. Якщо ви не плануєте впроваджувати анімацію і вас не лякають скрипти, то я щиро раджу цей движок. Він позбавить вас від головного болю.

Другим за популярністю в інді-вн ком'юніті є Tyrano Builder. є по суті недогризком відомого японського скрипт мови kirikiri загорнутим в яскравий фантик. Попередня рядок вас вже насторожити!
- приємний інтерфейс і простота створення ігрового скрипта (АЛЕ на ділі виходить, що більшу частину скрипта конструктором не збереш, половину блоків при перегонці він забаг і швидше за все все буде працювати не так, як хочеться, або не працювати взагалі. В кінцевому підсумку доведеться "готовий "скрипт дописувати в блокноті, лаючись на самого себе, що взагалі вирішив з цим движком зв'язатися);
- можливість складання гри під велику кількість платформ (АЛЕ насправді движок видає плюс-мінус однакові збірки під всі платформи і їх потрібно перенести в окремих програмах за допомогою танців з бубном);
- досить широкі можливості роботи з медіа з коробки;
- підтримка моднявих SDK, типу live2d.
Якщо вам все ще потрібні окремі мінуси, то я віднесу до них забагованность фінального билда в 99% випадків, проблеми з масштабуванням, з збереженнями, з перемотуванням. Додамо жахливу підтримку, яка не розуміє, як працювати зі своїм же движком.
В інших випадках - не раджу!
Повірте моєму досвіду - я на цій шайтан-машині зробила 2 новели, але в обох випадках мені довелося звертатися до програміста (див. Пункт 3 в дужках) і кожен раз після цього збочення я даю собі установку: не зв'язуватися з цим сміттям ніколи більше.

Unity3d. Звичайно, можна писати 2д-ігри на 3д-двигунах з нуля, але this is madness! Тому, розглянемо Ассет до Юніті, а не чистий движок.
- Fungus. По суті - діалоговий Ассет. Не довелося особисто потикатися в це безкоштовне чудо, але судячи з того, що я Новомосковскла про нього, робити в ньому ВН буде проблематично.
- Visual Novel Engine - з коробки підійде тільки для простеньких новел.
- Vinoma - дуже нагадує Тирано зовні і по механікам. Напевно непоганий варіант. Але мені взагалі не сподобалося. Є проблеми з виведенням спрайтів (ресайз).
- Utage. Ось тут я нічого не можу сказати. Задумка дуже цікава і близька до того, що ми зараз пишемо в нашій Студії. На жаль, висока ціна (80 баксів!) Не дала мені можливості оцінити даний Ассет, а хотілося б.
Узагальнюючи все Ассет для ЮНИТИ виділю плюси: можливість допилювання засобами Юніті всього чого можна через SDK і Ассет, мультиплатформеність.
Жірнющій мінус: швидше за все вам доведеться вивчити юніти. Ну, не найгірше заняття, стане в нагоді :)

Novelty. Мені не довелося попрацювати з цією студією. Але функціонал у неї дуже-дуже непоганий, та й судячи з відгуків, річ це дуже придатна. Залишу демо-превью.
OnScripter і KiriKiri - дуже популярні інструменти в японському вн-ком'юніті в тому числі і комерційному. На жаль, мовний бар'єр не дозволяє мені ознайомитися з ними.
Підсумуємо. Як ви зрозуміли, я-таки вважаю лідером Ренпай. Напевно, саме тому в даний момент фінальна версія Lifemare, тієї новели, про сценарії яку ми говорили в першій частині, переписана на даному движку, а розробка Little Green Girl. великого проекту, який ми робимо з друзями, ведеться спочатку на Renpy.
Ну і саме тому, 3-тя частина мого епосу піде про режисуру і сирої збірці на цьому движку.
До наступного поста ^ __ ^

PS. До слова, якщо у вас є гроші або ви програміст, завжди можна написати свій Ассет під той же Юніті (чим ми займаємося в Студії. Але ми б і далі писали гри на Renpy, якби він підтримував live2d. Тільки тому.)