For first Option is ~ 42ms (you need to replace y2 in !!HEy1:C line with something else to make it work, i think)
For second option is ~ 770ms
Looking forward to new ERA version!

daemon_n, исправил.
PerryR, right you are, thankx. Changing those tests too often. Now ok. 120 msec here for SN:G (
Retry please.
Berserker, спасибо. 53 мс для 1 варианта.
upd - проверял на разных разрешениях, фильтрах, скриптах, картах - результат не менялся.
НО!
на оригинальной Эре результат 1 варианта был 352 мс.
Тоже 50 мсек теперь. Спасибо.
Berserker, обновил информацию выше

Выше я напортачил с тестами слегка, оттого и результаты.
Итоговый тест: запускать сразу весь скрипт:
Мои результаты:
!!DO:P - 60 msec
!!SN:G - 57 msec
В реальности DO:P будет медленнее, если ещё Lua/Плагины обрабатывают вызываемую функцию в цикле, но на лицо оптимизация такая, что !!DO:P сам работает как цикл (нет повторных сохранений/восстановлений переменных на каждой итерации, как раньше).
daemon_n, спасибо, отлично! Ускорение среднего !!DO цикла в 7-8 раз может стать отличным подспорьем для существующих проектов.
Единственное, что не ясно, почему у тебя так сильно SN-скорость разнится на двух сборках одной и той же версии Эры. Крайне странно.
Berserker, думаю, igrik хорошо постарался, реорганизовав работу скриптов. Пробую менять местами разные файлы, но пока результат не меняется - за что отвечает искомая команда? Точнее, в каком случае она может быть использована - может, с этими сведениями я смогу быстрее найти "виновника(-ов)".
I tested again and the number of loaded mods matter.
All tested on same map with assembly::
for !!DO:P
Only Basic WoG: ~360ms
With ES: ~480ms
With AC-Mod: ~530ms
With ES and AC-Mod: ~643ms
SN:G was always around ~43ms.
so maybe that explains the difference in Daemons tests. Might be the total numbers of SN:W variables loaded, but I think Bersy will know best :D
daemon_n, код с SN:G должен работать всегда с одной и той же скоростью. Он не вызывает событий, не запускает циклов. Как у Perry или меня. Ты точно брал именно последний скрипт целиком?
PerryR, right you are! The more triggers are loaded in WoG, the more time to execute each one. In Era 2.9+ there is not such dependency. Anyway, your CPU is faster, then mine, but even though you can get up to 8-14x performance increase for DO:P )
Berserker, точно.
После копировал его для оригинала. Так что пока решения нет - погляжу позднее зависимость от типа издания и hd мода.
Перенос кода Эры 1.9 на Delphi завершён. От Angel.dll осталась только пустышка для обратной совместимости. Теперь на неё не ругаются антивирусы (нет низкоуровневого кода, скомпилирована в Delphi). Хотя вру, даже полностью чистую DLL один сканер подозревает в чём-то нехорошем.