«Τα παιδία παίζει» Προγραμματίζοντας τα αγαπημένα μας παιχνίδια - 11ο Μαθητικό Συνέδριο Πληροφορικής

«Τα παιδία παίζει» Προγραμματίζοντας τα αγαπημένα μας παιχνίδια - 11ο Μαθητικό Συνέδριο Πληροφορικής

«Τα παιδία παίζει» Προγραμματίζοντας τα αγαπημένα μας παιχνίδια - 11ο Μαθητικό Συνέδριο Πληροφορικής

24 Απριλίου 2019 2019

Μέσω συνεργατικής μάθησης, οι μαθητές του τμήματος Πληροφορικής, Πολυμέσων & Ρομποτικής μεταφέραμε στο Scratch αγαπημένα μας ψηφιακά παιχνίδια τα οποία απευθύνονται τόσο σε παιδιά της ηλικίας μας όσο και στους «μεγάλους». Χωριστήκαμε σε ομάδες, όπου η κάθε ομάδα ανέλαβε να υλοποιήσει ένα παιχνίδι μέσα σε συγκεκριμένο χρονοδιάγραμμα το οποίο ορίστηκε από την καθηγήτριά μας. Αφού προέκυψε μία πρώτη έκδοση του κάθε παιχνιδιού, μία άλλη ομάδα παιδιών – οι λεγόμενοι testers – τέσταραν τα παιχνίδια και σημείωσαν τα λάθη τους. Με βάση τις παρατηρήσεις των testers, συνεχίσαμε τον προγραμματισμό για να καταλήξουμε σε μια πιο βελτιωμένη έκδοσή τους. Μέσα από αυτήν την εργασία μάθαμε τις έννοιες της τεχνολογίας λογισμικού, της «παιχνιδοποίησης» (gamification), της αρχιτεκτονινής των ψηφιακών παιχνιδιών και γενικότερα τη διαδικασία παραγωγής τους.

Λέξεις κλειδιά: scratch, ψηφιακά παιχνίδια, προγραμματισμός.


1. Εισαγωγή

Τα Ηλεκτρονικά Παιχνίδια αποτελούν ένα ταχύτατα αναπτυσσόμενο πεδίο, καθώς αποτελούν τη δημοφιλέστερη τεχνολογία στη διασκέδαση των νέων. Στην αρχή η χρήση τους αφορούσε αποκλειστικά και μόνο τη νεολαία και τους ενήλικους νεαρής ηλικίας, οι οποίοι ήταν εξοικειωμένοι με την τεχνολογία των υπολογιστών. Κατά τη διάρκεια της δεκαετίας του ’90 τα ηλεκτρονικά παιχνίδια αποτέλεσαν τμήμα της καθημερινότητας των νέων ανθρώπων, συμπεριλαμβανομένων και των μικρών παιδιών. Από τις πρώτες έρευνες που έγιναν για τη χρήση των παιχνιδιών στην εκπαίδευση διαπιστώθηκε ότι αποτελούν μία πηγή κινήτρου για τους χρήστες προκειμένου να δοκιμάσουν, να αναπτύξουν και να εφαρμόσουν τις γνώσεις τους, καθώς και να μάθουν πράγματα που δεν γνωρίζουν, ενώ ταυτόχρονα διασκεδάζουν. 

Ο όρος «ψηφιακό παιχνίδι» (digital game) χρησιμοποιείται στη βιβλιογραφία για να περιγράψει εφαρμογές λογισμικού οι οποίες:

  • έχουν τα τυπικά χαρακτηριστικά παιχνιδιού (όπως συγκεκριμένη κατάσταση έναρξης, ορισμένους κανόνες, στόχο, τελική κατάσταση νίκης/ήττας κ.λπ.), γεννούν στους χρήστες κίνητρο εμπλοκής και προσφέρουν άμεση διαδραστική εμπειρία που δημιουργεί το αίσθημα της ψυχαγωγίας (π.χ. Salen & Zimmerman, 2003)
  • παίζονται σε σύγχρονες ψηφιακές τεχνολογικές πλατφόρμες, όπως: υπολογιστής, διαδίκτυο, κονσόλες παιχνιδιών, φορητές συσκευές. Χαρακτηριστικές τεχνολογικές πλατφόρμες:
  • προσωπικός υπολογιστής (PC) (Wikipedia),
  • PlayStation (Βικιπαίδεια, Wikipedia),
  • GameBoy (Βικιπαίδεια, Wikipedia),
  • Xbox (Βικιπαίδεια, Wikipedia),
  • Wii (Βικιπαίδεια, Wikipedia).

Παρόλο που το νόημά τους αρχικά τουλάχιστον ήταν διαφορετικό, έχουμε οδηγηθεί στο να χρησιμοποιούνται σήμερα σχεδόν ισοδύναμα και οι όροι:

Ηλεκτρονικά παιχνίδια (όπου το «ηλεκτρονικά» παραπέμπει πλέον στην ψηφιακή τεχνολογία).

Παιχνίδια υπολογιστή (computer games): παιχνίδια που παίζονται σε προσωπικό υπολογιστή (PC games). Ο όρος computer τείνει να υποδηλώνει κάθε είδους ψηφιακή τεχνολογία και πλατφόρμα.

Βιντεο-παιχνίδια (video games): παιχνίδια που παίζονται σε video-κονσόλες, δηλ. «παιχνιδομηχανές» ειδικά κατασκευασμένες ώστε να εξάγουν σήμα βίντεο και να μπορούν να συνδεθούν με κατάλληλη οθόνη (π.χ. τηλεόραση).

Αποφασίσαμε, λοιπόν, να σχεδιάσουμε και να υλοποιήσουμε διάφορα γνωστά ηλεκτρονικά παιχνίδια, για μικρούς και μεγάλους, προσπαθώντας όμως να προσομοιώσουμε τη δική μας εργασία με την πραγματική διαδικασία παραγωγής ηλεκτρονικών παιχνιδιών. Το εργαλείο συγγραφής κώδικα που χρησιμοποιήσαμε ήταν το scratch.

2. Το εργαλείο Scratch 

To scratch αναπτύχθηκε από το Τεχνολογικό Ινστιτούτο Μασαχουσέτης (MIT). Αποτελεί ένα εκπαιδευτικό περιβάλλον ανάπτυξης διαδραστικών εφαρμογών και εκμάθησης προγραμματισμού για παιδιά ηλικίας από 8 έως 16 ετών. Τα παιδιά έχουν τη δυνατότητα να δημιουργήσουν παιχνίδια, κουίζ ερωτήσεων, ιστορίες και κινούμενα σχέδια. Το περιβάλλον ανάπτυξης του Scratch μπορεί να μεταφορτωθεί δωρεάν και να εγκατασταθεί σε οποιοδήποτε υπολογιστή. Επιπλέον, μπορεί κανείς να το βρει και στο διαδίκτυο (http://scratch.mit.edu/) και αφού δημιουργήσει προσωπικό λογαριασμό μπορεί να προγραμματίσει online, να μοιραστεί τα έργα του με άλλους χρήστες, να τροποποιήσει και να επεκτείνει τα έργα άλλων χρηστών. Εμείς δουλέψαμε online.

Το περιβάλλον χρήστη του περιβάλλοντος ανάπτυξης του Scratch χωρίζει την οθόνη σε πολλαπλές περιοχές: στα αριστερά είναι η παλέτα με τις εντολές, στο κέντρο είναι οι πληροφορίες για την τρέχουσα φιγούρα και η περιοχή των σεναρίων και στα δεξιά είναι η σκηνή και η λίστα με τις φιγούρες. Τα τμήματα με τις εντολές μπορούν να συρθούν πάνω στην περιοχή των σεναρίων για τη δημιουργία παιχνιδιών.

3. Παιχνιδοποίηση (gamification)

Η έννοια της «παιχνιδοποίησης» (gamification) είναι, με απλά λόγια, η εφαρμογή τεχνικών παιχνιδιού σε δραστηριότητες που δεν είναι παιχνίδι καθαυτές. Για παράδειγμα, το να δίνουμε τη δυνατότητα στους συμμετέχοντες σε μια δραστηριότητα να κερδίζουν πόντους με τις ενέργειες που κάνουν ή να παίρνουν διακριτικά (π.χ. παράσημα) ανάλογα με την εμπειρία τους στη δραστηριότητα είναι χαρακτηριστικά στοιχεία παιχνιδοποίησης.

Η δραστηριότητα θα μπορούσε να είναι π.χ. εμπορική (οι επισκέπτες ενός δικτυακού τόπου κερδίζουν πόντους με βάση τις αγορές που κάνουν) ή εκπαιδευτική (οι μαθητές κερδίζουν πόντους με βάση τις επιδόσεις τους σε κάποιες δοκιμασίες) και λοιπά. Συνοπτικά, η παιχνιδοποίηση στοχεύει να δημιουργήσει στους συμμετέχοντες έμμεσα την αίσθηση παιχνιδιού, χωρίς να μετατρέψει την ίδια τη δραστηριότητα σε ολοκληρωμένο παιχνίδι.

4. Τεχνολογία λογισμικού και ομάδα ανάπτυξης παιχνιδιού

Ένα υψηλών απαιτήσεων παιχνίδι αναπτύσσεται από μια ομάδα επαγγελματιών διαφόρων. Χρειάζονται τέσσερις τουλάχιστον βασικές ειδικότητες σε μια τέτοια ομάδα:

Σεναριογράφος: Ρόλος υπεύθυνος για την ανάπτυξη του σεναρίου και των διαφόρων εκδοχών του παιχνιδιού.

Σχεδιαστής: Ρόλος υπεύθυνος για τον μετασχηματισμό του σεναρίου σε τρόπο παιχνιδιού (gameplay), για την ανάπτυξη των οθονών (storyboards) και –συνολικά– για την ανάλυση των τεχνικών θεμάτων που μπορεί να αφορούν το παιχνίδι.

Προγραμματιστής: Ρόλος που αναλαμβάνει τη συγγραφή κώδικα σύμφωνα με τις οδηγίες του σχεδιαστή.

Ειδικός πολυμέσων: Ρόλος που αφορά στην παραγωγή και επεξεργασία όλων των στοιχείων πολυμέσων: γραφικά, ήχοι, εικόνες, σχεδιοκίνηση, βίντεο.

Στην ομάδα μας και κατά τη διάρκεια του project, όλοι μπήκαμε στον ρόλο και των τεσσάρων ειδικοτήτων.

5. Δημιουργία των παιχνιδιών

Αγαπάμε πολύ τα ηλεκτρονικά παιχνίδια αφού είναι διασκεδαστικά και, κάποια, αρκετά ενδιαφέροντα. Έτσι, σκεφτήκαμε να φτιάξουμε από την αρχή το γνωστό pacman, το arkanoid, ένα παιχνίδι με εμπόδια, μία εφαρμογή για πιάνο, δύο εκδόσεις λαβυρίνθου (τον εύκολο και τον δύσκολο) και τo donut eater. Παρακάτω βλέπετε screenshots από τα παιχνίδια μας.

6. Έλεγχος ορθής λειτουργίας λογισμικού

Πριν δοθεί ένα πραγματικό παιχνίδι στο εμπόριο, πρέπει να περάσει από μία ομάδα ανθρώπων, τους λεγόμενους testers, οι οποίοι εξετάζουν τον κώδικα για εντοπισμό λαθών ή αδύναμων σημείων. Έτσι κι εμείς, φτιάξαμε σε ομάδες τα παιχνίδια μας μέσα σε συγκεκριμένο χρονοδιάγραμμα το οποίο ορίστηκε από την καθηγήτριά μας. Αφού προέκυψε μία πρώτη έκδοση του κάθε παιχνιδιού, μία άλλη ομάδα παιδιών – οι λεγόμενοι testers – τέσταραν τα παιχνίδια και σημείωσαν τα λάθη και τις αδυναμίες τους. Τα περισσότερα σφάλματα που παρουσιάστηκαν στα παιχνίδια μας ήταν λάθη στις μεταβλητές μας και στον τρόπο που αυτές μεταβάλλονταν.

Με βάση τις παρατηρήσεις των testers, συνεχίσαμε τον προγραμματισμό για να καταλήξουμε σε μια πιο βελτιωμένη έκδοση των παιχνιδιών. Τις τελικές εκδόσεις τις ανεβάσαμε στο ίντερνετ, στο http://scratch.mit.edu/

7. Συμπεράσματα 

Μετά την υλοποίηση των παιχνιδιών μας, κάναμε ένα ταξίδι πίσω στο χρόνο βλέποντας τι κερδίσαμε από όλη αυτήν την εμπειρία. Είδαμε πώς μπορεί να φτιαχτεί ένα παιχνίδι από την αρχή. Μάθαμε βασικές αρχές προγραμματισμού και γίναμε μικροί προγραμματιστές. Προσπαθήσαμε να συνδυάσουμε τη διασκέδαση με τη μάθηση συγγραφής κώδικα και το αποτέλεσμα μας δικαίωσε!

Βιβλιογραφία

1. Gordon, A. K. (1970). Games for Growth, Science Research AssociateInc., Palo Alto California

2. Malone, T.W. (1980). What makes things fun to learn? A study of intrinsically motivating computer games. Palo Alto, CA: Xerox

3. Μπαρμπάτσης, Κ., Οικονόμου, Δ., Παπαμαγκανά, Ι., & Ζώζας, Ι. (2010). Ηλεκτρονικά Παιχνίδια ως Εκπαιδευτικά Εργαλεία, Πρακτικά 2ου Πανελληνίου Εκπαιδευτικού Συνεδρίου Ημαθίας

4. Χονδρούλη, Β. (2013). Αξιολόγηση εκπαιδευτικού παιχνιδιού για την υποστήριξη μουσικής εκπαίδευσης, Πτυχιακή εργασία

5. http://learn20.wikispaces.com/

6. http://el.wikipedia.org/wiki/Γ...