but they don't have the text keys attached, so you just copy the text key node over from the .nif's .kf file to get a working
That's wrong: they (preview nifs) do have NiTextKeyExtraData (note track) node but it is parented not to the Bip01 node but to the nif rout node (bug). Hence, simply re-parent it.
.3ds format does not contain animation data; Blender has a working MW animation importer script.
If you go with this method though use the x.nif from the original base_anim
And you get an animation error message, CDT in the worst case scenario. Reason: preview nifs as well as all created in Max custom animation nifs have toe bones, original xbase_anim.nif don't. x.kf file cannot have bones that are not specified in skeleton x.nif, but x.nif can have bones that are not present/animated in the corresponding x.kf file.
It is a nightmare to work with a complete base_anim (206 sequences, ca.5000 frames). So, splitting/merging is an option.
However, be very careful: merge_kf has several bugs ?
1. It supports only linear controllers (check that all bones have specifically this controller type).
2. merge_kf processes carriage return (CR) character in a wrong way: avoid it in your text keys (btw, original animations have CR quite often).
3. merge_kf does not support scale keys.