Rebuild of a flash game using JavaScript

17 Feb 2014


  • Author: Zhenzhou Qiu
  • State: completed
  • Study programme: Information Technology (ECUST)
  • Degree: Bachelor (B. Sc.)
  • Thesis report
  • Source code


The technical capabilities of JavaScript are often underestimated. The aim of this thesis is to demonstrate technical capabilities of JavaScript by implementing a variation of a well known game series called Bomberman for demonstration purposes.

The general goal throughout the series of bomberman games is to complete several levels by strategically placing bombs in order to kill enemies and destroy obstacles. Exploding bombs can set off other bombs, kill or injure enemies, and destroy obstacles. However, they can also kill or injure the player character, destroy powerups, and sometimes “anger” the exit, causing it to generate more enemies.

The to be developed game

  • should modify the above mentioned game concept (for example by flushing enemies and obstacles using water balloons),
  • should be purely developed in JavaScript,
  • should not need a server,
  • should be executable in the latest versions of actual web browsers (Chrome, Firefox, Safari, Internet Explorer)
  • should provide several game levels which can be defined (and extended) by a descriptive data format (JSON, XML, etc.)

In detail the following tasks have to be performed:

  • Analyse “Bomberman” to derive an interesting and implementable game concept
  • Refine game concept into guiding software requirements
  • Develop a suitable MVC-based software architecture
  • Define a suitable software test strategy
  • Design necessary conceptual models like explosion propagation/water flushing/movements models, battlefield models, user interaction models, etc.
  • Define game level describing data formats
  • Theme an attractive and functional user interface according to designed user interaction models
  • Implement a realizing game engine
  • Test and evaluate the game according to the developed software test strategy
  • Document the above mentioned steps, design decisions and results (thesis document)