Category Archives: Projects

Any projects on which I am currently working.

Building PDFs of documentation

Still working on that coursework project, I'm now building PDFs of the three pieces of documentation the application itself requires: the API reference, the source code listings and the user manual.

Using gtk-doc to build the API reference makes it quite easy to add something in the Makefile to build a PDF from the DocBook:


I've put this at the bottom of the, and it's all working nicely, apart from the fact that distcheck (legitimately) complains about me redefining all-local. I can't find any other way to make it build the PDF while also building the normal docs with make docs, so my question here is: how do I make this implementation cleaner?

If anybody wants to use it, they'll need to install dblatex.

The next piece of documentation is the source code listing. This is completely custom, using source-highlight to make LaTeX files for each source file, and then pdflatex to build them into a PDF.


I'm quite pleased with the way this works, although I'm sure there will be better solutions out there. source-highlight deposits many LaTeX files in the build directory, which are then included in the PDF build by dint of being automatically concatenated together and included by a surrounding LaTeX file, project-name-source.tex.


Finally, the user manual also needs building into a PDF. This again uses dblatex, although it's a little more complex, as a PDF has to be built for each language directory in the help directory.


Hopefully some of that will be helpful to somebody in a similar situation, and I'd welcome any hints or pointers as to how to improve the implementations, as my automake powers are about as strong as a damp tissue.

ocPortal 3 public beta out!

Well, we finally managed it. :) After months of work, we've let ocPortal 3 public beta 1 loose in the wild, for public beta testing.

It's been improved a lot from version 2; most notably with a new and even-more standards-compliant theme. Lots of new features (such as instant messaging, OcCLE, and improved statistics) have been added, standards verification and support has been improved no end, with ocPortal now optionally checking submitted content for standards compliance.

I probably haven't spent as much time working on it as I should've, and my work isn't half as far-reaching as Chris', but he's employing himself full-time to work on it, while I'm technically only an intern. :P However, I have designed and built the OcCLE system from the ground up, and it's a beauty (even if I do say so myself). It's certainly original (thanks to Chris and some alcohol for that).

If you've been reading the developer blog, you'll have seen all the posts in the May countdown, and have more of an idea about the features than I can write in this blog. Certainly worth a read. ;)

Enough of the marketing pitch, I hear you say! Why not download ocPortal 3 now, and give it a try? If you find any bugs (whether they be visual niggles, lacking documentation, or just plain old bugs), don't hesitate to report them to us. We want to make ocPortal the best! :D

Elite Force: Total Conversion

Well, since you can't see any recent blog posts, it's obvious that I've been busy! :P

For the past month I've been furiously coding for Elite Force: Total Conversion, and I can say that our code is taking shape. :D

I've coded most of the weapons and got them to a semblance of their final form. The pickups are just about all coded and working, and the useable pickups are currently under construction.

Our other fine coders have whipped up a nice everything-else, and we're nearing the time when we can say "Yah-boo. We've got a working game. :P"

On a side note, ocPortal 2.5 beta-testing is coming to an end, and it's looking good. :)

The first install.php

Here it is! The first taster of what's to come from the forges of Helios. :)

I created this installer file in only ten minutes, using Helios. It was created entirely by Helios, and has not been modified afterwards.

The interface could do with a little tweaking, and I think a little of the intelligent page detection logic is a little rusty. However, it works, and it works very well!

Helios V1.0 Alpha-1 almost ready!

Forgive me for sounding so excited over something that nobody else in the world will have any idea about, but I'm happy.

I have been coding hard for a couple of weeks now, and I have finally got to a stage with my latest project that is good enough to be called "Alpha-1" :D

Helios is the first-ever (as far as I am aware) PHP script installer package generator. That's quite a mouthful, but it is basically an RPM/MSI package generator for the internet ;)

It has quite advanced features and configurability — indeed, much more flexibility than its C-based cousins.

Currently, it does not quite have all the basic functionality complete: I haven't yet coded the MySQL database installer. However, the core system is ready, and all of the other core installer functions are rearing to go.

Hopefully I'll be able to find the time to package something up, and put it up on the website for inspection. :)