Quantee is an in-development platformer, intended to draw inspiration from quantum mechanics (but not too heavily... it is foremost supposed to be playable).
We're also trying to keep some of the code generic enought so that we can rip it out and turn it into a framework without too much effort.
- Python 2.7
- Pygame 1.9
- PyYAML 3.10
Assuming your system recognises
python as Python 2.7:
% python src/quantee.py
You should be able to run around, jump, collect a star and replay the level. Use Escape to exit the game.
Sadly, far from completion. You can use pydoc to look at what's there. A brief overview:
src/quantee.py-- main project file contains a messy bunch of classes
Gamethe which manages the entire main loop
Enginean abstract base class for backends
SDLa PyGame-based backend
AssetManageran abstract base class for assets-loading objects
QAssetsan asset loader for
SDLsubclass wrapping the PyGame events with more convenient (in our case) wrapper methods
Levelthe class guiding the interactions of everything that composes a game level
Entitya base class for all on-screen objects that an user might see
Behaviouran abstact base class for things that control
Stagecollection of layered
Entitiestied to a particular level
Directorabstract base class for things bossing everyone in a given
Boxclass for axis alligned bounding boxes
src/drawing_strategy.py-- considered for deprecation
DrawingStrategyabstract base class for objects deciding what to draw onscreen
Everything-- the simplest one possible
DirtyWholes-- draws less than Everything in some cases, but always redraws a whole
So far we only know this
- Quantee is hovering a few pixels over the ground level instead of standing on the ground when jumping in place. It doesn't happen when he moves even a pixel left or right.
The scheme is
major.minor.release-optional_suffix. For versions below
1.0.0 we allow breaking backward compatibility when the minor changes
and introducing new API elements when the release changes. Post
we'll break compatibility only each major version, add new stuff each
minor and fix bugs each release.
Karol Marcjan: @szabba on both twitter and github
Bartosz Boguniewicz: @drBradley on github