Pohrana igre je funkcionalna a izrada učitavanja je u tjeku. U početku sam bio napravio da se sejv zapisuje kao obična tekstualna datoteka i tada je sejv za 1. turn težio finih 426 kB. Nakon zipanja stvar se smanjila, e sad, koliko vidim na samo 152 kB no kada sam imao samo spremanje mape (bez informacija o igraču), obišan tekst je bio 390 kB a komprimirani oko 60 kB što je fin faktor kompresije za čisti tekst. Veličina sejv fajla kada je u pitanju obično sejvanje nije toliko kritična, no postaje bitna kada se na temelju tog sustava želi izgraditi multiplayer.
Tako malo, što se zbiva na prijektu, a sada nazad na poso. I mislim da ću uskoro preć na neki drugi sajt koji nudi blog uslugu jer ovaj em je počeo napadat reklamama em mu je editor koma.
|
Stavih Zvjezdojeca i na Souceforge. Broj stranica koje Google nalazi pod pojmom Zvjezdojedac se utrostručio :D. Baš me zanima kako će se stvar razvijati kad dovršim verziju 0.2. A to će biti, nadam se, do kraja ljeta. Razmišljao sam o podršci za više jezika jer na Code Projectu pišem sve na engleskom i Sourceforge uglavnom cilja na engleski jezik. No to bi bio poveći pothvat i ne kanim ga u ovoj verziji poduzimati.
Kod podrške za više jezika za sada vidim dva problema: problem umetanja teksta i problem određivanja teksta koji se umeće. Prvi problem postoji zato što sam do sada sve tekstove na grafičkom sučelju unosio ili preko dizajnera GUI-a ili ih generirao u kôdu. Za više jezika, sve tekstove bi trebalo držati u zasebnim datotekama i nekim postupkom ubacivati u GUI. To nije složen posao ali je opsežan i zamoran. Drugi problem je malo zanimljiviji jer zahtjeva pisanje parsera. Naime, većina tekstova se može unaprijed odrediti kao npr. "nova igra" na hrvatskom i "new game" na engleskom ali u nekim tekstivima oblik riječi može varirati. Primjer je tekst o broju krugova unutar kojih se očekuje završetak izgradnje ako je u pitanju 1 krug, tada tekst glasi "1 krug" odnosno "1 turn" no ako su 2 kruga u pitanju, tada treba pisati "2 kruga" odnosno "2 turns". Da bih obuhvatio takve slučajeve, lakše mi je napisati parser sličan onome za formule nego pisati kôd na svakom mjestu u GUI-u gdje se takva iznimka pojavljuje. Pogotovo zato što razni jezici imaju različite slučajeve u kojima se mjenja oblik riječi. U prethodnom primjeru, bilo je da riječ "krug" prima nastavak -a u množini no isto tako, može primiti nastavak -ova ("5 krugova") dok je u engleskom jeziku množina uvjek "turns".
|