One of the commands is a "reload scripts" command, for use by me - although it's not really that great; all it does is runs autoexec.script again, which will reset all the functions and globals. I was just messing around with deleting the Lua state and re-creating it to totally purge everything, but since the "reload scripts" command is coming from a script, I can't kill the Lua state, since that rips the rug out from under its feet when the reload command returns.
If I was to kill the Lua state when reloading scripts, that would mean that if the reload failed, the server would grind to a halt, since it couldn't then execute the UserTick() function, and I wouldn't be able to try to reload the scripts again.
Still, it would be nice to be able to reload the scripts, and if that works fine then be able to purge scripts fully. If anyone has any suggestions on how to do this, I'd be happy to hear them.
Not much else going on code-wise, I still want to do my genetic statistics thingy. johnb had an interesting suggestion too. Since it's possible for users to pair up and not produce a new user (I.e. if the new user doesn't sign up within the required period), these orphan profiles could go into a pool (Perhaps randomly add them, or keep the most recent 5 accounts or something). When a new user signs up, they could have a profile picked out of this pool. And that gives you unexpected parentage [smile]
I still need to determine incentives for using the genetics system; my current plan is a bit rubbish and involves giving each parents a moderate sum of cash, and the child a smaller amount of cash, or possibly some item(s). However, I also need to add some small responsibility in there, so people don't just constantly create new accounts. I'm still working out the details on this.
Work stuff: Wii engine development, woo! The Wii DVD code is a bit annoying - like most low level drive access, there's quite a lot of restrictions. Such as, you can only read from DVD to a 32-byte aligned address, and you can only read multiples of 32-bytes (Even if that means reading past the end of the file it seems). So my file loading code needs to have some crazy buffered system, which is overly complicated. Give me fread() any day...
I also turned 3 Wii Remotes into vibrators (So that pressing A turns on the rumble motor). Yes, it was a productive day [smile]
Anyway, that's probaby stretching the limits of my NDAs, so I'll shut up and go watch Horizon.