The dungeons are constructed out of tiles, i.e. there's not one large dungeon object but a lot of 3d tiles that form the dungeon. Each tile is an Object3D and as such, it can have up to 8 lights each, which makes it pretty easy to render a dungeon with 80 light sources...simply because not all light sources light all tiles. I'm doing some basic culling on them in addition to set light to invisible that can't be seen anyway, but that's doesn't change the basic idea.
Apart from that, it's basic vertex lighting for torches and crytals and some offset mapping on top of that for the player's light source (the player lits up everything around him as if he would be carrying a light).