The Hot Spot Framework is a C++ game framework
intended to allow game creators 1) a default
implementation for state-based game products, and/or
2) an extensible framework from which to create new
implementations Direct conceptual antecedents, and
in some cases implementation, for this framework
come from the 1013 Game
Prototype and C++ version of the
Quake III BSP
loader, both projects I have undertaken in
recent years. I've been thinking about this
program for a long, long time.
Every part of the framework is extensible: the
Model Layer, Controller scheme, View implementation
(currently a 2D DirectX implementation), and an
entire Data Access Layer. This extensibility
is used directly by the framework for its own
default implementations to serve the first purpose
of the framework: to allow game creators to design
games without having to code anything beyond the HSF
game script. To serve the second purpose,
someone with access to the code would, for example,
be able to implement 3D DirectX functionality, or
may choose to instead replace the entire View layer
with an OpenGL implementation -- so long as it
follows the interfaces laid out in the framework, no
changes should be required of the other layers,
except for those that may require new functionality.
Part of the development process is to create game
demos which will further development of the core
framework. Don't Hang Me
is the first such project, based on HSF v0.11a.
Once Don't Hang Me entered the Beta phase, I put a
code freeze on any further changes to the core
framework, with the exception of debugging and any
major oversights to the implementation that would
keep the game from running properly.
Changes beneficial to the core framework
were culled and used in the HSF v0.15a.
New implementations, and refactoring of the View and
Data Access layer hierarchies yielded v0.20a. The
version on this disc (v0.23a) reflects the completion
of several modules and related goals for the next
major iteration of the Framework (v0.30a): View
interactions and general refactoring, the basic
Animation Module, and the basic Inventory module.
The version on this disc uses its
default implementation to demonstrate a very basic
game script. A lot is possible with just this
implementation, but I hope take the functionality
even further with future projects.
Code samples from v0.23a of the Hot Spot Framework
are available in this document |