A Game Engine to Learn Computer Science Languages
Ángel Serrano-Laguna, Javier Torrente, Borja Manero,
Baltasar Fernández Manjón
[email protected]@BaltaFM
1
The problem
• Increasing interest in providing Computer Science instruction to a wider sector of the population– Game-based learning approach
• Many approaches already– GameMaker– Alice– Microsoft’s Kodu– Scratch– …
• …but they are hard to scale, because they are intended– for specific audiences– for specific programming languages
2
Game design principles
1. Students must code in the game
2. Promote reflection, avoid time pressure
3. Separate input and game mechanics
4. Level structure
5. A clear goal is set up for each level
6. Use scores to promote competition between peers and to provide a sense of progress
3
If you prefer to play instead of the talk go directly to
http://gleaner.e-ucm.es/lostinspace/play/index.html
Engine architecture
4
1. Game core2. Set of actions and structures3. Interpreter4. Levels
Lost in Space
About the game...
• A basic game to acquiere familiriaty with XML documents– Learn the syntax– Understand nesting and attributes– Gain agility writing and reading XML documents
• Designed as a complementary activity in a Web Programming Course– For undergraduate computer science students
Understanding the game…
Goal
Main character
Power-ups (new syntax elements)
Write XML snippets here to move the main
character to the goal
Understanding the game
• 13 scenarios– Syntax elements are introduced progressively (through power-
ups)– Increasingly complex interactions / snippets– Later scenarios include complex sequencing and iteration
Examples Input Programs for the Game
9
Effect in game Java XML
Move ship 4 spaces ship.move(4); <move distance=”4”/>
Make ally shoot if(ship.getId().equals(“ally”){ship.shoot();}
<actions idref=”ally”><shoot/></actions>
Shoot 4 times for (int i = 0; i<4; i++){shoot();}
<actions repeat=”4”><shoot/></actions>
Case Study I
10
12
12.5
13
13.5
14
14.5
15
15.5
16
Played the game (Group A) Traditional lesson (Group B)
• Participants from Computer Science degree• 17 students played the game (Group A)• 14 students attended a lecture (Group B)
• Methods• Identical pre-test and post-test for both groups, from 0 to 20
• Results (knowledge increase)
Case Study I
• Students’ scores increased both after traditional instruction and game-based instruction
• Similar results• Average effect of instruction is not very high (13-14 %)
– Reduced exposure to instruction (<50 minutes)
• Students who played the game were more satisfied with the experience– The different engagement observed in the two groups may
suggest that overall Lost in Space was a better instructional approach, although it did not yield better results than traditional instruction in terms of knowledge acquisition
11
Case Study II
12
0
2
4
6
8
10
12
14
16
18
Group A (Computer Science) Group C (Social sciences)
• To explore if the effects of using the game for instruction with a different student population
• Participants• 13 college students enrolled in a social sciences (Group C)
• Same pre-tests and post-tests• Results (knowledge increase):
Case Study II
• Lower starting point in knowledge for Group C• Similar increase as Group A• Test has 2 exercises: find errors in an XML documents
and write an XML document:– Group C only improved in first exercise of the test
13
Want to play?
http://bit.ly/LiS-XMLhttp://gleaner.e-ucm.es/lostinspace/play/index.html
14
Learning Analytics applied to this game
Ángel Serrano-Laguna, Baltasar Fernández-Manjón (2014): Applying learning analytics to simplify serious games deployment in the classroom. Proceedings of the 2014 IEEE Global Engineering Education Conference (EDUCON) Page 872-877
Our current projects
RAGE H2020 ICT2014-21ª
Realising an Applied Gaming Eco-system
Top Related