tenhou-python-bot icon indicating copy to clipboard operation
tenhou-python-bot copied to clipboard

Add haitei handling logic

Open bogachev-pa opened this issue 5 years ago • 0 comments

Если мы в бетаори:

  1. Если риичи слева (только): 1.1. Тоймен кидает тайл, который можно взять в пон, то мы его возьмем, если: А. Осталось 1 или 2 взятия и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в пон. Б. Осталось 5 или 6 взятий и у нас есть как минимум 2 генбуцу еще. 1.2. Шимоча кидает тайл, который можно взять в пон, то мы его возьмем, если: А. Осталось 2 взятия и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в пон. Б. Осталось 6 взятий и у нас есть как минимум 2 генбуцу еще. 1.3. Тоймен кидает тайл, который можно взять в кан, мы его возьмем, если: А. Осталось 3 взятия (до кана) и у нас есть как минимум 2 генбуцу помимо тех, что возьмем в кан. 1.4. Шимоча кидает тайл, который можно взять в кан, то мы его возьмем, если: А. Осталось 3 взятия (до кана) и у нас есть как минимум 2 генбуцу помимо тех, что возьмем в кан. 1.5. Наш ход, мы можем объявить кан. Объявляем, если: А. Осталось 3 взятия (до кана) и у нас есть как минимум 2 генбуцу помимо тех, что возьмем в кан.

  2. Если риичи напротив (только): 2.1. Шимоча кидает тайл, который можно взять в пон, то мы его возьмем, если: А. Осталось 1 взятие и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в пон. Б. Осталось 5 взятий и у нас есть как минимум 2 генбуцу еще. 2.2. Шимоча кидает тайл, который можно взять в кан, то мы его возьмем, если: А. Осталось 2 взятия (до кана) и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в кан.

  3. Если риичи напротив и риичи слева: 3.1. Тоймен кидает тайл, который можно взять в пон, то мы его возьмем, если: А. Осталось 1 взятие и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в пон. 3.2. Шимоча кидает тайл, который можно взять в пон, то мы его возьмем, если: А. Осталось 1 взятие и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в пон. Б. Осталось 5 взятий и у нас есть как минимум 2 генбуцу еще. 3.2. Шимоча кидает тайл, который можно взять в кан, то мы его возьмем, если: А. Осталось 2 взятия (до кана) и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в кан. 3.3. Наш ход, мы можем объявить кан. Объявляем, если: А. Осталось 2 взятия (до кана) и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в кан.

  4. Риичи справа и неважно, есть риичи напротив или слева. 4.1. Наш ход, мы можем объявить кан. Объявляем, если: А. Осталось 1 взятие (до кана) и у нас есть как минимум 1 генбуцу помимо тех, что возьмем в кан.

В идеале потом учесть во всем этом, выгодно нам цумо ричующего или нет. Учтем следующим образом: Условие: 3 или 4 юг, наш главный конкурент - дилер. Ричует не дилер. У нас больше 4000 очков. В этом случае не сдвигаем хайтей и не отнимаем взятия.

bogachev-pa avatar Aug 28 '18 14:08 bogachev-pa