1[Title/Звание]
2MetaBot
3
4[Description/Обрисовка]
5МetaBot е игра, с цел да представи meta програмирането в пайтън по един забавен начин.
6
7Целевата група на играта са всички запалени по програмирането същества.
8
9Играта следва историята на MataBot-a Reg, който е в търсене на своята Еx, която е била отвлечена от злия Unit Test.
10За да спаси Еx, Reg трябва да преодолее всички тестове поставени от Unit Test.
11
12Unit прави тестовете по следния начин:
13 1. Поставя капани и чудовища, които взаимодействат с Reg.
14 2. Накрая на коридора той поставя AssertGate, който проверява дали състоянието на Reg е валидно.
15 3. Ако състоянието на Reg е валидно, той пуска Reg да продължи напред, в противен случай Reg трябва да опита отново.
16
17Unit обаче е зъл и е направил тестовете невъзможни за Reg, това е разбира се ако ТИ не му помогнеш.
18
19Къде идва твоята роля? Ти си програмист, който трябва да помогне на Reg да премине тестовете, като му даваш инструкции как да се движи.
20...
21Или поне това беше плана, но виж Reg като малък си падна на главата и сега не слуша инструкции, защото платката му е станала "оранжева"...
22
23Сега Reg като влезне в някое ниво, той сам решава какво да прави...
24
25Но ти като виден хакер успяваш да отвореш ТЕРМИНАЛА, в който имаш достъп до всички публични методи и полета на Reg и можеш да ги предефинираш.
26
27Сега бъдещето на тяхното бъдещо дете ReginatorEx е в твоите ръце. Успех!
28
29Примерно ниво 1:
30Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 3 кръв.
31След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 5.
32Играча следва да промени кръвта на Reg на 11 преди да започне нивото, за да може Reg да премине нивото.
33
34Примерно ниво 2:
35Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 50 кръв.
36След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 10.
37Играча следва да промени кръвта на Reg на 110 преди да започне нивото, ама кръвта му е private и не може да се променя.
38Тогава играча трябва да разгледа имплентацията на Reg и да забележи ще takeDamage е public и да го предефинира така че да не му взема кръв.
39
40[Functionalities/Надарености]
41
42 * Приложението позволява да се избират нива, които се отключват с прогреса на потребителя.
43 * Потребителят може да пише код в приложенето.
44 * Потребителят може да натисне голям зелен бутон, за да се пусне нивото.
45 * Когато стартира играта, кодът написан от потребителя се изпълнява
46 и афектира публичните методи и полета на Reg, които се ъпдейтеват преди да почне нивото.
47 * При достъпване на не публични полета и методи на Reg, Rеg умира и потребителя губи нивото
48 * При достъпване на АssertGate се проверява състоянието на Rег и ако е валидно се преминава към следващото ниво.
49 * Има капани и чудовища, които взаимодейсват с Reg.
50 * Приложението запазва прогреса на потребителя.
51
52[Milestones/Възлови точки]
53
54 * Меню на играта - меню, в което можеш да избереш, кое ниво да играеш
55 * Запазване на прогреса на нивата - В менюто се визуализира, кои нива са били минати от потребителя
56 * База на нивото - Създаване на основната част на нивото, която се визуализира на екрана.
57 Голям зелен бутон за стартиране на нивото и коридор, разделен на кутийки/секции, в които ще седят Reg, капаните и АssertGate.
58 * Визуализация на Reg и създаване на обекта, който ще бъде модифициран от кода на потребителя
59 * Стартиране на играта - При натискане на голям зелен бутон се стартира нивото, което задвижва Reg, като изпълнява предварително зададени
60 команди.
61 * Визуализация на командите - Визуализация на командите, които се изпълняват по време на нивото.
62 * Създаване на АssertGate - Визуализация на АssertGate в края на нивото и проверка дали състоянието на Reg е валидно.
63 * Губене на играта - Ако състоянието на Reg не е валидно, потребителят губи нивото.
64 * Рестартиране - При губене на нивото, потребителят може да го рестартира.
65 * Създаване на базов клас за чудовищата и капани, които си взаимодейсват с Reg.
66 * Създаване на капани и чудовища - Създаване на няколко базови капани и чудовища
67 * Писане на код от потребителя - Потребителят може да пише код в приложението, като му е предоставен Reg или част от него.
68 * Кода на потребителя се изпълнява върху Reg - кодът написано от потребителя се компилира и изпълнява върху Reg, при стартиране на нивото.
69 * Валидация на кода - ако се достъпват не публични полета или се прави нещо нередно, Reg губи от компилационна грешка.
70 * Създаване на няколко нива
71
72[Estimate in man-hours/Времеоценка в човекочасове]
73
74 ln (5184705528587058413568) човекочасове
75
76[Usage of technologies/Потребление на технологии]
77
78Pygame
----------------------------------------------------------------------
Ran 0 tests in 0.000s
OK
Виктор Бечев
05.01.2024 11:29Хахах, идеята е много яка!
С добро ниво на абстракция би следвало да имаш и възможност за адекватно количество тестове. Успех с реализацията!
|
f | 1 | [Title/Звание] | f | 1 | [Title/Звание] |
2 | MetaBot | 2 | MetaBot | ||
3 | 3 | ||||
4 | [Description/Обрисовка] | 4 | [Description/Обрисовка] | ||
5 | МetaBot е игра, с цел да представи meta програмирането в пайтън по един забавен начин. | 5 | МetaBot е игра, с цел да представи meta програмирането в пайтън по един забавен начин. | ||
6 | 6 | ||||
7 | Целевата група на играта са всички запалени по програмирането същества. | 7 | Целевата група на играта са всички запалени по програмирането същества. | ||
8 | 8 | ||||
9 | Играта следва историята на MataBot-a Reg, който е в търсене на своята Еx, която е била отвлечена от злия Unit Test. | 9 | Играта следва историята на MataBot-a Reg, който е в търсене на своята Еx, която е била отвлечена от злия Unit Test. | ||
10 | За да спаси Еx, Reg трябва да преодолее всички тестове поставени от Unit Test. | 10 | За да спаси Еx, Reg трябва да преодолее всички тестове поставени от Unit Test. | ||
11 | 11 | ||||
12 | Unit прави тестовете по следния начин: | 12 | Unit прави тестовете по следния начин: | ||
13 | 1. Поставя капани и чудовища, които взаимодействат с Reg. | 13 | 1. Поставя капани и чудовища, които взаимодействат с Reg. | ||
14 | 2. Накрая на коридора той поставя AssertGate, който проверява дали състоянието на Reg е валидно. | 14 | 2. Накрая на коридора той поставя AssertGate, който проверява дали състоянието на Reg е валидно. | ||
15 | 3. Ако състоянието на Reg е валидно, той пуска Reg да продължи напред, в противен случай Reg трябва да опита отново. | 15 | 3. Ако състоянието на Reg е валидно, той пуска Reg да продължи напред, в противен случай Reg трябва да опита отново. | ||
16 | 16 | ||||
17 | Unit обаче е зъл и е направил тестовете невъзможни за Reg, това е разбира се ако ТИ не му помогнеш. | 17 | Unit обаче е зъл и е направил тестовете невъзможни за Reg, това е разбира се ако ТИ не му помогнеш. | ||
18 | 18 | ||||
19 | Къде идва твоята роля? Ти си програмист, който трябва да помогне на Reg да премине тестовете, като му даваш инструкции как да се движи. | 19 | Къде идва твоята роля? Ти си програмист, който трябва да помогне на Reg да премине тестовете, като му даваш инструкции как да се движи. | ||
20 | ... | 20 | ... | ||
21 | Или поне това беше плана, но виж Reg като малък си падна на главата и сега не слуша инструкции, защото платката му е станала "оранжева"... | 21 | Или поне това беше плана, но виж Reg като малък си падна на главата и сега не слуша инструкции, защото платката му е станала "оранжева"... | ||
22 | 22 | ||||
23 | Сега Reg като влезне в някое ниво, той сам решава какво да прави... | 23 | Сега Reg като влезне в някое ниво, той сам решава какво да прави... | ||
24 | 24 | ||||
25 | Но ти като виден хакер успяваш да отвореш ТЕРМИНАЛА, в който имаш достъп до всички публични методи и полета на Reg и можеш да ги предефинираш. | 25 | Но ти като виден хакер успяваш да отвореш ТЕРМИНАЛА, в който имаш достъп до всички публични методи и полета на Reg и можеш да ги предефинираш. | ||
26 | 26 | ||||
27 | Сега бъдещето на тяхното бъдещо дете ReginatorEx е в твоите ръце. Успех! | 27 | Сега бъдещето на тяхното бъдещо дете ReginatorEx е в твоите ръце. Успех! | ||
28 | 28 | ||||
29 | Примерно ниво 1: | 29 | Примерно ниво 1: | ||
30 | Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 3 кръв. | 30 | Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 3 кръв. | ||
31 | След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 5. | 31 | След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 5. | ||
32 | Играча следва да промени кръвта на Reg на 11 преди да започне нивото, за да може Reg да премине нивото. | 32 | Играча следва да промени кръвта на Reg на 11 преди да започне нивото, за да може Reg да премине нивото. | ||
33 | 33 | ||||
34 | Примерно ниво 2: | 34 | Примерно ниво 2: | ||
35 | Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 50 кръв. | 35 | Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 50 кръв. | ||
36 | След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 10. | 36 | След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 10. | ||
37 | Играча следва да промени кръвта на Reg на 110 преди да започне нивото, ама кръвта му е private и не може да се променя. | 37 | Играча следва да промени кръвта на Reg на 110 преди да започне нивото, ама кръвта му е private и не може да се променя. | ||
38 | Тогава играча трябва да разгледа имплентацията на Reg и да забележи ще takeDamage е public и да го предефинира така че да не му взема кръв. | 38 | Тогава играча трябва да разгледа имплентацията на Reg и да забележи ще takeDamage е public и да го предефинира така че да не му взема кръв. | ||
39 | 39 | ||||
40 | [Functionalities/Надарености] | 40 | [Functionalities/Надарености] | ||
41 | 41 | ||||
n | 42 | Приложението позволява да се избират нива. | n | 42 | * Приложението позволява да се избират нива, които се отключват с прогреса на потребителя. |
43 | Потребителят пише код в приложенето, който афектира играта. | 43 | * Потребителят може да пише код в приложенето. | ||
44 | Потребителят може да натисне голям бутон, за да се пусне нивото. | 44 | * Потребителят може да натисне голям зелен бутон, за да се пусне нивото. | ||
45 | * Когато стартира играта, кодът написан от потребителя се изпълнява | ||||
46 | и афектира публичните методи и полета на Reg, които се ъпдейтеват преди да почне нивото. | ||||
47 | * При достъпване на не публични полета и методи на Reg, Rеg умира и потребителя губи нивото | ||||
48 | * При достъпване на АssertGate се проверява състоянието на Rег и ако е валидно се преминава към следващото ниво. | ||||
49 | * Има капани и чудовища, които взаимодейсват с Reg. | ||||
45 | Приложението запазва прогреса на потребителя. | 50 | * Приложението запазва прогреса на потребителя. | ||
46 | 51 | ||||
47 | [Milestones/Възлови точки] | 52 | [Milestones/Възлови точки] | ||
48 | 53 | ||||
n | 49 | Меню на играта | n | 54 | * Меню на играта - меню, в което можеш да избереш, кое ниво да играеш |
50 | Визуализация на Reg | 55 | * Запазване на прогреса на нивата - В менюто се визуализира, кои нива са били минати от потребителя | ||
51 | АssertGate - проверка на състоянието на обект в играта | 56 | * База на нивото - Създаване на основната част на нивото, която се визуализира на екрана. | ||
52 | Създаване на обекти взаимодейстеващи с Reg | 57 | Голям зелен бутон за стартиране на нивото и коридор, разделен на кутийки/секции, в които ще седят Reg, капаните и АssertGate. | ||
53 | Създаване на wrapper обект, на който може да му променяш само публичните полета и методи | 58 | * Визуализация на Reg и създаване на обекта, който ще бъде модифициран от кода на потребителя | ||
54 | Създаване на място в което потребителят може да пише код | 59 | * Стартиране на играта - При натискане на голям зелен бутон се стартира нивото, което задвижва Reg, като изпълнява предварително зададени | ||
55 | Кода на потребителя се изпълнява върху Reg | 60 | команди. | ||
56 | Рестартиране на нивото, ако не е минато правилно | 61 | * Визуализация на командите - Визуализация на командите, които се изпълняват по време на нивото. | ||
62 | * Създаване на АssertGate - Визуализация на АssertGate в края на нивото и проверка дали състоянието на Reg е валидно. | ||||
63 | * Губене на играта - Ако състоянието на Reg не е валидно, потребителят губи нивото. | ||||
64 | * Рестартиране - При губене на нивото, потребителят може да го рестартира. | ||||
65 | * Създаване на базов клас за чудовищата и капани, които си взаимодейсват с Reg. | ||||
66 | * Създаване на капани и чудовища - Създаване на няколко базови капани и чудовища | ||||
67 | * Писане на код от потребителя - Потребителят може да пише код в приложението, като му е предоставен Reg или част от него. | ||||
68 | * Кода на потребителя се изпълнява върху Reg - кодът написано от потребителя се компилира и изпълнява върху Reg, при стартиране на нивото. | ||||
69 | * Валидация на кода - ако се достъпват не публични полета или се прави нещо нередно, Reg губи от компилационна грешка. | ||||
70 | * Създаване на няколко нива | ||||
57 | 71 | ||||
58 | [Estimate in man-hours/Времеоценка в човекочасове] | 72 | [Estimate in man-hours/Времеоценка в човекочасове] | ||
59 | 73 | ||||
t | 60 | 30 часа | t | 74 | ln (5184705528587058413568) човекочасове |
61 | 75 | ||||
62 | [Usage of technologies/Потребление на технологии] | 76 | [Usage of technologies/Потребление на технологии] | ||
63 | 77 | ||||
64 | Pygame | 78 | Pygame |
Legends | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
|
n | 1 | # [Title/Звание] | n | 1 | [Title/Звание] |
2 | # MetaBot | 2 | MetaBot | ||
3 | 3 | ||||
n | 4 | # [Description/Обрисовка] | n | 4 | [Description/Обрисовка] |
5 | # МetaBot е игра, с цел да представи meta програмирането в пайтън по един забавен начин. | 5 | МetaBot е игра, с цел да представи meta програмирането в пайтън по един забавен начин. | ||
6 | 6 | ||||
n | 7 | # Целевата група на играта са всички запалени по програмирането същества. | n | 7 | Целевата група на играта са всички запалени по програмирането същества. |
8 | 8 | ||||
n | 9 | # Играта следва историята на MataBot-a Reg, който е в търсене на своята Еx, която е била отвлечена от злия Unit Test. | n | 9 | Играта следва историята на MataBot-a Reg, който е в търсене на своята Еx, която е била отвлечена от злия Unit Test. |
10 | # За да спаси Еx, Reg трябва да преодолее всички тестове поставени от Unit Test. | 10 | За да спаси Еx, Reg трябва да преодолее всички тестове поставени от Unit Test. | ||
11 | 11 | ||||
n | 12 | # Unit прави тестовете по следния начин: | n | 12 | Unit прави тестовете по следния начин: |
13 | # 1. Поставя капани и чудовища, които взаимодействат с Reg. | 13 | 1. Поставя капани и чудовища, които взаимодействат с Reg. | ||
14 | # 2. Накрая на коридора той поставя AssertGate, който проверява дали състоянието на Reg е валидно. | 14 | 2. Накрая на коридора той поставя AssertGate, който проверява дали състоянието на Reg е валидно. | ||
15 | # 3. Ако състоянието на Reg е валидно, той пуска Reg да продължи напред, в противен случай Reg трябва да опита отново. | 15 | 3. Ако състоянието на Reg е валидно, той пуска Reg да продължи напред, в противен случай Reg трябва да опита отново. | ||
16 | 16 | ||||
n | 17 | # Unit обаче е зъл и е направил тестовете невъзможни за Reg, това е разбира се ако ТИ не му помогнеш. | n | 17 | Unit обаче е зъл и е направил тестовете невъзможни за Reg, това е разбира се ако ТИ не му помогнеш. |
18 | 18 | ||||
n | 19 | # Къде идва твоята роля? Ти си програмист, който трябва да помогне на Reg да премине тестовете, като му даваш инструкции как да се движи. | n | 19 | Къде идва твоята роля? Ти си програмист, който трябва да помогне на Reg да премине тестовете, като му даваш инструкции как да се движи. |
20 | # ... | 20 | ... | ||
21 | # Или поне това беше плана, но виж Reg като малък си падна на главата и сега не слуша инструкции, защото платката му е станала "оранжева"... | 21 | Или поне това беше плана, но виж Reg като малък си падна на главата и сега не слуша инструкции, защото платката му е станала "оранжева"... | ||
22 | 22 | ||||
n | 23 | # Сега Reg като влезне в някое ниво, той сам решава какво да прави... | n | 23 | Сега Reg като влезне в някое ниво, той сам решава какво да прави... |
24 | 24 | ||||
n | 25 | # Но ти като виден хакер успяваш да отвореш ТЕРМИНАЛА, в който имаш достъп до всички публични методи и полета на Reg и можеш да ги предефинираш. | n | 25 | Но ти като виден хакер успяваш да отвореш ТЕРМИНАЛА, в който имаш достъп до всички публични методи и полета на Reg и можеш да ги предефинираш. |
26 | 26 | ||||
n | 27 | # Сега бъдещето на тяхното бъдещо дете ReginatorEx е в твоите ръце. Успех! | n | 27 | Сега бъдещето на тяхното бъдещо дете ReginatorEx е в твоите ръце. Успех! |
28 | 28 | ||||
n | 29 | # Примерно ниво 1: | n | 29 | Примерно ниво 1: |
30 | # Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 3 кръв. | 30 | Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 3 кръв. | ||
31 | # След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 5. | 31 | След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 5. | ||
32 | # Играча следва да промени кръвта на Reg на 11 преди да започне нивото, за да може Reg да премине нивото. | 32 | Играча следва да промени кръвта на Reg на 11 преди да започне нивото, за да може Reg да премине нивото. | ||
33 | 33 | ||||
n | 34 | # Примерно ниво 2: | n | 34 | Примерно ниво 2: |
35 | # Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 50 кръв. | 35 | Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 50 кръв. | ||
36 | # След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 10. | 36 | След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 10. | ||
37 | # Играча следва да промени кръвта на Reg на 110 преди да започне нивото, ама кръвта му е private и не може да се променя. | 37 | Играча следва да промени кръвта на Reg на 110 преди да започне нивото, ама кръвта му е private и не може да се променя. | ||
38 | # Тогава играча трябва да разгледа имплентацията на Reg и да забележи ще takeDamage е public и да го предефинира така че да не му взема кръв. | 38 | Тогава играча трябва да разгледа имплентацията на Reg и да забележи ще takeDamage е public и да го предефинира така че да не му взема кръв. | ||
39 | 39 | ||||
n | 40 | # [Functionalities/Надарености] | n | 40 | [Functionalities/Надарености] |
41 | 41 | ||||
n | 42 | # Приложението позволява да се избират нива. | n | 42 | Приложението позволява да се избират нива. |
43 | # Потребителят пише код в приложенето, който афектира играта. | 43 | Потребителят пише код в приложенето, който афектира играта. | ||
44 | # Потребителят може да натисне голям бутон, за да се пусне нивото. | 44 | Потребителят може да натисне голям бутон, за да се пусне нивото. | ||
45 | # Приложението запазва прогреса на потребителя. | 45 | Приложението запазва прогреса на потребителя. | ||
46 | 46 | ||||
n | 47 | # [Milestones/Възлови точки] | n | 47 | [Milestones/Възлови точки] |
48 | 48 | ||||
n | 49 | # Меню на играта | n | 49 | Меню на играта |
50 | # Визуализация на Reg | 50 | Визуализация на Reg | ||
51 | # АssertGate - проверка на състоянието на обект в играта | 51 | АssertGate - проверка на състоянието на обект в играта | ||
52 | # Създаване на обекти взаимодейстеващи с Reg | 52 | Създаване на обекти взаимодейстеващи с Reg | ||
53 | # Създаване на wrapper обект, на който може да му променяш само публичните полета и методи | 53 | Създаване на wrapper обект, на който може да му променяш само публичните полета и методи | ||
54 | # Създаване на място в което потребителят може да пише код | 54 | Създаване на място в което потребителят може да пише код | ||
55 | # Кода на потребителя се изпълнява върху Reg | 55 | Кода на потребителя се изпълнява върху Reg | ||
56 | # Рестартиране на нивото, ако не е минато правилно | 56 | Рестартиране на нивото, ако не е минато правилно | ||
57 | 57 | ||||
n | 58 | # [Estimate in man-hours/Времеоценка в човекочасове] | n | 58 | [Estimate in man-hours/Времеоценка в човекочасове] |
59 | 59 | ||||
n | 60 | # 30 часа | n | 60 | 30 часа |
61 | 61 | ||||
n | 62 | # [Usage of technologies/Потребление на технологии] | n | 62 | [Usage of technologies/Потребление на технологии] |
63 | 63 | ||||
t | 64 | # Pygame | t | 64 | Pygame |
Legends | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
|
n | 1 | [Title/Звание] | n | 1 | # [Title/Звание] |
2 | MetaBot | 2 | # MetaBot | ||
3 | 3 | ||||
n | 4 | [Description/Обрисовка] | n | 4 | # [Description/Обрисовка] |
5 | МetaBot е игра, с цел да представи meta програмирането в пайтън по един забавен начин. | 5 | # МetaBot е игра, с цел да представи meta програмирането в пайтън по един забавен начин. | ||
6 | 6 | ||||
n | 7 | Целевата група на играта са всички запалени по програмирането същества. | n | 7 | # Целевата група на играта са всички запалени по програмирането същества. |
8 | 8 | ||||
n | 9 | Играта следва историята на MataBot-a Reg, който е в търсене на своята Еx, която е била отвлечена от злия Unit Test. | n | 9 | # Играта следва историята на MataBot-a Reg, който е в търсене на своята Еx, която е била отвлечена от злия Unit Test. |
10 | За да спаси Еx, Reg трябва да преодолее всички тестове поставени от Unit Test. | 10 | # За да спаси Еx, Reg трябва да преодолее всички тестове поставени от Unit Test. | ||
11 | 11 | ||||
n | 12 | Unit прави тестовете по следния начин: | n | 12 | # Unit прави тестовете по следния начин: |
13 | 1. Поставя капани и чудовища, които взаимодействат с Reg. | 13 | # 1. Поставя капани и чудовища, които взаимодействат с Reg. | ||
14 | 2. Накрая на коридора той поставя AssertGate, който проверява дали състоянието на Reg е валидно. | 14 | # 2. Накрая на коридора той поставя AssertGate, който проверява дали състоянието на Reg е валидно. | ||
15 | 3. Ако състоянието на Reg е валидно, той пуска Reg да продължи напред, в противен случай Reg трябва да опита отново. | 15 | # 3. Ако състоянието на Reg е валидно, той пуска Reg да продължи напред, в противен случай Reg трябва да опита отново. | ||
16 | 16 | ||||
n | 17 | Unit обаче е зъл и е направил тестовете невъзможни за Reg, това е разбира се ако ТИ не му помогнеш. | n | 17 | # Unit обаче е зъл и е направил тестовете невъзможни за Reg, това е разбира се ако ТИ не му помогнеш. |
18 | 18 | ||||
n | 19 | Къде идва твоята роля? Ти си програмист, който трябва да помогне на Reg да премине тестовете, като му даваш инструкции как да се движи. | n | 19 | # Къде идва твоята роля? Ти си програмист, който трябва да помогне на Reg да премине тестовете, като му даваш инструкции как да се движи. |
20 | ... | 20 | # ... | ||
21 | Или поне това беше плана, но виж Reg като малък си падна на главата и сега не слуша инструкции, защото платката му е станала "оранжева"... | 21 | # Или поне това беше плана, но виж Reg като малък си падна на главата и сега не слуша инструкции, защото платката му е станала "оранжева"... | ||
22 | 22 | ||||
n | 23 | Сега Reg като влезне в някое ниво, той сам решава какво да прави... | n | 23 | # Сега Reg като влезне в някое ниво, той сам решава какво да прави... |
24 | 24 | ||||
n | 25 | Но ти като виден хакер успяваш да отвореш ТЕРМИНАЛА, в който имаш достъп до всички публични методи и полета на Reg и можеш да ги предефинираш. | n | 25 | # Но ти като виден хакер успяваш да отвореш ТЕРМИНАЛА, в който имаш достъп до всички публични методи и полета на Reg и можеш да ги предефинираш. |
26 | 26 | ||||
n | 27 | Сега бъдещето на тяхното бъдещо дете ReginatorEx е в твоите ръце. Успех! | n | 27 | # Сега бъдещето на тяхното бъдещо дете ReginatorEx е в твоите ръце. Успех! |
28 | 28 | ||||
n | 29 | Примерно ниво 1: | n | 29 | # Примерно ниво 1: |
30 | Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 3 кръв. | 30 | # Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 3 кръв. | ||
31 | След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 5. | 31 | # След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 5. | ||
32 | Играча следва да промени кръвта на Reg на 11 преди да започне нивото, за да може Reg да премине нивото. | 32 | # Играча следва да промени кръвта на Reg на 11 преди да започне нивото, за да може Reg да премине нивото. | ||
33 | 33 | ||||
n | 34 | Примерно ниво 2: | n | 34 | # Примерно ниво 2: |
35 | Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 50 кръв. | 35 | # Reg влиза в нивото с 10 кръв и решава че ще мине през 2 капана, които ще му вземат по 50 кръв. | ||
36 | След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 10. | 36 | # След това Reg стига до AssertGate, който проверява дали кръвта на Reg е 10. | ||
37 | Играча следва да промени кръвта на Reg на 110 преди да започне нивото, ама кръвта му е private и не може да се променя. | 37 | # Играча следва да промени кръвта на Reg на 110 преди да започне нивото, ама кръвта му е private и не може да се променя. | ||
38 | Тогава играча трябва да разгледа имплентацията на Reg и да забележи ще takeDamage е public и да го предефинира така че да не му взема кръв. | 38 | # Тогава играча трябва да разгледа имплентацията на Reg и да забележи ще takeDamage е public и да го предефинира така че да не му взема кръв. | ||
39 | 39 | ||||
n | 40 | [Functionalities/Надарености] | n | 40 | # [Functionalities/Надарености] |
41 | 41 | ||||
n | 42 | Приложението позволява да се избират нива. | n | 42 | # Приложението позволява да се избират нива. |
43 | Потребителят пише код в приложенето, който афектира играта. | 43 | # Потребителят пише код в приложенето, който афектира играта. | ||
44 | Потребителят може да натисне голям бутон, за да се пусне нивото. | 44 | # Потребителят може да натисне голям бутон, за да се пусне нивото. | ||
45 | Приложението запазва прогреса на потребителя. | 45 | # Приложението запазва прогреса на потребителя. | ||
46 | 46 | ||||
n | 47 | [Milestones/Възлови точки] | n | 47 | # [Milestones/Възлови точки] |
48 | 48 | ||||
n | 49 | Меню на играта | n | 49 | # Меню на играта |
50 | Визуализация на Reg | 50 | # Визуализация на Reg | ||
51 | АssertGate - проверка на състоянието на обект в играта | 51 | # АssertGate - проверка на състоянието на обект в играта | ||
52 | Създаване на обекти взаимодейстеващи с Reg | 52 | # Създаване на обекти взаимодейстеващи с Reg | ||
53 | Създаване на wrapper обект, на който може да му променяш само публичните полета и методи | 53 | # Създаване на wrapper обект, на който може да му променяш само публичните полета и методи | ||
54 | Създаване на място в което потребителят може да пише код | 54 | # Създаване на място в което потребителят може да пише код | ||
55 | Кода на потребителя се изпълнява върху Reg | 55 | # Кода на потребителя се изпълнява върху Reg | ||
56 | Рестартиране на нивото, ако не е минато правилно | 56 | # Рестартиране на нивото, ако не е минато правилно | ||
57 | 57 | ||||
n | 58 | [Estimate in man-hours/Времеоценка в човекочасове] | n | 58 | # [Estimate in man-hours/Времеоценка в човекочасове] |
59 | 59 | ||||
n | 60 | 30 часа | n | 60 | # 30 часа |
61 | 61 | ||||
n | 62 | [Usage of technologies/Потребление на технологии] | n | 62 | # [Usage of technologies/Потребление на технологии] |
63 | 63 | ||||
t | 64 | Pygame | t | 64 | # Pygame |
Legends | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
|