Game Design in het Informatica Onderwijs

advertisement
Game Design in het
(Informatica) Onderwijs
Mark Overmars
Universiteit Utrecht
Aspecten van Game Ontwerp
• Design
– Hoe het spel gespeeld wordt en hoe het eruit
ziet
• Interne Context
– Waar het spel over gaat
• Implementatie
– Hoe het spel gemaakt wordt
2
Game Design
•
•
•
•
•
Regels en Mechanismen
Interface Ontwerp
Verhaallijnen
Grafische Vormgeving
Geluid en Muziek
3
Wiskunde: Regels
• Een game wordt gestuurd door regels
– Creatieve aspecten
• Regels moeten leuk zijn
• Regels moeten zinvol zijn
– Wiskundige aspecten
• Regels moeten consistent zijn
• Regels moeten gebalanceerd zijn
• Regels moeten eerlijk zijn
4
Regels
• Operationele regels
–
–
–
–
Hoe speel je het spel
Zetten, acties, handelingen
Score
Begin situatie, win conditie
• Onderliggende mechanismen
– Hoe wordt berekend welke unit een strijd wint
• Impliciete regels
– Hoe lang mag je nadenken
– Je mag niet halverwege ophouden
– Je mag de tegenstander niet afleiden
5
Mechanismen
• Boter kaas en eieren
– Spelers leggen afwisselend een steen van
hun kleur op een leeg veld
– Wie het eerste drie op een rij heeft wint
• 3 tot 15
– Spelers kiezen afwisselend een getal
tussen de 1 en de 9
– Een getal mag maar door 1 speler gekozen
worden
– Degene die als eerste 3 getallen heeft die
optellen tot 15 heeft gewonnen
2
9
4
7
5
3
6
1
8
6
Balans
• Regels moeten in balans zijn
– Spelers hebben gelijke kans
om te winnen
– Beloningen zijn gebalanceerd
met de uitdagingen of risico's
– Features moeten met elkaar in
balans zijn
7
Spel Theorie
• Elke feature moet nuttig
zijn
• Duidelijke winnende
strategieën moeten
voorkomen worden
• Doel van spel theorie is
om winnende strategieën
te berekenen
8
Papier – Steen - Schaar
• Papier verslaat steen verslaat schaar
verslaat papier
Papier
Steen
Schaar
Papier
Papier
0
+1
-1
Steen
-1
0
+1
Schaar
+1
-1
0
Steen
Verander kosten: Papier 1, Steen 2, Schaar 3
Wie wint krijgt 5 punten
Schaar
Papier
Steen
Schaar
Papier
0
+6
-3
Steen
-6
0
+6
Schaar
+3
-6
0
9
Strijd
horse
bowman
archer
bowman
infantry
cavalry
archer
bowman
0
+1
+1
-1
infantry
-1
0
+1
-1
cavalry
-1
-1
0
+1
archer
+1
+1
-1
0
infantry
cava lry
• Goed: Meerdere winnende strategieën
• Slecht: Je kunt zonder infantry
– Oplossen door ze goedkoper te maken
Laat leerlingen zulke schema's maken en ze analyseren
10
Beloning
• Beloning is essentieel in spellen
– Globaal, per level, lokaal
– Gerelateerd aan de doelen
– Vele soorten
•
•
•
•
Score (verhoogd status)
Verrassing
Uitbreiding van spel
Functie binnen het spel (extra auto,
powerup, etc.)
11
Kansrekening
• Beloningen moeten
gerelateerd zijn aan de
uitdaging of het risico
• Echte versus ervaren kans
• Laat leerlingen een goed
casino spel maken
12
Taalonderwijs
• Verhalen zijn belangrijk in
spellen
– Achtergrond verhaal
– Interactief verhaal
• “Hero’s journey”
• Archetypes
• Laat leerlingen spelverhalen
analyseren en hun eigen
verhalen schrijven
13
Kunstonderwijs
• Game karakters
– Laat leerlingen deze ontwerpen
– Creëer modellen en eventueel animaties
• Game werelden
– Achtergronden tekenen
– Werken met kleur en lichtval voor juiste
ambiance
• Game muziek
– Bestudeer game muziek
– Creëer eigen (adaptieve) muziek
– Maak effectieve geluidseffecten
14
Interne Context
• Waar gaat het spel over
– Natuurkunde
– Scheikunde
– Geografie
– Geschiedenis
– Economie
– Sociale relaties
• Laat leerlingen educatieve spelen maken
15
Informatica: Maak het spel
•
•
•
•
Programmeren
Computer Grafiek
Kunstmatige Intelligentie
Netwerken
• Testen
• Gebruikers Onderzoek
• Projectmatig werken
16
Programmeren
• Een spel vanaf de basis zelf
programmeren is heel veel werk
• Goede pakketten bestaan
• Leerlingen leren concepten zoals
– Object-oriented design
– Event based programming
– Real-time programming
– Distributed programming
17
Computer Grafiek
• Accent in spellen ligt minder op graphics dan
vroeger
• Het meeste wordt door bibliotheken gedaan
• Leerlingen kunnen leren over
–
–
–
–
–
De beperkingen van grafische kaarten
Sprites en isometrische spellen
3D modellen
Licht, mist, spiegelingen, schaduw
Animaties en particle systemen
18
Kunstmatige Intelligentie
• Kunstmatige intelligentie wordt steeds
belangrijker in spellen
• Leerlingen leren over
– Reactief gedrag
– Regelgebaseerde systemen
– Finite state machines
– Agenten
– Pad planning en flocking
19
Finite State Machines
Jager
Eet pil
Timer
Terug thuis
Gevangen
Bang
Dood
20
Spelen over een Netwerk
• Belangrijk en populair
• Erg lastig
– Synchronisatie
– Verloren data
– Hackers
• Leerlingen zullen dit beter waarderen als
ze zelf geprobeerd hebben het te maken
21
Testen
• Testen heeft twee doelen
– Zijn er bugs
– Is het spel leuk en gebalanceerd
• Testen is een belangrijk aspect dat niet
door de maker gedaan kan worden
• Leerlingen leren hoe op effectieve manier
met testen om te gaan
22
Groepsprojecten
•
•
•
•
•
Verschillende capaciteiten vereist
Planning is belangrijk
Design documenten schrijven
Gebruikersonderzoek
Documentatie
23
Hulpmiddelen
• Een spel vanaf de basis ontwikkelen is te veel
werk
– Commerciële spelen worden gemaakt door teams
van 50 personen
• Goede hulpmiddelen zijn beschikbaar
–
–
–
–
StageCast (www.stagecast.com)
ClickTeam (www.clickteam.com)
Game Maker (www.gamemaker.nl)
Veel specifieke pakketten (RPG maker, 3D game
maker, …)
24
Game Maker
• Rapid Application Development
omgeving voor spellen
• Voornamelijk 2-dimensional
• Geen programmeren nodig
maar er is een ingebouwde
taal.
• Geschikt voor mensen van 8
tot 80
• Gratis en geregistreerde versie
• Site-licence
25
Game Maker
• Gemiddeld 100.000 keer per maand
gedownload.
• Zeer actieve gebruikersgroep
• Gebruik:
–
–
–
–
–
Thuis
Veel technologie zomerkampen
Op basisscholen
In voortgezet onderwijs
Op hogescholen en universiteiten
26
Game Maker
• Vele soorten spelen zijn ermee gemaakt
27
Object-Oriented, Event-Driven
• Alles in een spel is
een object
• Objecten reageren
op events
– Botsing, User input,
Timers, etc.
– Acties worden
uitgevoerd
• Instanties kunnen
van object type
veranderen
28
Acties
• Meer dan 120 drag-and-drop acties
• Ongeveer 1000 functie in de programmeer taal
–
–
–
–
–
–
Botsingen testen
Pad planning
Geluid en muziek
Een particle systeem
Netwerk functies
3D graphics
• Uit te breiden met extra acties en via DLLs
29
Inheritance
• Inheritance is eenvoudig in Game Maker
– Objecten kunnen parent objecten hebben
– Zij overerven hun gedrag
– Gedrag kan overschreven worden door eigen
events voor het kind object te definiëren
30
Demonstratie
31
“Make a Game”
• SURFnet/Kennisnet project
• Wedstrijd voor leerlingen om educatieve
games te maken met Game Maker
• Lesmateriaal en helpdesk voor docenten
• Beoordeeld door professionals en
leerlingen
• Start in februari 2005
32
Conclusies
• Game Design kan heel goed in het onderwijs
gebruikt worden
– Niet alleen bij informatica!
• Het geeft goede mogelijkheden voor
multidisciplinaire projecten
• Enthousiasme onder leerlingen is groot
– Jongens en meisjes
• Goede hulpmiddelen beschikbaar
– www.gamemaker.nl
33
Download