The character rank is adjusted by "xoffset" that I did not account for in the reposition. I have fixed that and uploaded to Itch today.
I do not have the same problem in the itemsbox for trading in my COAS test. You might want to check the Program\INTERFACE\itemsbox.c for the string creation. COAS shows this:
CreateString(true,"MainWeight","",FONT_NORMAL,COLOR_NORMAL,215,265,SCRIPT_ALIGN_LEFT,1.0);
CreateString(true,"BoxWeight","",FONT_NORMAL,COLOR_NORMAL,215,302,SCRIPT_ALIGN_LEFT,1.0);
Maelstrom does have that same function NativeFindCharacter. It works with any script array object if there is a .id attribute. So it would work for:
NativeFindCharacter (&Items, "blade1");
NativeFindCharacter (&RandItems, "blade1");
Make sure whatever object you send in the first parameter is an array and that it has .id attribute for each element; it searches for .id = "searchname". I tested both of the examples above and it worked fine.