11

Telegram-bot-игра "Ним"

Решил на досуге поизучать что-нибудь новое и попробовать написать небольшую игру в телеграме. Оно конечно понятно, что оно нафиг никому не сдалось, но если случится чудо и кто-то захочет немного поиграть/потестировать - буду очень благодарен.

Игру-бота можно найти по ссылке https://telegram.me/nim_game_bot

или поиском по слову nim_game_bot


Ним - это довольно простая математическая конечная игра с полной информацией. Т.е. если знать правильную стратегию и очень хорошо уметь считать в уме то можно всегда выигрывать (при условии что повезло с выпавшими изначально числами).


Игра заключается в том что перед вами три кучки монет. За ход можно взять любое количество монет из одной кучки. Пропускать ход нельзя. Брать монеты больше, чем из одной кучки нельзя. Тот кто должен будет взять последнюю монету - проиграл.


В боте три кучки монет представлены тремя числами, записанными через пробел. Т.е. во время своего хода нужно уменьшить одно из чисел на произвольное количество единиц.


Чтобы дать шанс жалким людишкам, бот примерно в 50% случаев тупит, так что обыграть его более чем реально.


UPDATE: я неправильно правила прочитал =) Наоборот нужно взять последнюю монету чтобы победить. Уже исправил)))

1
Автор поста оценил этот комментарий

Некто Ivan спросил через приложения где у меня сервер. В приложении я забыл сделать возможность отвечать на вопросы пользователей =) отвечу здесь. В качестве сервера используется c9.io, довольно удобно, там предоставляется сколько угодно бесплатных виртуальных машинок с ubuntu. Не очень мощно, зато бесплатно)))

1
Автор поста оценил этот комментарий
Ну наконец хоть Telegram использую)
раскрыть ветку (1)
1
Автор поста оценил этот комментарий

Телеграм и без ботов штука хорошая)

0
Автор поста оценил этот комментарий

если сделать 2 3 1 он в 100 % проигрывает

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ну что запускать на 100% мощщи искуственного интеллекта? Кроме тебя все равно никто не играет)))

показать ответы
0
Автор поста оценил этот комментарий

если сделать 2 3 1 он в 100 % проигрывает

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ну да: 2 xor 3 xor 1 = 0, так что тут без вариантов )))

0
Автор поста оценил этот комментарий

сделай по сильнее, а то больно легкий, а так интересная игра мне понравилась

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

На сколько процентов? сейчас 50% на 50%. На все сто делать?

показать ответы
0
DELETED
Автор поста оценил этот комментарий

Скажите, а что у вас делает бот когда не может осуществить правильный ход?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

ходит случайным образом. Выбирает случайно первое, второе или третье число и уменьшает его на случайное количество единиц.

0
Автор поста оценил этот комментарий

Вернул 50% вероятность ошибки у бота. Или сделать как было?

показать ответы
0
Автор поста оценил этот комментарий

Теперь походу надо опять отуплять бота. Никто выиграть не может)))

0
Автор поста оценил этот комментарий

Перезапускаю теперь все по правилам. Т.е. НАОБОРОТ нужно взять последнюю монету. Т.е. кто сделал ход 0 0 0 тот и победил.

0
Автор поста оценил этот комментарий

Я понял где косяк))) Я неправильно правила прочитал)))

0
DELETED
Автор поста оценил этот комментарий

этот факт что кто последний тот проиграл игру СИЛЬНО тривиализирует

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Вы полностью правы))) Вот это я затупил)))

0
DELETED
Автор поста оценил этот комментарий

The goal of the game is to be the player to remove the last object.

khm, мобыть в этом проблема? :)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

В принципе, получается с точностью до наоборот, так что не суть. Я просто с основным алгоритмом немного натупил)))

показать ответы
0
DELETED
Автор поста оценил этот комментарий

а, кажется понял :)

или нет, блин, где-то можно почитать математику этой игры? :)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

математика довольно простая: https://ru.wikipedia.org/wiki/%D0%9D%D0%B8%D0%BC_(%D0%B8%D0%B3%D1%80%D0%B0)

0
DELETED
Автор поста оценил этот комментарий

а, кажется понял :)

или нет, блин, где-то можно почитать математику этой игры? :)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

а я, кажется, действительно натупил с алгоритмом))) попробую исправить))

0
DELETED
Автор поста оценил этот комментарий

а какая разница?

я:     0 2 3


бот:  0 0 3

я:     0 0 1 игра


бот: 0 1 3

я:    0 1 0 игра


бот: 0 2 2

я:    0 1 2 (ну или 0 2 1, я уже разбирал этот вариант)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

ну например вы 0 2 3

бот 0 2 2 и теоретически может выиграть, не?


Или я чего с алгоритмом напутал? Я мог))) Что совсем ни разу не выиграл бот?

0
Автор поста оценил этот комментарий

Перезапустил бота, надеюсь ни у кого не заглучило))

0
DELETED
Автор поста оценил этот комментарий

Ну а какая разница. "0 2 2" или "0 46346346 346346346"?

Ведь можно отнять за ход сколько угодно... Я не понимаю.

А "0 2 2" - гарантированно после первого хода будет (ну вы понимаете что "0 2 2" это "метафора")

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ну не всегда же есть два одинаковых числа, чтобы третье обнулить?

показать ответы
0
Автор поста оценил этот комментарий

Надо делать умнее, я ни разу не проиграл из 5, когда первым шагом занулял 1 число, при этом должен был проиграть из-за своей ошибки 4 раза из 5 :)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Ок)) Сейчас перезапущу процентов на 90%))

0
Автор поста оценил этот комментарий

Хотел даже ради этого телеграм скачать, протестить, но чёт не нашел его в апсторе. Куда он пропал?

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Действительно куда-то пропал =) Но есть десктоп и веб версии)) Тут уж я ничем помочь не могу)

0
Автор поста оценил этот комментарий

дважды бот затупил, когда уже должен был гарантированно выиграть (если привел оппонента к 0-2-2 и его ходу, он проиграл). Но за труды плюс :)

Иллюстрация к комментарию
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

В 50% случаев бот специально люто тупит. Мне показалось что нужно дать людям шанс =) Может поумнее его сделать?))

показать ответы
0
DELETED
Автор поста оценил этот комментарий

Поясните пожалуйста как числа влияют на это? ну скажем 2 2 2 - самый простой вариант.

я:    0 2 2

бот: 0 1 2 или 0 2 1 (варианты 0 0 2 или 0 2 0 ведут к поражению сразу)

я:    0 1 0 или 0 0 1


поясните как это можно изменить хоть число будет 400 хоть 2346546546. Я могу сразу сделать 0.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

0 2 2 после вашего хода - это уже выигрышная позиция, у бота уже нет шансов. Большинство раскладов действительно можно свести к выигрышной позиции. Может я слишком сильно ослабил бота? Ему хоть раз удалось выиграть? Может поумнее его настроить? =)

показать ответы
1
DELETED
Автор поста оценил этот комментарий

прикольно :) спасибо :)

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

На здоровье) Если будут какие-то глюки - пишите)

показать ответы
0
Автор поста оценил этот комментарий

давай

раскрыть ветку (1)
Автор поста оценил этот комментарий

перезапустил на 99%,

до этого сегодня было70%

0
DELETED
Автор поста оценил этот комментарий

а тут вообще кто второй ходит может выиграть? какая разница какие числа-то?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Да, выиграть можно. Все зависит от того какие именно числа выпали в начале. Плюс бот примерно в половине случаев специально тупит, после его ошибки опять же появляется шанс выиграть.

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества