Gra RPG na konsolę z systemem ekwipunku (C++)
Ten projekt to konsolowa gra RPG, stworzona w C++, która modeluje podstawowy system walki z wrogami, zarządzanie cechami postaci oraz ekwipunkiem. Gra zbudowana jest na zasadzie modułowej i demonstruje logikę rzeczywistego cyklu gry z menu, walką, przedmiotami i ponownym uruchomieniem sesji.
W realizacji zastosowano strukturalne podejście z wykorzystaniem struct, standardowych kontenerów STL oraz losowej generacji zdarzeń.
Kluczowa funkcjonalność:
System postaci (Player):
zdrowie (HP);
siła ataku (ATK);
ekwipunek oparty na std::vector;
System wrogów (Enemy):
losowa generacja cech (HP i ATK);
dynamiczne walki z graczem;
Mechanika walki:
turystyczna walka gracz wróg;
automatyczne zakończenie walki przy zwycięstwie lub porażce;
poprawne wyświetlanie stanu zdrowia po każdym ataku;
Ekwipunek i przedmioty:
przechowywanie przedmiotów w wektorze;
użycie mikstur do regeneracji HP;
automatyczne użycie mikstur przy krytycznie niskim poziomie zdrowia;
losowa nagroda w postaci mikstury po pokonaniu wroga;
Menu zarządzania:
uruchomienie walki;
przegląd cech gracza;
przegląd i użycie ekwipunku;
wyjście z gry;
Cykl gry:
pełnoprawna pętla gry;
możliwość ponownego uruchomienia po zakończeniu sesji bez ponownego uruchamiania programu.
Aspekty techniczne:
wykorzystanie standardowych bibliotek , , , ;
generacja losowych wartości przez rand() i srand();
praca z warunkami, pętlami i funkcjami;
czysta logika bez sztywnych zależności;
skalowalna architektura, gotowa do rozszerzenia (dodawanie nowych przedmiotów, wrogów, umiejętności).
W realizacji zastosowano strukturalne podejście z wykorzystaniem struct, standardowych kontenerów STL oraz losowej generacji zdarzeń.
Kluczowa funkcjonalność:
System postaci (Player):
zdrowie (HP);
siła ataku (ATK);
ekwipunek oparty na std::vector;
System wrogów (Enemy):
losowa generacja cech (HP i ATK);
dynamiczne walki z graczem;
Mechanika walki:
turystyczna walka gracz wróg;
automatyczne zakończenie walki przy zwycięstwie lub porażce;
poprawne wyświetlanie stanu zdrowia po każdym ataku;
Ekwipunek i przedmioty:
przechowywanie przedmiotów w wektorze;
użycie mikstur do regeneracji HP;
automatyczne użycie mikstur przy krytycznie niskim poziomie zdrowia;
losowa nagroda w postaci mikstury po pokonaniu wroga;
Menu zarządzania:
uruchomienie walki;
przegląd cech gracza;
przegląd i użycie ekwipunku;
wyjście z gry;
Cykl gry:
pełnoprawna pętla gry;
możliwość ponownego uruchomienia po zakończeniu sesji bez ponownego uruchamiania programu.
Aspekty techniczne:
wykorzystanie standardowych bibliotek , , , ;
generacja losowych wartości przez rand() i srand();
praca z warunkami, pętlami i funkcjami;
czysta logika bez sztywnych zależności;
skalowalna architektura, gotowa do rozszerzenia (dodawanie nowych przedmiotów, wrogów, umiejętności).