Sposoby generowanie obiektów z danych zapisanych w pliku. Próba napisania RPG'a

0

Witam!
Od paru lat programuje obiektowo w php(przez pewien czas nawet zarobkowo), hobbystycznie pisuje w C++ + .net. A teraz po raz drugi próbuję ugryźć Javę.
Pierwszy raz szybko wszystko się rozmyło ponieważ książki do Javy to praktycznie lekko zmienione książki do c++ więc szybko zaczęło mnie to nudzić.

Teraz z determinacją zaczynam ponownie tym razem spróbuję napisać grę RPG co powinno mnie przeprowadzić przez wszystkie różnice między javą a c++ a jednocześnie da mi środowisko do nauki "na żywym organizmie" a nie powtarzających się przykładach które są tak szablonowe że często nie sposób czytać je ze zrozumieniem.
Dobra już nie przynudzam.

Dobrym początkiem wydaję się napisanie edytora map/obiektów. Większość jego kodu będzie potem używana w grze. I tu po raz pierwszy(pewno nie ostatni) potrzebuję pomocy kogoś kto ma praktykę.
Potrzebuje możliwości zapisu i odczytu z plików obiektów gry (np. ściana, woda, ziemia, broń. apteczka) każdy z nich będzie obiektem jakiejś klasy. Potrzebuję zapisywać i odczytywać obiekty z plików, przecież nie będę każdej korekty punktów życia czy czegoś podobnego wprowadzał w kodzie.
Poszukałem i trafiłem na interfejs Serialize ale o zgrozo nie potrafi on odczytać obiektu klasy zapisanego przed modyfikacją po zmianie w kodzie samej klasy więc z definicji nauki wynika że odpada. Mam parę pomysłów jak XML lub pliki tekstowe opisane po mojemu. Proszę o sugestie i przykłady. Chodzi mi o to że możliwe jest to z każdym plikiem ale ponieważ te rzeczy będą sie wczytywać na starcie gry/edytora (LOADING... LOADING... and LO...)liczy się również wydajność a coś mi się wydaje że odczyt paru tysięcy obiektów z np XML' a w formacie np:

<obiekty>
<obiekt>
<nazwa>pistolet</nazwa>
<rodzaj>broń</rodzaj>//nazwa klasy jakiej będzie obiekt
<obrażenia>// pola klasy broń
<min>10</min>
<max>30</max>
</obrażenia>
</obiekt>
<obiekt>
<nazwa> kanapka</nazwa>
<rodzaj>apteczka</rodaj>
(...)

 

może trochę potrwać. Czy są jakieś sposoby zapisu które umożliwią szybszy odczyt? A może nie mam racji i taki odczyt i wygenerowanie obiektów na jego podstawie może odbyć się w rozsądnym czasie. A może zupełnie nie trafiłem z koncepcją i tego się tak nie robi.

PS Obiektów będzie dużo bo oprócz wszystkich dostępnych przedmiotów każdy kwadrat mapy będzie osobnym obiektem z polami takimi jak współrzędne, prawdopodobieństwo wystąpienia na nim apteczki, przeciwnika, broni itd. co przy mapie 1000x1000 daje milion a mapki mogą się rozrosnąć nawet bardziej.

0

To pytanie powinno znaleźć się w dziale "Algorytmy i struktury danych", nie w "Java"...

Ja bym się o wczytywanie z XML nie martwił. Zrób sobie taki przykładowy plik z 2k itemów (lub 2k plików wewnątrz archiwum jar/zip/wtf) i wczytaj go. ;)

0

Dzięki. Szczerze mówiąc jest mi to bardzo na rękę bo XML z tego co widzę jest w javie bardzo wygodny.

1 użytkowników online, w tym zalogowanych: 0, gości: 1