Домашни > Време е да помислите за проектите си! > Решения > Решението на Николай Николаев

Резултати
0 точки от тестове
10 точки от учител

10 точки общо

0 успешни теста
0 неуспешни теста
Код

  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:22

I love it. Ако не се бяхме разбрали да оценяваме между 0 и 10 - бих ти дал повече. Идеята е яка, twist-а с гласовите команди е фън и на всичкото отгоре си го описал чудесно. Както сам си казал - часовете не съм сигурен, че са реалистични, освен ако нямаш опит с въпросните технологии. Което не е проблем за целите на заданието, но може да се окаже проблем ако нямаш реалното време, което би ти отнело и очакваш да си готов за 50-тина часа. Проектът ти е хубав и има достатъчно обем, така че помисли кои неща са ти приоритети и кои не и бъди готов да дропнеш някои фийчъри, ако времето не ти позволи да направиш всичко. Ако го позволи - fucking awesome. :)
Виктор Бечев
02.01.2024 11:52

Времето е само конструкция на човешките умове. Aside from that - не целим реалистичност, а да си зададете достатъчно въпроси и накрая да видите къде сте били прави и къде не. Така че не го мисли, а ние с Жорката като минем през разписаното ще ти върнем обратна връзка. :)
Николай Николаев
30.12.2023 19:44

П.с. Не съм сигурен дали очакваните часове са реалистични :confused: .
История
Това решение има само една версия.