1"""
2[Title/Звание]
3Don't mess with the Stars
4
5
6[Description/Обрисовка]
7"Don't Mess with the Stars" е 2D grid-based игра, в която играчът управлява герой, преминаващ през лабиринти, вдъхновени от астрологията.
8Играчът събира кристали, звезден прах (star dust), зодиакални знаци и фрагменти от съзвездия, за да натрупа звездна енергия и да отключва портали към следващи нива.
9По пътя си трябва да избягва планетарни врагове, препятствия и да се справя с временни астрологични събития, които променят поведението на играта.
10Всяко ниво има собствена цел за събиране на звездна енергия и определен брой фрагменти от съзвездия (constellation fragments),
11нужни за отключване на портала. С напредването на играта нужната енергия и броят на constellation fragments се увеличават,
12враговете стават по-опасни, а събития като Full Moon и New Moon временно променят поведението им.
13Играта приключва успешно, когато играчът премине всички нива, а неуспешно — когато загуби всичките си животи.
14
15
16[Functionalities/Надарености]
17Потребителят може да стартира нова игра от началното меню.
18Той управлява героя чрез клавиатурата, като го движи по grid карта в четири посоки: нагоре, надолу, наляво и надясно.
19Играта използва карта, разделена на клетки. Всяка клетка може да бъде празна, стена на лабиринта, препятствие, collectible, враг, портал или позиция на играча.
20
21Играчът събира collectibles:
22- Star Crystal - основен кристал, който дава звездна енергия.
23- Moon Crystal - по-рядък кристал, който може да дава защитен бонус.
24- Sun Crystal - кристал, който може да дава допълнителна енергия или временен бонус.
25- Zodiac Sign - рядък collectible, който дава повече звездна енергия или временен бонус.
26- Star Dust - малък ресурс, който се появява по-често и носи допълнителна звездна енергия.
27- Constellation Fragment - специален collectible, който е нужен за отключване на портала към следващо ниво.
28
29При сблъсък с определено препятствие или враг героят губи HP.
30Препятствие (obstacle) - може да бъде непроходим tile (предмет или стена) или tile с предмет, върху който ако играчът премине, губи част от своето HP.
31
32Enemies - имат различни типове поведение, скорост и сила на атака:
33- Mercury The Retrograde се движи хаотично или преследва играча, когато той попадне в обсега му.
34- Jupiter The Mighty е по-бавен, но по-силен враг, който отнема повече HP.
35- Mars The Mad One е агресивен враг, който се движи по-бързо.
36- Venus The Charming One - може временно да забавя героя или да влияе на движението му по друг начин.
37- Eclipse The Void е специален враг, който се появява по-рядко или при определени условия.
38
39Някои врагове могат да използват pathfinding, за да намират път до играча.
40
41Game events - активират се автоматично през определени интервали от време и за определено време:
42(Алтернативен вариант е събитията да се активират, когато играчът премине през определен tile.)
43- Full Moon - събитие, което променя поведението на враговете, като ги прави по-агресивни или увеличава обсега им.
44- New Moon - събитие, което променя поведението на враговете по различен начин и може да активира по-опасни или по-непредвидими условия или врагове.
45
46Играта показва HUD с текущи животи, HP, активно събитие, цел на нивото, събрана звездна енергия,
47събрани constellation fragments и колко още остават до отключване на портала.
48След загуба потребителят вижда Game Over екран и може да започне нова игра.
49Играта може да запазва най-добро постижение във файл и да го зарежда при следващо стартиране. (за време например)
50
51Нива:
52- Всяко ниво има различна цел за събиране на звездна енергия.
53- Всяко ниво има определен брой constellation fragments, нужни за отключване на портала.
54- Когато играчът събере нужната звездна енергия и нужните constellation fragments, порталът към следващото ниво се отключва.
55- Играчът преминава към следващото ниво, когато достигне отключения портал.
56- Играта приключва успешно, когато играчът премине всички нива.
57- Героят има HP и максимум 3 живота.
58
59Когато HP достигне 0, героят губи един живот, а HP се възстановява до начална стойност.
60Играта приключва неуспешно, когато героят загуби всичките си животи.
61
62Resources:
63- Star Dust - ресурс, който играчът събира за допълнителна звездна енергия.
64- Star Energy - основният ресурс за отключване на портала към следващо ниво.
65- Constellation Fragments - специални фрагменти, нужни за отключване на портала към следващо ниво.
66- HP - здравето на героя.
67- Lives - броят животи на героя.
68
69Bonus functionalities/Бонус надарености (Ще бъдат добавени, ако остане време):
701. Различни герои - може играчът да има избор между различни герои с различни способности.
712. Adaptive difficulty - може трудността да се променя според представянето на играча.
72
73[Milestones/Възлови точки]
74Menu - контролира началното меню, стартирането на играта и избора на настройки.
75Като допълнително надграждане може да включва избор на герой.
76Maps - съхранява и управлява информацията за картите, grid позициите, свободните клетки, препятствията, началните позиции на героя, враговете,
77collectibles и портала.
78GameController - обработва основната логика на играта, включително стартиране на ниво, обновяване на състоянието,
79проверка за победа или загуба и преминаване към следващо ниво.
80UIManager - контролира визуализирането на статистиките и ресурсите в HUD-а, като животи, HP, звездна енергия,
81constellation fragments, цел на нивото и активно астрологично събитие.
82Enemy - контролира поведението на враговете, тяхната позиция, движение, скорост, сила на атака и реакция при сблъсък с играча.
83Player - контролира поведението на играча, движението по grid картата, HP, животите, събирането на предмети и активните бонуси.
84Collectible - управлява събираемите предмети като кристали, star dust, зодиакални знаци и constellation fragments,
85както и ефектите им върху звездната енергия и бонусите.
86Obstacles - описва препятствията по картата и проверява дали дадена клетка е проходима или не или пък нанася щета на играча.
87Events - контролира появата и продължителността на събитията Full Moon и New Moon, както и ефектите им върху враговете и игровата среда.
88Portal - управлява отключването на портала след събиране на достатъчно звездна енергия и нужния брой constellation fragments
89и проверява преминаването към следващо ниво.
90ScoreManager - изчислява събраната звездна енергия, следи constellation fragments и проверява дали целта на нивото е изпълнена.
91AssetsManager - зарежда и управлява изображенията, sprite-овете и другите визуални ресурси на играта.
92SaveManager - записва и зарежда постиженията на играча във файл.
93Pathfinding - реализира намиране на път до играча за някои от враговете, когато играчът попадне в техния обсег.
94Tests - съдържа тестове за основната логика на играта: движение по grid, събиране на предмети, събиране на звездна енергия,
95загуба на HP, загуба на живот, отключване на портал, активиране на събития, поведение на врагове и други.
96
97Bonus:
98DifficultyManager - допълнителен модул, който следи поведението на играча и променя трудността на играта според представянето му.
99
100[Estimate in man-hours/Времеоценка в човекочасове]
101Около 50 - 60 часа. (Без генерирането/оформянето на асетите и бонус функционалностите)
102
103[Usage of technologies/Потребление на технологии]
104Стандартна Python библиотека:
105- random, json, pathlib, time, collections, unittest (ще се използва unittest или pytest) и други.
106
107Външна библиотека:
108- pygame
109
110Възможна външна библиотека:
111- pytest (ще се използва unittest или pytest)
112
113Assets:
114- AI генерирани асети - за спрайтове на герои, врагове, collectibles и други текстури в играта.
115- Лека помощ от Photoshop - за изрязване, корекции и подготовка на спрайтове и текстури
116- Допълнителни assets от интернет, ако са нужни и са свободни за употреба
117"""
----------------------------------------------------------------------
Ran 0 tests in 0.000s
NO TESTS RAN
Виктор Бечев
20.05.2026 11:32Идеята звучи супер, описала си я чудесно.
Единственото, което бих те посъветвал е да помислиш кои от нещата са ти задължителни и кои са nice-to-have. Проектът е амбициозен, така че е хубаво да имаш някаква приоритизация, в случай, че времето не ти стигне за всичко.
|
| f | 1 | """ | f | 1 | """ |
| 2 | [Title/Звание] | 2 | [Title/Звание] | ||
| 3 | Don't mess with the Stars | 3 | Don't mess with the Stars | ||
| 4 | 4 | ||||
| 5 | 5 | ||||
| 6 | [Description/Обрисовка] | 6 | [Description/Обрисовка] | ||
| 7 | "Don't Mess with the Stars" е 2D grid-based игра, в която играчът управлява герой, преминаващ през лабиринти, вдъхновени от астрологията. | 7 | "Don't Mess with the Stars" е 2D grid-based игра, в която играчът управлява герой, преминаващ през лабиринти, вдъхновени от астрологията. | ||
| n | 8 | Играчът събира кристали, star dust, зодиакални знаци и фрагменти от съзвездия, за да натрупа звездна енергия и да отключва портали към следващи нива. | n | 8 | Играчът събира кристали, звезден прах (star dust), зодиакални знаци и фрагменти от съзвездия, за да натрупа звездна енергия и да отключва портали към следващи нива. |
| 9 | По пътя си трябва да избягва планетарни врагове, препятствия и да се справя с временни астрологични събития, които променят поведението на играта. | 9 | По пътя си трябва да избягва планетарни врагове, препятствия и да се справя с временни астрологични събития, които променят поведението на играта. | ||
| 10 | Всяко ниво има собствена цел за събиране на звездна енергия и определен брой фрагменти от съзвездия (constellation fragments), | 10 | Всяко ниво има собствена цел за събиране на звездна енергия и определен брой фрагменти от съзвездия (constellation fragments), | ||
| 11 | нужни за отключване на портала. С напредването на играта нужната енергия и броят на constellation fragments се увеличават, | 11 | нужни за отключване на портала. С напредването на играта нужната енергия и броят на constellation fragments се увеличават, | ||
| 12 | враговете стават по-опасни, а събития като Full Moon и New Moon временно променят поведението им. | 12 | враговете стават по-опасни, а събития като Full Moon и New Moon временно променят поведението им. | ||
| 13 | Играта приключва успешно, когато играчът премине всички нива, а неуспешно — когато загуби всичките си животи. | 13 | Играта приключва успешно, когато играчът премине всички нива, а неуспешно — когато загуби всичките си животи. | ||
| 14 | 14 | ||||
| 15 | 15 | ||||
| 16 | [Functionalities/Надарености] | 16 | [Functionalities/Надарености] | ||
| 17 | Потребителят може да стартира нова игра от началното меню. | 17 | Потребителят може да стартира нова игра от началното меню. | ||
| 18 | Той управлява героя чрез клавиатурата, като го движи по grid карта в четири посоки: нагоре, надолу, наляво и надясно. | 18 | Той управлява героя чрез клавиатурата, като го движи по grid карта в четири посоки: нагоре, надолу, наляво и надясно. | ||
| 19 | Играта използва карта, разделена на клетки. Всяка клетка може да бъде празна, стена на лабиринта, препятствие, collectible, враг, портал или позиция на играча. | 19 | Играта използва карта, разделена на клетки. Всяка клетка може да бъде празна, стена на лабиринта, препятствие, collectible, враг, портал или позиция на играча. | ||
| 20 | 20 | ||||
| 21 | Играчът събира collectibles: | 21 | Играчът събира collectibles: | ||
| 22 | - Star Crystal - основен кристал, който дава звездна енергия. | 22 | - Star Crystal - основен кристал, който дава звездна енергия. | ||
| 23 | - Moon Crystal - по-рядък кристал, който може да дава защитен бонус. | 23 | - Moon Crystal - по-рядък кристал, който може да дава защитен бонус. | ||
| 24 | - Sun Crystal - кристал, който може да дава допълнителна енергия или временен бонус. | 24 | - Sun Crystal - кристал, който може да дава допълнителна енергия или временен бонус. | ||
| 25 | - Zodiac Sign - рядък collectible, който дава повече звездна енергия или временен бонус. | 25 | - Zodiac Sign - рядък collectible, който дава повече звездна енергия или временен бонус. | ||
| 26 | - Star Dust - малък ресурс, който се появява по-често и носи допълнителна звездна енергия. | 26 | - Star Dust - малък ресурс, който се появява по-често и носи допълнителна звездна енергия. | ||
| 27 | - Constellation Fragment - специален collectible, който е нужен за отключване на портала към следващо ниво. | 27 | - Constellation Fragment - специален collectible, който е нужен за отключване на портала към следващо ниво. | ||
| 28 | 28 | ||||
| 29 | При сблъсък с определено препятствие или враг героят губи HP. | 29 | При сблъсък с определено препятствие или враг героят губи HP. | ||
| 30 | Препятствие (obstacle) - може да бъде непроходим tile (предмет или стена) или tile с предмет, върху който ако играчът премине, губи част от своето HP. | 30 | Препятствие (obstacle) - може да бъде непроходим tile (предмет или стена) или tile с предмет, върху който ако играчът премине, губи част от своето HP. | ||
| 31 | 31 | ||||
| 32 | Enemies - имат различни типове поведение, скорост и сила на атака: | 32 | Enemies - имат различни типове поведение, скорост и сила на атака: | ||
| 33 | - Mercury The Retrograde се движи хаотично или преследва играча, когато той попадне в обсега му. | 33 | - Mercury The Retrograde се движи хаотично или преследва играча, когато той попадне в обсега му. | ||
| 34 | - Jupiter The Mighty е по-бавен, но по-силен враг, който отнема повече HP. | 34 | - Jupiter The Mighty е по-бавен, но по-силен враг, който отнема повече HP. | ||
| 35 | - Mars The Mad One е агресивен враг, който се движи по-бързо. | 35 | - Mars The Mad One е агресивен враг, който се движи по-бързо. | ||
| 36 | - Venus The Charming One - може временно да забавя героя или да влияе на движението му по друг начин. | 36 | - Venus The Charming One - може временно да забавя героя или да влияе на движението му по друг начин. | ||
| 37 | - Eclipse The Void е специален враг, който се появява по-рядко или при определени условия. | 37 | - Eclipse The Void е специален враг, който се появява по-рядко или при определени условия. | ||
| 38 | 38 | ||||
| 39 | Някои врагове могат да използват pathfinding, за да намират път до играча. | 39 | Някои врагове могат да използват pathfinding, за да намират път до играча. | ||
| 40 | 40 | ||||
| 41 | Game events - активират се автоматично през определени интервали от време и за определено време: | 41 | Game events - активират се автоматично през определени интервали от време и за определено време: | ||
| 42 | (Алтернативен вариант е събитията да се активират, когато играчът премине през определен tile.) | 42 | (Алтернативен вариант е събитията да се активират, когато играчът премине през определен tile.) | ||
| 43 | - Full Moon - събитие, което променя поведението на враговете, като ги прави по-агресивни или увеличава обсега им. | 43 | - Full Moon - събитие, което променя поведението на враговете, като ги прави по-агресивни или увеличава обсега им. | ||
| 44 | - New Moon - събитие, което променя поведението на враговете по различен начин и може да активира по-опасни или по-непредвидими условия или врагове. | 44 | - New Moon - събитие, което променя поведението на враговете по различен начин и може да активира по-опасни или по-непредвидими условия или врагове. | ||
| 45 | 45 | ||||
| 46 | Играта показва HUD с текущи животи, HP, активно събитие, цел на нивото, събрана звездна енергия, | 46 | Играта показва HUD с текущи животи, HP, активно събитие, цел на нивото, събрана звездна енергия, | ||
| 47 | събрани constellation fragments и колко още остават до отключване на портала. | 47 | събрани constellation fragments и колко още остават до отключване на портала. | ||
| 48 | След загуба потребителят вижда Game Over екран и може да започне нова игра. | 48 | След загуба потребителят вижда Game Over екран и може да започне нова игра. | ||
| 49 | Играта може да запазва най-добро постижение във файл и да го зарежда при следващо стартиране. (за време например) | 49 | Играта може да запазва най-добро постижение във файл и да го зарежда при следващо стартиране. (за време например) | ||
| 50 | 50 | ||||
| 51 | Нива: | 51 | Нива: | ||
| 52 | - Всяко ниво има различна цел за събиране на звездна енергия. | 52 | - Всяко ниво има различна цел за събиране на звездна енергия. | ||
| 53 | - Всяко ниво има определен брой constellation fragments, нужни за отключване на портала. | 53 | - Всяко ниво има определен брой constellation fragments, нужни за отключване на портала. | ||
| 54 | - Когато играчът събере нужната звездна енергия и нужните constellation fragments, порталът към следващото ниво се отключва. | 54 | - Когато играчът събере нужната звездна енергия и нужните constellation fragments, порталът към следващото ниво се отключва. | ||
| 55 | - Играчът преминава към следващото ниво, когато достигне отключения портал. | 55 | - Играчът преминава към следващото ниво, когато достигне отключения портал. | ||
| 56 | - Играта приключва успешно, когато играчът премине всички нива. | 56 | - Играта приключва успешно, когато играчът премине всички нива. | ||
| 57 | - Героят има HP и максимум 3 живота. | 57 | - Героят има HP и максимум 3 живота. | ||
| 58 | 58 | ||||
| 59 | Когато HP достигне 0, героят губи един живот, а HP се възстановява до начална стойност. | 59 | Когато HP достигне 0, героят губи един живот, а HP се възстановява до начална стойност. | ||
| 60 | Играта приключва неуспешно, когато героят загуби всичките си животи. | 60 | Играта приключва неуспешно, когато героят загуби всичките си животи. | ||
| 61 | 61 | ||||
| 62 | Resources: | 62 | Resources: | ||
| 63 | - Star Dust - ресурс, който играчът събира за допълнителна звездна енергия. | 63 | - Star Dust - ресурс, който играчът събира за допълнителна звездна енергия. | ||
| 64 | - Star Energy - основният ресурс за отключване на портала към следващо ниво. | 64 | - Star Energy - основният ресурс за отключване на портала към следващо ниво. | ||
| 65 | - Constellation Fragments - специални фрагменти, нужни за отключване на портала към следващо ниво. | 65 | - Constellation Fragments - специални фрагменти, нужни за отключване на портала към следващо ниво. | ||
| 66 | - HP - здравето на героя. | 66 | - HP - здравето на героя. | ||
| 67 | - Lives - броят животи на героя. | 67 | - Lives - броят животи на героя. | ||
| 68 | 68 | ||||
| 69 | Bonus functionalities/Бонус надарености (Ще бъдат добавени, ако остане време): | 69 | Bonus functionalities/Бонус надарености (Ще бъдат добавени, ако остане време): | ||
| 70 | 1. Различни герои - може играчът да има избор между различни герои с различни способности. | 70 | 1. Различни герои - може играчът да има избор между различни герои с различни способности. | ||
| 71 | 2. Adaptive difficulty - може трудността да се променя според представянето на играча. | 71 | 2. Adaptive difficulty - може трудността да се променя според представянето на играча. | ||
| 72 | 72 | ||||
| 73 | [Milestones/Възлови точки] | 73 | [Milestones/Възлови точки] | ||
| 74 | Menu - контролира началното меню, стартирането на играта и избора на настройки. | 74 | Menu - контролира началното меню, стартирането на играта и избора на настройки. | ||
| 75 | Като допълнително надграждане може да включва избор на герой. | 75 | Като допълнително надграждане може да включва избор на герой. | ||
| 76 | Maps - съхранява и управлява информацията за картите, grid позициите, свободните клетки, препятствията, началните позиции на героя, враговете, | 76 | Maps - съхранява и управлява информацията за картите, grid позициите, свободните клетки, препятствията, началните позиции на героя, враговете, | ||
| 77 | collectibles и портала. | 77 | collectibles и портала. | ||
| 78 | GameController - обработва основната логика на играта, включително стартиране на ниво, обновяване на състоянието, | 78 | GameController - обработва основната логика на играта, включително стартиране на ниво, обновяване на състоянието, | ||
| 79 | проверка за победа или загуба и преминаване към следващо ниво. | 79 | проверка за победа или загуба и преминаване към следващо ниво. | ||
| 80 | UIManager - контролира визуализирането на статистиките и ресурсите в HUD-а, като животи, HP, звездна енергия, | 80 | UIManager - контролира визуализирането на статистиките и ресурсите в HUD-а, като животи, HP, звездна енергия, | ||
| 81 | constellation fragments, цел на нивото и активно астрологично събитие. | 81 | constellation fragments, цел на нивото и активно астрологично събитие. | ||
| 82 | Enemy - контролира поведението на враговете, тяхната позиция, движение, скорост, сила на атака и реакция при сблъсък с играча. | 82 | Enemy - контролира поведението на враговете, тяхната позиция, движение, скорост, сила на атака и реакция при сблъсък с играча. | ||
| 83 | Player - контролира поведението на играча, движението по grid картата, HP, животите, събирането на предмети и активните бонуси. | 83 | Player - контролира поведението на играча, движението по grid картата, HP, животите, събирането на предмети и активните бонуси. | ||
| 84 | Collectible - управлява събираемите предмети като кристали, star dust, зодиакални знаци и constellation fragments, | 84 | Collectible - управлява събираемите предмети като кристали, star dust, зодиакални знаци и constellation fragments, | ||
| 85 | както и ефектите им върху звездната енергия и бонусите. | 85 | както и ефектите им върху звездната енергия и бонусите. | ||
| 86 | Obstacles - описва препятствията по картата и проверява дали дадена клетка е проходима или не или пък нанася щета на играча. | 86 | Obstacles - описва препятствията по картата и проверява дали дадена клетка е проходима или не или пък нанася щета на играча. | ||
| 87 | Events - контролира появата и продължителността на събитията Full Moon и New Moon, както и ефектите им върху враговете и игровата среда. | 87 | Events - контролира появата и продължителността на събитията Full Moon и New Moon, както и ефектите им върху враговете и игровата среда. | ||
| 88 | Portal - управлява отключването на портала след събиране на достатъчно звездна енергия и нужния брой constellation fragments | 88 | Portal - управлява отключването на портала след събиране на достатъчно звездна енергия и нужния брой constellation fragments | ||
| 89 | и проверява преминаването към следващо ниво. | 89 | и проверява преминаването към следващо ниво. | ||
| 90 | ScoreManager - изчислява събраната звездна енергия, следи constellation fragments и проверява дали целта на нивото е изпълнена. | 90 | ScoreManager - изчислява събраната звездна енергия, следи constellation fragments и проверява дали целта на нивото е изпълнена. | ||
| 91 | AssetsManager - зарежда и управлява изображенията, sprite-овете и другите визуални ресурси на играта. | 91 | AssetsManager - зарежда и управлява изображенията, sprite-овете и другите визуални ресурси на играта. | ||
| 92 | SaveManager - записва и зарежда постиженията на играча във файл. | 92 | SaveManager - записва и зарежда постиженията на играча във файл. | ||
| 93 | Pathfinding - реализира намиране на път до играча за някои от враговете, когато играчът попадне в техния обсег. | 93 | Pathfinding - реализира намиране на път до играча за някои от враговете, когато играчът попадне в техния обсег. | ||
| 94 | Tests - съдържа тестове за основната логика на играта: движение по grid, събиране на предмети, събиране на звездна енергия, | 94 | Tests - съдържа тестове за основната логика на играта: движение по grid, събиране на предмети, събиране на звездна енергия, | ||
| 95 | загуба на HP, загуба на живот, отключване на портал, активиране на събития, поведение на врагове и други. | 95 | загуба на HP, загуба на живот, отключване на портал, активиране на събития, поведение на врагове и други. | ||
| 96 | 96 | ||||
| 97 | Bonus: | 97 | Bonus: | ||
| 98 | DifficultyManager - допълнителен модул, който следи поведението на играча и променя трудността на играта според представянето му. | 98 | DifficultyManager - допълнителен модул, който следи поведението на играча и променя трудността на играта според представянето му. | ||
| 99 | 99 | ||||
| 100 | [Estimate in man-hours/Времеоценка в човекочасове] | 100 | [Estimate in man-hours/Времеоценка в човекочасове] | ||
| 101 | Около 50 - 60 часа. (Без генерирането/оформянето на асетите и бонус функционалностите) | 101 | Около 50 - 60 часа. (Без генерирането/оформянето на асетите и бонус функционалностите) | ||
| 102 | 102 | ||||
| 103 | [Usage of technologies/Потребление на технологии] | 103 | [Usage of technologies/Потребление на технологии] | ||
| 104 | Стандартна Python библиотека: | 104 | Стандартна Python библиотека: | ||
| 105 | - random, json, pathlib, time, collections, unittest (ще се използва unittest или pytest) и други. | 105 | - random, json, pathlib, time, collections, unittest (ще се използва unittest или pytest) и други. | ||
| 106 | 106 | ||||
| 107 | Външна библиотека: | 107 | Външна библиотека: | ||
| 108 | - pygame | 108 | - pygame | ||
| 109 | 109 | ||||
| 110 | Възможна външна библиотека: | 110 | Възможна външна библиотека: | ||
| 111 | - pytest (ще се използва unittest или pytest) | 111 | - pytest (ще се използва unittest или pytest) | ||
| 112 | 112 | ||||
| 113 | Assets: | 113 | Assets: | ||
| t | 114 | - AI generated assets - за спрайтове на герои, врагове, collectibles и други текстури в играта. | t | 114 | - AI генерирани асети - за спрайтове на герои, врагове, collectibles и други текстури в играта. |
| 115 | - Лека помощ от Photoshop - за изрязване, корекции и подготовка на спрайтове и текстури | 115 | - Лека помощ от Photoshop - за изрязване, корекции и подготовка на спрайтове и текстури | ||
| 116 | - Допълнителни assets от интернет, ако са нужни и са свободни за употреба | 116 | - Допълнителни assets от интернет, ако са нужни и са свободни за употреба | ||
| 117 | """ | 117 | """ |
| Legends | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
| |||||||||
| f | 1 | """ | f | 1 | """ |
| 2 | [Title/Звание] | 2 | [Title/Звание] | ||
| 3 | Don't mess with the Stars | 3 | Don't mess with the Stars | ||
| 4 | 4 | ||||
| 5 | 5 | ||||
| 6 | [Description/Обрисовка] | 6 | [Description/Обрисовка] | ||
| 7 | "Don't Mess with the Stars" е 2D grid-based игра, в която играчът управлява герой, преминаващ през лабиринти, вдъхновени от астрологията. | 7 | "Don't Mess with the Stars" е 2D grid-based игра, в която играчът управлява герой, преминаващ през лабиринти, вдъхновени от астрологията. | ||
| 8 | Играчът събира кристали, star dust, зодиакални знаци и фрагменти от съзвездия, за да натрупа звездна енергия и да отключва портали към следващи нива. | 8 | Играчът събира кристали, star dust, зодиакални знаци и фрагменти от съзвездия, за да натрупа звездна енергия и да отключва портали към следващи нива. | ||
| 9 | По пътя си трябва да избягва планетарни врагове, препятствия и да се справя с временни астрологични събития, които променят поведението на играта. | 9 | По пътя си трябва да избягва планетарни врагове, препятствия и да се справя с временни астрологични събития, които променят поведението на играта. | ||
| 10 | Всяко ниво има собствена цел за събиране на звездна енергия и определен брой фрагменти от съзвездия (constellation fragments), | 10 | Всяко ниво има собствена цел за събиране на звездна енергия и определен брой фрагменти от съзвездия (constellation fragments), | ||
| 11 | нужни за отключване на портала. С напредването на играта нужната енергия и броят на constellation fragments се увеличават, | 11 | нужни за отключване на портала. С напредването на играта нужната енергия и броят на constellation fragments се увеличават, | ||
| 12 | враговете стават по-опасни, а събития като Full Moon и New Moon временно променят поведението им. | 12 | враговете стават по-опасни, а събития като Full Moon и New Moon временно променят поведението им. | ||
| 13 | Играта приключва успешно, когато играчът премине всички нива, а неуспешно — когато загуби всичките си животи. | 13 | Играта приключва успешно, когато играчът премине всички нива, а неуспешно — когато загуби всичките си животи. | ||
| 14 | 14 | ||||
| 15 | 15 | ||||
| 16 | [Functionalities/Надарености] | 16 | [Functionalities/Надарености] | ||
| 17 | Потребителят може да стартира нова игра от началното меню. | 17 | Потребителят може да стартира нова игра от началното меню. | ||
| 18 | Той управлява героя чрез клавиатурата, като го движи по grid карта в четири посоки: нагоре, надолу, наляво и надясно. | 18 | Той управлява героя чрез клавиатурата, като го движи по grid карта в четири посоки: нагоре, надолу, наляво и надясно. | ||
| 19 | Играта използва карта, разделена на клетки. Всяка клетка може да бъде празна, стена на лабиринта, препятствие, collectible, враг, портал или позиция на играча. | 19 | Играта използва карта, разделена на клетки. Всяка клетка може да бъде празна, стена на лабиринта, препятствие, collectible, враг, портал или позиция на играча. | ||
| 20 | 20 | ||||
| 21 | Играчът събира collectibles: | 21 | Играчът събира collectibles: | ||
| 22 | - Star Crystal - основен кристал, който дава звездна енергия. | 22 | - Star Crystal - основен кристал, който дава звездна енергия. | ||
| 23 | - Moon Crystal - по-рядък кристал, който може да дава защитен бонус. | 23 | - Moon Crystal - по-рядък кристал, който може да дава защитен бонус. | ||
| 24 | - Sun Crystal - кристал, който може да дава допълнителна енергия или временен бонус. | 24 | - Sun Crystal - кристал, който може да дава допълнителна енергия или временен бонус. | ||
| 25 | - Zodiac Sign - рядък collectible, който дава повече звездна енергия или временен бонус. | 25 | - Zodiac Sign - рядък collectible, който дава повече звездна енергия или временен бонус. | ||
| 26 | - Star Dust - малък ресурс, който се появява по-често и носи допълнителна звездна енергия. | 26 | - Star Dust - малък ресурс, който се появява по-често и носи допълнителна звездна енергия. | ||
| 27 | - Constellation Fragment - специален collectible, който е нужен за отключване на портала към следващо ниво. | 27 | - Constellation Fragment - специален collectible, който е нужен за отключване на портала към следващо ниво. | ||
| 28 | 28 | ||||
| 29 | При сблъсък с определено препятствие или враг героят губи HP. | 29 | При сблъсък с определено препятствие или враг героят губи HP. | ||
| 30 | Препятствие (obstacle) - може да бъде непроходим tile (предмет или стена) или tile с предмет, върху който ако играчът премине, губи част от своето HP. | 30 | Препятствие (obstacle) - може да бъде непроходим tile (предмет или стена) или tile с предмет, върху който ако играчът премине, губи част от своето HP. | ||
| 31 | 31 | ||||
| 32 | Enemies - имат различни типове поведение, скорост и сила на атака: | 32 | Enemies - имат различни типове поведение, скорост и сила на атака: | ||
| 33 | - Mercury The Retrograde се движи хаотично или преследва играча, когато той попадне в обсега му. | 33 | - Mercury The Retrograde се движи хаотично или преследва играча, когато той попадне в обсега му. | ||
| 34 | - Jupiter The Mighty е по-бавен, но по-силен враг, който отнема повече HP. | 34 | - Jupiter The Mighty е по-бавен, но по-силен враг, който отнема повече HP. | ||
| 35 | - Mars The Mad One е агресивен враг, който се движи по-бързо. | 35 | - Mars The Mad One е агресивен враг, който се движи по-бързо. | ||
| 36 | - Venus The Charming One - може временно да забавя героя или да влияе на движението му по друг начин. | 36 | - Venus The Charming One - може временно да забавя героя или да влияе на движението му по друг начин. | ||
| 37 | - Eclipse The Void е специален враг, който се появява по-рядко или при определени условия. | 37 | - Eclipse The Void е специален враг, който се появява по-рядко или при определени условия. | ||
| 38 | 38 | ||||
| 39 | Някои врагове могат да използват pathfinding, за да намират път до играча. | 39 | Някои врагове могат да използват pathfinding, за да намират път до играча. | ||
| 40 | 40 | ||||
| 41 | Game events - активират се автоматично през определени интервали от време и за определено време: | 41 | Game events - активират се автоматично през определени интервали от време и за определено време: | ||
| 42 | (Алтернативен вариант е събитията да се активират, когато играчът премине през определен tile.) | 42 | (Алтернативен вариант е събитията да се активират, когато играчът премине през определен tile.) | ||
| 43 | - Full Moon - събитие, което променя поведението на враговете, като ги прави по-агресивни или увеличава обсега им. | 43 | - Full Moon - събитие, което променя поведението на враговете, като ги прави по-агресивни или увеличава обсега им. | ||
| 44 | - New Moon - събитие, което променя поведението на враговете по различен начин и може да активира по-опасни или по-непредвидими условия или врагове. | 44 | - New Moon - събитие, което променя поведението на враговете по различен начин и може да активира по-опасни или по-непредвидими условия или врагове. | ||
| 45 | 45 | ||||
| 46 | Играта показва HUD с текущи животи, HP, активно събитие, цел на нивото, събрана звездна енергия, | 46 | Играта показва HUD с текущи животи, HP, активно събитие, цел на нивото, събрана звездна енергия, | ||
| 47 | събрани constellation fragments и колко още остават до отключване на портала. | 47 | събрани constellation fragments и колко още остават до отключване на портала. | ||
| 48 | След загуба потребителят вижда Game Over екран и може да започне нова игра. | 48 | След загуба потребителят вижда Game Over екран и може да започне нова игра. | ||
| 49 | Играта може да запазва най-добро постижение във файл и да го зарежда при следващо стартиране. (за време например) | 49 | Играта може да запазва най-добро постижение във файл и да го зарежда при следващо стартиране. (за време например) | ||
| 50 | 50 | ||||
| 51 | Нива: | 51 | Нива: | ||
| 52 | - Всяко ниво има различна цел за събиране на звездна енергия. | 52 | - Всяко ниво има различна цел за събиране на звездна енергия. | ||
| 53 | - Всяко ниво има определен брой constellation fragments, нужни за отключване на портала. | 53 | - Всяко ниво има определен брой constellation fragments, нужни за отключване на портала. | ||
| 54 | - Когато играчът събере нужната звездна енергия и нужните constellation fragments, порталът към следващото ниво се отключва. | 54 | - Когато играчът събере нужната звездна енергия и нужните constellation fragments, порталът към следващото ниво се отключва. | ||
| 55 | - Играчът преминава към следващото ниво, когато достигне отключения портал. | 55 | - Играчът преминава към следващото ниво, когато достигне отключения портал. | ||
| 56 | - Играта приключва успешно, когато играчът премине всички нива. | 56 | - Играта приключва успешно, когато играчът премине всички нива. | ||
| 57 | - Героят има HP и максимум 3 живота. | 57 | - Героят има HP и максимум 3 живота. | ||
| 58 | 58 | ||||
| 59 | Когато HP достигне 0, героят губи един живот, а HP се възстановява до начална стойност. | 59 | Когато HP достигне 0, героят губи един живот, а HP се възстановява до начална стойност. | ||
| 60 | Играта приключва неуспешно, когато героят загуби всичките си животи. | 60 | Играта приключва неуспешно, когато героят загуби всичките си животи. | ||
| 61 | 61 | ||||
| 62 | Resources: | 62 | Resources: | ||
| 63 | - Star Dust - ресурс, който играчът събира за допълнителна звездна енергия. | 63 | - Star Dust - ресурс, който играчът събира за допълнителна звездна енергия. | ||
| 64 | - Star Energy - основният ресурс за отключване на портала към следващо ниво. | 64 | - Star Energy - основният ресурс за отключване на портала към следващо ниво. | ||
| 65 | - Constellation Fragments - специални фрагменти, нужни за отключване на портала към следващо ниво. | 65 | - Constellation Fragments - специални фрагменти, нужни за отключване на портала към следващо ниво. | ||
| 66 | - HP - здравето на героя. | 66 | - HP - здравето на героя. | ||
| 67 | - Lives - броят животи на героя. | 67 | - Lives - броят животи на героя. | ||
| 68 | 68 | ||||
| 69 | Bonus functionalities/Бонус надарености (Ще бъдат добавени, ако остане време): | 69 | Bonus functionalities/Бонус надарености (Ще бъдат добавени, ако остане време): | ||
| 70 | 1. Различни герои - може играчът да има избор между различни герои с различни способности. | 70 | 1. Различни герои - може играчът да има избор между различни герои с различни способности. | ||
| 71 | 2. Adaptive difficulty - може трудността да се променя според представянето на играча. | 71 | 2. Adaptive difficulty - може трудността да се променя според представянето на играча. | ||
| 72 | 72 | ||||
| 73 | [Milestones/Възлови точки] | 73 | [Milestones/Възлови точки] | ||
| 74 | Menu - контролира началното меню, стартирането на играта и избора на настройки. | 74 | Menu - контролира началното меню, стартирането на играта и избора на настройки. | ||
| 75 | Като допълнително надграждане може да включва избор на герой. | 75 | Като допълнително надграждане може да включва избор на герой. | ||
| 76 | Maps - съхранява и управлява информацията за картите, grid позициите, свободните клетки, препятствията, началните позиции на героя, враговете, | 76 | Maps - съхранява и управлява информацията за картите, grid позициите, свободните клетки, препятствията, началните позиции на героя, враговете, | ||
| 77 | collectibles и портала. | 77 | collectibles и портала. | ||
| 78 | GameController - обработва основната логика на играта, включително стартиране на ниво, обновяване на състоянието, | 78 | GameController - обработва основната логика на играта, включително стартиране на ниво, обновяване на състоянието, | ||
| 79 | проверка за победа или загуба и преминаване към следващо ниво. | 79 | проверка за победа или загуба и преминаване към следващо ниво. | ||
| 80 | UIManager - контролира визуализирането на статистиките и ресурсите в HUD-а, като животи, HP, звездна енергия, | 80 | UIManager - контролира визуализирането на статистиките и ресурсите в HUD-а, като животи, HP, звездна енергия, | ||
| 81 | constellation fragments, цел на нивото и активно астрологично събитие. | 81 | constellation fragments, цел на нивото и активно астрологично събитие. | ||
| 82 | Enemy - контролира поведението на враговете, тяхната позиция, движение, скорост, сила на атака и реакция при сблъсък с играча. | 82 | Enemy - контролира поведението на враговете, тяхната позиция, движение, скорост, сила на атака и реакция при сблъсък с играча. | ||
| 83 | Player - контролира поведението на играча, движението по grid картата, HP, животите, събирането на предмети и активните бонуси. | 83 | Player - контролира поведението на играча, движението по grid картата, HP, животите, събирането на предмети и активните бонуси. | ||
| 84 | Collectible - управлява събираемите предмети като кристали, star dust, зодиакални знаци и constellation fragments, | 84 | Collectible - управлява събираемите предмети като кристали, star dust, зодиакални знаци и constellation fragments, | ||
| 85 | както и ефектите им върху звездната енергия и бонусите. | 85 | както и ефектите им върху звездната енергия и бонусите. | ||
| 86 | Obstacles - описва препятствията по картата и проверява дали дадена клетка е проходима или не или пък нанася щета на играча. | 86 | Obstacles - описва препятствията по картата и проверява дали дадена клетка е проходима или не или пък нанася щета на играча. | ||
| 87 | Events - контролира появата и продължителността на събитията Full Moon и New Moon, както и ефектите им върху враговете и игровата среда. | 87 | Events - контролира появата и продължителността на събитията Full Moon и New Moon, както и ефектите им върху враговете и игровата среда. | ||
| 88 | Portal - управлява отключването на портала след събиране на достатъчно звездна енергия и нужния брой constellation fragments | 88 | Portal - управлява отключването на портала след събиране на достатъчно звездна енергия и нужния брой constellation fragments | ||
| 89 | и проверява преминаването към следващо ниво. | 89 | и проверява преминаването към следващо ниво. | ||
| 90 | ScoreManager - изчислява събраната звездна енергия, следи constellation fragments и проверява дали целта на нивото е изпълнена. | 90 | ScoreManager - изчислява събраната звездна енергия, следи constellation fragments и проверява дали целта на нивото е изпълнена. | ||
| 91 | AssetsManager - зарежда и управлява изображенията, sprite-овете и другите визуални ресурси на играта. | 91 | AssetsManager - зарежда и управлява изображенията, sprite-овете и другите визуални ресурси на играта. | ||
| t | t | 92 | SaveManager - записва и зарежда постиженията на играча във файл. | ||
| 92 | Pathfinding - реализира намиране на път до играча за някои от враговете, когато играчът попадне в техния обсег. | 93 | Pathfinding - реализира намиране на път до играча за някои от враговете, когато играчът попадне в техния обсег. | ||
| 93 | Tests - съдържа тестове за основната логика на играта: движение по grid, събиране на предмети, събиране на звездна енергия, | 94 | Tests - съдържа тестове за основната логика на играта: движение по grid, събиране на предмети, събиране на звездна енергия, | ||
| 94 | загуба на HP, загуба на живот, отключване на портал, активиране на събития, поведение на врагове и други. | 95 | загуба на HP, загуба на живот, отключване на портал, активиране на събития, поведение на врагове и други. | ||
| 95 | 96 | ||||
| 96 | Bonus: | 97 | Bonus: | ||
| 97 | DifficultyManager - допълнителен модул, който следи поведението на играча и променя трудността на играта според представянето му. | 98 | DifficultyManager - допълнителен модул, който следи поведението на играча и променя трудността на играта според представянето му. | ||
| 98 | 99 | ||||
| 99 | [Estimate in man-hours/Времеоценка в човекочасове] | 100 | [Estimate in man-hours/Времеоценка в човекочасове] | ||
| 100 | Около 50 - 60 часа. (Без генерирането/оформянето на асетите и бонус функционалностите) | 101 | Около 50 - 60 часа. (Без генерирането/оформянето на асетите и бонус функционалностите) | ||
| 101 | 102 | ||||
| 102 | [Usage of technologies/Потребление на технологии] | 103 | [Usage of technologies/Потребление на технологии] | ||
| 103 | Стандартна Python библиотека: | 104 | Стандартна Python библиотека: | ||
| 104 | - random, json, pathlib, time, collections, unittest (ще се използва unittest или pytest) и други. | 105 | - random, json, pathlib, time, collections, unittest (ще се използва unittest или pytest) и други. | ||
| 105 | 106 | ||||
| 106 | Външна библиотека: | 107 | Външна библиотека: | ||
| 107 | - pygame | 108 | - pygame | ||
| 108 | 109 | ||||
| 109 | Възможна външна библиотека: | 110 | Възможна външна библиотека: | ||
| 110 | - pytest (ще се използва unittest или pytest) | 111 | - pytest (ще се използва unittest или pytest) | ||
| 111 | 112 | ||||
| 112 | Assets: | 113 | Assets: | ||
| 113 | - AI generated assets - за спрайтове на герои, врагове, collectibles и други текстури в играта. | 114 | - AI generated assets - за спрайтове на герои, врагове, collectibles и други текстури в играта. | ||
| 114 | - Лека помощ от Photoshop - за изрязване, корекции и подготовка на спрайтове и текстури | 115 | - Лека помощ от Photoshop - за изрязване, корекции и подготовка на спрайтове и текстури | ||
| 115 | - Допълнителни assets от интернет, ако са нужни и са свободни за употреба | 116 | - Допълнителни assets от интернет, ако са нужни и са свободни за употреба | ||
| 116 | """ | 117 | """ |
| Legends | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
| |||||||||