Мое творчество. Игра Шахматный сапёр

Видео, книги, журналы, научные статьи, (по тематике форума), наше творчество
Аватара пользователя
Андрей
Архитектор
Сообщения: 4182
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов
Благодарил (а): 420 раз
Поблагодарили: 272 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей » 10 янв 2019, 14:24

Михаил Киселев писал(а): Все таки попасть на пустое поле тоже не всегда легко.
Вот с этим не согласен. У тебя всего 2 варианта: попасть в битое поле или в пустое. В битое поле - переход хода, если нет - в пустое. В конце, когда все битые поля помечены и осталось много пустых полей нужно ограничить время, чтобы человек думал быстрее, где последняя фигура находится, а не вскрывал пустые поля одно за другим, прибавляя каждым ходом по полному таймеру.
Конец жизни – это начало жизни где-то,
Ничто не появляется из ниоткуда, даже планеты.
И мы летим вперёд, доверившись Божественным вёслам,
Не бойся будущего, не жалей о прошлом.

Аватара пользователя
Андрей
Архитектор
Сообщения: 4182
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов
Благодарил (а): 420 раз
Поблагодарили: 272 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей » 10 янв 2019, 20:51

Михаил Киселев писал(а):Изменил в версии 1.82 строчку условия отгадывания фигуры на

Код: Выделить всё

if fi+sc+ad+failpl > trunc(random((8*o*(o-count))+17)) then
Работает с пятью фигурами гораздо реальней. Я ранее с пятью фигурами почти не играл, и не думал, что кто-то играть увлечется с 5-ю фигурами- всё таки сложновато для большинства. Поэтому и дурацкость алгоритма для 5-ти фигур только сейчас и вылезает.
Тестирую таймер, нифига ничего не угадывает. Полный ужас!
И я такую версию друзьям разослал.
Плеваться будут.

Очень недоволен.
Конец жизни – это начало жизни где-то,
Ничто не появляется из ниоткуда, даже планеты.
И мы летим вперёд, доверившись Божественным вёслам,
Не бойся будущего, не жалей о прошлом.

Михаил Киселев
Сообщения: 371
Зарегистрирован: 22 дек 2017, 13:55
Благодарил (а): 60 раз
Поблагодарили: 34 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Михаил Киселев » 10 янв 2019, 21:08

Андрей писал(а):
Михаил Киселев писал(а):Изменил в версии 1.82 строчку условия отгадывания фигуры на

Код: Выделить всё

if fi+sc+ad+failpl > trunc(random((8*o*(o-count))+17)) then
Тестирую таймер, нифига ничего не угадывает. Полный ужас!
И я такую версию друзьям разослал.
Плеваться будут.

Очень недоволен.
Странно, я много играл с пятью фигурами, при таком условии у меня угадывал довольно часто. Вот четыре и три фигуры, да надо поправить, как я ранее предложил, чтобы комп угадывал очевидные фигуры.

Аватара пользователя
Андрей
Архитектор
Сообщения: 4182
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов
Благодарил (а): 420 раз
Поблагодарили: 272 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей » 10 янв 2019, 21:36

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

И я так понимаю - то, какую фигуру назвал компьютер при угадывании - ты вообще не планировал делать и не сможешь сделать с твоим уровнем знаний? И второй вопрос - есть ли в этом смысл при текущем алгоритме, или не стоит пудрить мозги себе и людям?
Конец жизни – это начало жизни где-то,
Ничто не появляется из ниоткуда, даже планеты.
И мы летим вперёд, доверившись Божественным вёслам,
Не бойся будущего, не жалей о прошлом.

Аватара пользователя
Андрей
Архитектор
Сообщения: 4182
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов
Благодарил (а): 420 раз
Поблагодарили: 272 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей » 10 янв 2019, 21:39

В общем, внёс поправки Михаила и сделал таймер и надписи, как просил HDV. Завтра будем тестировать по сети. Локальный тест успешен.
Конец жизни – это начало жизни где-то,
Ничто не появляется из ниоткуда, даже планеты.
И мы летим вперёд, доверившись Божественным вёслам,
Не бойся будущего, не жалей о прошлом.

Михаил Киселев
Сообщения: 371
Зарегистрирован: 22 дек 2017, 13:55
Благодарил (а): 60 раз
Поблагодарили: 34 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Михаил Киселев » 10 янв 2019, 22:10

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

И я так понимаю - то, какую фигуру назвал компьютер при угадывании - ты вообще не планировал делать и не сможешь сделать с твоим уровнем знаний? И второй вопрос - есть ли в этом смысл при текущем алгоритме, или не стоит пудрить мозги себе и людям?
Да я не планировал делать какую фигуру назвал комп при угадывании.
При текущем алгоритме лучше не заморачиваться над тем какую фигуру хотел угадать комп.
Алгоритм угадывания фигур хорошо бы вообще переписать. Это думаю, посильная, хотя и долго выполняемая задача. Вот только нужно ли это хотя бы тебе. Если очень нужно могу пожалуй начать писать такой алгоритм, а ты потом можешь его улучшить. Но не особо хотелось бы заморачиваться.

з.ы. Ещё несколько раз поиграл в версию 2.11b с 4- мя и 5-ю фигурами. Угадывает в подавляющем большинстве случаев. Правда один раз с пятью фигурами, когда комп уже открыл две фигуры, третью - ферзя не мог отгадать, но опять же, все было не так уж однозачно, что это ферзь, хотя если бы я угадывал выбрал бы ферзя.

Аватара пользователя
Андрей
Архитектор
Сообщения: 4182
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов
Благодарил (а): 420 раз
Поблагодарили: 272 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей » 11 янв 2019, 10:23

Михаил Киселев писал(а): Если очень нужно могу пожалуй начать писать такой алгоритм, а ты потом можешь его улучшить. Но не особо хотелось бы заморачиваться.
Пока я не вернул исходники, можно не писать...

Я вот подумываю о том, чтобы поставить компьютеру полностью честную игру, всё же задача не совсем тривиальная, и поэтому имеет интерес пожалуй. Но теперь со временем у меня не густо.
Конец жизни – это начало жизни где-то,
Ничто не появляется из ниоткуда, даже планеты.
И мы летим вперёд, доверившись Божественным вёслам,
Не бойся будущего, не жалей о прошлом.

Михаил Киселев
Сообщения: 371
Зарегистрирован: 22 дек 2017, 13:55
Благодарил (а): 60 раз
Поблагодарили: 34 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Михаил Киселев » 11 янв 2019, 12:15

Обнаружил, что комп в начале игры может прилипнуть к одной фигуре и долго ее не угадывать.
Лечение условие
(fi+sc+ad>trunc(random(10*(o)+17)))
Меняем на
(fi+sc+ad>trunc(random(15*(o)+17)))
И строку
failpl:=failpl+8;
На
failpl:=failpl+8+2*o;

Аватара пользователя
Андрей
Архитектор
Сообщения: 4182
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов
Благодарил (а): 420 раз
Поблагодарили: 272 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей » 11 янв 2019, 15:16

Михаил Киселев писал(а): Обнаружил, что комп в начале игры может прилипнуть к одной фигуре и долго ее не угадывать.
Вот это у меня точно было! Когда и написал о неугадывании.
Конец жизни – это начало жизни где-то,
Ничто не появляется из ниоткуда, даже планеты.
И мы летим вперёд, доверившись Божественным вёслам,
Не бойся будущего, не жалей о прошлом.

Аватара пользователя
Андрей
Архитектор
Сообщения: 4182
Зарегистрирован: 06 май 2015, 14:10
Откуда: Чехов
Благодарил (а): 420 раз
Поблагодарили: 272 раза

Re: Мое творчество. Игра Шахматный сапёр

Сообщение Андрей » 11 янв 2019, 18:17

Михаил Киселев писал(а):Обнаружил, что комп в начале игры может прилипнуть к одной фигуре и долго ее не угадывать.
Лечение условие
(fi+sc+ad>trunc(random(10*(o)+17)))
Меняем на
(fi+sc+ad>trunc(random(15*(o)+17)))
И строку
failpl:=failpl+8;
На
failpl:=failpl+8+2*o;
Эти изменения не помогли. 3 раза подряд не угадывает Ферзя сразу после правки и компиляции. Понятно, что компу без разницы какую фигуру открывать, т.к. он не анализирует битые ей поля. Если я ошибаюсь - прошу поправить и показать, где в коде анализируются поля, которые бьёт угадываемая фигура.
Конец жизни – это начало жизни где-то,
Ничто не появляется из ниоткуда, даже планеты.
И мы летим вперёд, доверившись Божественным вёслам,
Не бойся будущего, не жалей о прошлом.