I think taking a text approach makes a lot of sense if this is your first challenge, I'd definitely consider this if I didn't have much time available.
2d is traditionally a bit easier, especially concerning artwork, but I think it comes down to what you are currently working with. As I'm pumping out 3d games, it's probably easier for me to do 3d than 2d, whereas for 2d guys the reverse is probably true.
One thing you don't mention is whether you are familiar with any languages / engines / frameworks. That will help determine the path you take. Most frameworks will make playing sound effects / music pretty easy, almost something like 'PlaySound("bang.wav")', which isn't a big deal to put in at the right points.