[#1] Plan gry strategicznej
Witam!
Chciałbym poddać pod ocenę plan tworzonej gry strategicznej.
Oto funkcje i procedury programu:

KONFLIKT PLAN:
-------------------------------
Main function: (funkcja główna)
-------------------------------
INIT (inicjacja)
|
MAIN LOOP (pętla)
|
SHUTDOWN (zamknięcie)

----------------------------------
Init function: (funkcja inicjacji)
----------------------------------

LOAD DATA (wczytanie danych)
|
ALLOC DATA (alokacja pamięci)
|
INIT DATA (inicjacja danych)

---------------------------------------------
Load Data function (funkcja wczytania danych)
---------------------------------------------

LOAD ICONS (wczytanie ikon)
|
LOAD SHAPES (wczytanie obrazów)

--------------------------------------------------
Alloc/Init Data funcion (funkcja inicjacji danych)
--------------------------------------------------

CREATE MAP (stworzenie mapy)
|
INIT BUILDINGS (inicjacja budynków)

----------------------------------
Main Loop function: (główna pętla)
----------------------------------

DISPLAY SCREEN (wyświetl ekran)
|
PROCESS GADGETS (obsługa gadżetów)
|
PROCESS BUILDINGS (obsługa budynków)
|
PROCESS UNITS (obsługa jednostek)

---------------------------------------------
Display Screen function (wyświetlanie ekranu)
---------------------------------------------

DISPLAY MAP (wyświetlenie mapy)
|
DISPLAY PANEL (wyświetlenie panelu)
|
DISPLAY UNITS (wyświetlanie jednostek)

To jest oczywiście zarys. Jeśli macie sugestie co do tego planu to proszę śmiało odpowiadajcie!



Ostatnia modyfikacja: 10.05.07 21:57
[#2] Re: Plan gry strategicznej

@Minniat, post #1

Witam

Czytałem ten "plan" kilkakrotnie i nie za bardzo kojarzę o co w nim chodzi. Widzę funkcję ALLOC DATA, która alokuje pamięć, więc mam takie pytanie gdzie oddajesz pamięć z DATA ( albo w której funkcji i dlaczego nie nazywa się ona FREE DATA :) ).

Twój plan jest bardzo ogólny i nic mi nie mówi, napisz więcej.

Pozdrawiam



Ostatnia modyfikacja: 14.05.07 10:28
[#3] Re: Plan gry strategicznej

@asman, post #2

Oto mój ogólny plan klonu Dune 2 w kompaktowej wersji. Jeśli chcesz o komentarz do jakiejś części planu to pisz śmiało.

Main function (funkcja główna)
INIT (inicjuje dane)
MAIN LOOP (pętla główna programu)
SHUTDOWN (zwolnienie pamięci i zamknięcie programu)

Init function
(funkcja inicjacji)
ALLOC DATA (alokacja pamięci)
LOAD DATA (wczytanie danych)
INIT DATA (inicjacja danych)

Load Data function (funkcja wczytania danych)
LOAD ICONS (wczytanie ikon budujących mapę)
LOAD SHAPES (wczytanie obrazów jednostek itp.)

Alloc/Init Data funcion (funkcja inicjacji danych)
CREATE MAP (stworzenie mapy)
INIT BUILDINGS (inicjacja budynków na mapie)

Main Loop function (główna pętla)
DISPLAY SCREEN (wyświetl ekran)
PROCESS GADGETS (obsługa gadżetów)
PROCESS BUILDINGS (obsługa budynków - praca budynków)
PROCESS UNITS (obsługa jednostek - ruch i ostrzał jednostek)

Display Screen function (wyświetlanie ekranu)
DISPLAY MAP (wyświetlenie mapy)
DISPLAY PANEL (wyświetlenie panelu)
DISPLAY UNITS (wyświetlanie jednostek)

Shut Down function (zwolnienie zasobów)

[#4] Re: Plan gry strategicznej

@Minniat, post #3

Noooo, bez tych kreseczek wszystko staje się jasne!

[#5] Re: Plan gry strategicznej

@Minniat, post #3

Witam

Widzę, że dodałeś Shut down function, Ale w dalszym ciągu nie odpowiedziałeś mi na pytanie, gdzie są zwalniane obiekty, które są allokowane w funkcji ALLOC DATA. Powiem tak, z tego planu nic nie wynika, napisałeś ciurkiem jakieś funkcje ( napisałem "jakieś" bo nie wiadomo co one dokładnie robią, co jest na wejsciu co na wyjsciu, co sie dzieje w przypadku błędów i jakie funkcje wołają i inne takie ... ) i oczekujesz jakiejś porady. To jest zbyt ogólne, przecież nie wiadomo w jakiej kolejności one są wywoływane !.

Pozdrawiam

[#6] Re: Plan gry strategicznej

@asman, post #5

Powiem tak, z tego planu nic nie wynika, napisałeś ciurkiem jakieś funkcje ( napisałem "jakieś" bo nie wiadomo co one dokładnie robią, co jest na wejsciu co na wyjsciu, co sie dzieje w przypadku błędów i jakie funkcje wołają i inne takie ... ) i oczekujesz jakiejś porady.

Masz rację, że plan jest zbyt ogólny, popracuję nad nim trochę choć nie obiecuję i określę, tak jak powiedziałeś co robią te funkcje i co jest na wejściu i na wyjściu!
Zwalnianie zasobów, czyli FREE DATA odbywa się w funkcji ShutDown().
Jeśli chodzi o to w jakiej kolejności są wywoływane to spójrz na nazwy - od funkcji wysokopoziomowych do funkcji niskopoziomowych.



Ostatnia modyfikacja: 15.05.07 12:52
[#7] Re: Plan gry strategicznej

@asman, post #5

Moim zdaniem gra strategiczna, to problem po prostu proszący się o podejście obiektowe i zaprogramowanie całości np. w C++. Wtedy alokację i zwalnianie zasobów można zwalić na konstruktory i destruktory.

Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem