Fantastic idea. I'm no good with scripts, but would it be possible to approximate terrain via the cell? In other words, cell x, y, z, p, and q in the Bitter Coast have "squishy swamp" sound, but cell t, r, and s are near the shore and thus have "sand" sound. Just a thought - and I don't even know if it is possible via scripts or even an efficient method of achieving what you're aiming for.
But if you do manage to make scripts for different footstep sounds for different terrain, that would be so awesome!