Подменяем файлы по урлу
Рабочим решением стала загрузка реального игрового клиента, но подмена для браузера нужных файлов на свои. Для этого устанавливаем замечательную программу Fiddler Web Debugger и указываем нужные пути в табе AutoResponder: Такой подход очевидно требует держать Fiddler запущенным во время игровой сессии.
Пишем ботов в текущем окне
Код клиента одновременно получает данные и перерисовывает объекты на экране. Можно было бы открыть 20 табов, управляемых ботами и один мой игровой таб. Но тогда надо было бы как-то передавать мои координаты в соседние табы. Плюс рисование каждого таба тормозило бы весь браузер (я пробовал — так и есть). Поэтому было решено создавать новые игровые сессии прямо в текущем табе, но выключить для них связь с отображением:
//запускаем новые копии игры var isBot = true; for (i = 0; i < botsCount; i++) { //нужно делать паузу перед новым ботом, //чтобы сервер не отклонил слишком частые соединения setTimeout(function(){ game(window, r, isBot, botsUrl, M); }, 500); } //не даем эти копиям рисовать на экране function paint() { if(bot) return; //... }
Так же нужно было дописать код, чтобы при смерти бота, он автоматически начинал новую сессию.
ли со статьей или есть что добавить?