В докладе рассматриваются особенности видеоигр в жанре метроидвания. Выявляются проблемы разработки игр данного направления и предлагаются методы их решения на при- мере собственной разработки 2D игры в среде Unity. Описываются основные аспекты проек- та и перечисляются некоторые программные решения.
Ключевые слова: Unity, C#, 2D, электронные развлечения, электронные игры.
Развитие аппаратного и программного обеспечения оказало значительное влияние на индустрию электронных развлечений, в частности обеспечило неза- висимым разработчикам игр более комфортные условия труда и возможность выйти на рынок со своими проектами. В Сибирском государственном универ- ситете геосистем и технологий была собрана команда единомышленников, в настоящий момент занимающаяся разработкой компьютерной 2D игры в жанре метроидвания. Это название сформировано от наименований наиболее знаме- нитых представителей жанра Metroid и Castlevania [1]. По своей сути игра пред- ставляет собой платформер, уровни которого выполнены в виде лабиринта.
Отсутствие большой популярности данного жанра обуславливается тем, что разработчики специально упрощают игровой процесс, отчего он часто ста- новится однообразным и быстро надоедает игроку. Было решено отойти от тен- денции упрощения и сделать игру равномерно сложной в прохождении.
Дизайн уровней представляет собой присущий жанру лабиринт, однако для реализации тупиковых путей было придумано оригинальное решение. Вме- сто того, чтобы в конечном итоге сталкиваться с тупиком, у игрока есть воз- можность продвигаться дальше, но в случае выбора неверного пути сложность сегмента растет, доходя до непреодолимой. В конечном итоге вместо простой стены, представляющей из себя тупик, игрок сталкивается с непроходимым сегментом уровня. При этом в процессе прохождения такого сегмента игрок за- ранее не знает непроходим ли он на самом деле или просто у него недостаточно навыков. Тем самым процесс прохождения становится более увлекательным и неверное решение наказывается более интересным способом. Также для внесе- ния разнообразия игровой персонаж наделен большой маневренностью, позво- ляющей иметь больший контроль над игровым персонажем. Использование особых навыков персонажа требует затрат энергии, это вынуждает игрока ра- ционально использовать эти навыки.
Для реализации проекта была выбрана доступная межплатформенная среда разработки компьютерных игр Unity, интерфейс которой позволяет произво- дить отладку игры прямо в редакторе [2]. Программная реализация игровых ал- горитмов выполняется на объектно-ориентированном языке С#.
Подводя итоги отметим, что на момент написания статьи выработана кон- цепция по проекту, произведено планирование этапов разработки игры, создан дизайн уровней и персонажей, а также запрограммированы основные функции игрока и его взаимодействия с окружающими объектами игрового пространст- ва. В частности, реализованы функции потери неуязвимости персонажа, воз- вращения в базовое состояние, перезапуска уровня игры, перехода на другую локацию, а также динамического движения камеры. Несмотря на это, проект все еще находится на начальном этапе жизненного цикла, требует расширения коман- ды и решения большого количества технических и организационных задач.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
- Виртуальный компьютерный музей 1997-2018 [Электронный ресурс] : проект Эдуарда Пройдакова. - Режим доступа :http://www.computer-museum.ru.
- Unity Answers [Электронный ресурс] : справочник Unity, 2018. - Режим доступа : https://answers.unity.com/index.html.
ENGLISH VERSION / DEVELOPMENT OF A COMPUTER GAME PROJECT IN UNITY
Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Ph. D., Associate Professor, Department of Applied Informatics and Information Systems, phone: (383)343-18-53, e-mail: peter-bugakov@yandex.ru
Siberian State University of Geosystems and Technologies, 10, Plakhotnogo St., Novosibirsk, 630108, Russia, Student, phone: (923)152-02-03, e-mail: mellthehater@gmail.com
In this article, features of metroidvania genre videogames are discussed. The problems of de- veloping games of this type are identified and methods for solving them are proposed using the ex- ample of a self-developed 2D game in Unity. It describes the main aspects of the project and lists some software solutions.
Key words: Unity, C#, 2D, electronic entertainment, electronic games.