«КРОК» Конференції, Науково-практична конференція "ІТ-КРОК-2021"

Розмір шрифта: 
КОМП’ЮТЕРНА ГРА В ЖАНРІ ROGUELIKE З ДИНАМІЧНИМ РОЗВИТКОМ СЮЖЕТУ
Кирило Костянтинович Кадомський, Дмитро Олександрович Сахаров

Тези


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

В ході аналізу було встановлено, що визначними особливостями під-жанру рольових відеоігор Roguelike є випадкове, процедурне створення рівнів та покроковий ігровий процес. Із збільшенням потужності користувацьких комп’ютерів та розвитком технологій розробки ігрових додатків, класичний жанр Roguelike наразі втрачає популярність. Основною причиною втрати позицій цим жанром стало обмежене тлумачення сюжету, що не є конкурентним у сучасній ігровій індустрії. У Roguelike сюжет створюється лінійним, через що швидко набридає гравцю. Виділені основні обмеження, притаманні сюжету Roguelike-ігор: а) мала кількість варіантів розвитку сюжету; б) повторюваність фрагментів сюжету, який гравець проходить неодноразово; в) відсутність варіативності сюжетних ліній, що змушує гравця іти по одній лінії сюжету; г) мала кількість характеристик персонажу, які підлягають розвитку у грі.

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

Локації представлені у вигляді вершин графа скінченого автомату. Це забезпечує можливість відслідковування пересування гравця, історії відвідування локацій та її використанні при формуванні умов розвитку сюжету. Така модель логіки дозволяє накладати умови як на доступність переходів, так і на досяжність певної локації, що надає сюжету варіативності. Ці умови змінюються із розвитком сюжету і залежать від великої кількості факторів, включаючи стан ігрового персонажу, локацію, в якій він знаходиться, а також переходи, доступні на даний момент. Оскільки чітке параметричне визначення такої великої кількості умов не є практично здійсненним, в роботі для визначення ймовірностей переходів застосовано модель нечітких міркувань. При цьому кожній умові надано ваговий коефіцієнт значущості, що застосовується для виводу. Були визначені шість вхідних лінгвістичних змінних, що описують стан ігрового персонажа: життя, сила, спритність, харизма, перше враження, дипломатія. Вихідними лінгвістичними змінними є ймовірнісні коефіцієнти переходів. Кожна лінгвістична змінна визначена на шкалі термів, описаних трапецієвидними функціями належності. Базу правил сформовано із продукцій, що узагальнено описують умови переходів

Реалізована комп’ютерна гра складається з трьох основних компонентів:

-                       бібліотека класів, що відповідають за основну логіку програми, збереження та відтворення інформації про об’єкти в програмі, зв’язок із базою даних, реалізацію нечіткої логіки;

-                       база даних, яка відповідає за збереження та обробку даних про ігрові об’єкти, складається з трьох компонентів: таблиці, представлення та процедури; така структура бази дозволяє легко маніпулювати даними всередині бази даних;

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

Для розробки програмною частини було обрано інтегроване середовище розробки MS Visual Studio 19 яка забезпечила використання мови програмування C#, із стеком технологи .NET Framework 4.7.2, WPF. База даних реалізована за допомогою СУБД MySql, та її менеджером MySql Workbench. Зв’язок між двома частинами реалізований за допомогою шаблону програмування DAO (Data Access Object).

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


Ключові слова


Roguelike; математична модель; ігровий персонаж