Project Goals

Our goal is to provide first and second year University students with a simple game that allows them to build the intuition and understanding of pointers as used in high level languages like C/C++. An educational game online could help motivate and engage these students to participate in a meaningful and educational activity and to explore key concepts outside of the classroom. Putting their theory into practice reinforces the theoretical elements and aids in their retention.

Friday, May 23, 2008

Week 3

We realized this week that our timeline was slightly backwards -- although we were supposed to be working on the last of our background research, we didn't know what sorts of tools we needed to create our game because we didn't know anything about our game.

On Tuesday we took a small segue to start talking about what order we would present information to players (Week 4). We came up with the following list:

  1. Physical Memory and Addresses
  2. Types of Pointers/Variables
    1. Void Pointers
    2. Casting
    3. Pointers to Pointers
  3. Initializing Pointers (pointing them to NULL) and *
  4. Pointer Assignment (pointing at a variable)
  5. Dereferencing Pointers (getting values out of them) and &
  6. NULL pointers versus uninitialized pointers
  7. Segmentation faults
  8. Uses for Points (Arrays, Linked Lists) and malloc and alloc
    1. Pointer Arithmetic
  9. Freeing Pointers
  10. Void Pointers and Casting
  11. Pointers to Pointers
  12. Pointer Arithmetic
The indented points are places that we believe referencing that information will be important, for example, noting that void pointers exist when we discuss pointer types, but not actually going into them until #10. We are also not sure we want to talk about pointer arithmetic, but if we do, it would be the last topic.
We consider topics 10 through 12 to be the "advanced" topics, with everything before then being necessary to a basic understanding of pointers.

Once we had this information, we were able to decide that RPG Maker was the appropriate program to use. We acquired a version, and also downloaded the scripting language Ruby which RPG Maker uses for more complex events. We both completed the online tutorial "Ruby in Twenty Minutes".

Elyse has been working on preparing our proposal presentation for next Tuesday. Donna has been working with RPG Maker. With Elyse's input, she has created a small game where the player tries to fix fragmented memory and learns a little about physical memory in the process. We will be using this game as a prototype for the sorts of more complex events we can have occur.

Thursday, May 22, 2008

RPG Maker Tutorials

Elyse -- there are a couple good ideas in here that might help us avoid needing to pop open new windows for "mini-games"

Definitely a link I want to save

Pointer Information

I found this webpage was a very useful reference when figuring out how to describe pointers.

Tuesday, May 20, 2008

Foundation for problem-based gaming

Article is focused on the development of a model about problem-based gaming that can be used to design a successful educational game.
"The PBG approach emphasizes the meaning of authentic learning tasks, experiential learning and collaboration. Because games usually allow players to creatively test hypotheses and reflect on outcomes in the game world, experiential learning theory provides an appropriate basis for PBG."
The PBG model splits the cyclic learning process into elements (learning process with games):
  • Strategy formation to solve the given problem
  • Active experimentation (player test his strategies and hypotheses in the game world and observes the consequences.)
  • Processing/Reflection stage (feedback that the game provides the player's actions should support reflective thinking and knowledge construction by focusing a player's attention to relevant information from the learning point of view.)
  • The outcome of reflection : personal synthesis or appropriation of knowledge, validation of hypothesis laid during playing strategy formation or a new strategy to be tested.
This model really emphasizes the reflection stage, stating that it is the most critical stage and a vital factor of learning. It is important that the player be made aware of reflection, and how it can be facilitated, because it's outcome determines their behavior in the game.
During the reflection stage, if the player chooses to continue using the same strategy , it's known as single-looped learning, and is not effective. One thing that can lead to single-loope learning is lack of challenge! "...It is important that the player endeavours to test different kind of strategies in order to expand knowledge on the subject matter and optimise playing strategy."

So what game elements facilitate reflective thinking?
  • performance of other teams playing the game
  • Game design can disturb reflection (too fast playing tempo)
  • Complexity an also disturb reflection ( too many changing components, so the player is not able to pay attention to them all)
  • If the interface of the game requires too much cognitive processing, there will not be enough room to reflect on the game. (Making the game controls and interface 'transparent', to allow them to focus on game-play)

Revolution

If we wanted to look at building on Neverwinter Nights, I would really want to check out this game first. It's an educational game built on that platform -- unfortunately, we need the original first, and you can't just download and buy it, you need to actually go out to buy it.

It's something we should remember though, if we become unhappy with RPGMaker

Adapting a Commerical Role-Playing Game for Educational Computer Game Production

This article presents a different method of creating a game that we haven't considered yet.

Researchers at the University of Alberta have used the Aurora Toolset to create adventures using the Neverwinter Nights engine. The benefits to this approach is again a more specialized set of tools -- and one that will create a more professional feel for the game. To mitigate some of the scripting challenges in game making, they developed the tool "ScriptEase" that helps manage interactive events for NVN authors.

I think RPGMaker will probably work for our purposes, but if using it to create mini-games proves to be difficult, this is another alternative we might consider.

Software Analysis

After playing a bit with the various game design tools we found, I think that we can safely remove the OHRRPGCE from consideration.

As well as being more difficult to use, this particular program doesn't save the created games in a format that will allow them to be easily distributed. Game Maker will allow you to export games as a .exe file that can be run anywhere, and RPG Maker also allows exports to a disk.

If we wanted to do a more RPG-style game, I think we would definitely want to highly consider RPG Maker. Unlike Game Maker (which is more general), RPG Maker is designed for RPGs, with many necessary preset classes (items, weapons, magic, stats, monsters, battle system...)

We currently are playing around with a free trial offer. I believe actually buying the game is $60 -- RPG Maker also doesn't work on our lab machine (the one running Vista). If Elyse's machine worked (and ran XP) we could download it there without a problem -- right now the only version we have is on my laptop.

Buying Game Maker Pro would be $20. It seems like Game Maker works with Vista (although I haven't tested it in depth).