18.1: Przyszłe ulepszenia gry

Gratulacje!

To ostatnia lekcja podstawowa, a twoja gra już działa!

Znasz już wszystkie podstawowe i najczęściej używane działania pozwalające na tworzenie innych programów w języku C#.

Jednak jeśli chcesz poważnie podchodzić do programowania, to jeszcze wiele nauki przed Tobą. Sam programuje od ponad 30 lat i codziennie uczę się czegoś nowego.

 

Rozbudowa gry

Na początek najprościej będzie rozbudować świat, dodać kolejne lokacje, zadania, potwory i przedmioty.

Możesz narysować mapę swojego większego świata i zmodyfikować klasę World, uwzględniając w niej nowe lokalizacje. Ponadto możesz stworzyć kolejne potwory i zadania oraz dodać potężniejsze bronie, aby gracz mógł pokonać nowego bossa.

 

Pomysły na nowe funkcje

Nasza gra RPG jest bardzo prosta, więc można jeszcze dodać do niej mnóstwo funkcji.

Poniżej przedstawiam kilka inspiracji:

  • zapisywanie aktualnego stanu gry na dysku i późniejsze wczytywanie go;
  • zwiększanie poziomu gracza wraz z uzyskiwaniem punktów doświadczenia;
    • zwiększanie maksymalnej liczbę punktów MaximumHitPoints z każdym nowym poziomem;
    • dodanie minimalnego poziomu wymaganego do używania niektórych przedmiotów;
    • dodanie minimalnego poziomu wymaganego do przejścia do niektórych lokacji;
  • dodanie losowości do walk;
    • sprawdzenie, czy gracz trafił potwora;
    • sprawdzenie, czy potwór trafił gracza;
  • dodanie atrybutów gracza (siła, zręczność, itp.);
    • używanie atrybutów podczas walki: kto pierwszy atakuje, ilość zadawanych obrażeń itp.;
  • dodanie zbroi i pierścieni;
    • utrudnianie potworowi trafienia gracza;
    • zapewnianie specjalnych korzyści: zwiększona szansa na trafienie, zwiększone obrażenia, itp.;
  • dodanie umiejętności rzemieślniczych, które gracz może poznać;
  • dodanie przepisów rzemieślniczych;
    • wymaganie odpowiednich umiejętności;
    • wymaganie składników (przedmioty w ekwipunku);
  • wprowadzenie powtarzalności niektórych zadań;
  • stworzenie zestawu zadań (trzeba ukończyć Zadanie A, aby otrzymać Zadanie B);
  • dodanie zwojów magicznych;
  • dodanie zaklęć;
    • wymagane poziomy dla zaklęć;
    • rzucanie zaklęć wymaga przedmiotów (może?);
  • dodanie kolejnych mikstur;
    • mocniejsze mikstury lecznicze;
    • mikstury zwiększające szanse trafienia wroga lub zadawane obrażenia;
  • dodanie trucizn do użycia podczas walki;
  • dodanie zwierząt;
    • wspomaganie gracza podczas walki z przeciwnikami;
    • leczenie gracza podczas walki z przeciwnikami;
  • dodanie sklepów/sprzedawców;
    • gracz może sprzedawać niepotrzebne przedmioty i kupować nowe wyposażenie, zwoje, mikstury, trucizny i składniki rzemieślnicze/magiczne.

 

Aby dodatkowo oczyścić kod programu, można zapoznać się z nowymi technikami programowania.

  • LINQ do obsługi list;
  • zdarzenia/delegowanie do obsługi komunikacji pomiędzy projektem logiki i interfejsu użytkownika – pozwalają przenieść kod logiki z projektu interfejsu użytkownika;
  • listy BindingList ułatwiające wielokrotnie uzupełnianie formantów ComboBox i DataGridView w interfejsie użytkownika.

 

Kontrola wersji

Jeśli zamierzasz wprowadzać kolejne zmiany lub chcesz napisać następny program, zdecydowanie warto zapoznać się z narzędziami kontroli wersji.

Przed wprowadzeniem zmian można utworzyć kopię zapasową programu i skopiować folder rozwiązania do nowego położenia, ale w takiej sytuacji oprogramowanie do kontroli wersji sprawdzi się znacznie lepiej.

Pozwoli ono śledzić wszystkie zmiany wprowadzone kiedykolwiek w kodzie programu. Jest to niezwykle pomocne, gdy wprowadzone zmiany powodują uszkodzenie programu i chcesz wrócić do poprzedniej, działającej wersji.

Sam używam rozwiązań TortoiseSVN (Subversion) i VisualSVN (wtyczka do Visual Studio, która współpracuje z TortoiseSVN).

Git jest kolejnym popularnym narzędziem do kontroli wersji. Wielu programistów korzysta z Git w wersji internetowej, czyli z GitHub.

Do narzędzi do kontroli wersji trzeba się trochę przyzwyczaić i zaznajomić z ich funkcjami, ale jak już rozumiesz, o co w nich chodzi, to wejdą one do codziennego zestawu używanych przez Ciebie programów i będziesz z nich korzystał odruchowo. I kiedy po raz pierwszy będzie trzeba wrócić do poprzedniej wersji kodu aplikacji, to podziękujesz sobie, że korzystasz z tych programów.

 

Podsumowanie

Masz już podstawową wersję grę, więc możesz ją rozwijać.

Mam nadzieję, że podobały Ci się moje lekcje i udało Ci się z nich dowiedzieć wielu nowych rzeczy.

Jeśli masz pytania odnośnie do omawianych przez mnie zagadnień, chcesz poznać inne funkcje grze lub lepiej nauczyć się programować w C#, skontaktuj się ze mną.

Leave a Reply

Your email address will not be published. Required fields are marked *