« 1 2 »
Autor Zpráva
Debo
Profil *
Neznáte někdo nějakou velikou JavaScript aplikaci která je celkem zajimavá ?
Mě vždy vrtalo hlavou jestli neexistuje nějaká onlien hra která je vyvinutá v JavaScriptu. Teď ale nemyslím různé webovky ale hru která je plinulá, kde máte třeba panáčka s kterým chodíte. Vždiť to JS s pomocí PhP svládne ne ? Je něco takového ? Děkuji...
Radek9
Profil
No, nedávno jsem viděl hry s využitím canvasu. Byl to třeba Wolfenstein. Potom jsem zkoušel ještě nějaké vlastní drobnější aplikace a povedlo se mi tohle.
Rohy
Profil *
Radek9: Dobré týo :) skoro jako flashovka jenom by to chtělo udělt chůzy aby netrvalo než začne jít. Prodal si ji někam ? Jiank nějakou tu online hru neznáte ? Nebo třeba nějakou zajimavou aplikaci jako nějakej pohyblivej graf a tak podobně.
Radek9
Profil
Rohy:
No, zatím jsem ji neprodal a ani o tom nevuvažuji, ale díky za pochvalu a rady. :o)
Chamurappi
Profil
Reaguji na Rohyho:
by to chtělo udělt chůzy aby netrvalo než začne jít
Trvá to kvůli přestávce před opakováním, kterou má většina lidí nastavenou v systému (Ovládací panel / Klávesnice), a kvůli tomu, že se u kurzorových kláves chová událost onkeydown trochu jinak, než by programátor čekal. Radek9 by to mohl opravit tím, že při onkeydown nastartuje interval uvádějící postavu do pohybu (pokud dosud nastartovaný není) a při onkeyup ho zruší.

Vždiť to JS s pomocí PhP svládne ne ?
Před otazníkem se nepíše mezera, „PHP“ se píše s velkým H, „zvládne“ se píše se Z, „vždyť“ se píše s Y.
Na co bys u takové hry potřeboval PHP?
Rohy
Profil *
Chamurappi:
Na co bys u takové hry potřeboval PHP?
Řekl bych že na přenos dat k databázy. Databáze poslouží jako server. Nebo snad umí JavaScript komunikovat ze serverem přímo ?
Witiko
Profil
Rohy:
Neumí, dá se ale přistupovat k php scriptu ajaxem, nebo jako k javascriptovému scriptu. Před časem jsem vytvořil knihovnu, která umožňovala odesílání MySQL žádostí přímo databázi před php script (pojmenováno originálně JSql) ale reálné využití je malé kvůli zneužitelnosti a volnému přistupu do databáze z js aplikace.

Mluvíme-li o síťovém kódu, už nějakou dobu jsem přemýšlel o vytvoření síťového kódu, který by jako úschovnu dat používal db a php script, který by si javascriptová aplikace každých pár vteřin znovu načítala, by pak data z databáze předal jejich majitelům a smazal. Tyčila se tu spousta problémů, při hře více lidí jde jednotlivé lidi definovat jako instance prototypů, nicméně MySQL není zrovna objektově zaměřená ( :D ) takže by se musely lidem přiřadit určité číselné identifikátory, které by musely být pro každého z nich unikátní. Zároveň z podstaty scriptu, který využívá databáze jako třetí strany a nemůže být jakkoliv informován o tom, že na něj čekají data je daný síťový kód nutně s pomalou odezvou minimálně 1-3 sekundy, aby klientský prohlížeč nezahlil HTTP žádostmi a stejně tak aby nepřehltil databázi dotazy. Tak jsem nápad zavrhnul... A pak jsem viděl javascriptový online remake Leisure Suit Larry a málem jsem spadl na zadek. Vysoká plynulost přenosu (nemluvě o tom, že celá hra je ne v canvasu, ale přes css absolute positioning, klobouk dolů). Po menším přezkoumání: Script skutečně funguje tak jak zněl můj původní návrh - každou sekundu pinguje php script. Asi proto, že čistě přes javascript jiná možnost není.

Jinak sám teďka pro zábavu vytvářím menší stavební strategii, která poběží v javascriptu. S knihovnou SoundManager 2, která pomocí komunikace s flashovým scriptem přehrává zvuky, je efekt více než dobrý i při nepoužití canvasu a už je to opravdu víc desktopová aplikace, než webová stránka.

Důvod, proč se javascript nevyužívá k vytváření her masově je jednoduše důvod, že k tomu nebyl určen a jsou tu technologie jako flash, které toho umí více a lépe. Uvidíme jak to bude vypadat s HTML5, Canvasem (již částečně implementováno - dokonce je od google dostupná excanvas.js knihovna, která přináší podporu canvas elementu i do MSIE pravděpodobně pomocí standartního css. Zajímavý projekt), videem a zvukem v prohlížeči, databázi dostupnou pro JS aplikace (lepší cookies) a OpenGL (speciální build opery už podporuje a co jsem si s tím trochu hrál, tak to vypadá skvěle, možná přeportuju svoje staré formule hehe :D - viz. http://www.benjoffe.com/code/demos/earth/ ), které se slibuje. Zajímavá bude také podpora standalone javascript aplikací, možnost přiřadit k nim ikonu a spustit je jako desktopové.

Jinak například tahle stránka se věnuje javascriptovým hrám: http://www.javascriptgaming.com/
Rohy
Profil *
Witiko: Aha takže ty teď vyvíjíš nějakou strategii ? A udělal si už nějakou js hru ? Mě tohle téma velice zajimá :)
Radek9
Profil
Rohy:
Pokud chceš, dej mi svoje ICQ (či jiný kontakt - popřípadě mám já v profilu) a můžeme si o tom popovídat, také mě to zajímá.
Witiko
Profil
Ne, je to moje první javascriptová hra, nejsem na tvorbu indie her nějak vysazený - nevděčná, dlouho trvající práce a pokud nemáte nějaký vážně originální nápad, tak už tu s tím byl někdo před vámi, pravděpodobně lépe. Spíš to chci zkusit, do teď jsem dělal prakticky jen javascriptové aplikace, teoreticky by neměl být napsat hru problém. Data se ukládají do DB a pravděpodobně to propojím s facebook javascript API, abych ani já, ani návštěvník nemusel řešit tvorbu nějakého nového "herního účtu" - unikátní identifikátor návštěvníka zajistí facebook.

Grafik mi zatím jaksi spí a tak dělám knihovny, které budou potřeba (knihovna na grafické fonty, knihovna na loader element, knihovna na masovou správu intervalů, knihovna tooltipů, knihovna průhlednosti, knihovna DScript apod.)
peta
Profil
http://peter-mlich.wz.cz/web/links.htm#js_priklady
http://peter-mlich.wz.cz/zabava/hry/index.htm
Jo, pokud bych si mel vybrat, tak pouziji na celou hru nejspis flash, kdyz uz chces resit zvuk flashem.
Witiko
Profil
Nechci dělat hru ve flashi. :)

Jinak pěkné výtvory. Trochu jsi mi ale zkazil náladu, chtěl jsem udělat js inkarnaci šachů a arkanoidu, teď už nemám takovou motivaci. :D Mimochodem k těm šachům - proč je tam ten nucený timeout 500ms mezi tahy, když dám obě strany CPU? Bylo by pěkné vidět to jako benchmark - co nejrychleji to půjde. Konzolí jsem to přepsal na 1 ms a zajímavá věc - zřejmě to kromě heurestiky i používá náhodu při stejném hodnocení více tahů, protože to pokaždé skončilo jinak. :)
michql
Profil *
http://zdrojak.root.cz/n/html5/
Witiko
Profil
http://zdrojak.root.cz/clanky/web-sockets/

Tohle je sakra zajímavé. Spojení klient-klient to pořád ještě není, ale nice.
Rohy
Profil *
Když tam je vytváření 3D hry v HTML5 + canvas tak to HTML5 využívá JavaScript né ? Samotné HTML5 tohle nedokáže... Nebo jo ? Jinak witko jak jsi na tom s tou hrou ?? Jsem zvědavý.
michql
Profil *
Rohy:
musí tam být JS
Witiko
Profil
Rohy:
Když tam je vytváření 3D hry v HTML5 + canvas tak to HTML5 využívá JavaScript né ? Samotné HTML5 tohle nedokáže... Nebo jo ? Jinak witko jak jsi na tom s tou hrou ?? Jsem zvědavý.
Blameuj grafika, ne mě. Těžko můžu dělat kód a css ke hře, když nemám grafiku.
peta
Profil
Witiko:
To jsou vetsinou upravene verze z javascriptkit. Je to napsano ve zdrojaku, obvykle. Mi to proste nejelo ve Firefoxu, tak jsem si udelal par zasahu.

Ty sachy nemaji nejakou extra strategii a mam pocit, ze nektere tahy tam taky nejsou oki. Vetsina sachu ma problem s rosadou a vyhazovanim pescu, kteri skocili o 2 pole.
Arkanoid jsem treba upravil az prilis. Jejich logiku jsem smazal, protoze byla slozita a ted mi to lita mimo prostor. Ale na nauceni to stacilo.

Tobe doporucuji kombinovat jquery s canvasem. Idelane primo flash, ten je na to delany. Nema smysl tlacit to pres prohlizec a JS, fakt.
Witiko
Profil
peta:

Zatím mě ještě nikdo nepřesvědčil o tom, že bez jQuery nemůžu žít, pracuji přímo s javascriptem, pokud chci něco zautomatizovat, napíšu si na to knihovnu. Ačkoliv jde pravděpodobně o zrychlení práce, nechce se mi vkládat svou práci do rukou frameworku o němž nevím jak uvnitř pracuje a kdy narazí na prohlížeč u kterého bude mít problémy s kompatibilitou.
Nox
Profil
Witiko:
Framework je *právě* naopak mj. na to abys neměl problémy s kompatibilitou.... tenhle argument je dost zcestný
Zdrojový kód frameworku je bez problému veřejně dostupný

tak už zbývá jen to urychlení ;)
Witiko
Profil
Nox:
tenhle argument je dost zcestný

Jde spíš o to, že problémy s kompatibilitou si raději vyřeším sám, než abych je vkládal do rukou frameworku. To nemá znamenat, že jQuery je napsané špatně, pouze rád za funkčnost svého scriptu odpovídám sám. jQuery beru jako zajímavou věc pro začátečníky, která javascript celkově zjednodušuje a ulehčuje k němu přístup.
Witiko
Profil
DHTML Snake
Nox
Profil
Witiko:
Tu odpovědnost chápu, ale reálně šance že bude špatně kód který dělá několik lidí znalých a zkušených v oboru a zdroják je prověřený nezměrným zástupem lidí, z části opět kvalitních oproti tobě jedinému...

jQuery beru jako zajímavou věc pro začátečníky, která javascript celkově zjednodušuje a ulehčuje k němu přístup.
Opět mi přijde zcestné, ala
'...OpenGL a DirectX jsou také zajímavé věci pro začátečníky, normální firmy si radši low-level práci s grafikama píší vždy znova od začátku'

pokud si s něčím spíš jen tak nehraješ, ale děláš něco většího, tak právě naopak využiješ hotové a prověřené řešení (tuplem když je zadarmo :) )
Witiko
Profil
Reaguješ na více než měsíc starý příspěvek, nový příspěvěk je DHTML Snake. :D

Jinak zpětně souhlasím: Pokud bych neměl čas vytvořit si framework vlastní, použiju asi jQuery, nebo jiný framework. Jinak preferuju řešení vlastní.
Michalll
Profil *
Nahodou jsem narazil na tohle vlakno pri hledani... vim ze to neni aktualni ale treba pro inspiraci nekomu

Jedna se o protaci stare klasiky hry Vlak do JS.

No neni to kdo vi co... ale delal jsem to pred rokem, kod je nic moc spise nic nez moc :-)

http://photoflaunt.hys.cz/
hexcross..
Profil *
Tohle je taky zajímavá aplikace :)
http://tutorialzine.com/2010/01/sticky-notes-ajax-php-jquery/

Momentálně jí trochu upravuju po svém :)
Chamurappi
Profil
Reaguji na hexcross..:
To není ani veliká aplikace, ani to není plynulá hra. Podobně triviálních skriptů existují tisíce…


Reaguji na Michallla:
Hezké. Teď ještě zkus do JS předělat pozdější Němečkovu tvorbu — vizuální programovací jazyk Petr :-)
Michalll
Profil *
Chamurappi:
hm... to by byla trochu jina liga :-). Vubec ten jazyk Petr je dobre propracovany, obdivuji pana Nemecka tohle udelat a v te dobe..., jenom skoda ze to se to tak nerozsirilo jako treba GameMarket. Je videt ze nestaci jen dobre naprogramovat ale hlavne mit dobrou propagaci a marketing.
Medvídek
Profil
Mně se líbí tyhle JS šachy s velikostí 1kB :)
midlan
Profil
jestli můžu tak se pochlubím svojí aplikací :) Hra šibenice. Tohle je starší verze, v PC mám novější trochu líp napsanou a s podporou diakritiky...
« 1 2 »

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: