Есть возможность нереально разогнать работу скриптов.
Для этого достаточно выполнить две операции за один  просчет поля)
Пример 1
Типичный скрипт. Для активации бурки и применение сдвиг два раза прогоняется скрипт, соответственно скорость работы скрипта падает катастрофически)

//Все события происходят, только если ваш ход
//Ваши камни(жизни) и врага распознаны
Успешное_считывание_камней:
{

//юзаем бурляшку, если не пили
ЕСЛИ ( _Бур = 0 )
{
   _Бур 1
   ~Клик _Бурл.Позиция
   ~Трассировка "BUR"
   ИДТИ конец_хода
}
}

//Распознаны камни(жизни)свои и врага, а также поле
Успешное_считывание_поля:
{
Тут типа сдвиг под бурку

:конец_хода
~Случайное_Число 500 _Случ
_Случ  _Случ + 500
~Спать _Случ
}

Пример 2. Теперь тоже самое, но используем один просчет камней-поля для активации бурки и применения сдвига.
Скрипт простой (фармерский), нет проверок ни н что, но он явно демонстрирует разгон скорострельности бота))))
Кста, скрипт рабочий)

//ВЕРСИЯ 1.0 ФИНАЛ
/ ОПИСАНИЕ... фантическия скорость нанесения удара буркой, подводимый сдвигом.
/ Используется для для одноударных боев.
/ Скрипт стабилен.
/ Дополничельных настроек не требуется.
/ ВАЖНО!!! Будьте с ним аккуратны. Если случайно войдете в бой против человека, запалят 100%))

Магия:
_Сдвиг
Позиция 4
Камни:
Красные 0
Синие 18
Зеленые 18

Магия:
_Бурка
Позиция 5
Камни:
Красные 18
Синие 18
Зеленые 0

Переменные:
_ЗАДЕРЖКА 200
_АУРА_БК 0
_i 0
_Выбор 0
_Случ 0
_Кр 0
_Син 0
_Зел 0
_Аура_БК 0
_Рнд11 0
_Рнд2 0
_Камни_поле 0

Успешное_считывание_камней:
{
}

Успешное_считывание_поля:
{

ЕСЛИ (((_Красных_Моих > _Сдвиг.Красные)| (_Красных_Моих = _Сдвиг.Красные)) & ((_Синих_Моих > _Сдвиг.Синие)| (_Синих_Моих = _Сдвиг.Синие)) & ((_Зеленых_Моих > _Сдвиг.Зеленые)| (_Зеленых_Моих = _Сдвиг.Зеленые)))
{
    ~Расчитать_Сдвиг
    _i -1
    :начало_сдвиг
    _i _i + 1
        ЕСЛИ (_i < _Вариантов_Ходов)
        {
           ЕСЛИ (( _Ход[_i].Красных_Без_Уровня_После > _Ход[_i].Синих_Без_Уровня_После) & (_Ход[_i].Красных_Без_Уровня_После > _Ход[_i].Зеленых_Без_Уровня_После ))
            {
            //проверяем, активируем буку
            ЕСЛИ (_Аура_БК = 0)
            {
            ~Клик _Бурка.Позиция
            ~Случайное_Число _ЗАДЕРЖКА _Случ
            _Аура_БК 7
            _Случ  _Случ + _ЗАДЕРЖКА
            ~Спать _Случ
            }
                _Выбор _i
                ИДТИ конец_сдвиг
            }
            ИНАЧЕ
        {
            ЕСЛИ _i = (_Вариантов_Ходов - 1 )
                {
            // нет варианта сдвига с остатком красных больше, берем любой вариант
           
                _Выбор 0
            ИДТИ конец_сдвиг
            }
        }
   
            ИДТИ начало_сдвиг
        }

    :конец_сдвиг
    ~Случайное_Число _ЗАДЕРЖКА _Случ
    _Случ  _Случ + _ЗАДЕРЖКА
    ~Спать _Случ
    ~Клик _Сдвиг.Позиция
    ~Спать 300
    ~Клик _Ход[_Выбор].Ячейка_11 _Ход[_Выбор].Ячейка_12
    ~Спать _Случ
    ЕСЛИ (_Аура_БК > 0)
    {
        _Аура_БК _Аура_БК - 1
    }
}
}

Отредактировано Noter (2009-11-12 21:56:50)