abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Sledujte AbcLinuxu.cz na:
facebook favicon logo  Facebooku twitter favicon logo  Twitteru,   identi.ca favicon logo  Identi.ca,   rss logo  RSS
Rozšířené hledání
×
včera 13:41 | IT novinky
Phoronix upozorňuje na chystané změny v podpoře Flashe na Linuxu. Adobe se spojilo s Googlem, z čehož vzešlo nové multiplatformní API pro doplňky webových prohlížečů PPAPI. Budoucí verze Flash pluginu pro Linux budou podporovat pouze toto API. Ze současných prohlížečů je však podpora pouze v Google Chrome. Adobe bude nadále udržovat aktuální řadu Flashe 11.2 se starým NPAPI po dobu pěti let a navíc k tomu přidá debug verzi a aktualizovanou specifikaci, což by snad mohlo pomoci svobodným implementacím Gnash a Lightspark.
Nicky726 | Komentářů: 31
včera 13:07 | Komunita

Martin Gräßlin se v zápisku Cena za podporu starého hardwaru zamýšlí nad stavem, kdy se od FLOSS světa očekává, že bude podporovat všemožný zastaralý hardware, a tím jaké problémy to přináší. Z hlediska KWinu jde zejména o hardware podporující pouze OpenGL 1.x nebo nepodporující NPOT textury.

… více »
Nicky726 | Komentářů: 62
včera 00:21 | Nová verze
Vyšel Linux 3.2.7 a 3.0.22. Vzhledem k tomu, že obsahují řadu důležitých oprav, vyzývá Greg K-H všechny uživatele k aktualizaci.
Nicky726 | Komentářů: 9
21.2. 17:11 | Nová verze
Po půl roce vyšla nová verze leteckého simulátoru FlightGear 2.6.0. Zařazeno bylo ozvučení AI a MP modelů, pohyb mraků s větrem, pěna na vlnách ve větru, nový systém pro replay a mnoho dalšího.
Vikthor | Komentářů: 6
21.2. 17:11 | Zajímavý projekt

Na Developer Conference 2012 byla oznámena programátorská soutěž RedBot sponzorovaná společností Red Hat. Soutěž je pro 1 - 3 členné týmy studenů schopných přijít s chytrou strategií a funkční implementací v (téměř) libovolném programovacím či skriptovacím jazyce.

Sešívaný | Komentářů: 3
21.2. 17:11 | Zajímavý projekt
Jak nainstalovat elektronický podpis? Chcete změnit výchozí šablonu v OpenOffice.org | LibreOffice? To vše se dozvíte ve vycházejícím únorovém openMagazinu, který má téma kancelář a můžete si ho stáhnout. Dále si v rozsáhlém testu přečtete srovnání vlastností kancelářských balíků Microsoft Office, OpenOffice.org a LibreOffice. Pokud vám chybí funkce nebo vlastnost v OpenOffice.org | LibreOffice, článek o rozšířeních vám nabídne … více »
IrenaS | Komentářů: 2
21.2. 12:31 | Nová verze
Clement Lefebvre vydal Cinnamon 1.3. Nastavovací dialog Cinnamon Settings nyní obsahuje nástroje pro editaci oken, fontů, ikon, gtk motivů a dalších vlastností prostředí. Užitečných změn doznal panel. Veškerý jeho obsah nyní tvoří aplety, které mohou být libovolně přesunovány pomocí drag & drop. Vývojáři doplňků byli vyzváni, aby nadále rozšiřovali funkčnost panelu výhradně pomocí apletů. Rozšíření (extensions) jako taková by měly být směrovány mimo panel. O Cinnamonu vyšel na AbcLinuxu článek.
Migilenik | Komentářů: 13
21.2. 12:31 | Upozornění
Oracle odsunul ohlášený "end of life" Javy SE 6 a JDK 6. Původní datum pro ukončení podpory bylo stanoveno na červenec 2012, nyní ale bylo odsunuto až na listopad. Pozměněny byly také pravidla pro ukončení podpory neboli "End Of Life Policy".
Migilenik | Komentářů: 5
21.2. 11:14 | Komunita
Projekt Debian zveřejnil své programové prohlášení týkající se postoje projektu k softwarovým patentům. Stojí v něm, že projekt nebude vědomě šířit software zatížený patenty a že nebude přijímat licence nekompatibilní se společenskou smlouvou komunity svobodného softwaru. Dále se v prohlášení píše například to, že patenty představují riziko pro celou společnost.
Migilenik | Komentářů: 21
21.2. 11:13 | Nová verze
The Document Foundation, organizace zaštiťující vývoj LibreOffice, byla v Německu oficiálně zaregistrována a uznána jako nadace s dlouhodobým záměrem a nezávislým financováním. Právník Michael Schinagl k tomu řekl, že vytvoření nadace garantující aktivním přispěvatelům tak silná práva, je ve světě svobodného softwaru něčím unikátním.
Migilenik | Komentářů: 0
Servery pro sdílení souborů (typu MegaUpload)
 (41%)
 (50%)
 (9%)
Celkem 856 hlasů
 Komentářů: 35, poslední 19.2. 13:50
Rozcestník
Reklama
Autoškola testy online Levný benzín

Moje hračičky

19.2.2010 13:07 | Přečteno: 1447× | Linux | poslední úprava: 26.6.2010 07:32

Shledal jsem, že za dobu své programátorské existence jsem stvořil docela dost hračiček (her). Jakmile ovšem byla nějaká hračička již v hratelném stavu, nechtělo se mi to dále vypiplávat, takže tam nejsou meníčka a z části komunikují přes standardní výstup. Z těchto důvodů jsem tyto hračičky zatím příliš nezveřejňoval, ale myslím, že si zaslouží, aby o nich někdo věděl.

Na začátek ještě upozorním, že jsem se většinou neobtěžoval ani vytvářením configure nebo možností instalace do systému. V případě, že nefunguje přibalený zkompilovaný kód (někdy 64-bitový, někdy 32-bitový), je možné zkusit make clean; make. Pokud i to selže, můžete to vzdát nebo se pokusit rýpat v Makefile (on není příliš složitý).

Komentáře v zdrojových kódech těch hračiček téměř nejsou, pokud by ovšem někoho zajímala část jisté hračičky, není problém dovysvětlit.

První dvě moje hračičky, co tu ukážu, se opírají o dnes takřka nepoužívanou EZWGL (DOWNLOAD).

Uklikejte myši (DOWNLOAD)

Už si nepamatuji, co mě přimělo k takto brutální hře, kde je cílem povraždit ty nejinteligentnější tvory Země. Myš (ten obrázek v okně) je chcípnuta, když na ní kliknete myší (to, co je obvykle u klávesnice). Poklikat ty myši je značně obtížné, protože jsou zaprvé strašně úzké a za druhé před vaší myší zdrhají.

Sokoban s více panáčky (DOWNLOAD)

Myslím, že nadpis docela pointu vystihuje, zmáčknutí šipky je povel pro všechny panáčky najednou. Hra umí nekonečné undo 'u' a ještě tam tuším bylo nějaké ukládání a následné pouštění řešení pomocí kláves 's' a 'l'. Tato hračička je tuším dokonce i nainstalovatelná do systému. Každý level až na závěrečné END má řešení.

Jen další pokus o Icy Tower (DOWNLOAD)

Tady už není potřeba EZWGL, hra je založená jen na xlibu. Navíc jsem v té době neuměl načítat obrázky z externích souborů, takže XPM data jsou uvnitř binárky. Z toho ovšem plyne i jedna výhoda, hra nepotřebuje žádná externí data.

Já vím, s tímhle jsem neskutečně neoriginální. Když už existuje, Icy Tower, GNUjump a navíc nějaký klon Icy Toweru se údajně zjevil i na Facebooku. Ale chápejte, je to můj první pokus s xlibem a myslím, že oproti gnujump mám lepší fyziku.

Tato hračička nemá u sebe ani přiložený Makefile. Příkaz, který hru zkompiluje u mne, mám uložený v souboru kompilace.

Ovládání je, stejně jako v Icy Toweru, pomocí šipek a skok mezerou. Zrychlování a dosažená patra jsou vypisovány na standardní výstup. Tato hračička se nevypíná ani pomocí Esc, ani pomocí 'q', ale kliknutím.

Opravdu trojrozměrné bludiště (DOWNLOAD)

Tato hračička se opírá o knihovnu OpenGL (glut), takže je zkompilovatelná dokonce i na některých neunixových systémech.

Nejnovější verze vyžaduje vedle glut ještě knihovnu glpng a na některých počítačích navíc zobrazuje nepěkné mřížky (nevím na čí straně je chyba), možná bude více vyhovovat starší verze (DOWNLOAD).

Obrázky panáčků jsou použity z xpexesa, tedy pravděpodobně je nakreslili Petr a Pavel Matulovi.

Cílem je projít krychlí od modrého okénka k zelenému nebo naopak, tedy překonat tělesovou úhlopříčku. V případě projití hra pogratuluje prostřednictvím příkazové řádky a vypíše určité statistiky.

Tento program vypíše nápovědu při parametru -h. (umožňuje nastavit rozměry krychle, fullscreen, ...)

Kámen, nůžky, papír (DOWNLOAD)

Opět program založený na xlib. Ovládáta ruku vlevo: žádné stisknuté tlačítko myši = kámen, jedno stisknuté tlačítko = nůžky, dvě stisknutá tlačítka = papír. Hrajete proti počítači, který ovládá ruku vpravo a snaží se vás odhadnout (jeho chování není vůbec náhodné).

Hraje se do 30 bodů, tedy zhruba 4 minuty. Okamžitě po spuštění začíná hra, takže mějte myš připravenou. Je dobré mít příslušná tlačítka zmáčknutá s dostatečným předstihem, na poslední chvíli to nemusíte stihnout. Při dávání papíru je dobré zmáčknout tlačítka postupně, ukázalo se, že při zmáčknutí obou tlačítek naráz nemusí být toto zmáčknutí v některých případech zaregistrováno. Vypnout (vzdát) hru je možné tlačítkem Esc. Na standardní výstup je průběžně vypisováno skóre a nakonec je napsáno, kdo vyhrál.

Veřím, že můj algoritmus je nepatrně lepší než průměrný člověk, ale nemám to statisticky ověřeno, takže pokud někdo tuto hru vyzkouší, nechť vyplní příslušnou anketu:

       

Hodnocení: 100 %

        špatnédobré        

Anketa

Jak dopadla vaše první hra KNP?
 (67 %)
 (25 %)
 (8 %)
Celkem 12 hlasů

Anketa

Která hračička vás zaujala?
 (5 %)
 (9 %)
 (2 %)
 (42 %)
 (14 %)
 (51 %)
Celkem 43 hlasů

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Vložit další komentář

19.2.2010 13:40 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
Rozbalit Rozbalit vše Re: Moje hračičky

Pěkné, v kámen nůžky papír to jsou tvoje ruce? :-)

Chcete Linuxové samolepky nebo Tuxe na klíče? ->
mirefek avatar 19.2.2010 13:43 mirefek | skóre: 2 | blog: proc_dalsi_nazev
Rozbalit Rozbalit vše Re: Moje hračičky
Vskutku jsou.
19.2.2010 15:14 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
Rozbalit Rozbalit vše Re: Moje hračičky

A co takhle import vlastních rukou? :-)

Chcete Linuxové samolepky nebo Tuxe na klíče? ->
mirefek avatar 19.2.2010 15:28 mirefek | skóre: 2 | blog: proc_dalsi_nazev
Rozbalit Rozbalit vše Re: Moje hračičky
Tahle otazka mi neni uplne jasna, neni prece problem obrazky z adresare images nahradit fotkami svych rukou. Spise bych ocenil, kdyby nekdo chtel importovat vlastni algoritmus, pri pohledu na vysledky ankety uz nejsem tak presvedcen o kvalite toho meho.

A je pravda, ze KNP znamena kamen, nuzky, papir.
19.2.2010 15:30 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
Rozbalit Rozbalit vše Re: Moje hračičky

Jejda, to mi jaksi nedošlo :-)

Chcete Linuxové samolepky nebo Tuxe na klíče? ->
Ghaad avatar 19.2.2010 15:20 Ghaad | skóre: 33 | blog: blogoblog
Rozbalit Rozbalit vše Re: Moje hračičky
Co znamena KNP?
GNUniverse - May the source be with you...
19.2.2010 15:21 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
Rozbalit Rozbalit vše Re: Moje hračičky

Kámen nůžky papír?

Chcete Linuxové samolepky nebo Tuxe na klíče? ->
Ghaad avatar 19.2.2010 15:47 Ghaad | skóre: 33 | blog: blogoblog
Rozbalit Rozbalit vše Re: Moje hračičky
Aha, ja myslel Kruger National Park :D
GNUniverse - May the source be with you...
mirefek avatar 19.2.2010 23:13 mirefek | skóre: 2 | blog: proc_dalsi_nazev
Rozbalit Rozbalit vše Dosavadni vysledky ankety o hre kamen nuzky papir
V blogu jsem psal, ze verim, ze verim chytrosti svemu algoritmu pro kamen nuzky papir. To proto, ze uz jsem tuto hru asi sesti lidem daval a z nich napoprve zvitezil jen jeden. Velice me tudiz prekvapuje, ze anketa dava vysledky opacne, cim to je? Nekolik teorii mam:

1) Prilis maly statisticky vzorek, 6 lidi tam, 7 lidi tady, to nic nevypovida.

2) Zdejsi vzorek neni nahodny, zkusili to ti, co byli presvedceni, ze algoritmus prokouknou a porazi.

3) Kdyz jsem KNP ukazoval na zivo, tise jsem fandil svemu algoritmu. Tim jsem podvedome psychicky rusil hrace. Navic byli hraci ruseni jeste tim, ze program zobrazoval skore jen v terminalu.

4) Nekdo v ankete hlasoval spatne nebo nehlasoval. Teoreticky to je mozne, ale moc si to nemyslim.
Ghaad avatar 20.2.2010 10:40 Ghaad | skóre: 33 | blog: blogoblog
Rozbalit Rozbalit vše Re: Dosavadni vysledky ankety o hre kamen nuzky papir
Chtel jsem teda KNP vyzkouset, ale nejde to, co delam spatne? Binarka je pro 32bit, mam 64bit, nespusti se. Kompilace pomoci gcc taky selhala
gcc knp.c
/tmp/ccuJe6W9.o: In function `souboj':
knp.c:(.text+0x160): undefined reference to `obnovskore'
/tmp/ccuJe6W9.o: In function `init':
knp.c:(.text+0x1b8): undefined reference to `initX'
/tmp/ccuJe6W9.o: In function `main':
knp.c:(.text+0x1c9): undefined reference to `posl_hraj'
knp.c:(.text+0x1d4): undefined reference to `posl_uloz'
knp.c:(.text+0x1df): undefined reference to `posl_init'
knp.c:(.text+0x1f3): undefined reference to `vytvorokno'
knp.c:(.text+0x1fd): undefined reference to `nacti_cislice'
knp.c:(.text+0x20c): undefined reference to `vytvorskore'
knp.c:(.text+0x216): undefined reference to `vytvorruce'
knp.c:(.text+0x225): undefined reference to `setdelay'
knp.c:(.text+0x22f): undefined reference to `loop'
collect2: ld returned 1 exit status

V cecku bezne nedelam a kompiluju maximalne tak pomoci configure/make/make install, ale tady se mi nepovedlo nic.
GNUniverse - May the source be with you...
mirefek avatar 20.2.2010 10:45 mirefek | skóre: 2 | blog: proc_dalsi_nazev
Rozbalit Rozbalit vše Re: Dosavadni vysledky ankety o hre kamen nuzky papir
Tohle ma vice souboru, melo by to byt zkompilovatelne pomoci make. S 64-bitovym systemem by nemel byt problem, na nem jsem to naprogramoval.
Ghaad avatar 20.2.2010 11:10 Ghaad | skóre: 33 | blog: blogoblog
Rozbalit Rozbalit vše Re: Dosavadni vysledky ankety o hre kamen nuzky papir
make: getcwd: No such file or directory
make: *** No targets specified and no makefile found.  Stop.
GNUniverse - May the source be with you...
mirefek avatar 20.2.2010 12:04 mirefek | skóre: 2 | blog: proc_dalsi_nazev
Rozbalit Rozbalit vše Re: Dosavadni vysledky ankety o hre kamen nuzky papir
Tohle nechapu, make by mel v aktualnim adresari hledat soubor Makefile, a ten tam prece je. Nicmene make provadi tyto prikazy:
gcc -I. -g -Wall -c -o knp.o knp.c
gcc -I. -g -Wall -c -o sekv.o sekv.c
gcc -I. -g -Wall -c -o posl.o posl.c
gcc -I. -g -Wall -c -o X.o X.c
gcc -I. -g -Wall -c -o loop.o loop.c
gcc -I. -g -Wall -c -o pixmap.o pixmap.c
gcc -I. -g -Wall -c -o warning.o warning.c
gcc -I. -g -Wall -c -o window.o window.c
gcc -I. -g -Wall -c -o ruce.o ruce.c
gcc -I. -g -Wall -c -o cisla.o cisla.c
gcc -I. knp.o sekv.o posl.o X.o loop.o pixmap.o warning.o window.o ruce.o cisla.o -L/usr/X11R6/lib/ -lX11 -lXpm -lXext -o knp
Ghaad avatar 21.2.2010 17:39 Ghaad | skóre: 33 | blog: blogoblog
Rozbalit Rozbalit vše Re: Dosavadni vysledky ankety o hre kamen nuzky papir

S touhle posloupnosti to slo zkompilovat bez problemu. Nevim, proc se make nechytnul.

Trochu bych zkritizoval chybejici instrukce ve hre, zkousel jsem i knp --help a nic. Pak jsem si to nasel ve zdrojaku, ze se jedna o mys a teprve ted ctu tady v blogu instrukce :) Uz pozde.

Tady muj vysledek:
ty papir,  ja kamen:  VYHRAL JSI  30 : 21

Zjistil jsem, ze se da uspesne vyhravat z duvodu, ze pocitac dost casto opakuje 2x nebo 3x za sebou stejnou volbu. Ale i tak to byly nervy, obcas me pekne dohanel :) Algoritmus mi prijde dobry.

GNUniverse - May the source be with you...
20.2.2010 13:31 JS
Rozbalit Rozbalit vše Re: Dosavadni vysledky ankety o hre kamen nuzky papir
Nejak nechapu, co to nazyvate chytrym algoritmem. Vzdyt v prvni hre hrace jeste neznate, a mate jednu ze 3 moznosti. Mozne algoritmy jsou tedy prave 3, a vzhledem k tomu, ze jsou rovnocenne, nechapu, jak muze byt jedna z techto voleb chytrejsi nez jina (ackoli je mozne, ze lide nemaji v prvnim tahu stejne preference).

Kazdopadne, o tom, ze stroj muze byt v KNP lepsi nez prumerny clovek, nepochybuji. Pri spatne provadenych parapsychologickych experimentech se zjistilo, ze pokud lide nahodne vybiraji, obvykle nevybiraji predchozi hodnotu se spravnou pravdepodobnosti (casteji voli jine moznosti). Takze ucici se program (co odhaduje cloveka jako Markovsky proces) toto muze snadno vyuzit.
mirefek avatar 20.2.2010 13:48 mirefek | skóre: 2 | blog: proc_dalsi_nazev
Rozbalit Rozbalit vše Re: Dosavadni vysledky ankety o hre kamen nuzky papir
Ahá...

No jo, chyba je u mne, špatně jsem formuloval otázku. Já první hrou myslel celý "set" na 30 bodů. Ale snad to někdo takto pochopil.

Ohledně prvního tahu se domnívám, že také existuje symbol, který lidé dávají nejčastěji, ale nevím, který. Tady navíc mohou být ovlivněni screenshotem.

Můj algoritmus není založen na nějakých psychologických experimentech, nevím, co je Markovský proces. Ano, algoritmus odhaduje člověka, ale člověk zase odhaduje počítač.

Navíc jsem se rozhodl mít algoritmus zcela nenáhodný. Porážet člověka, pokud ho má algoritmus přečteného a jinak hrát náhodně mi přišlo trochu nefér.

Založit nové vláknoNahoru

ISSN 1214-1267   Powered by Hosting 90 Server hosting
© 1999-2011 Argonit s. r. o. Všechna práva vyhrazena.