Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

программирование логических игр [Delphi, Windows]


Страницы:   1 2 3

Toljan ©   (2005-05-29 11:26:00) 

Хочу узнать на каком математическом принципе строятся логические игры (не важно какие). По "голым" исходникам разобраться не реально. Подскажите кто что знает.


Misha1   (2006-11-19 13:30:00) [1]

Помогите пожаилуста с игрой "найди 2 одинаковые картинки" на Delphi.у меня поле где картинки отдельно друг от друга,как мне их выводить каждый раз по разному чтоб они на своем месте стояли


Ангелина   (2006-03-20 09:59:00) [2]

Люди помогите найти игру ханойские башни на macromedia flesh mx. пишите на mail(macaroshka@mail.ru)


Toljan   (2006-02-01 21:21:00) [3]

У кого есть нормальный исходник с ClientSocket и Serversocket? У меня что то глюки не детские вылетают на ServerSocket когда пытаюсь отправить простой командой клиенту сообщение ServerSocket1.Connections[0].SendText.


Toljan   (2006-01-28 14:58:00) [4]

А "теория игр" к компьютерным играм имеет только поверхностное отношение. Это раздел из теории вероятностей.


Toljan   (2006-01-28 14:56:00) [5]

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


Kolan   (2006-01-28 00:32:00) [6]

Toljan   (02.06.05 08:34) [6]

Подробнее... Как, например, написать гамесу "шашки" с нуля, или "шахматы", или "домино", чтобы программа расчитывала ответные ходы? На каком принципе строятся такие игры?


"Теория игр" называется


Shastox   (2006-01-24 18:20:00) [7]


> Видимо ты мало играл в шахматы. Иногда выгоднее отдать сильную
> фигуру, чтобы получить тактически выгодное положение остальных
> фигур на поле. В этом и сложность шахмат, относительно других
> игр. Нет однозначности в оценке.

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


П7   (2006-01-24 01:32:00) [8]


> Toljan ©   (23.01.06 22:27) [40]

Конечно делай. Будет прикольно поглядеть, как это будет работать. (:
Или скажем кубики, у которых по 2 одинаковые стороны. Скажем 6, 4, 2 и 5, 3, 1. (:


> Shastox ©   (23.01.06 23:44) [41]

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


Shastox   (2006-01-23 23:44:00) [9]


> Угу. Только критерии оценки "наиболее удачной комбинации"
> в шахматах программируются сложнее.

А помоему это не очень сложно и в шашках и в шахматах: просчитал ПК, например, на пять ходов вперед, перебрал все варианты, выбрал тот, при котором у него больше и лучше фигуры остались, а у противника наоборот.


Toljan   (2006-01-23 22:27:00) [10]

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


Toljan   (2006-01-23 22:23:00) [11]

А что будет, если я у кубиков сделаю все грани одинаковой силы, т.е. если кубик показывает "5", то так будет постоянно, как его не вертеть на доске. То же самое и с "2"-ми и "1"-ми и "6"-ми.


П7   (2006-01-23 12:16:00) [12]


> Shastox ©   (23.01.06 11:21) [37]

Угу. Только критерии оценки "наиболее удачной комбинации" в шахматах программируются сложнее.


Shastox   (2006-01-23 11:21:00) [13]


> Конечно, если делать просчёт лишь текущего хода, то шашки
> может и сложнее.. (:

Зачемтолько текущего?
Например я играю с ПК. Ход пк: перебирает все ходы (возможные), далее на каждый свой-перебирает все мои и.т.д. Потом выбирает наиболее удачную комбинацию.


П7   (2006-01-23 02:44:00) [14]


> Shastox ©   (23.01.06 00:41) [35]

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


Shastox   (2006-01-23 00:41:00) [15]


> фигура ВСЕГДА переместится на клетку, на которой ещё не
> была?

Чего?.. Это я такое сказал? Я имел ввиду, что алгоритм просчитывает все передвижения того слона и выбирает лучшее.

> И рекурсия не зациклится?

Правильная рекурсия и в шашках не зациклится.

> В шахматных алгоритмах сложна тактика расстановки фигур.

Это не понял.


П7   (2006-01-23 00:24:00) [16]


> Shastox ©   (23.01.06 00:11) [33]

Т.е. ты хочешь меня убедить в том, что когда просчитываешь ходы в шахматах, то фигура ВСЕГДА переместится на клетку, на которой ещё не была? И рекурсия не зациклится? Нуну...
В шахматных алгоритмах сложна тактика расстановки фигур.


Shastox   (2006-01-23 00:11:00) [17]

Разветвление для шашек (например):
ПК должен совершить ход, он может начать есть с одной из двух шашек, съедает одну (можно съесть еще одну) он есть ее и еще одну, если ПК изначально выбрал другую шашку, он пойдет по другому маршруту, которые могут пересекаться. Из-за этих пересеканий маршрутов может появиться зациклинность в рекусрсии.
т.е я хочу сказать в шахматах, например, берем ход слона и начинаем в четырех направляниях тупо перебирать ходы, допустим в данный момент проверяется клетка справа и выше: есть там фишка опоннента-встаем туда, нет фишки - тоже встаем туда, проверяем теперь ход другого игрока. В шашках же мы перескакиваем через фишку противника, а там еще может можно есть, то есть просто ход вверх и вправо может превратиться в сложную цепочку передвижений.
Единственное в шашках легче то, что есть всего два наименования: просто шашка и дамка.

Наверно не очень понятно объяснил свои мысли...


П7   (2006-01-22 23:40:00) [18]


> Shastox ©   (22.01.06 23:27) [31]

Что ты имеешь в виду под разветвлением?


Shastox   (2006-01-22 23:27:00) [19]


> И механика и алгоритм ИИ для шахмат программируется гораздо
> сложнее, чем для шашек

Нет. В шахматах все ходы линейны: берешь фигуру, перебираешь все ее ходы с учетом "статуса" этой фигуры и т.д.
В шашках: несколько вариаций правил (это не считаем) + оф. разветвление.
Это развтевление НАМНОГО сложнее чем простой перебор ходов для шахмат.


П7   (2006-01-22 21:01:00) [20]


> Shastox ©   (22.01.06 18:56) [29]

И механика и алгоритм ИИ для шахмат программируется гораздо сложнее, чем для шашек.


> Toljan ©   (22.01.06 08:51) [26]

Недавно выиграл на среднем". Блин, кнопка "Отменить ход" рулит!
А можно как-то партию в файл записывать? Чтобы потом свои победы можно было прокрутить ещё разок... (:


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо