You can get a pretty good idea from looking at the mod sdk code, which is available from here: http://iddevnet.com/doom3/
There's quite a lot available in the game code; the physics system at least, maybe also the script interpreter? I haven't looked in a while.