Import Soul Wouldn’t it be nice if things just worked

10Mar/110

book-expander

As messing around getting some ebooks onto my nice new kindle, i have run across the problem where some books have been poorly OCRed and have lost a few spaces along the way. i.e. "Monty python" may become "Montypython"

To combat this i have written up a little script that will search though and try to identify and correct where this has happened.

Currently i have it all setup and hard-coded for use on ZIP/HTML exports from calibre returning a new zip that can be re imported. If you are interested in using the functionality on just plain text feel free to download it and use the clean_book function.

All the code and bug tracker can be found HERE on GitHub

1Mar/110

Enter Squiglet

The graphics style i have chosen for the game i am working on, Saga of Sol, is very simple. The majority of the graphics such as ships, buildings, will be composed only of plain old white on black lines, with some "highlight" or "feature" lines being drawn a different colour to denote what team it is on.

I didn't think that it was appropriate to go for a full on vector/SVG library for pyglet such as Squirtle. So i have begun the creation of my own much simpler vector library "squiglet" that will handle the graphics for my game.

As of yet i have the basis of most of the vector classes complete (no functions yet to draw them into the game) and am about 80% of the way done on my own editor for the vectors.

If your interested in the project it can be found on GitHub at https://github.com/Hugoagogo/squiglet or you can follow along on my blog HERE

21Feb/111

Weeks Unknown – Scaling Troubles

After many disruptions, holidays and general laziness i finally got around to doing some more work on Saga of Sol. To start off the term i had begun setting up the framework and basics of the local planet view. This is the view that when you are playing the game you are going to spend the most time in, building your armies and crushing your foes, and so on and so forth.

However not long into the programming i hit the barrier of software surface transformations. The simple effect being that when zoomed out a long way or scrolling quickly. Looking around at getting pygame to correctly take advantage of hardware surfaces, i quickly found that the general consensus is, dont bother and i got redirected to pyglet.

Pyglet is another python graphics library based around opengl and makes good use of hardware surfaces by default. In learning pylet i stumbled upon some basic guides on game desgin and another guide that provides a basic camera class for me to base my scrolling and zooming upon.

After lots of modification i have got to a point where one is able to zoom in and out towards a point on a map and scroll around in general RTS style. More difficult was trying to convert between screen and opengl (world) coordinates so you are able to identify whereabouts in game space your cursor is.

A screen-cap of the running trial, the scribble is made by moving the mouse to show correct conversion between screen and opengl coordinates

I will hopefully have some code up soon for those that are interested, as soon as it is tidied up and commented

13Feb/110

Donation box prototypes

I have begun to plan and design some aspects of the marble run window of my interactive donation box. There are two main aspects i have been focusing on so far are, ways to lift the marbles back to the starting point and different track elements for on the way down. For both of these i have begun the construction of cardboard prototypes.

Marble lift

There are a few different methods that are used to lift marbles, the main ones being screw based or disk based, i have decided that it would be much easier to go with the disk design as it would be much easier to manufacture out of predominantly wood

This video shows my prototype, the final version will have 5 of the wheels and gears to keep the wheels in sync

Track Elements

For my cardboard prototypes it is very difficult to produce any shape with much of a curve, so i have focused on the moving elements of the track. These designs are based off many other marble runs on youtube. This setup is designed to be the elements that will fill one side of the display. In the final version there will be more simple and decorative elements such as spirals and twists to connect the moving elements.

I will hopefully have some more videos of prototypes up in the next few weeks as i work on them.

13Feb/110

Interactive donation box

Besides doing a major project for software design and development, i am also working on a major project for design and technology. For this project i have started designing an interactive donation box.

The main idea is that when a coin is put in it is sorted according to its denomination, depending on the value of the coin a given number of marbles will be sent through a marble run. The front of the cabinet will also feature an area to promote what you are trying to attract donations for as well as a display showing how far they are to reaching their fund raising goal.