Alább két pálya végigjátszását nézhetitek meg, illetve pár másodperc látszódik a már majdnem teljesen kész főmenünk is. Még a highscore-t kell beüzemelni és indulnak az első publikus tesztek! ;)
Main menu + Level 05
Level 02
Változtatások:
Hibajavítások:
Most pedig következzen egy friss gameplay felvétel. Sajnos hangot még mindig nem rögzít a GearVR, így az még mindig nincs rajta.
Az eddig használt csodálatos primitívekből felépített tornyaim egészen jól funkcionáltak mindeddig, de ideje volt egyet lépni előre. Még ez se biztos, hogy végleges, de már legalább látszik az upgrade rajtuk és kb toronynak tűnnek. :)
Egészen szépen sikerült haladni a napokban. Ez persze nem jelenti azt, hogy így is folytatom. Most hétvégén is galád mód inkább comic-con-ra megyek, mint ezzel haladjak. *shame* A lényeg, hogy kezd körvonalazódni a játék. Egyre jobban hiszek benne, hogy 1-2 hónapon belül eljuthatok az első zártkörű tesztekig. A jelentkezésre lesz majd egy külön poszt és előre is köszönöm azoknak akik részt vesznek majd benne. A zárt jellegnek inkább technikai okai vannak, mint hogy én nagyon rejtegetni szeretném a játékot. :)
Ami elkészült a napokban:
- HP csík javítások
- HP csík színe jelzi az aktuális álapotot. Fagyasztás esetén kék színt kap ameddig rajta van az effekt
- Player fegyver lassító lövedék kisebb sebzéssel
- Player fegyver területre ható sebzéssel (gránát - földet érve robban csak fel)
- Fegyverválasztó felület build phase-ben. (normál, lassító, gránát)
Lejjebb pedig a még hátralévő feladatokat láthatjátok. Nem feltétlenül kerül be mindegyik a játékba. A platform variáláson erősen gondolkodom, hogy ki fog maradni. Így se lesz kis munka a játék balance összerakása a már meglévő elemekből.
Általános:
- Main menu (egy 3d térképet szeretnék terepasztal szerűen)
- Kampány menü (terepasztal felülről, a pályák meg kastélyokként ábrázolva)
- Mentés/Betöltés
- Pont számítás pályák után (idő, megmaradt életek és megmaradt pénz értéke összesítve)
- Ranglista
- új AI útvonalának berajzolása
- új AI block-olt út kezelése
Tornyok:
- aoe torony
- lassító torony
- áthelyezés bekötése
Platform:
- platform átalakítás csapdává
- platform átalakítás barikáddá
Ha mindez megvan, már nem marad más hátra mint összerakni 15 pályát és balance-olni a végtelenségig.
Utána pedig publikus tesztek. Semmiség... ;)
Mennyire kellemes meglepetés is az, mikor egy nagyon bonyolult és erőforrás igényes scriptet le tudsz cserélni egy engine által beépítetten támogatott megoldásra. Az elmúlt napokban két oldalról is történt ilyen esemény és most röviden ezeket szeretném megosztani veletek.
Útkeresés
Korábban a Simple A* Pathfinding-ot használtam. Azt pedig kijelenthetem, hogy ez nem volt életem legjobb döntése. Nagyon számításigényes volt minden egyes útvonal kiszámítása és limitált volt a távolság, ameddig képes volt minderre. Egy ponton túl, ha növeltem keresési távolságot használhatatlan mértékre nőtt a számítási igény. Ezért különböző waypointokkal oldottam meg, hogy ha egyet elért, váltott a következőre. Kényelmetlen volt és lassú, de végül is működött, így nem piszkáltam.
Amiért elkezdtem másik megoldást keresni, hogy nagyon rosszul reagált a script arra, ha egy enemyt találat ér. Ilyenkor a model nagyon csúnyán felpattant időnként. Igaz a script azonnal visszarántotta a földre a karaktert, de nem mutatott túl jól.
Ezután jött a megvilágosodás, mikor egy kollégától meghallottam a varázsszót: NavMesh. Nem fogok részletesen belemenni a használatába, hiszen nagyon magától értetődő a használata és ha nem megy valami, a youtube tele van mindenre kiterjedő tutorialokkal ezzel kapcsolatban.
Szóval néhány kattintásból és komponens cseréjéből lett egy sokkal folyamatosabb mozgású és a hardvert kevésbé terhelő pathfindingom.
Több olyan elemmel tudom most ennek segítségével kiegészíteni a játékot ami nagyon macerás lett volna az előző megoldással:
Fizika vs. Scriptelt mozgás
A player fegyvere a korábbi verzióban ugye már tudta azt, hogy egy lövedék megy A-ból B-be és nem volt elég csak rákattintani az enemyre. A legnagyobb problémám az volt vele, hogy ezt ki szerettem volna egészíteni maximális lőtávolsággal. Azaz, egy bizonyos távolság után essen a földre a lövedék.
2-3 óra számolgatás után meg is volt a megfelelő ív, de nem mutatott olyan jól mint reméltem és láthatóan ette a frameket. Szóval ki lett próbálva, hogy minden egyes lövedékről lekerült minden script, csupán egy AddForce fut le Start-nál és kapott egy RigidBody-t. Az eredmény gyors és jól konfigolható a későbbi több típusú fegyverhez.
Ma megint egész sokat sikerült haladni a játékkal. Bekerültek az első hangok és zenék, a player weapon már értelmes alakot ölteni és megint sikerült nyerni egy kis teljesítményt.
Zenék/Hangok
Szóval ahogy írtam már nem csak a touchpad tapogatását lehet hallani játék közben, hanem már vannak csodálatos hangeffektjeink is. Többnyire 8bites anyagokat próbáltam keresni, de még közel sem biztos, hogy ezek maradnak. Sajnos a gameplay videóban nem tudom megmutatni, mert a GearVR-on rögzített anyag nem tartalmaz hangot. Az editorból felvettben pedig egyszerűen csak akadozik. Igyekszem minél hamarabb valamit kitalálni erre.
A zenék is chiptune jellegűek lesznek. Jelenleg ez az építkezés közben futó zene:
Harc közben természetesen más fog szólni, de arra még nem találtam olyat ami igazán illene a történésekhez.
Player fegyver
Eddig egyszerűen azt nézte a játék, hogy a célkereszt előtt van-e egy enemy. Ha előtte volt és tappoltunk akkor sebezte. Ez viszont egyáltalán nem volt jól skálázható, nem látványos... igazából nincs olyan szempont ami indokolta volna, hogy ez a megoldás maradjon.
Ezért most elkészült a player weapon 2.0. Ez jelenleg azt tudja, hogy egy gyönyörűséges golyót lő ki minden alkalommal, mikor tappolunk.
Jelenleg csak egy fix sebességgel repül abba az irányba amerre lőttünk és egy bizony távolság után törli magát. Illetve ha célt talál akkor sebez. A terv az, hogy lesz íve is a lövedékeknek, így nem lesz olyan egyszerű eltalálni a célpontot.
Azt is kipróbáltam, hogy milyen, ha nem korlátlanul tappolhatunk, hanem 5-10 töltényenként újra kell tölteni, de ez nagyon kényelmetlenné tette a játékot. Inkább volt bosszantó, mint taktikázásra lehetőséget adó játékelem, ezért ki is lett most kapcsolva.
Ma sikerült néhány új feature-t is hozzáadni a játékhoz, illetve kicsit grafikailag is ki lett pofozva.
Kezdeném az "óriási" grafikai frissítéssel: Lecseréltem a default unity skybox-ot! Hurray! Nem olyan nagy dolog, de annál jobban mutat a kicsit rajzfilmes hatású háttér. Ez persze még nem a végleges, de érzetre mindenképpen valami hasonlót szeretnék majd.
User Interface változások
Az eddigi kevés felhasználói teszt folyamán már az is kiderült, hogy a játékosoknak az okozta a legnagyobb gondot, hogy nem tudták hogyan kell platformot építeni. Hosszan kell az ujjunkat nyomva tartani a touchpadon és utána az adott tile-on megépül. Ez viszont sehol nem volt jelezve, most pedig már egy töltés indikátor mutatja, ami 0.75 másodperc alatt körbemegy és a végén felépül az adott elem.
Ez viszont magával hozott egy bosszantó apróságot. Mégpedig, ha csak kattintani akartunk akkor is néha fel-fel tűnt a töltőkarika apró részlete. Ezt azzal sikerült kiküszöbölni, hogy csak 25%-tól lesz lassan látható (az eltelt idővel arányosan állítom a layer átláthatóságát).
Extraként pedig most már látszódnak a rendszerüzenetek is a játékosnak: nincs elég pénze, éppen vége van az adott körnek, nincs elég platform, stb...
Ellenségek útvonalának kijelzése
Építési fázisban annak ellenére, hogy lehetett sejteni az ellenfelek útvonalát, látni nem lehetett. Ezért az AI több órás piszkálásával sikerült összerakni, hogy építési fázisban már látható legyen az útvonaluk. Ez természetesen folyamatosan frissül amikor építünk egy platformok, vagy éppen eladunk egyet.
Ez a vonal csak az építési fázisban látható, ha elindult a kör akkor kikapcsol.
Jelentem, elkészült a tutorial map. Sokkal egyszerűbb, kisebb és átláthatóbb mint az eddig tesztelésre használt. Persze még meg nem tanít játszani... az egy másik történet lesz, de legalább a helyszín már megvan.
Eredetileg a repülő AI-t akartam rendbe rakni ma, de valahogy mindig az lett a vége, hogy a földön (vagy alatta) közlekedett. Azóta viszont rájöttem, hogy teljesen feleslegesen próbáltam meg a jelenlegi AI-ba bekötni, mert sokkal egyszerűbben is megoldható. Ugye ha repül, akkor neki nem kell falakat kerülgetni... ^^"
No de következzen most egy videó az elkészül tutorial mapról. A következő blog bejegyzés pedig jövőhét péntek körül várható leghamarabb. Addig is várakozzon türelemmel a hatalmas rajongótábor!
Éééés sikerült. Először eljutott a játék arra a pontra, hogy van eleje, van vége. Kezd egészen játék hangulata lenni.
Szóval ma elkészült a Wave kezelés pályákra bontva. Végül a Resources-ban tárolt JSON fájlok mellett döntöttem mert könnyen szerkeszthető és jól átlátható. Igaz még android-on valamiért nem szeretné felolvasni a fájlt text-ként, de ez már csak apróság.
Szóval ami már kész:
Ami még hátra van:
Holnapra a terv egy kezdetleges menü/map képernyő összerakása ahonnan indíthatóak a pályák és ahova vissza lehet menni, ha végeztünk eggyel.