I think generally Max is the program of choice for game developers. Maya is used a lot for special effects for tv productions etc.
It depends on what its for, the easiest way(obviously) is to just instance the geometry. But it sounds like you need the model to be one piece. So in that case, I would probably copy the faces/verts the required number of times, weld them to create one model and then apply a UV and unwrap it. Render to texture. Then just paint the texture in photoshop, and duplicate this texture onto the various levels of the unwrapped texture I just rendered.
There is probably a better way to do this, as I said, I have never really tried it!
Maybe you could also just model, and texture the one level. Convert to editable poly(delete the top(roof) and bottom poly so the clones will weld together properly), clone however many times. Attach them to each other, weld the appropriate verts. Then just fix the now non-existant roof at the very top by using “Create” to add a new poly at the top. Then render to texture to get your new, unified texture and see i that works.
If it were me I would just experiment with these various ways of doing it and see what works/doesn’t. Also, maybe a multi-sub object material is the way to go.
Maybe Pete would have some better ideas on this one?