Snake Battle
Snake Battle (с англ. — «Змеиные бои») — компьютерная игра, разработанная компанией Gamos, в которой игроки соревнуются в программировании змей. (относится к пока не развитому классу недетерминированных игр, таких как: «Virus II» Сергея Куковякина, «Солдат будущего» (англ. Soldier of the Future) Ивана Гудкова)
Snake Battle | |
---|---|
Разработчик | Gamos |
Издатель | Gamos |
Дата выпуска | 1992 |
Жанр | Игра для программистов |
Технические данные | |
Платформы | MS-DOS |
Ход игры
Игра проходит на квадратном поле, разбитом на клетки. Каждая клетка может быть либо свободна, либо занята головой, туловищем или хвостом змеи. Змея состоит из одной головы, многих клеток туловища и одной клетки хвоста. Змея обязана иметь голову и хвост, чтобы двигаться и только хвост, чтобы считаться живой. Изначально на поле расположено от двух до четырёх змей одинаковой длины.
За каждый такт игры каждая змея совершает один ход: либо остаётся на месте (если это предписано программой змеи либо если змее некуда передвигаться), либо передвигается на одну клетку (эта клетка должна быть пустой), либо съедает одну клетку другой змеи (перемещается на клетку хвоста другой змеи). Передвижение змеи выглядит следующим образом: голова перемещается на пустую клетку, клетка, которая была ранее занята головой, становится туловищем, предпоследняя клетка змеи становится её хвостом, а на месте хвоста остаётся пустая клетка. Когда змея съедает хвост другой змеи, её длина увеличивается на 1 клетку туловища (соответственно, её хвост остаётся неподвижным), а длина съедаемой змеи уменьшается на 1 клетку.
Игра заканчивается при одном из следующих условий:
- когда ни одна змея не имеет хода
- когда осталась только одна змея
- по истечении времени боя
Программирование змеи
Поведение змеи описывается последовательностью карт размером 7х7. На каждой карте изображена голова змеи, шаблон окрестностей её головы и направление движения. Каждый ход движок игры по очереди подставляет каждую из карт, поворачивая её каждым из (трёх) возможных образов, и если шаблон на карте совпадает с окрестностями змеи, то направление поворота карты определяет направление движения змеи.