Тип работы:
Предмет:
Язык работы:


Разработка системы автоматической генерации игровых ситуаций на примере RPG-игр

Работа №159763

Тип работы

Бакалаврская работа

Предмет

информатика

Объем работы59
Год сдачи2017
Стоимость4700 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
9
Не подходит работа?

Узнай цену на написание


ВВЕДЕНИЕ 7
1. АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ 9
1.1. Обзор аналогичных систем 9
1.2. Выбор языка программирования 10
1.3. Выводы по разделу 12
2. ПРОЕКТИРОВАНИЕ ИГРОВОЙ СИСТЕМЫ 13
2.1. Определение состава системы 13
2.2. Проектирование подсистемы развития героя 16
2.3. Проектирование подсистемы игрового мира 20
2.4. Проектирование подсистемы игровых состояний 22
2.5. Проектирование подсистемы повествования 23
2.6. Проектирование подсистемы игр-головоломок 26
2.7. Проектирование подсистемы автоматической генерации игровых
ситуаций 28
2.8. Выводы по разделу 36
3. ПРОГРАММНАЯ РЕАЛИЗАЦИЯ ИГРОВОЙ СИСТЕМЫ 37
3.1. Программная реализация подсистемы развития героя 37
3.2. Программная реализация подсистемы игрового мира 38
3.3. Программная реализация подсистемы игровых состояний 40
3.4. Программная реализация подсистемы повествования 43
3.5. Программная реализация подсистемы игр-головоломок 44
3.6. Программная реализация подсистемы автоматической генерации игровых
ситуаций 46
3.7. Контрольный пример 48
3.8. Выводы по разделу 52
ЗАКЛЮЧЕНИЕ 53
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 55
ПРИЛОЖЕНИЯ 57
ПРИЛОЖЕНИЕ А1 58
ПРИЛОЖЕНИЕ А2 59
ПРИЛОЖЕНИЕ А3 61
ПРИЛОЖЕНИЕ А4 64
ПРИЛОЖЕНИЕ А5 68
ПРИЛОЖЕНИЕ А6 71
ПРИЛОЖЕНИЕ Б1 74
ПРИЛОЖЕНИЕ Б2 76
ПРИЛОЖЕНИЕ Б3 78
ПРИЛОЖЕНИЕ Б4 80
ПРИЛОЖЕНИЕ Б5 84
ПРИЛОЖЕНИЕ Б6 86

Компьютерные игры или видеоигры - вид программного обеспечения, предназначенный для организации игрового процесса, связи с партнёрами по игре, или сама выступающая в качестве партнёра .
Компьютерные игры используются в различных целях: некоторые видят в видеоиграх лишь средство развлечения или отдыха, другие применяют их для развития интеллекта и логического мышления, а для некоторых компьютерные игры становятся настолько важной частью жизни, что заменяют реальный мир, становясь наркотиком. Также видеоигры разделяются по жанрам: от обычных стрелялок от первого лица до сложных симуляторов.
С точки зрения разработки игровых событий существует 2 основных подхода:
1) Создание игровых событий вручную;
2) Создание систем процедурной генерации событий.
При создании игровых событий вручную, программист самостоятельно задает начальные условия для каждого такого события, а также не ограничивает себя в разнообразии типов игровых событий и условий их выполнения. Например, сложные головоломки с использованием физических законов.
Так как такой способ требует много времени и трудовых ресурсов, то в основном используется в крупнобюджетных игровых проектах ААА - класса, целью которых, в подавляющем большинстве случаев, является повествование, а не игровой процесс.
В случае с использованием систем процедурной генерации события должны создаваться по определённым условиям, а также привязываются к определенным тематикам. Например, генерация случайных имен неигровых персонажей в играх, расположение некоторых игровых объектов в мире, генерация лабиринтов, генерация миров.
Вся сложность данного способа зависит лишь от функционала генератора, поэтому генерации игровых ситуаций чаще всего применяется в независимых проектах, так как удешевляют и ускоряют разработку.
На сегодняшний день все больше разработчиков ориентируются на использование систем генерации. В своем цикле статей о процедурной генерации и ее будущем известный разработчик Марк Джонсон описывает огромное число возможных способов применения систем генерации. Эти статьи и послужили толчком к определению темы выпускной квалификационной работы.
На основе изложенных данных была поставлена цель: разработка системы автоматической генерации игровых ситуаций на примере RPG-игр.
Исходя из поставленной цели, были сформулированы следующие задачи:
1) Исследование существующих аналогов, и выявление их достоинств и недостатков;
2) Проектирование основных игровых подсистем;
3) Разработка игры, для демонстрации спроектированных игровых подсистем;
4) Демонстрация контрольного примера.

Возникли сложности?

Нужна помощь преподавателя?

Помощь в написании работ!


Целью выпускной квалификационной работы являлась разработка системы автоматической генерации игровых ситуаций в рамках RPG-игры. Разработанное программное обеспечение представлено в виде игры «40- летие ФВТ»
Выполнение работы было разделено на 3 раздела:
1) Анализ предметной области.
В ходе выполнения этого раздела были определены системы- конкуренты. Результат сравнения систем был продемонстрирован в виде таблицы (Таблица 1). На основе сравнения была четко определена проблема для ее дальнейшего решения. Далее был проведен анализ языков программирования. По его результатам было решено использовать язык программирования С#, а для, того чтобы упрощения разработки базовых компонентов был использован фреймворк MonoGame.
2) Проектирование игровой системы.
В ходе выполнения данного раздела были определены все основные компоненты подсистемы и выполняемые ими функции. Результатом их проектирования стал набор диаграмм (диаграмма прецедентов, структурная диаграмма взаимодействия, диаграмма игровых состояний, диаграмма взаимодействия объектов игрового мира) и блок схем (блок-схема алгоритма генерации точек входа и блок-схемы алгоритмов генерации стартовых позиций игр-головоломок).
3) Программная реализация игровой системы.
В ходе выполнения раздела были реализованы на языке C# и описаны все подсистемы. В результате были представлены диаграммы классов, описывающие подсистемы. Были раскрыты преимущества реализации для подсистемы игровых состояний, подсистемы игрового мира, подсистемы игр- головоломок. Для подсистемы генерации игровых ситуаций также были представлен листинг программы (приложение Б). Для подтверждения работоспособности игровой системы был продемонстрирован контрольный пример. Разработанная игровая система обладает большой гибкостью и способна к дальнейшему расширению.
В ходе выполнения выпускной квалификационной работы были продемонстрированы навыки, полученные в ходе обучения в Пензенском государственно университете: умение анализировать предметную область с целью выявления проблем для их решения, умение проектировать ПО и пользоваться средствами объектно-ориентированного моделирования в частности унифицированным языком моделирования (UML), умение программировать на объектно-ориентированном языке программирования (в частности C#), умение писать документацию, соответствующую всем необходимым стандартам.


1) Компьютерная игра [Электронный ресурс] - URL: https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BC%D0%BF%D1%8 C%D 1%8E%D 1 %82%D0%B5%D 1 %80%D0%BD%D0%B0%D 1 %8F_%D0 %B8%D0%B3%D1%80%D0%B0 (Дата обращения 26.05.2017)
2) Mark Jonson, Generation Next [Электронный ресурс] - URL: https ://www.rockpapershotgun. com/2016/07/22/fUture-of-procedural- generation-1/ (Дата обращения 26.05.2017)
3) About Mark Jonson [Электронный ресурс] - URL: http://www.ultimaratioregum.co.uk/about-me/ (Дата обращения 26.05.2017)
4) Официальный сайт игры Diablo 3 [Электронный ресурс] - URL: https://eu.battle.net/d3/ru/ (Дата обращения 26.05.2017)
5) Официальный сайт игры The Elder Scroll V: Skyrim [Электронный ресурс] - URL: https://elderscrolls.bethesda.net/ (Дата обращения 26.05.2017)
6) Официальный сайт игры The Witness [Электронный ресурс] - URL: http://the-witness.net/ (Дата обращения 26.05.2017)
7) C++ [Электронный ресурс] - URL: https://ru.wikipedia.org/wiki/C%2B%2B (Дата обращения 26.05.2017)
8) C# [Электронный ресурс] - URL: https://ru.wikipedia.org/wiki/C_Sharp (Дата обращения 26.05.2017)
9) Java [Электронный ресурс] - URL: https://ru.wikipedia.org/wiki/Java (Дата обращения 26.05.2017)
10) Троелсен Э. "Язык программирования C# 5.0 и платформа .NET 4.5" Вильямс, 2013 год, 1311 с.
11) Рихтер Дж. «CLR via C#. Программирование на платформе Microsoft .NET Framework 4.5 на языке C#». — 4-е изд. — СПб.: Питер, 2013. — 896 с.
12) Стиллмен Э. «Head First. Изучаем C#» / Стиллмен Э., Грин Д. — 3-е изд. — СПб.: Питер, 2017.
13) Microsoft Visual Studio [Электронный ресурс] - URL:
https ://ru.wikipedia. org/wiki/Microsoft_V isual_Studio (Дата обращения
26.05.2017)
14) MonoGame Documentation [Электронный ресурс] - URL:
http://www.monogame.net/documentation/?page=main (Дата обращения
26.05.2017)
15) Проектирование [Электронный ресурс] - URL: https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%B5%D0%BA %D 1%82%D0%B8%D 1 %80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B 8%D0%B5#cite_note-s5-2 (Дата обращения 1.06.2017)
16) UML [Электронный ресурс] - URL: https://ru.wikipedia.org/wiki/UML (Дата обращения 26.05.2017)


Работу высылаем на протяжении 30 минут после оплаты.




©2025 Cервис помощи студентам в выполнении работ