1"""
2[Title/Звание]
3
4"Магислов" (placeholder)
5
6[Description/Обрисовка]
7Проектът представлява (Top-Down RPG) видеоигра, в която играчите поемат ролята на млад магьосник, използващ говор за управление и взаимодействие със света около него.
8Съчетавайки елементи на фентъзи с иновативни технологии, играта предоставя увлекателно приключение в мистичен свят, битки с различни злодеи и разрешаване на множество
9предизвикателства.
10
11[Functionalities/Надарености]
121. Двоен начин за управление на герой:
13• Играчът може да управлява героя хибридно чрез клавишите за нагоре, надолу, наляво и надясно, спейс и гласови команди, откривани чрез библиотеки за разпознаване на глас.
14Също така могат да се контролират с глас някои от действията в мини-игрите, но за това после.
15• Играчът може да се контролира изцяло чрез клавиатурата и да настройва желаните бутони за игра.
16
172. Възможности на играча/магьосника:
18• Да запраща огнени кълбета и други магии(опционално) към лошите.
19• Да бяга бързичко.
20• Да ходи нормално.
21• Да взима обекти, с които да си служи - тоест да се лекува с плодчета, да взима някакви джаджи и да ги носи на разни места (да, това са side quests) и други такива неща,
22които в зависимост от останалото ми време от планираната времева рамка ще или няма да направя - повече за това в Опционални функционалности.
23• Да извършва прости действия, като отваряне на врати, ковчежета и подобни (често срещаният бутон E)
24• Да се лекува и да поема щети. (Много странно звучи на български - това са healing и taking damage)
25• Да качва нива и прогресът му да се пази. • Това, което не може да прави, е да лети, да скача и да плувa.
26
273. Изкуствен интелект на противниците:
28• “Изкуствения интелект” е само за подклаждане на интереса. В действителност противниците следват и атакуват играча, използвайки прости стратегии (алгоритми) за сражения, тоест
29изкуствения интелект е силно опростен, но въпреки това доста полезен. Ще има два типа герои: ръкопашни бойци (Melee) и стрелци (Long-range magicians). Ръкопашните бойци следват
30играча и го атакуват отблизо, а стрелците поддържат достатъчно близко разстояние за атакуване и изстрелват снарядите си праволинейно или чрез проследяване на играча, така че
31винаги го удрят.
32
334. Множество мини игри:
34Мини игрите може да са част от странични куестове или да бъдат предизвикателство за събиране на ресурс. Те могат или да дадат опит (experience/xp) на играча за качване на нивото му,
35или да му позволят да продължи към следващите стъпки от куеста.
36
37Видове мини игри:
38• Въпросник тип “Стани богат” - въпросите могат да се отговарят както с глас, така и с клавишите/мишка.
39• Memory Match - показва се поредица от емоджита, които при гласово управление имат названия и играчът трябва да запомни правилната подредба и да ги назове едно след друго с посочените
40названия, а при управление с клавиатура/мишка - да ги селектира отново в правилен ред.
41• Sliding Puzzle - пъзел, в който картина е разрязана на 3x3 или 4x4 части в зависимост от трудността и е извадено едно парче. Целта на задачата е да се подреди пъзелът като се плъзгат
42парчетата до правилната наредба. Отново, играта се контролира с глас или клавиатура/мишка.
43• Color Mixing Game - смесване на цветове до получаване на търсения цвят. При гласово управление това се случва чрез назоваване на цветовете. С клавиатурата/мишката е стандартно.
44• Игри, които се случват в отворения свят на играта, включително битки с големи босове (опционално).
45• Всяка мини игра предлага уникален геймплей и възможности за печалба на XP и/или прогресиране.
46
475. Система за развитие на нивата:
48• Създаване на система за нива и прогресия за магьосника, базирана на опит от успешно завършени куестове и мини игри.
49• С повишаване на нивото, магьосникът отключва нови умения (евентуално) и текущите му магии стават по-силни.
50• Някои зони на играта ще са забранени до достигане на нужното ниво за отключването им.
51
526. Потребителски интерфейс:
53• Менюта за управление на звука, картината, управлението на героя, настройки на клавишите.
54• Healthbar, статистики на героя, ниво, “игрова зона” (playable area)
55
567. Аудио и графики:
57• Фонова музика, съответстваща на атмосферата на средата. Звукови ефекти за допълнително въздействие при изпращане на огнени топки, срещи с противници и други ключови събития.
58• Готови плочки и герои - използване на предварително създадени графични елементи в стил пиксел арт за герои, места и обекти. (Тук няма нищо python-ско освен самото вмъкване
59на звуците и картинките в играта и тяхната синхронизация с действията).
60
618. Опционални (ако всичко мине по мед и масло до тук):
62• Локализация - добавяне на български език за диалози и реч
63• Разработка на side quests - тоест самите куестове, а не подготовката за тях, като например носенето на джаджите от магьосника.
64• Карта на светът, в които се играе, с възможност за телепортация.
65• Добавяне на собствен лик към магьосника и персонализации.
66
67[Milestones/Възлови точки]
681. Основна структура на играта (12-14 часа):
69• Настройка на основната игрова платформа - включително екран, контроли и изглед.
70• Четене и записване на информация от/във json файлове, работа с файловата система и кодифициране на информацията.
71• Създаване на герой - позиция, движение с клавиши.
72• Създаване на поведение за различните проджектили (магиите, стрели).
73• Управление на нанесените щети и живот (hitboxes).
74• Бутони и менюта.
75• Преход от стая в стая или тоест преминаване между отделните карти.
76
772. Интеграция на разпознаване на глас (7-8 часа):
78• Интегриране на модул за разпознаване на глас - позволява на играчите да комуникират със света на играта и да извършват специфични действия, посредством своя глас.
79Първоначално на английски, а при останало време и на български.
80
813. Система за изкуствен интелект на противници (6-8 часа):
82• Създаване на противниците и задаване на техните характеристики.
83• Създаване на модул за прост и ефективен изкуствен интелект, управляващ действията на противниците чрез алгоритми за следене.
84
854. Имплементация на мини игри (10-12 часа):
86• Разработка на отделните модули за всяка мини игра и тяхното свързване с основната.
87• Добавяне на гласови специфики за всяка от игрите.
88
895. Система за качване на нива и развитие (5-6 часа):
90• Програмиране на система за управление на опита и нивата, поддържаща прогресията на магьосника.
91• Добавяне на логика за животопроменящи предмети - тези, които дават или отнемат hp.
92• Характеристики на играча и промените, които нанасят на останалите системи.
93
946. Интеграция на звуци и картини (5-6 часа):
95• Добавяне на аудио и визуални елементи, съчетаващи фонова музика и ефекти за подобряване на потребителското изживяване.
96
977. Дизайн на демо за представяне на всички разработени функционалности (2-3 часа)
98• Създаване на демо версия на някаква част от играта с бутони за многократна симулация на едни и същи събития.
99
100[Estimate in man-hours/Времеоценка в човекочасове]
10147-57 часа
102
103[Usage of technologies/Потребление на технологии]
1041. Pygame: Използван за основното развитие на играта, включително визуализацията и обработката на входни данни. Звуците, картините и менютата също.
105
1062. SpeechRecognition и PyAudio: Необходими за интегриране на технологията за разпознаване на глас и връзката му с Google Web Speech Api, който е обученият модел за
107разпознаване на думите, изискващ интернет връзка.
108
1093. Вградени в python библиотеки - random, os, sys, json.
110
1114. Евентуално Numpy: за изкуствения интелект и различни оптимизации.
112
1135. Git: За контрол на версиите и лесно управление на проекта.
114
1156. Готови пиксел арт асети и звуци: Използване на предварително създадени графични елементи в стил пиксел-арт и звукови файлове.
116
1177. Допускам използването на допълнителни библиотеки, за специфични дейности, които може да настъпят в процеса на разработкa.
118"""
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
Виктор Бечев
04.01.2024 20:22I love it. Ако не се бяхме разбрали да оценяваме между 0 и 10 - бих ти дал повече. Идеята е яка, twist-а с гласовите команди е фън и на всичкото отгоре си го описал чудесно.
Както сам си казал - часовете не съм сигурен, че са реалистични, освен ако нямаш опит с въпросните технологии. Което не е проблем за целите на заданието, но може да се окаже проблем ако нямаш реалното време, което би ти отнело и очакваш да си готов за 50-тина часа.
Проектът ти е хубав и има достатъчно обем, така че помисли кои неща са ти приоритети и кои не и бъди готов да дропнеш някои фийчъри, ако времето не ти позволи да направиш всичко. Ако го позволи - fucking awesome. :)
|
Виктор Бечев
02.01.2024 11:52Времето е само конструкция на човешките умове.
Aside from that - не целим реалистичност, а да си зададете достатъчно въпроси и накрая да видите къде сте били прави и къде не. Така че не го мисли, а ние с Жорката като минем през разписаното ще ти върнем обратна връзка. :)
|
Николай Николаев
30.12.2023 19:44П.с. Не съм сигурен дали очакваните часове са реалистични :confused: .
|