Ide gyűjtjük össze a kivonulós demóval kapcsolatos ötleteket. Újat javasolni a következőképpen lehet:
- clone-zd le ezt a gistet
- módosítsd
- küld el nekem a (tomi.michel [majomfarka] gmail [pont] com) a diffet
Pont az, amit a neve sugall. Egy pályán több játékos tower defense szerű játékot játszik. Tehát meghatározott összegért lehet különféle tornyokat letenni, amik különböző képességekkel és támadóerővel bírnak. A megölt ellenségekért pénzt kap a játékos, amit aztán új tornyokra vagy a meglévő tornyok fejlesztésére költhet. Ahogy egyre több játékos száll be, úgy egyre több ellenség jön egy körben, így izgalmas marad a játék akkor is, ha sokan játsszák.
A játékosok csak a pálya megfelelő szakaszára tehetnek le tornyokat. A felosztás lehet statikus (így csak meghatározott számú játékos játszat) vagy dinamikus (szerintem ez a jobb), azaz újra osztjuk a pályát, amikor egy új játékos lép be. Kérdés csak az, hogy a már meglévő és mindenféle alakban terjeszkedő tornyokat hogy kezeljük.
- a területek lesznek amőba alakúak
- átkerülnek a tornyok a terület új tulajdonosához
- kis szigetek lesznek a másik területének közepén
- viszonylag egyszerű megvalósítani
- a UI kevés grafikával is jól nézhet ki
- többen lehet játszani
- hosszabb időre is le tud kötni (saját tapasztalat alapján :))
- több embert kell bevonzani, bár a kivonuláson résztvevő körtagok beszállhatnak helyettesítőként
- kevésbé megközelíthető egy standnál, mert saját gép lenne az ideális
- telefonra, érintőkijelzőre optimalizált UI-t nehéz megvalósítani
- itt megoldás lehet, ha kontextus függő menük vannak:
- ha üres helyre kattint, akkor építeni tud a beúszó menüben
- ha egy toronyra kattint, akkor fejleszteni tud
- a fejlesztési idő megcsúszhat, ha túlbonyolítjuk
Egy többszereplős, multiplayer kígyós játék. Az irányítás mobil eszközökről történne, egy projektoron vagy nagyobb kijelzőn tudnánk kivetíteni. A játék lényege, hogy az egyes játékosok minél több ételt érjenek el és be tudják keríteni egymást. A játék akkor ér véget, ha csak egy játékos marad életben.
- kliensek: lehet websocket vagy fallback ajax POST-ra
- kliensek: csak egyirányú kommunikáció (send to server), ha nem akarunk tactical feedbacket ;) (sajnos böngészőből kétlem, hogy mukodik)
- megjelenítés csak egy helyen: ez már mehet akár websockettel a szerver<->megjelenítő eszköz között
- nagyon egyszeru felulet
- túl mainstream a kígyós játék
- mivel realtime ki kell mérni, hogy milyen válaszidőkkel tudunk dolgozni, milyen minimális "lépésközt" tudunk biztosítani (szvsz. 5-800ms lenne az optimális lépésköz)
- mobilnet vs. bme wlan esetén is
Az Asteroids http://en.wikipedia.org/wiki/Asteroids_(video_game) valószínűleg ismerős. A játék alapjait megtarthatnánk. Némileg fel lehetne turbózni a játékmenetet. Lehetne belőle multiplayert csinálni. Legegyszerűbben úgy, hogy a játékosok egymást is látják a pályán, és ugyanúgy lehet egymást is lőni, mint a többi tárgyat.
Ez talán mobilon is jól játszható. Canvas
vagy svg
lehetne a megvalósítás.
Attól függ melyiket támogatják jobban a mobilok böngészői. A navigáció az
egyetlen kérdés, de akár lehetne az is, hogy a telefont kell döntögetni, ha
ilyen API
elérhető js-ből mobilon. Bár a forgatást ez nem oldaná meg pedig
az fontos eleme a játéknak.
- viszonylag egyszerű kinézet
- multiplayer
- könnyen megérthető és játszható
- technológiailag lehet érdekes dolgokat belevinni:
- pl canvas vagy svg
- fejlesztési időben lehet, hogy megszívjuk vele
- kérdéses, hogy milyen apikat biztosítanak a (mobil)böngészők
- mobil és desktop irányítás is kell
- a válaszidők kritikusak lehetnek
Még általános iskolásként játszottuk ezt a játékot. Végtelenül egyszerű és egy kockás papíron is vígan játszható, de ez a mi szempontunkból most érdektelen.
Rajzolunk egy pályát, ami kellően kanyargós. Általában nem körverseny, mert elég lassú a játékmenet. A pályán nyilakkal jelöljük az autókat. Minden körben egymás után lépnek a játékosok egy meghatározott (előre eldöntendő) sorrendben. Minden körben egy játékos egy négyzetrácsnyit gyorsíthat vagy lassíthat és/vagy egyet kanyarodhat. Tehát a lehetséges új úticélokat a következő algoritmussal találhatjuk meg:
Vegyük a legutolsó lépést reprezentáló vektor és nézzük meg hova mutat. Ez lesz a kiinduló pontunk. Adjuk hozzá önmagához, az ekkor kapott pont körüli 8 pont bármelyikére lehet lépni. Az álló kocsi sebessége értelemszerűen 0, így 1-re lehet felgyorsulni egy kör alatt. Az álló kocsi bármelyik irányba indulhat.
Egy koordinátán egyszerre csak egy játékos tartózkodhat, így ha "bevágnak" eléd, akkor kénytelen vagy kikerülni vagy lassítani. Egymásnak menni nem lehet. Ha kicsúszol a pályáról, akkora kicsúszásod koordinátájában újraindulhatsz, de a sebességed 0-ra csökken.
A játék célja egyértelműen elsőként beérni.
- egyszerűbb felület
- körökre osztott, így nem számít a latency
- többen is játszhatják egyszerre
- esetleg mobilra is lehet értelmes felületet rittyenteni
- "elvihető" a játék és lehet órán, otthon folytatni.
- kicsit lassú játékmenet
- picit hosszabb játékidő (min. 10-15 perc)
- legalább 2 ember kell hozzá, AI-t írni érdekes lenne, de időkeretbe nem fér bele
- szabályok nem teljesen triviálisak, de egy jó UI-jal lehet talán enyhíteni ezt.
Klasszikus torpedó játék. Azzal bolondítjuk meg, hogy több játékos játszik egyszerre a szokásos 1v1 helyett. A játékba akármikor be lehet szállni, úgy mint egy igazi csatába. Egyszerre csak egy csata van.
Van egy központi kivetítő, amin követhető a csata menete. A kivetítőn csak a már publikus információk láthatóak. Ilyenek például a lövések helyei és a már elsüllyedt hajók. Az egyes játékosokat külön színnel jelöljük. Valamint esetleg némi statisztika is lehet a kivetítőn:
- az adott csatáról: kinek mennyi hajója van még, mennyit talált el
- összesített: high score lista
A játék kiegyensúlyozása érdekében a játékosok nem helyezhetik el a hajóikat, hanem egy viszonylag véletlen elhelyezést kapnak. Sőt a később csatlakozó játékosok csak egy csökkentett hajókészletet kapnak, hogy ne legyen akkora előnyük. A hajókhoz egy pontszámot rendelünk, ami a méretüktől függ. Minél nagyobb annál könnyebb eltalálni, de annál több körig él. Ebből a két tényezőből kell egy pontszámot alkotni és az újonnan csatlakozó játékosok a már bent lévő játékosok állapotának megfelelő leosztást kap.
A pálya viszonylag nagy lesz, de azért limitált. Esetleg lehet a játékosok számát maximálni, hogy még értelmes maradjon a játék és a vaktában lövöldözés ne legyen annyira kifizetődő.
Játék irányításra kép opció:
- Minden játékos látja a teljes pályát a saját kijelzőjén. Így tehát lényegében nem kell jelen lennie, mert így is tudja követni.
- A játékosok csak egy csökkentett felületet látnak, amin a következő lövést tudják leadni, de közben a csata jelenlegi állapotát csak a központi kijelzőn tudják követni.
Talán a második opció egyszerűbb és jobban elszeparálja az egyes részeket, így könnyebb lehet mobilra optimalizálni.
A végső cél, hogy jól lehessen mobilról játszani. Egy egyszerűbb mobil kliensnél kivédhetjük a felmerülő technikai problémákat (pl websocket hiánya). A központi "kivetítő" meg úgyis egy desktop böngészőben fut majd, így ott rendelkezésünkre áll minden jó (pl websocket nem lesz akadály).
- egyszerű megvalósítás
- egyszerű felülettel is lehet "killer app"
- a szabályok triviálisak és mindenki ismeri
- a központi kivetítő egységgel a legtöbb technológiai limitációt ki tudjuk védeni
- ötletes feature-ökkel elbonyolítható, ha szükséges
- nem túl eredeti