Matthew Mahowald's Superhero Simulator

Video

Download

Superhero Simulator (2015-11-11 Windows build)

Instructions: Download and extract the zip file. Open the extracted folder and run SuperSim.exe. Let me know what you think!

Release Notes

These are notes for the first release (2015-11-11) of Superhero Simulator.

  • Character Creation:
    • Click-and-drag manipulation of facial features
    • Costume color selection
    • Skin and hair color selection
    • Emblem selection
  • City map:
    • Multiple map modes (standard, faction ownership)
    • AI-controlled factions (police and criminals)
    • Faction agent icons and movement
    • Graphical effects for player-selected districts
    • Basic event support (tutorial system implemented using events)
  • Tactical:
    • Player can run, jump, attack, and block
    • AI-controlled enemy characters
    • GUI: Healthbars for enemies and player
    • One level (a dark alley)
  • Behind the scenes:
    • Game state saving and loading
    • XML serialization/deserialization of game data at runtime (e.g., events)
    • Custom shaders implement multi-color texture tinting

Source Code

The source code can be browsed on GitHub: github.com/mahowald/SuperheroSimulator

About the Game

Superhero Simulator is a hybrid strategy/action game in which the player becomes a superhero and battles crime and natural disasters to protect the city of New Gothamopolis and its citizens.

Origin Story

One late night at Northwestern University, a tireless graduate student labors away on his research project. But, in a freak math accident, inspiration strikes! Mild-mannered Matthew Mahowald, mathematician-in-training, becomes mild-mannered Matthew Mahowald, hobbyist game developer---His mission: to create a project that tests both his progamming skills and his expertise in geometry and physics!

Game development, as it turns out, is an excellent source of interesting problems, both as a programmer and as a mathematician.

Technical Features

Superhero Simulator was made using the Unity game engine and all code is written in C#. Other tools used include Blender for 3D modeling and animation, Photoshop for textures, and Inkscape for vector graphics. From a software development perspective, it features a number of (hopefully) interesting technical implementation details:

Artistic Features

About 90% of the artwork in Superhero Simulator is original, including most of the meshes, animations, textures, and user interface elements.

In particular, the city map is original work, as are the character meshes and textures for both the male and female superhero models and most animations (some animations come from the Unity Standard Assets package). It also features original shaders that allow multiple-color tint mapping (e.g., for customizing hero costume colors).

It features creative-commons licensed work from The Noun Project (some user interface icons), music from ccMixter, and makeHuman (base meshes for facial sculpting). In addition, some hair meshes come from Mixamo Fuse.

For a complete list of credits, click on the "credits" button in Superhero Simulator

Game Philosophy

Superhero games have a checkered past, spanning multiple genres and running the gamut from cheap movie tie-ins to category-defining gems. There are games where you play as a famous hero, and (although less numerous), games where you create your own heroes. Two key features set Superhero Simulator apart from other games:

Select from a variety of different powers and customize your appearance and costume as your hero or heroine takes the fight to crime! But be vigilant---villains will surely arise to challenge you!

You might not be the hero that New Gothamopolis deserves, but you're the one it's got right now.

How will you save the day?

Screenshots