The Base Object Swapper mod is a framework to swap base records via config files while the game loads. As such, those changes always win over whatever is defined in plugins and in a carefully crafted load order.
As long as these changes are static - they happen the same way every time the game loads - it typically would be better for proper modding practice to make such changes via plugins or to maybe use a patcher to create a plugin from config files.
DynDOLOD reads every *_SWAP.INI present in the games data folder and applies the base record swapping for each affected reference before generating LOD, thus applying the base record swap to all LOD types if applicable.
Swapping typically works for large references, too. Large reference bugs are triggered if the new base record type is changed from STAT or MSTT (a warning message Base Record Type Not STAT or MSTT For Large Reference is written to the message log) or in case the volume of the objects bounds of the new base record is smaller than the required minimum (this is automatically fixed by DynDOLOD).
Using the material object shader from the original base record is not supported at the moment. Since this is a new feature, there might be issues or discrepancies in the order the base record swaps are applied for example. Report any issues to the official DynDOLOD support forum.
DynDOLOD reads the form ID or Editor ID of locations or cell records defined via [Form|Location/Cell_FormID,Location/Cell_EditiorID] and applies those swaps only to LOD for references in those locations or cells.
DynDOLOD reads transforms defined with Pos[A|R], Rot[A|R] and Scale settings and applies the transformation to the generated object and tree LOD.