@Astakos Your answer is perfect! Thank you very much. --- I think this is a good opportunity to learn about xEdit scripting. Here is my script so far. If someone found this thread later, you can use this script in xEdit to replace old snow shader for Real Roads.esp.
{
Change old snow shader(LandscapeSnow01) to new snow shader from SSE(LandscapeSnow01Landscape)
}
unit userscript;
function Process(e: IInterface): integer;
begin
if GetElementEditValues(e, 'Model\MODS\[1]\New Texture') = 'LandscapeSnow01 [TXST:00000891]' then
SetElementEditValues(e, 'Model\MODS\[1]\New Texture', 'LandscapeSnow01Landscape [TXST:01002CA0]');
end;
end.It works but I think it is not good enough. I have an idea to use loop-for to run process through all indexed path but I don't know how to get size of indexed path. Any idea? Example pseudo code:
for i:=0 to {max index} do
begin
if GetElementEditValues(e, 'Model\MODS\[i]\New Texture') = 'LandscapeSnow01 [TXST:00000891]' then
SetElementEditValues(e, 'Model\MODS\[i]\New Texture', 'LandscapeSnow01Landscape [TXST:01002CA0]');
end;