Garkonosze / Grakonosze

0 stars 1 forks source link

Grakonosze

Gra terenowa zrealizowana w ramach Hackationu z przedmiotu Inżynieria Oprogramowania w roku 2023/2024.

Wizja projektu

Elevator Pitch

Dla uczniów szkół średnich, którzy chcą studiować informatykę, nasza gra terenowa na dni otwarte AGH jest innowacyjną formą interaktywnej zabawy edukacyjnej, pozwalającą na odkrycie Wydziału Informatyki. W odróżnieniu od tradycyjnych dni otwartych, nasz produkt daje uczestnikom możliwość poznania kierunku studiów, ale także poznanie dydaktyków w przystępnej formie jaką są mini gry edukacyjne.

Cel i Misja Projektu

Cel: Stworzenie angażującej i interaktywnej gry terenowej, która pozwoli uczniom szkół średnich na lepsze zrozumienie i poznanie Wydziału Informatyki AGH oraz zainteresowanie ich studiami na kierunkach informatycznych.

Misja: Naszym celem jest nie tylko zaprezentowanie możliwości studiowania informatyki na AGH, ale także zainspirowanie przyszłych studentów do podjęcia tego kierunku poprzez interaktywną i edukacyjną zabawę. Chcemy, aby uczestnicy mogli poznać naszych wykładowców, studentów oraz realia studiowania w przystępny i angażujący sposób.

Opis Projektu

"Grakonosze" to gra terenowa zaprojektowana specjalnie na dni otwarte AGH dla Wydziału Informatyki. Uczestnicy będą poruszać się po kampusie, skanując kody QR rozmieszczone w różnych punktach kontrolnych. Każdy kod QR odblokowuje mini grę edukacyjną, która testuje różne umiejętności informatyczne i logiczne. Po ukończeniu mini gry, uczestnik otrzymuje token w formie wirtualnego pieniążka z wizerunkiem dydaktyka WI AGH, w kolorze zależnym od wyniku (brąz, srebro, złoto, diament). Dodatkową funkcją będą kody QR zaszyte w prezentacjach i pokazach podczas dnia otwartego za które dostaje się tokeny bonusy, które nie ma pod sobą mini gierek. Na koniec, w zależności od uzyskanej ilości punktów, uczestnik otrzymuje nagrodę.

Mini gry:

Na koniec dnia zostanie ukazany score board dla wszystkich graczy i 3 najlepsze osoby otrzymają główne nagrody z "wysyłką do domu" lub do odebrania na terenie AGH.

Grupa Docelowa

Nasza gra jest skierowana do uczniów szkół średnich, szczególnie tych, którzy są zainteresowani studiami na kierunku informatyka. Główną grupą docelową są uczniowie ostatnich klas, którzy rozważają aplikację na studia wyższe w nadchodzącym roku akademickim.

Wymagania funkcjonalne

  1. Gra terenowa dla uczniów szkół średnich: Gra musi być możliwa do zrealizowania zarówno w budynku Wydziału Informatyki, jak i na terenie całego kampusu AGH.
  2. Czas gry: Cała gra powinna być możliwa do przeprowadzenia w ciągu 1-2 godzin, aby zmieścić się w harmonogramie dnia otwartego.
  3. Dostęp do mini gier: Uczestnicy powinni móc wchodzić do mini gier za pomocą kodów QR, które będą umieszczone w różnych punktach kontrolnych.
  4. System nagród i progresji: Gra musi zawierać system nagród i progresji, który umożliwi realizację różnych typów nagród za ukończenie zadań.

Wymagania niefunkcjonalne

  1. Instalacja aplikacji na urządzenia mobilne z Apple/Play store
  2. Udostępnienie dostępu do kamery na urządzenia mobilne
  3. Uczestnictwo w dniach otwartych AGH
  4. Możliwość skanowania kodów QR na urządzeniu mobilnym

Stos technologiczny

Koncepcja interfejsu użytkownika - przykładowe ekrany

Makiety UI zaimplementowane zostały w Figmie: link

Ryzyko

Plan prac

Faza Planowania:

Faza Projektowania:

Faza Implementacji i testowania:

Faza Wdrażania:

Faza Oceny:

Plany rozwoju

Raport z retro

  1. Zbyt długi setup projektu i problemy z githubem - nieuniknione było napotkanie problemów niezależnych od nas, jednak były to problemy z setupem i githubem. Mamy je za sobą i uważamy, że nie mogliśmy ich uniknąć. Mogliśmy zacząć setup projektu wczoraj podczas zajęć i dzisaj być wszyscy gotowi do pracy od godziny 9:00 co by zaoszczędziło nam trochę czasu. Mamy nauke na przyszłość, żeby planować i setupować projekt jednoczesnie, aby napotkać i rozwiązać wszystkie problemy "wcześniej"
  2. Cocconut CI i inne - stwierdziliśmy że "Easter egg" w kodzie i projekcie to co coś istotnego i ciekawego dla przyszłych oraz obeznych studentów informatyki i zdecydowaliśmy, że programując dzisiaj i jutro dorzucimy pare fajnych "smaczków".
  3. Fronted oriented project i React Native skill issue - mamy zespół bardziej backendowy niż frontendowy. Co jest małym problemem, ale to nie my wybieraliśmy temat ;) Zdecydowaliśmy się na aplikacje mobilną w React Native, co jest dla nas nie lada wyzwaniem, ale po przeanalizowaniu tematu stwierdzamy, że jest to dla nas najlepszy wybór, ponieważ mimo malego doświadczenia każdy jest w stanie coś napisać. Przeorganizowaliśmy prace i podzieliliśmy się na części projektu, dzięki czemu nie wszyscy musimy zagłębiać się w każdy temat (np czytanie kodów QR). (Tak redukujemy skill issue).

Zespół

Instrukcja pobrania i odpalenia projektu

Pobranie projektu

Skolnuj projekt za pomocą komendy

git clone https://github.com/Garkonosze/Grakonosze.git

Wymagania

Zeby uruchomić Garkonosze będziesz potrzebował:

  1. Zainstalowaną aplikację Expo GO na urządzeniu moblinym w celu przetestowania projektu

  2. Python 3.9 lub wyższą wersje

Uruchomienie aplikacji

  1. Przejdź do katalogu Garkonosze/backend w sklonowanym projecie i wykonaj
pip install -r requirements.txt
  1. Uruchom backend za pomcą
uvicorn main:app --reload --host 0.0.0.0 --port 8000
  1. Teraz w nowym oknie terminala przejdź do katalogu Garkonosze/frontend w sklonowanym projecie

  2. Wykonaj

npm install
  1. A następnie
npx expo start

WAŻNE: pamiętaj aby twoje urządzenie mobilne i komputer na którym zostało sklonowane repozytorium było podłączone do jednej sieci

  1. Skopiuj adres IP (bez portu), który się wyświetla pod kodem QR po wykonaniu punktu 5

  2. Wklej ten adres w pliku Grakonosze/Frontend/App.tsx w lini 20 zamiast

  3. Zeskanuj kod QR na urządzeniu z zainstalowaną aplikacją Expo GO za pomocą aparatu lub aplikacji Expo GO

  4. Barwo udało Ci się uruchomić aplikacje Grakonosze!