ВВЕДЕНИЕ 4
1. ИЗУЧЕНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ 6
1.1. Исследование предметной области 6
1.2. Назначение и область применения программного продукта 10
1.3. Основание для разработки программного продукта 10
1.4. Выбор и обоснование инструментальных средств 10
1.5. Определение требований к техническим средствам и программному продукту 12
2. ПОСТАНОВКА ЗАДАЧИ И ПРОЕКТИРОВАНИЕ ПРОГРАММНОГО СРЕДСТВА 13
2.1. Постановка задачи 13
2.2. Разработка пользовательского интерфейса 13
2.3. Разработка диаграмм 14
3. РЕАЛИЗАЦИЯ. ОПИСАНИЕ АЛГОРИТМОВ РАБОТЫ ПРОГРАММНОГО СРЕДСТВА 18
3.1. Реализация функциональной части 18
3.2. Создание программных модулей 23
4. ТЕСТИРОВАНИЕ 30
5. ЭКОНОМИЧЕСКИЙ РАЗДЕЛ 36
5.1. Определение себестоимости программного обеспечения (ПО), как базы для формирования цены 36
5.2. Обоснование трудоемкости разработки ПО 38
5.3. Расчет стоимости машинного времени 38
5.4. Расчет затрат на оплату труда 39
5.5. Расчет полной себестоимости программного обеспечения 41
ЗАКЛЮЧЕНИЕ 43
СПИСОК ИСТОЧНИКОВ ИНФОРМАЦИИ 44
ПРИЛОЖЕНИЕ 1 ИСХОДНЫЙ ТЕКСТ ПРОГРАММЫ 45
ПРИЛОЖЕНИЕ 2 БЛОК-СХЕМА ПРОГРАММЫ 83
ПРИЛОЖЕНИЕ 3 РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ 84
ПРИЛОЖЕНИЕ 4 ПРОТОКОЛ ИСПЫТАНИЙ ПРОГРАМННОГО ПРОДУКТА 85
Будние дни в большом городе. Шум на улицах, работа, вечные проблемы и заботы... И все это изо дня в день. Всем это рано или поздно надоедает, и у каждого возникает желание почув-ствовать себя свободным от все забот и проблем, хотя бы на несколько минут. Но не всегда по-лучается выделить для отдыха большое количество времени. И тогда, на помощь "уставшим" приходят современные компьютеры. Они дают возможность "уйти" от "серых" будней и погру-зиться в игровую реальность, которая дает возможность почувствовать себя свободным и не обремененным заботами, при этом не заставляя тратить время или деньги на дорогу, и всегда оставляя возможность максимально быстро вернуться к работе.
Каждому интересны определенные жанры игр, но никого не оставит равнодушным старые добрые RPG игры "Diablo II", "Fallout 1-2", "Baldur's Gate", "GTA", так полюбившаяся как детям, так и взрослым еще в 90x-00х годах. Но кому-то мог надоесть старый режим игры. Или просто захотелось чего-то нового. Тогда стоит попробовать создать свою игру, со старой графикой, но с новым смыслом. Такой игрой может стать игра "Бесконечный путь".
Разработкой видеоигр может заниматься как один человек, так и фирма (коллектив разра-ботчиков). Создание игры — это продолжительный и трудоёмкий процесс, состоящий из самых разнообразных этапов, включающий в себя как технические, так и творческие моменты. Сначала обдумывают цель и средство (среду) разработки игры, затем во время творчества игры создают игровую механику, уровни, сюжет, графику и звук. Процесс создания игр требует реализацию всех этапов проектирования и создания, а также процесс итерации. Разработка игр зависит в ос-новном не от одного человека или группы, а также и от руководства. Люди делятся по их виду деятельности и взаимодействию этих деятельностей. «Если разработчик также является издате-лем, или если они оба являются подразделениями одной компании, то одобрение должно дать только высшее руководство. Однако, в зависимости от размера компании-издателя, может по-требоваться 5 несколько попыток, пока идея не поднимется вверх через все слои руководства»
Актуальность создания состоит в том, что создатели игр могут создавать свои миры, лю-дей, флору и фауну, различных существ и связь всего этого друг с другом. Они должны просчи-тывать всё до мельчайших подробностей, и любая оплошность может привести к багам и полом-кам.
Объектом исследования является процесс создания компьютерных игр.
Предмет исследования – документация по созданию компьютерных игр на языке Python с библиотекой PyGame на платформе PyCharm.
Цель работы – разработать 2D игру в жанре RPG игры на платформе PyCharm. Работа включает в себя создание открытого мира с возможностью передвижения по нем персонажем. Разработку «ботов», выпадение предметов, прокачка персонажа.
Компьютерная игра должна обладать удобным и интуитивно понятным интерфейсом. При моделировании поведения проектируемой компьютерной игры возникает потребность не только представить ее структуру и процесс изменения состояний, но и детализировать особенности алго-ритмической и процедурной реализации выполняемый системой процессов.
Разработка программного обеспечения происходила по независимым графическим моду-лям, которые были связаны между собой лишь на финальной стадии работы над практической частью задания. Это было сделано для того, чтобы модули были настолько независимы друг от друга, насколько это возможно. Это поможет при дальнейших изменениях, если таковые понадо-бится вносить в систему.
Жанром выбранной игры является ролевая игра.
Ролевая игра (Role Playing Game) – игра, в которой пользователь управлять персонажем или группой персонажей, обладающих определенным набором навыков и умений. В процессе иг-рового времени, персонажи могут получать новые навыки, совершенствовать имеющиеся, за счет выполнения различных заданий
В результате выполнения данного дипломного проекта, была разработана компьютерная 2-D игра «Бесконечный путь».
Вследствие разработки программы были выполнены следующие задачи:
проанализирована предметная область программного продукта, разработка которо-го подразумевается при выполнении данного дипломного проекта;
выделены все составные части из которых состоит программный продукт, а именно всевозможные таблицы, сущности, актеры и т.д;
выбраны и обоснованы средства для разработки программного продукта такие как: язык программирования, подключаемые библиотеки.
Были реализованы следующие разделы:
анализ исходных данных и постановка задач;
разработка алгоритма решения задачи;
проектирование программного обеспечения;
реализация и тестирование;
экономическая часть.
Были разработаны приложения:
техническое задание;
описание программы;
программа и методика испытаний;
руководство оператора;
диаграмма классов (детальный вид);
диаграмма деятельности.
Заключительным этапом разработки дипломного продукта было выполнение тестирова-ния, отразившее все недостатки и ошибки программного продукта.
После выполнения всех доработок и исправления недостатков можно с уверенностью ска-зать, что программный продукт работает корректно и выполняет все возложенные на него задачи.
1) ГОСТ 19.201-78 ЕСПД. Техническое задание. Требования к содержанию и оформ-лению. – М.: Издательство стандартов, 1987.
2) ГОСТ 19.402-2000 ЕСПД. Описание программы. – М.: Изд-во стандартов, 2000.
3) ГОСТ 19.105 78 ЕСПД. Общие требования к программным документам. – М.: Из-дательство стандартов, 1987.
4) ГОСТ 19.301 2001 ЕСПД. Программа и методика испытаний. Требования к содер-жанию, оформлению и контролю качества. – М.: Издательство стандартов, 2001.
5) ГОСТ 19.505 79 ЕСПД. Руководство оператора. Требования к содержанию и оформлению. – М.: Издательство стандартов, 1987.
6) Википедия – свободная энциклопедия [Электронный ресурс]. Режим доступа: https://ru.wikipedia.org/. Дата доступа: 26.04.2018.
7) Интернет магазин программ и компьютерной техники [Электронный ресурс]. Ре-жим доступа: www.software.ru. Дата доступа: 05.05.2018.
8) Интернет-супермаркет лицензионного софта [Электронный ресурс] / Лицензионный софт. Режим доступа: http://www.softkey.ru. Дата доступа: 05.05. 2018.
9) Методические указания к выполнению экономической части дипломного проекта для студентов специальности 1-40 01 01 «Программное обеспечение информационных техноло-гий». О.А.Скуматова. Новополоцк 2011.
10) Официальный сайт PyGame (Документация) [Электронный ресурс]. Режим доступа: http://www.pygame.org/docs/. Дата доступа: 23.04.2018.
11) Официальный сайт Python [Электронный ресурс]. Режим доступа: https://www.python.org/. Дата доступа: 23.04.2018.
12) Самоучитель Python [Электронный ресурс]. Режим доступа: http://pythonworld.ru/. Дата доступа: 23.04.2018.
13) Учим Python качественно / Хабр [Электронный ресурс]. Режим доступа: https://habr.com/. Дата доступа: 20.04.2018.
14) Microsoft Developer Network [Электронный ресурс] / Официальный сайт Microsoft. – Microsoft, 2012. – Режим доступа: http://msdn.microsoft.com/en-us/. – Дата доступа: 05.05.2018.
15) Python форум – Есть вопросы? [Электронный ресурс]. Режим доступа: https://programmersforum.ru/. Дата доступа: 20.04.2018.