Po dlouhé době tu je opět klasický Víčkův měsíc, a to Víčkovo září, což je jediný měsíc, který má střední rod.
Tento měsíc u mě není příliš oblíbený, jako nejspíše u většiny z vás. Začíná škola a podzim, ani jedno není dobré po prázdninách a létu. Musím se ale přiznat, že jsem to letos ani moc neprožíval, možná by se dalo říct, že jsem se na školu trochu těšil. Prázdniny mě už ke konci docela nudily, měl jsem až přespříliš volného času a už jsem nevěděl, co s ním. Když chodím do školy, je to jiné, volného času mám málo, takže si ho o to víc vážím.
Co se školy týče, třeťák je zatím nejlepší, protože jsme se začali konečně učit to, co mě baví - programovat. Nyní máme tři předměty, ve kterých programujeme, což je z nuly docela skok.
V jednom se učíme C#, což pro mě není žádná novinka, ale používáme grafický subsystém Windows Forms místo novějšího WPF. No zatím Forms vypadá jako WPF bez XAML, což se mi jako programátorovi nelíbí, protože nerad něco naklikávám.
V dalších dvou neprogramujeme PC, ale mikropočítače (dnes skoro v každé elektronice) a programovatelné automaty (průmysl, chytré domy). Toto je pro mě novinka a zatím mě to baví.
Nějak jsem se rozpovídal, ale to už by stačilo, podívejme se na moji tvorbu v předchozím měsíci
Minulý týden jsem napsal moje první tipy na Android hry. Může se těšit i na další díly, které budou vycházet cca jednou za měsíc. V prvních tipech jsem psal o pěti hrách, z čehož byly tři logické. Nyní mám připraveno dalších sedm her, z toho jich je šest logických a ta poslední je vlastně také o logice. Ode mě tedy můžete očekávat převážně hry, které procvičí vaši logiku. Je to docela logické, že mě baví logické, když jsem programátor.
A nyní k hlavnímu tématu. V září jsem pracoval de facto pouze na Elfánii. Už jsem to věděl a září mě v tom ještě více utvrdilo - je to běh na dlouhou trať. Vývoj bude trvat podstatně déle než vývoj verze 1.0. Nová verze bude maximálně dynamická. Hráč načte stránku jednou při přihlášení a hra si pak bude sama aktualizovat veškerá data pomocí ajaxu. Pro mě, jako pro programátora, je to o dost více práce, kterou ale dělám rád. Ve staré Elfánii to jsou vlastně jen jednoduché PHP skripty, které dohromady tvoří celou hru. Nová verze bude o dost komplexnější. PHP skripty o moc složitější nebudou, za to přibude spousta JavaScriptu, kterého možná bude dokonce více než PHP.
Už se těším na testování, protože až se vytvoří testovací komunita, bude mě programování víc bavit. Do testování pozvu pár lidí, o kterých si budu myslet, že budou při testování přínosem. Testovat se bude na dvou frontách - budou dva světy. Na jednom bude živý vývoj, na kterém budu programovat, takže bude dost nestabilní. Druhý svět bude testovací, kam budu nahrávat stabilní fáze vývoje. Každý tester si bude moct vybrat, na jakém světě bude chtít testovat (bude moct i na obou). Jenže zatím není nějak moc co testovat a cenu to bude mít nejdřív tak za dva měsíce.
Začátkem měsíce jsem dodělat minimapu, kterou jsem měl rozdělanou. Je na ni zobrazen aktuální kraj, ve kterém se nacházíte a je na ni vyznačena část mapy, kterou máte zobrazenou. Při kliku na nějaké místo v minimapce se na něj přesunete. Pod mapkou jsou čtverečky, které znázorňují jednotlivé kraje. Zatím nevím, jak přesně budou ve výsledku po grafické stránce vypadat. Ve výchozím stavu je minimapa skrytá a zobrazíte ji klikem na ikonku v pravém horním rohu obrazovky.
Dále jsem velmi optimalizoval. Zrychlil jsem posouvání mapy a přesouvání oken. Dříve to bylo dosti sekavé, nyní je to hezky plynulé. Dokázal jsem to takovým trikem okoukaným od konkurence.
Koncem měsíce jsem začal pracovat na frontě. V nové verzi si budete moct dávat činnosti do fronty a ty se postupně dokončí, ne jako teď, že nejdříve musíte počkat na dokončení jedné, abyste mohli začít s další. Pravděpodobně budou ve výchozím stavu tři místa ve frontě a další získáte za nějaké bonusy. Možná, že to udělám na každém světě jinak a jiné budou i časy jednotlivých činností.
Samotná fronta by byla k ničemu, a tak jsem musel nějakou tu činnost naprogramovat a tou činností je cestování. Cestovat můžete na jakékoliv místo na mapě a rychlost cestování je zatím nastavená na 1 čtvereček za minutu. Samozřejmě platí Pythagorova věta. Včera jsem naprogramoval zrušení činnosti a to je zatím vše.
Abyste měli představu o velikosti jednotlivých prvků v Elfánii, tak takto to vypadá na notebookovém rozlišení 1367x768 ve Chrome na Windows 7:
Co se týče podpory prohlížečů, snažím se Elfánii optimalizovat pro nejnovější verze prohlížečů Google Chrome, Mozilla Firefox a Opera a pro Internet Explorer 7+. Samozřejmě plánuji později udělat aplikaci pro Android.
Nová Elfánie bude v HTML 4, a to z důvodu špatné podpory HTML 5 v prohlížečích. HTML 5 oficiálně vyjde až za dva roky, tak možná potom na něj přejdu. Podpora prohlížečů je uvedena na konci článku.
Ty se máš. My děláme ve škole jen produkty mrkvosoftu, ale letos máme načít i nějaké to html, tak doufám, že se převedu že umím i css a tak dál.
Bude v nové elfánii taky html5? Ta mapa se vykresluje do canvas? Jaká bude podpora u prohlížečů?
Zapomněl jsem říct, že jsem měl na mysli PHP. Zda používáš třeba MVC nebo tak.
Samozřejmě, JavaScript je celý objektový a v PHP mám pár tříd, jinak je strukturové.
Tak on je rozdíl mezi normálním webem a novou Elfánií. Já si myslím, že lepší bude aplikace, protože ta může ukládat cache a zobrazovat oznámení. Dobré to bude také pro mobilní internet, protože se bude mezi aplikací a serverem posílat opravdu nezbytné množství dat. Koneckonců můžu udělat oboje ... Ale to budu řešit ještě za hooodně dlouho.
Z vlastní zkušenosti vím, že než dělat web a pro něj speciální aplikaci, je lepší, když uděláš mobilní verzi webu.