I think I've found out why some enchant works and some don't. When the enchant scrolls run out, l2net still registers the scroll in the inventory. When you buy some more scrolls, it doesn't add to the first one but instead registers as a second group of identifcal scrolls. When you run the script again, it keeps trying to use the scrolls in the first group which doesn't exist anymore as it ran out. The only way for me to keep the script working is to always have more enchant scrolls than needed. Perhaps a bug ?