Final project for CIS580
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Monster Arena

Spawn a legion of monsters to destroy the lone hero! Use your resources wisely, and fight to upgrade your monster army. Battle for a wide array of distinct monsters, and useful power-ups.

This game is built using vanilla HTML5, Javascript, the less css framework, bootstrap, and jquery.

It serves as the final project for Fundementals of Game Programming at Kansas State University. Course instruction provided by Nathan Bean.


  • David Barnes III (
    • Physics/Math calculations for movment of monsters accross screen
    • Helped set up the webpage(espically set background image for arena), and align all the elements
    • Debugged multiple small issues in game, while trying to "break" it
  • Kyle Brown (
    • Implemented Audio Manager
    • Audio files
  • Christian Hughes (
    • Implemented general animation framework/individual monster animations.
    • Processed non-HTML entity rendering and frame updating.
    • Sourced and formatted artwork into monster sprite sheets.
    • Did a variety of debug tasks & HTML tidbits.
  • Nic Johnson (
    • Implemented Shop interface and functionality
    • Implemented Stats interface and functionality
    • Debugging
      • Catching Richard's misuse of < and >
      • Other sneaky bugs
    • Implementation of Credits & Game Over gamestates
  • Nate Kellogg (
  • Richard Petrie (
  • E.N. Speer (
    • Drew multiple arena images and created the help screen.
    • Helped with implementation of Credits.
    • Implemented game states.
    • And debug tasks like everyone else.

Development Notes


Keep compiling simple!

browserify src/main.js -o MonsterArena.js
lessc less/main.less main.css


  • Menu states
    • Help state
      • Basic HTML/CSS
      • Javascript class
    • Recompile main.js into MonsterArena.js once the above are done.
  • Hero animations
  • Implement AudioManager calls
    • Shop Manager
    • Stats Manager
    • Win music
  • Test Specials
  • General balance fixes
  • Mute buttons

Audio Manager

Added audio containers in HTML. Add to molule via

AudioManager = require('./AudioManager.js')

Public Functions:

  • playIdleMusic
  • playBattleMusic
  • playWinMusic
  • playLoseMusic
  • playLevelUpSFX
  • playUpgradeSFX
  • playBuffSFX
  • playDebuffSFX
  • playClickSFX
  • toggleMusic
  • toggleEffects

Added 4 svg images, in img folder for icons for toggling sound.