-
Notifications
You must be signed in to change notification settings - Fork 5
Oryginalna treść zadania
Chciałbym ażeby państwo zaprojektowali tekstową grę RPG. Jako że jest to przedmiot związany z inżynieria oprogramowania założenia projektu będą tylko ramowe. O ewentualne doprecyzowania prosze pytać “Klienta” w tym wypadku to będę ja.
Chciałbym ażeby ogólna zasada gry była na czymś na kształt drzewa decyzyjnego. Czyli żeby plansza gry była grafem, po którym można się poruszać a w każdym z węzłów grafu znajdowała się jakaś losowa przygoda. Na przykład:
Czyli mamy zestaw miejsc i zestaw dopasowanych przygód w każdym miejscu. Celem gry jest nie umrzeć nie musi się ona kończyć.
Tutaj pozostawię państwu dowolność jakie to będą postacie chciałbym żeby było ich co najmniej 3 typy. Mają różnić się noszonymi sprzętami i zdolnościami. (klimat dowolny, może to być fantasy, scifi, mafia, górnictwo, średniowiecze cokolwiek co ma postacie, którym można przypisać role i atrybuty).
Przykładowo fantasy: Mag, wojownik, złodziej. Mag może czarować wojownik nosić zbroje a złodziej zatruwać i okradać.
Czyli każda postać ma: Listę zdolności, Oraz pewna ilość sprzętów które może nosić.
Tak jak wyżej może to być cokolwiek ale musi mieć informację że pasuje do jakiejś postaci tylko może pasować do więcej niż jednej oraz dodaje jej coś.
Przykładowo: Laska maga może nosić mag daje +5 do mocy. Lub skalpel może nosić cyrulik daję +5 do ataku -3 do wylosowania udanej akcji podczas zdarzenia (bo można się zaciąć). Tutaj widać że od razu będzie potrzebny taki obiekt jak atrybut, który definiuje takie bonusy.
Uwaga do sprzętu i postaci niech na przejście danej akcji zawsze ma wpływ wypadkowa bonusów z postaci. Przykładowo w zdarzeniu można zastosować wzór
if(Rand(0,100)+ moc1-niezdarność3+WszystkiePrzedmiotyzBonusemDoMocy()>=100)
then udało się
Projekt należy najpierw zaprojektować tak jak zadanie numer 1. Tak ażeby był logicznie spójny. Następnie proszę o Ustalenie między sobą jednego lidera zarządzającego projektem i projektującego jego funkcjonalności. 1 Testera może on być rotacyjny oraz paru programistów.
Niech tester pisze testy na podstawie interface-ów dostarczonych od programistów a zarządca mu pomaga zweryfikować pracę programistów. Zespoły max. do 5 osób min. 3.