Tyrant's aren't all bad, especially when they are micro and running on .NET Gadgeteer's

Description

Our Hardware Friday post in this game theme week combines a couple of fun things, .Net Gadgeteer hardware and a RPG game (well the start of one at least). It also shows off a couple thing projects mentioned here in past posts, Gliding into a .Net Micro Framework UI design with GLIDE and Along came a spider... a .NET Gadgeteer FEZ Spider!, Unboxing and some Visual Studio fun with the GHI FEZ Spider Gadgeteer Starter kit

Have the starts of a game running on the FEZ Spider

Just a quick post to show what I’ve been doing with the new toy

Of course I started to write the same game as I have going on the Windows Phone and Azure.

The below picture shows the components used in the project:

image

Added a generator tool (Windows) in VB.net for TyranntMicro

Added a new generator tool. So far it can just generate items:

image

This tool will store the items in “|” delimited text files which can easily be turned into objects using the split(“|”c) or split(‘|’) string function.

An example of the above “Arrows” item is:

1.0|Arrows||A Quiver of arrows. Holds a maximum of 10 arrows|arrowico.gif|arrow.gif|ammo|10|0|False|False|False

I was planning to do this on the Spider but it just makes more sense to do this on a desktop machine.

So Character Generator is almost finished. (Starting items are all that is required)
Item generator done.

Next when I get spare time I’ll start working on the Maze Generator in the generator tool and a “Play Game” screen system on the Spider.

Tyrannt Micro

This is an RPG game which runs on the .net Micro Framework Gadgeteer platform. It uses the FEZ Spider hardware


This is an RPG game that uses the .net Micro Framework Gadgeteer platform. I basically wanted a project to learn how to use different components so thought Game was a good idea. The hardware required for this project is:

  • FEZ Spider
  • T35 Display Module
  • SD Card Module

... image

Here's a snap of from the latest check-in;

image

And a snip from the Character Generation Window routine (UI shown in the video);

image

void InitCharacterGenWindow()
  {
      // get the current character
      Character currChar = characters[currentCharacter];

      // Get the name Text Box
      TextBox nameTextBox = (TextBox)characterGenWindow.GetChildByName("nameTextBox");
      // Get the races
      RadioButton humanRadio = (RadioButton)characterGenWindow.GetChildByName("humanRadioButton");
      RadioButton dwarfRadio = (RadioButton)characterGenWindow.GetChildByName("dwarfRadioButton");
      RadioButton elfRadio = (RadioButton)characterGenWindow.GetChildByName("elfRadioButton");
      RadioButton gnomeRadio = (RadioButton)characterGenWindow.GetChildByName("gnomeRadioButton");
      // Get the sexs
      RadioButton maleRadio = (RadioButton)characterGenWindow.GetChildByName("maleRadioButton");
      RadioButton femaleRadio = (RadioButton)characterGenWindow.GetChildByName("femaleRadioButton");
      // Get the stats
      TextBlock strTextBlock = (TextBlock)characterGenWindow.GetChildByName("strValue");
      TextBlock intTextBlock = (TextBlock)characterGenWindow.GetChildByName("intValue");
      TextBlock dexTextBlock = (TextBlock)characterGenWindow.GetChildByName("dexValue");

      // Set the Race
      switch (currChar.race.ToLower())
      {
          case "human":
              humanRadio.Checked = true;
              dwarfRadio.Checked = false;
              elfRadio.Checked = false;
              gnomeRadio.Checked = false;
              break;
          case "dwarf":
              humanRadio.Checked = false;
              dwarfRadio.Checked = true;
              elfRadio.Checked = false;
              gnomeRadio.Checked = false;
              break;
          case "elf":
              humanRadio.Checked = false;
              dwarfRadio.Checked = false;
              elfRadio.Checked = true;
              gnomeRadio.Checked = false;
              break;
          case "gnome":
              humanRadio.Checked = false;
              dwarfRadio.Checked = false;
              elfRadio.Checked = false;
              gnomeRadio.Checked = true;
              break;
          default:
              FatalError(currChar.race.ToLower() + " is unknown race");
              break;
      }

      // Set the Sex
      switch (currChar.sex.ToLower())
      {
          case "male":
              maleRadio.Checked = true;
              femaleRadio.Checked = false;
              break;
          case "female":
              maleRadio.Checked = false;
              femaleRadio.Checked = true;
              break;
          default:
              FatalError(currChar.sex.ToLower() + " is unknown sex");
              break;
      }

      // Set the name
      nameTextBox.Text = currChar.name;

      // Set the stats
      strTextBlock.Text = currChar.strength.Current.ToString();
      intTextBlock.Text = currChar.intelligence.Current.ToString();
      dexTextBlock.Text = currChar.dexterity.Current.ToString();

      // Refresh the portrait image
      reloadPortrait();

      // Display the character generator page
      Glide.MainWindow = characterGenWindow;
  }

If you've thought that creating a portable game device with your own RPG on it would be cool, this project might be a place for you to start...

The Discussion

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.