Autor Wątek: Commander Pixman [Retro platformowka pod iOS]  (Przeczytany 3489 razy)

Offline vashpan

  • Użytkownik
    • Strona

# Październik 08, 2011, 14:48:22
Pochwale sie i tutaj efektem paru miesiecy pracy po godzinach i nie tylko ( jak zwykle nieco dluzej niz sie spodziewalem... )

Commander Pixman
Jest to platformowka w stylu retro. Szybka akcja, laserowa strzelba w lapkach, 80 poziomow do przejscia, setki przeciwnikow do zabicia i tysiace pulapek do pokonania... Naszym bohaterem jest Andrew "Pixman" Blazkowicz, po rozbiciu sie w jakims pasie asteroid, wpada do tajnej bazy kosmitow... Musimy pomoc mu uciec i odnalezc jego rakiete ;) Jak widac fabula godna kina akcji lat 80-tych...

Glowna inspiracja byla dla mnie flashowa gierka "Star Guard" -> moze niektorzy kojarza... Ten styl mnie urzekl, chcialem zrobic cos w podobnym stylu, ale bardziej "wypasionego", z rozgrywka na czas w stylu "Super Meat Boy'a" i na platformy mobilne...

+ 80 poziomow ( 65 + 15 ekstra do odblokowania wykonujac specjalne misje ), bedzie wiecej w aktualizacjach
+ Ponad 20 pulapek, potworow i innego stuffu ( w tym 'portale' ;) )
+ Dodatkowe misje do pokonania oprocz regularnej gry - kazda misja odblokowuje dodatkowy poziom
+ Nagrywanie powtorek z kazdej gry - odtwarzanie po przejsciu poziomu... Jak w Super Meat Boy

Link do AppStore

Pare screenow z AppStore:





Trailer:
http://www.youtube.com/watch?v=keVILT155Ok

Gra narobila juz troche szumu w necie, recenzje na najwiekszych portalach o grach na iPhone etc... itd... Do tego wczoraj chyba dosc istotny ruch wykonany przez Apple, ale narazie wole nie zapeszac ;)

TouchArcade:
http://toucharcade.com/2011/09/30/commander-pixman/

148apps:
http://www.148apps.com/reviews/commander-pixman-review/

PocketGamer:
http://www.pocketgamer.co.uk/r/Multiformat/Commander+Pixman/review.asp?c=33996

Appolicious:
http://www.appolicious.com/games/articles/9695-iphone-app-video-review-commander-pixman

AppSpy:
http://www.appspy.com/commander-pixman-review

AppGefahren: ( tu cos od zachodnich sasiadow ;) )
http://www.appgefahren.de/commander-pixman-neues-aber-schwieriges-retro-jumpnrun-28812.html

To te z tych wazniejszych...

Informacje dla geekow:
+ Gra pisana ~5 miesiecy, z tego 3 grubo po godzinach. Dopiero w wakacje przysiadlem nieco bardziej ( ale tez bez przesady ;) )
+ Wszystko zrobilem sam, oprocz muzyki.
+ Gierka uzywa frameworku cocos2d-iphone, w wersji 1.0.1, ShareKit do integracji "spolecznosciowej", sieci Playhaven do cross-promocji i zbierania statystyk ( przycisk more-games ), Appirater do... wyswietlania zapytania o recenzje po jakims czasie ;)
+ Kod wlasny - czyli bez liczenia frameworkow to ~15 tys. linii kodu w Objective-C
+ Oprocz kodu w Obj-C dodatkowo troche Pythona do skryptu ktory konwertuje levele z formatu .tmx ( z fajnego edytora Tiled ) do mojego wlasnego + integracja z XCode przy budowaniu, przez co edytowanie i dodawanie nowych poziomow to kwestia 'save' w edytorze i odpalenie gry :)

Co o tym myslicie ? Pytania ?

Wpadlem na pomysl pewnej zagadki: Pierwszy kto sie zorientuje do jakiej firmy, znanej i teraz i w poczatku lat 90-tych odnosi sie kilka rzeczy z mojej gierki ( wspomniane w tej notce ) dostanie promokod ;)
« Ostatnia zmiana: Październik 08, 2011, 14:51:13 wysłana przez vashpan »

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Październik 08, 2011, 15:39:08
Jeżeli na myśli miałeś Commander Keena, to było to proste.

Offline vashpan

  • Użytkownik
    • Strona

# Październik 08, 2011, 16:05:00
Pewnie nie dla kazdego ;) Chodzilo zreszta o firme, no ale niech bedzie ;) Wysle ci promokod, ale pozniej bo teraz zmykam na pociag...

Offline Radarek

  • Użytkownik

# Październik 08, 2011, 16:58:50
Bardzo fajnie Ci to wyszło. Mam nadzieję, że będzie szła jak ciepłe bułeczki :) (niestety nie mam póki co iphona więc nie kupię :D). Sam w niedalekiej przyszłości będę chciał dobrze przyjrzeć się platformie iOS i prawd. przeportować obecnie tworzoną grę we flashu.

Mam kilka pytań.
1) Czy zaczynając tworzyć tę grę znałeś już obj-c i/lub platformę iOS?
2) Czy mogę myśleć o pisaniu gry mają dostęp tylko do emulatora?
3) Czy Twoja gra działa także na ipadzie?
4) Jak zrealizowałeś nagrywanie i odtwarzanie powtórek (sam mam taki ficzer w mojej grze i jestem ciekaw Twojego podejścia).
5) Czy sterowanie zrobiłeś na zasadzie "wirtualnej klawiatury"? Jeśli tak to (biorąc pod uwagę rozmiar iphona) to czy jest to wygodne w praktyce?
6) Skąd się wzięła ta spora ilość LOC? Gra nie wygląda na bardzo skomplikowaną (chociaż może to tylko wrażenie, oceniam tylko po trailerze).
« Ostatnia zmiana: Październik 08, 2011, 17:08:16 wysłana przez Radarek »

Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Październik 08, 2011, 17:08:39
No "Blazkowicz" z kolei sugerował Wolfensteina, więc w sumie to Id Software.

Inna kwestia, że patrząc na screeny mam mocne deja vu:
https://market.android.com/details?id=starwarrior.app&feature=also_installed

Offline Rydwan

  • Użytkownik

# Październik 08, 2011, 22:01:44
Przy  dzisiejszej technice RETRO to pojecie wzgledne :)

Poziom projektu: bardzo latwy.

Projekt wyszedl na prawde dobrze, wyglada to nawet profesjonalnie. Lecz teraz minimum, to wersja iOS+Android, gdzie Android przejmuje po malu rynek.


Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Październik 08, 2011, 22:52:16
Cytuj
Lecz teraz minimum, to wersja iOS+Android, gdzie Android przejmuje po malu rynek.
Tak, tyle że na Androidzie mało co się zarabia, bo Android Market zalany jest mnóstwem darmowych aplikacji.

Offline Rydwan

  • Użytkownik

# Październik 08, 2011, 23:38:17
Mowisz to opierajac sie tylko na 'darmowych' app? Czy na jakiejs produkcji i wynikach ich sprzedazy?

Ja bym zaryzykowal stwierdzenie, ze jesli cos w ogole bedzie sie sprzedawac na iOS, to i na Andku tez.
Uzasadniajac to tylko doswiadczeniem w sprzedazy,  w ogole innej branzy i nie dotyczacej OS telefonow.

Moim zdaniem grozne dla sprzedazy sa pirtaty, niz darmowa konkurecja.






Offline Krzysiek K.

  • Redaktor
    • DevKK.net

# Październik 08, 2011, 23:54:04
Cytuj
Mowisz to opierajac sie tylko na 'darmowych' app? Czy na jakiejs produkcji i wynikach ich sprzedazy?
Mówię opierając się na wynikach i porównaniach dostępnych na sieci. Na Androidzie zarabia się teraz głównie na reklamach.

Cytuj
Ja bym zaryzykowal stwierdzenie, ze jesli cos w ogole bedzie sie sprzedawac na iOS, to i na Andku tez.
To dlaczego Angry Birds na Androida są za darmo? Albo dlaczego Carmack nie zamierza portować Rage HD na Androida? Czyżby producenci się nie znali?

Cytuj
Moim zdaniem grozne dla sprzedazy sa pirtaty, niz darmowa konkurecja.
Zdziwiłbyś się. Użytkownicy Androida przyzwyczajeni są do darmowych aplikacji, a iPhonów do płacenia. Jeżeli się mylę, spróbuj sportować MS Office na Linuxa, sprzedać to w takiej samej cenie i uzyskać podobny % instalacji na systemach.

Cytuj
Uzasadniajac to tylko doswiadczeniem w sprzedazy,  w ogole innej branzy i nie dotyczacej OS telefonow.
No właśnie. W innej branży. Nie znam drugiej branży, która by miała taką specyfikę, jak development na Adroida - tylko jeden liczący się sklep, odwiedzany przez praktycznie 100% użytkowników, w którym większość aplikacji jest darmowa.

Offline vashpan

  • Użytkownik
    • Strona

# Październik 09, 2011, 00:11:23
@Krzysiek K. o tej grze z Androida nie wiedzialem ;) Widac ze oboje inspirowalismy sie "Star Guard" ( co ciekawe strona z ta gra jest niedostepna teraz... )

@Rydwan, nie twierdze ze projekt byl trudny, raczej latwy, choc zmudny. Dopracowanie szczegolow zawsze jest najdluzsze. Chcialem miec dopracowany projekt. Co z tego ze gra byla grywalna mniej wiecej po tygodniu, pierwsze 90% idzie szybko i jest latwo, gorzej z ostatnimi 10% ;)

@Radarek
1. Znalem, ale niewiele, wczesniej ( rok temu ) zrobilem mala 'probna' gierke na iOS, potem byl anulowany projekt, prototyp nie byl zbyt dobrze rokujacy, no i byly inne zajecia, studia.
2. Jasne - tylko ze nie bedziesz mogl uzywac wielodotyku ;) Symulator ( nie emulator! To dosc istotna roznica, iOS ma symulator - czyli natywna wersje iOS skompilowana pod x86 ) Softwarowy renderer OpenGL ES dziala dosc szybko - proste gry bez problemu smigaja w 60fps, a reszta kodu dziala nawet szybciej niz na urzadzeniu ( to natywny kod x86 ) Dlatego urzadzenie jest istotne do testow wydajnosci, ale na poczatku wcale nie jest konieczne.
3. Dzialac dziala, ale nie jest narazie przystosowana. Nie mam iPad'a wiec nie moglem tego zrobic ;)
4. Powtorki to nagrywanie inputu, stanu przyciskow. Idea jest trywialna - ale nagrywanie powtorek implikuje komplikacje z ktore nie do konca na poczatku przewidzialem. Gdyby nie powtorki, gra skonczona bylaby pewnie szybciej.
5. Tak, wirtualne przyciski - to standard, jest dosc responsywny jak sie przyzwyczaic. Do tego stopnia ze teraz lepiej gram na iPodzie niz klawiatura na Macu ( port na Mac'a aplikacji w cocos2d jest trywialny ) ;)
6. Ilosc LOC wcale nie jest duza... raczej przecietna na tego typu skonczony projekt. Po pierwsze - Objective-C jest dosc rozwleklym jezykiem ( wywolywanie metod na szerokosc ekranu, albo pare linijek - to nie jest rzadkosc ;) ), metody klas maja bardzo opisowe nazwy, do tego zawsze z nazwanymi parametrami. I ja do tego pisze rozwlekle ( { } w nowej linii etc... )  Poza tym - w grze jest ponad 20 obiektow, na kazdy kilkaset linijek, po czesci powtarzajacego sie kodu. Oprocz tego jest 15 misji ktore warunki maja zhardcodowane - kolejne kilkanascie/kilkadziesiat linijek kazde. Do tego podzial na sceny, lokowanie przyciskow, etykiet etc... Najprostsza scena "o grze" to jakies 100 linijek ;) Do tego ladowanie animacji to powtarzajacy sie kod liczacy razem jakies 500 linijek.

Gra jest obecnie wyrozniona przez Apple na liscie New&Noteworthy w paru krajach. Osiagnalem z nia wszystko co chcialem i co planowalem, i jestem niezwykle dumny.

Przez tydzien do wczoraj sprzedalo sie >1000 sztuk. Teraz po New&Noteworthy licze na znacznie wiecej. Ale na jakas kosmiczna sprzedaz nie mam jednak co liczyc bo gra ma specyficzny styl i do mas to sie nie nada... Ale mam nadzieje ze mi zwroci sie te 5 miesiecy pracy ( no nie do konca... w sumie moze wyszlo ze 2.5 miesiaca po 8h 5dni w tyg... ) Pozdro!

Port na Androida niestety nie wchodzi w gre, bo gra jest napisana w Obj-C, z uzyciem frameworka specyficznego dla iOS. W sumie teraz zaluje, bo gra jest na tyle prosta ze czysty OGL-ES by dal rade bez wiekszych opoznien, a C++ bylby bardziej przenosny. I popieram Krzyska K, rynek na iOS jest nieco bardziej intratny, mimo wszystko.

Offline qad

  • Użytkownik

# Październik 09, 2011, 00:14:54
reklama addmob / airpush, in application transactions, cross aplication promotion, product placement, rozmaita mozaika wersji aplikacji (retro, HD, full, lite, skórki), wartość rozpoznawalności marki, ruch generowany przez userów na serwisie domowych, nośniki analogowe marki (koszulki, czapeczki), konferencje, warsztaty, social media, komiksy, filmiki o firmie / gierce / bohaterach czyli frenchajz ...... dlatego aplikacje na androida są darmowe bo zarabia się na innych rzeczach a nie na samej gierce.

PS: gierka świetna  ;-)  świetny towar, teraz z niej zrób wszystko żeby można było zrobić to co napisałem powyżej

« Ostatnia zmiana: Październik 09, 2011, 00:16:39 wysłana przez qad »

Offline Radarek

  • Użytkownik

# Październik 09, 2011, 01:43:05
2. Jasne - tylko ze nie bedziesz mogl uzywac wielodotyku ;)

Faktycznie. W takim razie jak się testuje samą grę na symulatorze? Dodaje się obsługę normalnej klawiatury?

4. Powtorki to nagrywanie inputu, stanu przyciskow. Idea jest trywialna - ale nagrywanie powtorek implikuje komplikacje z ktore nie do konca na poczatku przewidzialem. Gdyby nie powtorki, gra skonczona bylaby pewnie szybciej.

Czyżby chodziło np. o powtarzalną losowość?:) Czy coś jeszcze? (mam taką samą metodę więc wolałbym się nie wkopać w coś).

Port na Androida niestety nie wchodzi w gre, bo gra jest napisana w Obj-C, z uzyciem frameworka specyficznego dla iOS. W sumie teraz zaluje, bo gra jest na tyle prosta ze czysty OGL-ES by dal rade bez wiekszych opoznien, a C++ bylby bardziej przenosny.

Ja podszedłem do tego trochę inaczej. Pierwsza wersja (tak jak pisałem) powstaje we flashu. Od samego początku bardzo rygorystycznie podszedłem do podziału na modele, widoki i kontrolery (czyli klasyczny MVC, bez żadnego frameworka). Jeśli będę chciał to przeportować na inny język to o tyle mam to ułatwione, że to co siedzi w modelach i kontrolerach jest dosyć czystym kodem w AS3 (w sensie nie ma tam grzebania w grafice itp), wiec można przepisywać prawie 1:1. Jeśli masz sporo kody dotyczącego grafiki to trochę inna bajka.

Offline vashpan

  • Użytkownik
    • Strona

# Październik 09, 2011, 12:32:25
No widzisz, ja tez moglem przemyslec to nieco inaczej. Teraz gra jest w sumie slabo portowalna na inne platformy niz iOS + Mac. Nawet w mechanice gry jest sporo kodu zw. z cocos2d.

Ad. 2 No normalnie sie gre testuje tyle ze bez wielodotyku ;) Mozna klikac myszka na przyciski po kolei i szybko - w moim przypadku w czesci przypadkow to wystarczalo ;) No ale wiadomo ze testow na urzadzeniu nic nie zastapi.

Ad. 3 Losowosci w grze akurat u mnie nie ma w ogole ( nie liczac gwiazdek w tle ;) ), ale to mozna latwo rozwiazac zapisywalnym seedem przeciez. Najwazniejszy jest dobry "fixed time step" - fps dla mechaniki gry musi byc staly i niezmienny. Input jest zapisywany wzgledem klatek, tj. najmniejszy przedzial czasowy jaki moze trwac jakis stan przyciskow to jedna klatka. Przy 60fps dziala to sprawnie.


Offline vashpan

  • Użytkownik
    • Strona

# Czerwiec 30, 2012, 12:01:26
Witam

Moja gierka ostatnio zostala przeportowana na Androida:
https://play.google.com/store/apps/details?id=com.noodlecake.pixman

Ogolnie nie przeze mnie osobiscie, ale koledzy z Noodlecake Games maja ciekawa technologie pozwalajaca latwo portowac gry z iOS na Androida ( zadne cuda: po prostu kompilacja Objective-C natywnie na Androida i implementacja bazowych libek z iOS ;) ), sportowali pare naprawde wielkich hitow z iOS ( Trainyard... ) i sami tez robia bardzo popularne gry na obie platformy.

Na Androida poszlismy w model free-to-play. Jak to wyjdzie, zobaczymy. W kazdym razie mozecie sciagnac za darmo i pograc w ( duza ) czesc poziomow + dodatkowe za ekstra kase.

Zachecam do feedbacku, bo pewnie jest tutaj znacznie wiecej osob z Androidem niz iPhonem ( przy czym - ja do wersji Androdowej sie nie wtracalem, gra tez troszke inaczej sie zachowuje na iOS i Androida )

***
Ze swiata iOS natomiast: Praktycznie skonczylem wersje na iPada ( poprzez update ) z supportem dla zewnetrznych kontrolerow :)

Filmik:
http://www.youtube.com/watch?v=4SfbMwMeV78
« Ostatnia zmiana: Czerwiec 30, 2012, 12:15:09 wysłana przez vashpan »

Offline Radarek

  • Użytkownik

# Czerwiec 30, 2012, 14:34:38
Ze swiata iOS natomiast: Praktycznie skonczylem wersje na iPada ( poprzez update ) z supportem dla zewnetrznych kontrolerow :)

Filmik:
http://www.youtube.com/watch?v=4SfbMwMeV78

Czekam na wersję na ipada - chętnie zakupię. Natomiast nie wiedziałem, że istnieją takie cuda jak iCade! (wow) Już jest na liście życzeń :D.

Na czym polega implementacja wsparcia dla takiego kontrolera?