Μην έχοντας κάτι καλύτερο να κάνω απόψε το βράδυ, μιας και ο σκύλος μου βαριέται να βγει βόλτα, αποφάσισα να ξεκινήσω μια σειρά από tutorials για τον Game Maker, μήπως και φιλοτιμηθεί κάποιος από τους stalkers-users του forum να ασχοληθεί με το game development.
Σήμερα θα μάθουμε όλα όσα χρειάζεται να ξέρουμε για τον Game Maker και να τον χρησιμοποιούμε σωστά.
Αν και χρησιμοποιώ το Game Maker Studio Master Collection, μπορείτε να κατεβάσετε την ΔΩΡΕΑΝ έκδοση του προγράμματος από εδώ
www.yoyogames.com/studio
Αφού εγκαταστήσουμε το πρόγραμμα, το ανοίγουμε.
Επειδή εγώ είμαι τεμπέλης, βαριέμαι να εγκαταστήσω την καινούρια έκδοση και εδώ και μέρες πατάω Remind Me Later. Αν το έχετε κατεβάσει όμως τώρα, θα έχετε την τελευταία έκδοση.
Θα δούμε την εξής οθόνη και θα κλικάρουμε στο New. Αν δεν βλέπετε που είναι το New, ίσως το game developing δεν είναι για εσάς.
Αφού κλικάρουμε το New, θα δούμε το directory που αποθηκεύει ο Game Maker το Project μας και πατάμε Create. Δεν υπάρχει λόγος να ποστάρω εικόνες με αυτό, αλλά μερικοί από εσάς βαριέστε μέχρι και αυτά να ψάξετε μόνοι σας, επομένως το κάνω εγώ για εσάς.
Συγχαρητήρια, μόλις μάθατε να δημιουργείτε ένα Project! Αν έχετε κουλουράκια ή σοκολατάκια κοντά, φάτε ένα, σας αξίζει. Εγώ τρώω τα μπισκότα του σκύλου μου. Είναι ανάλατα, αλλά μου αρέσουν. Στη συνέχεια θα ανοίξει το παράθυρο του project όπου και θα γίνει το παράθυρο που χρησιμοποιούμε πιο πολύ στον Game Maker. Για εσάς που διαβάζετε το tutorial χωρίς να κάνετε τα βήματα ταυτόχρονα δείτε την εικόνα.
Και τώρα θα μάθουμε τί σημαίνει το κάθε ένα από αυτά. Να προσέξετε καλά σε αυτό το σημείο γιατί στο επόμενο tutorial θα φτιάξουμε το πρώτο μας παιχνίδι και θα πρέπει να κινούμαστε με ευχέρεια χωρίς να ρωτάμε τον Λοκ χαζές ερωτήσεις για πράγματα που έχει εξηγήσει.
Θα μάθουμε τι είναι η λίστα που βλέπουμε. Βασικά είναι τα resources του παιχνιδιού, αλλά εμείς πέρα από τον ορισμό θα μάθουμε τι είναι το κάθε ένα ξεχωριστά.
Sprites είναι οι εικόνες που θα χρησιμοποιήσουμε στο παιχνίδι μας. Για παράδειγμα στο Super Mario, ο Mario είναι ένα αντικείμενο που απεικονίζεται από ένα sprite όταν στέκεται, από άλλο όταν τρέχει και από άλλο όταν πηδάει. Τα sprites μπορούν να είναι μία εικόνα πχ μια μπάλα ποδοσφαίρου ή και πολλές πχ ο Mario να τρέχει. Το πως βάζουμε πολλές εικόνες δεν σας απασχολεί ακόμα μιας και μικροσκοπικός σας εγκέφαλος θα μπερδευτεί αν τα μάθετε όλα με την πρώτη.
Sounds είναι με την ίδια φιλοσοφία, οι ήχοι που χρησιμοποιούμε στο παιχνίδι. Μπορεί να είναι ένας ήχος που ακούγεται κάθε φορά που ο παίχτης πηδάει ή και ένα ολόκληρο κομμάτι μουσικής σαν το theme του Super Mario που ακούγεται όσο παίζουμε.
Paths είναι ένα πολύ χρήσιμο εργαλείο που μας επιτρέπει να φτιάχνουμε μονοπάτια στα οποία θα κινούνται διάφορα αντικείμενα στην πίστα. Πχ θέλουμε να βάλουμε ένα τερατάκι στο Super Mario να πηγαίνει δεξιά και αριστερά σε συγκεκριμένο μέρος της πίστας. Εκεί χρησιμοποιούμε τα paths. Δεν με τρελαίνει η ιδέα να τα χρησιμοποιώ επειδή κατά βάθος είμαι hipster και προτιμώ να το κάνω με κώδικα.
Scripts είναι έτοιμα σκριπτάκια κώδικα τα οποία μπορούμε να τα καλέσουμε κάθε φορά που γίνεται κάτι. ΟΚ ήταν λίγο ό,τι να 'ναι αυτή η εξήγηση. Για παράδειγμα θέλουμε κάθε φορά που ο Mario σπάει ένα τουβλάκι, αυτό να αλλάζει sprite και να παίρνει το sprite του τούβλου που σπάει, ταυτόχρονα να κάνει τον ήχο του κέρματος και τέλος να δίνει ένα κέρμα στον Mario. Αντί να βάζουμε τον ίδιο κώδικα σε κάθε τουβλάκι και να επιβαρύνουμε τον επεξεργαστή, μπορούμε απλά να δίνουμε στο τουβλάκι την εντολή κάθε φορά που ο Mario είναι από κάτω του και πηδάει να κάνει call ένα σκριπτάκι που θα κάνει τις δουλειές που θέλουμε.
Shaders είναι τα super ultra cool special effects που μπορούμε να βάλουμε στα παιχνίδια μας για να δώσουμε την ψευδαίσθηση καλών γραφικών. Πχ υπάρχει shader για ομίχλη που όταν τον χρησιμοποιούμε δημιουργεί την ψευδαίσθηση ότι υπάρχει ομίχλη. Αντίστοιχα υπάρχει shader για νερό που δίνει την ψευδαίσθηση ότι βρισκόμαστε μέσα στο νερό με κυματισμούς και παραμορφώσεις.
Fonts αγαπημένε noobά είναι οι γραμματοσειρές που θα χρησιμοποιούμε στο παιχνίδι μας. Όπως πχ στο Super Mario δείχνει πόσα κέρματα έχουμε μαζέψει ή πόσος χρόνος έχει μείνει, χρησιμοποιούν μία συγκεκριμένη γραμματοσειρά. Εμείς μπορούμε να χρησιμοποιήσουμε δικές μας που τις ρυθμίζουμε στα γούστα μας.
Time Lines είναι το "πεπρωμένο" του παιχνιδιού μας. Είναι τα εργαλεία που χρησιμοποιούμε όταν θέλουμε να γίνουν κάποια πράγματα σε συγκεκριμένες χρονικές στιγμές με συγκεκριμένη σειρά. Θέλουμε για παράδειγμα στο 15ο δευτερόλεπτο του παιχνιδιού να αρχίσει να βρέχει και στο 26ο να πέσει μία αστραπή και στο 258ο να σταματήσει να βρέχει. Αυτό το πετυχαίνουμε χρησιμοποιώντας τα Time Lines. Υπάρχουν και άλλοι τρόποι εκτός από τα Time Lines, αλλά προτιμούμε αυτά γιατί δεν βαραίνουν τόσο πολύ το παιχνίδι και τον επεξεργαστή.
Το ξέρω ότι έχει περάσει αρκετή ώρα χωρίς εικόνα και κινδυνεύεις να βαρεθείς, επομένως πάρε μία.
Objects είναι τα αντικείμενα του παιχνιδιού μας. Τι είπα ε; Μα πόσο έξυπνος είμαι; Δώσε βάση και σταμάτα να κοροϊδεύεις τώρα. Τα αντικείμενα είναι το δεύτερο πιο σημαντικό resource του project μας. Είναι ο παίχτης, το κέρμα, ο εχθρός, είναι ο μετρητής κερμάτων, είναι αυτό που θα ελέγχει τα πάντα μέσα στο παιχνίδι. Τα αντικείμενα είναι αυτά που θα εκτελούν τον κώδικα του παιχνιδιού και που θα τρέχουν ουσιαστικά το παιχνίδι. Θα δούμε περισσότερα όταν περάσουμε στην πράξη.
Rooms είναι τα δωμάτια του παιχνιδιού. Στα rooms είναι που παίζεται το παιχνίδι μας. Είναι οι πίστες του παιχνιδιού, η κεντρική οθόνη του, η οθόνη των high score κτλ. Μπορούμε να έχουμε όσα rooms θέλουμε. Κι αυτά θα τα δούμε καλύτερα στην πράξη.
Included Files είναι τα αρχεία που χρησιμοποιούμε και δεν είναι τίποτα από τα παραπάνω resources που αναφέραμε. Είναι το .ini στο οποίο θα αποθηκεύσουμε το high score, ή το βίντεο που έχουμε φτιάξει και θέλουμε να παίξει.
Extensions είναι οι επεκτάσεις που χρησιμοποιεί ο Game Maker για να βάλει στο παιχνίδι μας πράγματα που είναι άσχετα με αυτό. Θέλουμε πχ να βάλουμε διαφημίσεις σε ένα mobile game, θα προσθέσουμε το extension της διαφημιστικής που χρησιμοποιούμε.
Macros είναι οι σταθερές που δημιουργούμε και θέλουμε να τις χρησιμοποιήσουμε στο παιχνίδι. Θέλουμε για παράδειγμα να χρησιμοποιήσουμε ένα χρώμα σε μία γραμματοσειρά και το χρώμα αυτό δεν υπάρχει στην έτοιμη παλέτα της engine. Μπορούμε να φτιάξουμε macro που θα αποθηκεύσουμε την απόχρωση του χρώματος με μορφή κώδικα και να καλούμε την macro κάθε φορά που θέλουμε να χρωματίσουμε κάτι με το χρώμα που φτιάξαμε. Δεν θα μας χρειαστεί, μην αγχώνεστε.
Game Information και
Global Game Settings είναι πράγματα που δεν χρειάζεται ακόμα να τα μάθουμε γιατί θα μπερδευτούμε. Όταν φτιάξουμε το πρώτο μας παιχνίδι θα τα χρησιμοποιήσουμε. Είναι settings τύπου "να τρέχει το παιχνίδι ΜΟΝΟ fullscreen" ή "θέλω αυτό το εικονίδιο γι αυτό το παιχνίδι".
Στο επόμενο tutorial θα φτιάξουμε το πρώτο μας παιχνίδι για windows. Μέχρι τότε να θυμάστε ό,τι μάθαμε σήμερα, να ντύνεστε καλά και να κοιτάτε και από τις δύο μεριές πριν διασχίσετε τον δρόμο.