.dev | Cards

Поскольку томными вечерами сейчас заниматься особо нечем, я с бумажкой и ручкой выдрочил алгоритм игры в карты (конкретно в Дурачка, но смысловая составляющая будет применима к практически любой карточной игре). Как результат, код для AI игры пишется за час с хвостиком и уместился в примерно 250 строк.

Основные постулаты:

  • Кажой карте присваивается определённый «вес», скажем от 0.01 до 1.00
  • Специальным картам (например козырям) к весу прибавляется 1.00, в принципе если играть в дурачка с сменным козырем, то можно к сменной масти прибавлять какой-то постепенно увеличивающийся «вес».
  • Игра AI делится на атаки и защиту
    • Атака
      • Цель №1 — повысить свой «средний вес» карт
      • Цель №2 — понизить «средний вес» карт противника
      • Лучший ход, соответственно, будет тот, который наиболее близко совпадает с моими целями
    • Защита
      • Цель №1 — удержать свой «средний вес» как можно выше (то бишь тут сразу ясно что порой выгодно «брать», вместо того, чтобы биться)
      • Цель №2 — сбить «средний вес» карт противника «выманивая» тяжёлые карты (ведь AI знает, что противник получит из колоды)
      • Стратегия элементарно расчитывается методом нехитрого перебора вариантов

Вот, собственно, и всё! Осталось сделать кучку опций и продумать интерфейс. В будущем меня, правда, ждёт более сложный момент изучения графического API iPhone, но это должно быть интересно!

Jun. 07, 2009 // 12:54 | Комментарии (0)


.apple

Вот-вот богодельня Apple объявит новые нямочки. Лично мне ничего не нужно, кроме встроенного UTMS модема в буки. Остальное неинтересно: iPhone итак совершенно во всём устраивает (а уж тем паче с прошивкой 3.0); к прочему железу вообще никаких предъяв нет; да и новая OS вообще-то совершенно не нужна, итак всё «лучше некуда».

Я в чём-то идеалист, и мне не нравится, когда из компа «торчит» USB стик модема. Мне не нравится, что для работы с ним нужно запускать какой-то там “connection manager”, я хочу чтобы всё это было встроено и работало само — достаточно вставить симку. Пределом мечтаний, конечно, будет если бук будет автоматически находить лучшую точку соединения и использовать её (как это сейчас делает iPhone). Вижу за этим будущее.

Jun. 07, 2009 // 15:00 | Комментарии (1)