Tuesday, June 24, 2014

[MMc] OpenHeist map loading and rendering done

Map loading, tile sets, and the API for changing tiles at runtime are all complete. I halved heist::TEXELS_PER_METER from 96 to 48 in order to better match the scale of Monaco tiles at 1080p.

Although I will continue to add both cosmetic and utility functionality, all major functionality for OpenHeist is now present as the major parts of creating a data-driven, multiplayer game are now working.

The API changed remarkably little in the past 36 hours. Most of the changes that were required went into supporting the map, which was ill-specified in the initial API. Mike's idea of treating map cells as a grid of subclass-able objects to better support game-specific state was a very good one, but required a funky factory pattern and more obscure C++ syntax to implement. The codebase grew from 1200 to 1900 lines since the jam began.

As specified in the documentation, the development roadmap for the engine is now:

  1. Implement collisions with map
  2. Specify spawn points in the Mission
  3. Make player character creation follow the factory design pattern
  4. Implement map line of sight 
  5. Specify overlay text in the Mission
  6. Implement GameApplet::drawTileShadow

No comments:

Post a Comment