Space Range-r

September 18, 2016

Today, I’m releasing an early prototype of a new math game I’m making in GeoGebra. Introducing… Space Range…er. (It’s a pun. Get it?)


The idea for this game has been rolling around in the back of my head for a good 9 months. I thought I’d need Javascript to make it happen, but on Friday, I thought of an easier way. This version took me only one afternoon of work. GeoGebra makes it easy to quickly prototype new ideas!

Space Range-r prepares students to evaluate functions graphically and talk about their domain and range. It follows my idea of “messing around,” an idea I wrote about earlier on this blog and recently presented onĀ  at the 4th Annual Southern Connecticut GeoGebra Conference. I’ve also written an article about this concept, which will appear in the conference proceedings; stay tuned for more info.

In the game, you control a space ship that moves back and forth along the x-axis. A button on the right lets you “fire your lasers,” which basically amounts to evaluating the function. Explosive stars appear along the y-axis. They heat up; turn red, and begin throbbing. If you don’t disarm them with your lasers, they’ll explode!


To win this game, one needs a keen understanding of how function evaluation works. That might seem like a simple thing, but even Calculus students have difficulty coordinating changes in the x-axis with changes in the y-axis. This leads to a lot of confusion when you introduce a concept like piecewise functions and ask a student a question like “what’s the range of this function?”

This is a very early version of the game, and also a very unplayable version. I need to do some work smoothing out the controls. One of the game’s key mechanics has not even been implemented yet. In the upper right corner, you will be able to switch between three different “weapons.” Each “weapon” switches to a different graph. Some graphs will be better than others for shooting at certain y-values. In most levels, some of the graphs will be piecewise functions or parabolas whose range doesn’t even include all the y-values shown in the image. Students need to make quick, smart decisions about which graph is best at which moment in time.

Here are a few other features I plan to implement:

  • Difficulty controls. A slider on the start screen will let you change the difficulty level. At higher difficulty levels, there will be more exploding stars and they’ll blow up quicker.
  • Accuracy controls. Right now, you have to be very precise with your shot, which can be frustrating. Students who want to play a more forgiving game will be able to use a slider to give themselves more leeway in their shots.
  • Music. Sound effects. Stars floating by in the background. I have to be careful about lag time over the internet, but some of this stuff is necessary to make the game feel alive.
  • A proper “you win!” screen!
  • Multiple levels with different combinations of graphs available to the player.
  • More ambitious ideas that may not happen:
    • More types of enemies. I want to add red herrings that look like stars but cause you to lose if you shoot them. Maybe some enemies will move around? Maybe others will shoot back at you? That could be a fun way to introduce the idea of inverse functions. I’m thinking about having later levels where you can transform the functions. I also was toying the idea of enemies that can shoot a hole in your graph, making it no longer use-able. I would love it if you could grab power-ups that float down.
    • Boss enemies. That would be really cool!
    • A story line?

The coolest thing about GeoGebra though is that it’s open source software. I encourage you to download it, mess around, and make your own levels! At the very least, stay tuned for more updates in the near future.

Categories: Uncategorized • Tags: , , , , ,

2 Responses to Space Range-r

  • mary
    September 19, 2016 at 4:35 am

    Great concept Fori.

    Is it possible to let the arrow keys control the x values? I feel like I would have scored more hit if I could have controlled the laser with the arrow keys and fired with the mouse. or alternatively, control the laser with the mouse and fire with the keyboard. also, could you make it so that you input the x value with a number? a “direct hit” perhaps?

    On another note, I was surprised how steep curves threw off my aim… I might also just suck at video games generally but this kind is up my alley

    • Forest Fisher
      September 19, 2016 at 11:56 am

      Thanks Mary!

      I think using the arrow keys to control the x-values is a great idea. When I play the game on a tablet device (the easiest way to play it at the moment,) I find that my finger covers up the space ship, which makes it difficult to see exactly where I’m aiming. Keyboard controls would also address that issue. It should be fairly easy to do with an event listener in Javascript; this could be a good excuse for me to finally learn that part of GeoGebra.

      I also really like the idea of the “direct hit.” I think you’ve inspired me to add a points system. You get a certain number of points for each star you disarm, but you get more points for direct hits (or for shots that hit the star dead on.) That means I could make the game more forgiving, but still encourage accuracy.

      I also have trouble with the steep curves. Did you experience a lot of lag? It renders slowly for me over the internet.

Leave a Reply

Your email address will not be published. Required fields are marked *