Решение на Време е да помислите за проектите си! от Мариян Христов

Обратно към всички решения

Към профила на Мариян Христов

Резултати

  • 3 точки от тестове
  • 0 бонус точки
  • 3 точки общо
  • 0 успешни тест(а)
  • 0 неуспешни тест(а)

Код

"""
[Title/Звание] - Играта със змията
[Description/Обрисовка] - Ще симулираме една от най-известните вградени игри на по-старите телефони - змия, която расте, когато поглъща храна. Ако се блъсне в себе си или препядствие - край на играта. Играта разполага с различни нива на сложност - лесно, средно и трудно.
[Functionalities/Надарености] Потребителят разполага с поле, както и със змия, която може да контролира чрез обособени за това бутони. При поглъщане на храна от страна на змията, тя се уголемява.
[Milestones/Възлови точки]
- конфигуриране на сложност на играта от страна на играча
- генериране на поле според избраното ниво на трудност
- при изядеждане на храна, да се уголеми змията и да се генерира нова храна.
- при сбъсък с препядствие или част от тялото на змията се показва постигнатия резултат и играта спира
[Estimate in man-hours/Времеоценка в човекочасове] - 40
[Usage of technologies/Потребление на технологии] - Pygame
"""

История (2 версии и 3 коментара)

Мариян обнови решението на 20.12.2022 16:51 (преди около 2 години)

+"""
+[Title/Звание] - Играта със змията
+
+[Description/Обрисовка] - Ще симулираме една от най-известните вградени игри на по-старите телефони - змия, която расте, когато поглъща храна. Ако се блъсне в себе си или препядствие - край на играта. Играта разполага с различни нива на сложност - лесно, средно и трудно.
+
+[Functionalities/Надарености] Потребителят разполага с поле, както и със змия, която може да контролира чрез обособени за това бутони. При поглъщане на храна от страна на змията, тя се уголемява.
+
+[Milestones/Възлови точки]
+- конфигуриране на сложност на играта от страна на играча
+- генериране на поле според избраното ниво на трудност
+- при изядеждане на храна, да се уголеми змията и да се генерира нова храна.
+
+[Estimate in man-hours/Времеоценка в човекочасове] - 40
+
+[Usage of technologies/Потребление на технологии] - Pygame
+
+"""

Мариян обнови решението на 20.12.2022 17:00 (преди около 2 години)

"""
[Title/Звание] - Играта със змията
[Description/Обрисовка] - Ще симулираме една от най-известните вградени игри на по-старите телефони - змия, която расте, когато поглъща храна. Ако се блъсне в себе си или препядствие - край на играта. Играта разполага с различни нива на сложност - лесно, средно и трудно.
[Functionalities/Надарености] Потребителят разполага с поле, както и със змия, която може да контролира чрез обособени за това бутони. При поглъщане на храна от страна на змията, тя се уголемява.
[Milestones/Възлови точки]
- конфигуриране на сложност на играта от страна на играча
- генериране на поле според избраното ниво на трудност
- при изядеждане на храна, да се уголеми змията и да се генерира нова храна.
+- при сбъсък с препядствие или част от тялото на змията се показва постигнатия резултат и играта спира
[Estimate in man-hours/Времеоценка в човекочасове] - 40
[Usage of technologies/Потребление на технологии] - Pygame
"""

Идеята много малее.

Змията е готина носталгия, но крайно семпъл проект.
Не казвам, че това е добра имплементация, но ако с 20 реда може да се постигне следното: https://www.youtube.com/shorts/Cp-Cf9mssd8
То идеята определено има сериозна нужда от усложняване.

Добре тогава, ще мога ли да направя нещо подобно на едно от вашите предложения - Кубче на Рубик solver?


предлага решения на зададена начална стойност;
има база данни за различни конфигурации;
сравнява различни решения по сложност;
дава алгоритъм за разбъркване на кубчето до достигане до определено състояние;
визуализира кубче в 3D формат, позволявайки потребителят да го завърта и разгледа отвсякъде

Също така трябва ли да го описвам наново по шаблона?

Идеи:

  • да се изхвърли идеята за сравнения на решения (Питон е относително лаком откъм памет, а задачата ще изисква доста памет)
  • да се изхвърли идеята за алгоритъм за решаване. Нямам против, но отново -- Питон не е най-удачният език.
  • да се добавят различни размери (по избор на потребителя)
  • алгоритъма за разбъркване не е необходимо да е до определено състояние; добро разбъркване ще е достатъчно интересно (какво е "добро" е отворен въпрос; "произвлно:" е достатъчно)
  • 3D визуализация е интересна, но може би ненужно комплексно. Някаква форма 2D проекция е по-разумно.
  • да има UI за решаване на ръка ИЛИ текстово въвеждане на нотация за движения
  • save/load функционалност на текущо състояние във файл; базата данни може да отпадне, защото може да се сведе до load-ване на състояние