Gummworld2 - 0.0.9
::: News :::
Version 1.0.0 is released. It has all the features I presently need. Junk has been removed and fat trimmed over the past few releases. It has been tried and refined in several Pyweeks, and the API seems to have settled.
HUD has been slightly revamped. It uses the wonderfully precise str.format now instead of str % best_guess.
The SuperMap API has had some changes, the internals are improved. See the Mercurial change log. This feature has not been tried in a game yet. It has only seen demos. (Waiting on my wish list feature: a Tiled map loader that spreads the load out over multiple game cycles. DR0ID *poke* :)) SuperMap is the feature that enables arbitrarily huge realms with on-demand loading and unloading.
The biggest volume of changes in 1.0.0 are to bring the code into PEP 8 compliance.
::: About :::
Gummworld2 is a light pygame framework for a scrolling game, where the map is larger than the display. It emphasizes simplicity, freedom, and performance. You add the display elements and game logic, the engine provides the framework for timing, events, updates, and rendering.
Tiled helpers are included for elaborate mapping. However, Tiled is not required.
Compatible with Python 2.7 and 3.
The fast renderer BasicMapRenderer matured in v0.5.0. The Mana World's map01 blazes. It is a five layer map with many SRCALPHA tiles. See examples/07_tiled_tmw_renderer_complete.py.
The old screenshot below is from an early version on an older Intel, getting 332 FPS in an 800x600 window while scrolling. It is a one-layer 2048x2048-pixel map, using the old method of collapsing nearly 500 on-screen sprites down to 36 surfaces for faster blitting. (Note: the BasicMapRenderer does this on the fly, and solves the older issues of mixing various image formats in a single view.)
::: More :::
Also available in downloads (Gummworld2 required):
::: Google Discussion Group :::
There is a Google group to discuss Gummworld2 and related projects. All are welcome. Please stop by and start a discussion.
It has obviously been a while since the last announcement here. In the meantime there have been quite a few API modifications, many enhancements and fixes, and a side-excursion into a QuadTree world implementation and geometry collisions (for Python-pygame purists, among which I must confess I can be found). Suffice to say there was a lot of rapid change going on and still many bugs surfacing, so it seemed inappropriate to call attention to those releases.
With this release I feel it's really getting there. Starting with Gummworld2 version 0.0.9 the editor is advancing, thanks in large part to PGU's GUI package. The concept has changed from "map editor" to "world editor". There have been numerous changes to the library to support development of the world editor and fix some issues, but no API changes since version 0.0.7. Some of the world editor basic design is implemented, just enough for a sneak peek.
IMPORTANT: Do not count on the editor saving your work yet. This is not yet implemented.
See the change log in SVN or visit the change document on the project's wiki if interested in the details.
Pygame.org account Comments
If you wish to leave a comment with your pygame.org account, please sign in first.