I've been reading Joel on Software recently and so I've become pretty sold on the idea of writing functional specifications before getting too involved in development.
I'm about to have a go at creating a simple 2D game (not too simple mind), and I can really see the gain - in the past I've just jumped into writing extremely simple games and I've found myself getting stuck or rewriting the same bits over and over again as I suddenly realise I have no idea how my level should be defined, or I realise that I want to be able to jump but that means completely re-thinking my collision detection.
Anyway, so I've started coming up with a functional specification but I'm struggling a little - I can see and understand the point of it, but I've not really written many functional specifications before and so I don't really know how to start. The examples that I've found on the internet are great, but they are mostly process-based (user submits form A, then form B) etc... which doesn't really apply much to the structure of a game.
Does anyone have any advice /examples on how to strucutre / write specifications for games?