Archives December 2007

File Formats and Keyboard Navigation (Little "playable" details...)


Spent all of yesterday evening and all the time so far today getting the little details put together. We now have a file-format for Productive (just a zip-file with some specially-named sub-files) and the original world definition can be shared with the clients to provide topology information (and eventually map size, layout, resources, etceteras). The ...

Continue reading

Low Hanging Fruit Picked (Slightly faster rendering...)


I think I've got most of the rendering-speed improvements I'm going to get without activity-level changes. Here's how it breaks down:

* 26% of the total time is spent in display.flip now (likely only possible to optimise that by reducing window size or something changing in SDL/Pygame, either is possible, but I'd prefer to give ...

Continue reading

Faster Rendering, Still lots of Head Room (Snappy productivity...)


Long day of non-OLPC work today. Spent the evening with a profiler going through productive and whittling down some of the slow spots. It really goes to show that the things you don't think are going to be problems are always the ones to bite you (hence the advice to optimise late in the development ...

Continue reading

Need some time to work on work too (Inversion of ratio...)


Since the trip to Taiwan I've been working full-time-plus on OLPC stuff. Originally the plan was that I was to spend 1 day/week on it, with the other 4 days available for my other clients... but OLPC really needs someone working full-time on making things easier for developers. Getting OLPCGames whipped into shape, making sample ...

Continue reading

Start Networking Productively (A quick tutorial on how we did basic networking...)


Since I seem to be incapable of sleeping, here's a quick description of how networking works in Productive...

Lobby Level

Productive has a traditional "lobby" interface, where the children who are gathering to play the game can configure their player characters (and eventually the game-size and in-game name). This interface is handled by the olpcgames.mesh ...

Continue reading

Whither Emulation and SDKs (Status updates...)


I've put up a brief summary of the state of development environments as I see them on the Wiki. I want to get to the point where we have at least a LiveCD image that can be installed to a machine's hard-disk which includes a (likely Qemu) emulation script that can download the latest images ...

Continue reading

Oh So Tantalizingly Close (Works on sugar-jhbuild, not on the B4)


As of right now I can play Productive (minus a few rules) under jhbuild on my workstation against myself. I've also got it building an xo and a POT file (pot file is still a bit anaemic). The UI is nowhere near what it needs to be, but the networking works and the main game ...

Continue reading

Lowering Spew Volume in Activities (Set the logging level, but what's setting it high?)


Since I burned a few hours trying to track this down, I'll post the work-around... the problem is simple; Log Spew.

Productive uses Python's logging module throughout to provide debugging and informational output during development. We log enormous amounts of information at debug and info levels (about 2.5% of our total run-time is spent in ...

Continue reading

Productive Running In-situ (Network transmitting information (that's what networks do))


Yesterday I managed to finish hooking up enough of the networking that the game can start while running as an activity and the status updates flow properly from the server to the clients. We did the "lobby" code all using the olpcgames wrapper's built-in functionality, with the actual game code using an ExportedGObject for efficiency ...

Continue reading

Daily archives

Previous month

November 2007

Next month

January 2008

Archives