Ο Μάριος Καραγιάννης είναι developer/designer και κατά τη διάρκεια των σπουδών του στο Πανεπιστήμιο της Γενεύης στην Ελβετία ξεκίνησε να ασχολείται με το development games για smartphones με Windows Phone 7. Διαβάστε την εμπειρία του από το γράψιμο των εφαρμογών για Windows Phone 7, τα games που ανέπτυξε και την όλη συνεργασία του με την Microsoft!
Γράφει ο Μάριος Καραγιάννης (developer/designer της Karios Games)
Όταν έμαθα την απόφαση της Microsoft να στείλει στα αζήτητα τη σειρά Windows Mobile 6.5 δεν σας κρύβω ότι ανακουφίστηκα . Ήταν μία κίνηση που έπρεπε να γίνει χρόνια πριν, όταν η Apple έδειξε με τον πιο εμφατικό τρόπο ότι δεν μεταφέρεις απλά ένα λειτουργικό σύστημα που σχεδιάστηκε για χρήση με πληκτρολόγιο και ποντίκι σε συσκευές χειρός, προσπαθώντας με μπαλώματα να καλύψεις τις ελλείψεις αυτές, γιατί αυτή η προσέγγιση απλά δεν δουλεύει. Ξεκινάς από το μηδέν, σχεδιάζεις ένα νέο λειτουργικό με βάση την οθόνη αφής, τα συγκεκριμένα δεδομένα που σου δίνει η φορητή συσκευή στην υπολογιστική ισχύ, στους αισθητήρες κίνησης κλπ. Όταν μάλιστα είδα ότι η Microsoft θα επιβάλλει ελάχιστες απαιτήσεις στο θέμα του hardware στους κατασκευαστές, εκεί πραγματικά πείστηκα ότι η νέα ομάδα που σχεδίασε το λειτουργικό σύστημα Windows Phone 7 είχε πιάσει το θέμα σωστά. Κάλλιο αργά παρά ποτέ λοιπόν.
Μετά ξεκίνησε μία καμπάνια, ειδικά σε πανεπιστήμια, με διαγωνισμούς για φοιτητές και εκδηλώσεις για ενημέρωση, τόσο για την πλατφόρμα, όσο και για τα εργαλεία ανάπτυξης λογισμικού για αυτή. Η Microsoft, φυσικά, ως εταιρία λογισμικού, έχει τεράστια παράδοση σε εργαλεία ανάπτυξης λογισμικού, με το Visual Studio να θεωρείται από πολλούς ως η υπέρτατη πλατφόρμα για αυτή τη δουλειά. Ευτυχώς, όλη αυτή η εμπειρία πέρασε και στα εργαλεία ανάπτυξης εφαρμογών για WP7. H Microsoft αποφάσισε να χρησιμοποιήσει δύο πλατφόρμες που ήδη είχε και χρησιμοποιούσε στο PC, στο XBOX 360 και στο web, και συγκεκριμένα το Silverlight, για εφαρμογές γενικού περιεχομένου και το XNA ειδικά για παιχνίδια, η δε γλώσσα εφαρμογής είναι η αρκετά δημοφιλής C#. Το γεγονός αυτό φυσικά διευκολύνει κατά πολύ ανθρώπους που στο παρελθόν έχουν αναπτύξει εφαρμογές σε Silverlight και παιχνίδια για Xbox 360 ή Zune HD. Προσωπικά ανήκω στους τελευταίους οπότε το βρήκα σαν μία καλή ευκαιρία να ασχοληθώ με τη νέα πλατφόρμα, χωρίς να χρειαστεί να ξεκινήσω από το μηδέν.
Τι χρειάζεται για να γράψει κανείς παιχνίδια για Windows Phone 7
Για να μπορέσει κάποιος να ξεκινήσει να γράφει παιχνίδια για τα Windows Phone 7, το μόνο που έχει να κάνει είναι να προμηθευτεί τα δωρεάν εργαλεία που συμπεριλαμβάνουν τα SDK και το Visual Studio 2010 Express που είναι μία ικανότατη μεν, δωρεάν δε έκδοση του δημοφιλούς πακέτου. Με μία και μοναδική εγκατάσταση, έχουμε το πλήρες περιβάλλον ανάπτυξης μαζί με έναν εξομοιωτή των ίδιων των κινητών, ο οποίος μάλιστα τρέχει το πλήρες λειτουργικό του τηλεφώνου. Το πρώτο βήμα είναι, λοιπόν, πάρα πολύ απλουστευμένο, ενώ το δεύτερο, η εκμάθηση του SDK και της γλώσσας, γίνεται πραγματικά πολύ απλή με την εκτενή βοήθεια που δίνεται μέσα από το Developer΄s Hub (δείτε εδώ και εδώ) με δεκάδες απλά παραδείγματα και βίντεο για να αρχίσετε να μεγαλουργείτε σε μικρό χρονικό διάστημα. Οι δε ευκολίες που παρέχει το Dot Net Framework 4 είναι ανεκτίμητες, όπως πάντα.
Στην δική μου περίπτωση, η περιπέτεια ξεκίνησε με κάτι απλό, ένα Tetris Clone ονόματι Tetrada, το οποίο έφτιαξα σε πολύ μικρό χρονικό διάστημα και έστειλα στο Marketplace, το αντίστοιχο App Store δηλαδή για τα WP7. Εδώ να σημειώσω ότι η διαδικασία εγγραφής και αποστολής εφαρμογών ακολουθεί την συνταγή της Apple, με μία ετήσια συνδρομή των $99, ενώ για φοιτητές, αν το πανεπιστήμιο είναι συμβεβλημένο με τα αντίστοιχα προγράμματα της Microsoft (πρόγραμμα Academic Alliance, Dreamspark κτλ), είναι δωρεάν. Η διαδικασία ανάπτυξης ήταν πραγματικά ευχάριστη, ενώ το ίδιο δεν μπορώ να πω για την λειτουργία του Marketplace στην αρχή, αφού ουσιαστικά πολλά πράγματα αναπτύχθηκαν, και αναπτύσσονται ακόμα, στην πλάτη των πρώτων χρηστών του, οι οποίοι μάλιστα έχουμε ονομαστεί και επίσημα beta testers στα fora από την Microsoft, παρόλο που αρκετοί έχουν πληρώσει για να βρίσκονται εκεί. Κατά τη γνώμη μου, η πλατφόρμα άνοιξε πριν να είναι έτοιμη 100% τουλάχιστον στο κομμάτι των developers (επί ένα μήνα είχαμε μηδενικές αναφορές για downloads και αγορές των εφαρμογών μας), ουσιαστικά για να πιάσει την περίοδο των γιορτών 2010-2011, μιας και όσον αφορά το κομμάτι των χρηστών, το λειτουργικό σύστημα και οι συσκευές ήταν σε πολύ καλό σημείο.
Με την ανάπτυξη του δεύτερου παιχνιδιού μου, του MonsterUp, τα πράγματα είναι αρκετά καλύτερα, μιας και διάφορα προβληματάκια, τόσο στη διαδικασία αποστολής, όσο και των αναφορών έχουν λυθεί και η όλη διαδικασία είναι αρκετά πιο ομαλή. Δεν λέω ότι αυτή τη στιγμή δεν υπάρχουν προβλήματα φυσικά, αλλά ας μην ξεχνάμε ότι πρόκειται για μία εξαιρετικά νέα πλατφόρμα, με τις πρώτες συσκευές να είναι στην αγορά μόλις 2-3 μήνες, με λίγους χρήστες, αλλά με πολύ ενθουσιασμό. Τα παραπάνω φαίνονται και στην κίνηση των εφαρμογών φυσικά, με το MonsterUp να είναι μεν στις πρώτες θέσεις στην κατηγορία του στις περισσότερες χώρες, αλλά σε απόλυτα νούμερα να μετρά ένα μικρό ποσοστό αντίστοιχων μέτριων παιχνιδιών στις άλλες δύο πλατφόρμες (iOS και Android). Αυτό φυσικά είναι λογικό, μιας και μιλάμε για ώριμες πλέον πλατφόρμες, που βρίσκονται στην αγορά και εξελίσσονται ήδη 2-3 χρόνια.
Συνεργασία με την Sounas Design στο γραφιστικό κομμάτι
Τα παιχνίδια που έχω ήδη στην αγορά κάτω από την ονομασία Karios Games αναπτύσσονται σε συνεργασία με την Sounas Design για το γραφιστικό κομμάτι, μιας και είναι γνωστό ότι οι developers συνήθως είναι καλύτερα να μένουν μακριά από το αισθητικό κομμάτι.
Ο Ηλίας Σούνας, της Sounas Design, για την προσωπική εμπειρία της συνεργασίας μας, είχε να πει:
«Μία από τις μεγαλύτερες χαρές ενός εικονογράφου είναι να σχεδιάζει χαρακτήρες και γραφικά για παιχνίδια και ευτυχώς στις μέρες μας με την πληθώρα συσκευών και λειτουργικών, οι δημιουργίες ενός εικονογράφου (illustrator) είναι πιο αναγκαίες από ποτέ. Ζούμε στην εποχή της εικόνας και όλα γύρω μας έχουν να κάνουν με την εμφάνιση και την αισθητική.
Μέχρι πρόσφατα είχα σχεδιάσει γραφικά και ήρωες κυρίως για παιχνίδια-εφαρμογές για iPhone και είδα ως μεγάλη ευκαιρία να επεκταθώ και σε άλλες πλατφόρμες, αφού ουσιαστικά ο ρόλος μου ως σχεδιαστής είναι ίδιος ανεξαρτήτως πλατφόρμας. Όταν ο Μάριος από την Karios Games μου πρότεινε να δημιουργήσω το αισθητικό κομμάτι του MonsterUp, αμέσως σκέφτηκα ότι το στυλ μου ταίριαζε με το παιχνίδι και θα μπορούσα να το κάνω να ξεχωρίσει από τα υπόλοιπα του είδους του. Οι ανταγωνιστές είχαν χρησιμοποιήσει κυρίως απλά, αφαιρετικά σχέδια, ενώ εγώ προτίμησα βασισμένος στο δικό μου στυλ να δώσω μια χαρούμενη νότα, κάνοντας το παιχνίδι όσο ευχάριστο γινόταν με ενδιαφέροντες ήρωες και γραφικά. Καταλυτικό ρόλο έπαιξε και η αμυδρή αλλά πολύ αποτελεσματική κίνηση των ηρώων, κάτι που φυσικά έλειπε από τα ανταγωνιστικά παιχνίδια και έδωσε μεγαλύτερη ευχαρίστηση στην όλη εμπειρία του παιχνιδιού. Στο project αυτό, όπως και στα περισσότερα, είχα συνεργασία και στο art direction κομμάτι, ακολουθώντας μεν τις οδηγίες του Μάριου, αλλά προτείνοντας και τις δικές μου, μια και τυχαίνει να είμαι και εγώ ο ίδιος παίκτης παιχνιδιών.
Η ανάπτυξη χιλιάδων παιχνιδιών στις φορητές συσκευές (κινητά, iPhone, Android, Windows Phone κτλ) έχουν δώσει νέες ευκαιρίες στους εικονογράφους και animators να ασχοληθούν πιο εύκολα με την ανάπτυξη γραφικών και επομένως να υπάρξει ώθηση στην δουλειά τους. Το ακόμη καλύτερο είναι ότι παρόλη την ανάπτυξη του 3D, ένα πολύ μεγάλο κομμάτι των προγραμματιστών επιθυμεί 2D γραφικά και απλά animations για να κάνει το παιχνίδι του να ξεχωρίσει. Πριν από μία δεκαετία πολλοί προφήτευαν το τέλος των 2D γραφικών, αλλά όπως φαίνεται ξεκάθαρα από τα χρόνια που πέρασαν, το σχέδιο παραμένει σε περίοπτη θέση στις προτιμήσεις των developers.
Τέλος, για να υπάρξει επιτυχημένη συνταγή σε ένα παιχνίδι όπως το MonsterUp, χρειάζεται φυσικά η ισορροπία τόσο του καλού design όσο και του ίδιου του gameplay. Αν κάποιο από αυτά υστερεί, τότε δύσκολα πετυχαίνει, αλλά φυσικά υπάρχουν και εξαιρέσεις, κυρίως όταν το gameplay είναι πάρα πολύ καλό, ώστε να μην ενοχλεί η μέτρια αισθητική. Στις επόμενες εκδόσεις του MonsterUp ετοιμάζω νέα ενδιαφέροντα γραφικά και μεγαλύτερη ποικιλία στα φόντα, κάτι που πιστεύω θα ευχαριστήσει αρκετά τους παίκτες που μας το ζήτησαν. Υπομονή»!
Tetrada και MonsterUp – Λίγα λόγια για τα games
Το Tetrada είναι ένα παιχνίδι όμοιο με το γνωστό εκ Ρωσίας puzzle, με χαρούμενα γραφικά και ομαλή ροή που έχει πάρει καλές κριτικές σε σχέση με τα υπόλοιπα που κυκλοφορούν στην πλατφόρμα WP7. Το παιχνίδι ήταν ανάμεσα στους νικητές του διαγωνισμού “You Make It Smart 2010” της Microsoft Switzerland.
Το MonsterUp πάλι είναι ένα vertical jumper, παρόμοιο με το Doodle Jump στα iOS, το οποίο πραγματικά έχει αγαπηθεί πολύ από παίκτες σε όλο τον κόσμο. Οι βαθμολογίες των reviews είναι πολύ υψηλές και έχουμε σκοπό να το πάμε στην κορυφή, ακριβώς όπως και τα μικρά τερατάκια μέσα στο ίδιο το παιχνίδι.
Με πολύχρωμα και χαρούμενα γραφικά και μουσική που σε βάζει στο κλίμα, επτά είδη πλατφορμών, έξι διαφορετικά τερατάκια που πρέπει να ξεκλειδωθούν για να προσφέρουν τις μοναδικές τους δυνατότητες στον παίκτη και πολλές νέες δυνατότητες στις νέες εκδόσεις που βγαίνουν πάρα πολύ συχνά, πραγματικά πιστεύουμε ότι είναι μία μεγάλη επιτυχία την οποία θα συνεχίσουμε να αναπτύσσουμε με ενθουσιασμό. Το παιχνίδι ήταν επίσης ανάμεσα στους νικητές του διαγωνισμού “You Make It Smart 2010” της Microsoft Switzerland για την τελική φάση.
Μπορείτε να βρείτε περισσότερα για το MonsterUp στην επίσημη σελίδα του στο Facebook ή στο www.kariosgames.com όπου βάζουμε όλα μας τα νέα.
Αξίζει τελικά να ασχοληθεί κανείς με ανάπτυξη παιχνιδιών για smartphones με Windows Phone 7;
Τελικά, μετά από όλα αυτά, αξίζει κάποιος να ασχοληθεί με την ανάπτυξη παιχνιδιών για τη νέα πλατφόρμα της Microsoft και όχι για μία από τις ήδη ώριμες και καταξιωμένες πλατφόρμες;
Η απάντηση εξαρτάται από τους στόχους που έχει κάποιος. Στα θετικά της απόφασης αυτής θα έβαζα τα εξαιρετικά εργαλεία ανάπτυξης, και το πολύ χαμηλό, εώς μηδενικό, κόστος έναρξης μίας τέτοιας προσπάθειας. Τα εργαλεία είναι δωρεάν για Windows, που οι περισσότεροι χρησιμοποιούν ούτως ή άλλως, το υλικό εκμάθησης άφθονο, ειδικά για το μικρό χρόνο ζωής της πλατφόρμας, ενώ η συνδρομή απαιτείται μόνο στο στα τελικά στάδια κυκλοφορίας. Φυσικά αν κάποιος θέλει να ασχοληθεί σοβαρά με το άθλημα, πρέπει να προμηθευτεί και μία συσκευή για να κάνει τις δοκιμές του, γιατί λειτουργίες όπως το multitouch και το accelerometer δύσκολα μπορούν να δοκιμαστούν στον emulator. Για τη δοκιμή βέβαια των παιχνιδιών σας σε πραγματική συσκευή, απαιτείται η παραπάνω συνδρομή.
Μεγάλο ατού της πλατφόρμας είναι επίσης το γεγονός ότι θα γνωρίζετε από την αρχή τα χαρακτηριστικά των συσκευών για τα οποία γράφετε. Ξέρετε δηλαδή από την αρχή ότι η ανάλυση της οθόνης θα είναι 800 x 480 pixels, ότι θα έχετε υποχρεωτικά κάμερα 5 Megapixel το λιγότερο, επεξεργαστή 1 GHz και πάνω, τέσσερα τουλάχιστον σημεία επαφής στην οθόνη κτλ, γεγονός που αποτρέπει γεγονότα όπως ο κατακερματισμός του λειτουργικού ανάλογα με τις συσκευές και της απόδοσης που βλέπουμε στην πλατφόρμα του Android, όπου παιχνίδια παίζουν αργά σε κάποια κινητά, απαιτούν χαρακτηριστικά που υπάρχουν μόνο σε συγκεκριμένα κτλ. Τέτοια προβλήματα δεν υπάρχουν φυσικά στο iOS, όπου η Apple ελέγχει τόσο το software όσο και το hardware των συσκευών, αλλά εκεί θα πρέπει να επενδύσετε τόσο σε αγορά κάποιου Mac (αν δεν έχετε ήδη), όσο και στην εκμάθηση του Cocoa και της ObjectiveC, αν δεν είστε ήδη γνώστης ως Mac Developer.
Για να απαντήσω, λοιπόν, στην ερώτηση που έθεσα, για το αν αξίζει η όλη προσπάθεια, θα πω τα ακόλουθα. Για εμένα, στην παρούσα φάση, κάποιος θα γράψει ένα ή περισσότερα παιχνίδια για την πλατφόρμα Windows Phone 7 πιο πολύ σαν χόμπι και πολύ λιγότερο περιμένοντας να έχει κάποιο εισόδημα από εκεί. Τα νούμερα είναι πολύ χαμηλά, τόσο σε πωλήσεις όσο και σε απόλυτο αριθμό χρηστών στον κόσμο, αλλά όπως είπα και προηγουμένως, είναι πραγματικά πολύ νωρίς για κάτι περισσότερο. Η πολυδιαφημισμένη σύνδεση των κινητών με Windows Phone 7 με το δίκτυο Xbox Live! δυστυχώς είναι διαθέσιμο αποκλειστικά σε διακεκριμένους συνεργάτες της Microsoft και όχι για το μεγάλο όγκο των developers, όπως πχ το Game Center του iOS της Apple.
Για πρώτη έκδοση πάντως, πιστεύω ότι η Microsoft, αν και αργά, (ξανά)μπαίνει πολύ δυναμικά σε μία αγορά που πολλοί λένε ότι έχει χάσει ήδη. Αν σκεφτούμε ότι το iOS 1 (τότε iPhone OS) δεν είχε καν τη δυνατότητα εγκατάστασης εφαρμογών (το App Store εμφανίστηκε στη δεύτερη γενιά iPhone), ενώ η πρώτη έκδοση του Android (για όποιον την είχε δει ποτέ) δεν είχε τα πιο βασικά πράγματα, πιστεύω ότι υπάρχει και μερίδιο και μέλλον για όσους θα έχουν την υπομονή να μπουν τώρα που είναι νωρίς, χωρίς να περιμένουν πολλά ως αντάλλαγμα.