Всё ещё продолжаю выяснять. Через collectgarbage('count') смотрю, что скрипт в пике растёт до 100мб потребляемой памяти. Но там очень много всего + он не продолжает расти больше 100 так что норм. Склоняюсь пока к тому что какая-то память после очистки больше не учитывается в collectgarbage('count'), но на самом деле не выгружается. 2 вариант это какая-то утечка конкретно в лаунчере Аризоны (его кастомные опкоды, патчи и т.п.), которая вырастает из-за каких-то вызовов функций в lua.