Сообщение от http://neten.org
Попробую сделать проще либо по правилу правой руки или задавать маршрут на карте.
|
Предлагаю такой алгоритм "интеллекта" ботов: всегда идут вперед (куда смотрят), пока не увидят игрока (скажем, видят они только на N клеток вперед) или не утнутся в стену. Если увидели игрока - начинают стрелять, если уткнулись в стену - делают поворот по случайному варианту налево или направо или назад. Чтобы меньше занимать ресурсов обсчитывать поведение(положение) бота надо только если он находится на расстоянии ХХ от видимой области карты.
В начале игры можно ботов раскидывать случайно по карте, так будет интереснее.
Для усложнения игры можно сделать так: всего на уровне YY ботов, если одного убил, то через MM секунд игры он снова зарождается в случайном месте...
А в принципе, боты могут различаться дальностью и углом "зрения" и скоростью движения.
Это самое простое. Сумеешь сделать?
Кстати, на счет звуков: если сделать библиотечку для вызова
Manager.playTone - то звуки будут без тормозов, правда в виде однотональных "гудков", но для "выстрелов", "шагов" и т.п. подойдут.
И еще идея на счет звуков: надо попросить
pilgrim-a
сделать библиотечку, которая позволяла бы инициализировать несколько плейеров. В паскале плейер только один, и инициализируется он файлом звука, что требует довольно много времени. Я предполагаю, что если заранее наделать кучу плейеров, каждый со своим файлом звука, то потом при включении одного из них на воспроизведение затрат времени уже не будет на загрузку файла, и тормоза со звуками пропадут.
И последнее
про звуки: ИМХО,
ToneSequence или
MIDI - самые нересурсоемкие звуки...