Możesz przyjrzeć się projektowaniu obiektowemu . Python ma na to dobre wsparcie.
Grube książki są o tym pisane, co może być przerażające, gdy jesteś nowy, ale główne zasady są dość łatwe.
Chodzi przede wszystkim o to, że identyfikujesz, z jakimi obiektami pracujesz. Nie mówisz, o jakiej grze myślisz, ale takie rzeczy jak gracz, potwór, przedmiot, wyposażenie, broń, zbroja i tak dalej są typowymi przedmiotami.
Jeśli chcesz różnych typów gier, prawdopodobnie będziesz chciał obiektu gry, który dba o warunki zwycięstwa i tym podobne. Być może także obiekt mapy?
Czasami nie jest jasne, czy coś zasługuje na przedmiot, czy nie, np. Uszkodzenie. Jeśli nie spowodujesz uszkodzenia obiektu, kod będzie prostszy, ale uczynienie go obiektem ułatwia dostosowanie.
Podklasa: Zarówno broń, jak i pancerze są wyposażeniem. Urządzenia są przedmiotami. Prawdopodobnie istnieją inne rodzaje przedmiotów. Prawdopodobnie przyda ci się zdefiniowanie klasy Combatant, której gracze i potwory są podklasami.
Chodzi o to, że na przykład broń będzie miała wiele cech wspólnych ze wszystkimi innymi typami przedmiotów, będzie miała wagę, rozmiar i inne podobne właściwości.
Tak więc podklasowanie pozwala powiedzieć, że „Broń jest podobna do innych Przedmiotów, ale dodatkowo można ją wykorzystywać, wpływają na zadawane przez nią obrażenia itp.”
Podklasowanie pozwala także twórcom modów powiedzieć: „Mój nowy typ broni jest podobny do broni standardowej, tyle że ...”
Następnie musisz zdecydować, który obiekt jest odpowiedzialny za co. To nie jest tak proste, jak się wydaje, i powinieneś się nad tym zastanowić. Niewłaściwe wybory nie wpłyną znacząco na podstawową grę, ale utrudnią dostosowanie.
Dopóki majsterkujesz samemu, możesz zmieniać rzeczy, ale w momencie, gdy udostępnisz coś publicznie, wprowadzanie zmian staje się znacznie trudniejsze! Ludzie będą tworzyć mody, które zależą od tego, że rzeczy są takie, jakie są teraz. Nawet błędy. Ludzie będą pisać mody, które zależą od błędów pozostających w kodzie. Jeśli zmienisz rzeczy, te mody się zepsują, a moby linczu pojawią się w twoim domu.
Na przykład:
Gracz uzbrojony w Broń atakuje Potwora noszącego wiele Pancerzy. Odbywa się to w określonym trybie gry i na określonej mapie.
Obaj Walczący mogą posiadać Umiejętności takie jak Trafienie Krytyczne i Unik.
Który obiekt jest za co odpowiedzialny?
Nie ma na to jednej właściwej odpowiedzi. Wiele zależy od tego, na jakie dostosowanie chcesz zezwolić.
Jeśli nigdy nie wołasz obiektu (np. Mapy), obiekt ten nie może w żaden sposób zmienić ataku.
Po podjęciu wszystkich tych decyzji udokumentuj je . Napisz „Podręcznik Moddersa”, który dokładnie wyszczególnia, jakie metody można modyfikować w każdym obiekcie, jakie parametry przyjmują, co powinny zwrócić itd., Itd., Itd.
Powodzenia!