Springie is a tensegrity simulator. It allows users to create 3D models made of struts, cables and membranes - and then see how they behave dynamically.
Springie can be used as a rapid prototyping system - for modelling strut/cable/membrane systems in a virtual world as a prelude to constructing them on a larger scale.
Tilt is a mobile phone game - targetting MIDP 2.0.
Like Rockz, it's a puzzle game. It is not a
reimplementaion of Rockz for mobile phones. Rather it has
been designed from scratch to cope with the challenges
presented by small devices.
This uses the ATOMS
particle system to display a virtual world containing
articulated, self-reproducing creatures. This program also
has a 3D
version (as do the following ones).
Particles is a general purpose particle simulation-
system, with a very fast collision detection algorithm.
This was an early prototype of the ATOMS system.
HAL stands for "Hardware Artificial Life". It is a
Java simulation of a cellular automata substrate for
developing artificial organisms on massively parallel
hardware. It is eventually intended to play the role of a
circuit-design tool for FPGAs (Field Programmable Gate Arrays).
Revoworms - is a reversible self-reproducing
automata that exhibits spontaneous formation of
self-reproducing structures from a random field - and thus
represents a simple model of abiogenesis.
Crystal 2D - is a member of a new class of self-reproducing automata I've discovered, which uses synchronous counters to reproduce using a form of template reproduction.
A system designed to explore the possibilities for the
evolution of sexual recombination in environments where mate
choice is restricted organisms' immediate neighbours.
This is of relevance to my HAL program (see above)
- as the evolution of sex in a cellular environment will be
of great importance if such environments are ever to be able
to compete with traditional genetic algorithms - which
typically employ externally imposed sex.
My front end to the block cypher, Rijndael (AES). This
program is intended to provide a convenient interface for
those interested in desktop file encryption. It comes with
GUI, command line and Java interfaces, and offers a number
of useful features.
A simple attempt to protect text online from theft. The
text is displayed in a Java applet, and is ptotected from
copy/paste, printing, or saving. The underlying technology
includes compression, encryption with Rijndael, and
obfuscation with Retroguard.
Firefly is an extremely simple Java applet which
attempts to explore some issues surrounding the propagation
of synchronous clock signals in noisy environments.
Agents was a very early prototype for an artificial life project. It's based on the code for the Particles project.
Other programs
Zap
Before getting involved with Java, I was responsible for the development of the
Zap editor. After developing an extended range of language extension
modes for this (including HTML, Perl, LaTeX, C/C++, Java, Scheme, BASIC and SMTP
environments, for example) I took over the development of the kernel from the
original programmer.
Developing Zap primarily involved coding in ARM assembly language,
with a little C. There were a team of other developers whose activity
needed to be co-ordinated over the internet. Zap remains a popular
programmer's tool and is still under active development. It has its own
site at http://zap.tartarus.org/.
Texture Garden
Before Zap, my main project was
Texture Garden -
an animated algorithmic texture generation program.
Texture Garden automatically generates seamlessly tileable images suitable
for use as web page backgrounds. They also have a wider scope, as they may
be animated or used as solid textures for three-dimensional rendering.
The program has "garden" in its title because the program
uses genetic techniques to generate variants on an existing
texture. The mathematics behind the algorithms used mainly
involves fast-fourier transforms of filtered noise.
All the backgrounds on all my web pages were generated using this program.
The original version of Texture Garden has been used by
computer game designers and DTP professionals and webmasters
- and formed the foundation of a
commercial
algorithmic texture generation package,
published by RComp.
Repton
Prior to the above, more recent projects, I was probably best known as the author of the best-selling computer game, Repton.
I started writing computer programs commercially when I was fourteen years old. Repton was fourth game I wrote - and it remains the best known.
Repton spawned sequels, Repton 2, Repton 3, "Around the World in 40 Screens" etc. It was converted from the BBC computer to Electron, Commodore and Amstrad computers.
Repton seems to have achieved immortality via the internet. There are many PC ports. A Repton clone - complete with all the original graphics - is now distributed with virtually every modern commercial Linux distribution.
Repton 2 won the "Best Game of the Year" award for 1985, in a readers' poll conducted by a popular magazine.
In 1986 I was nominated as "Programmer of the Year" by my
publishers, and photographs of myself were prominently
published next to my royalty fees in their recruitment
advertisements.
For more information abour Repton see the
Repton page at Wikipedia - or my own page of Repton links.