Russian Qt Forum

Программирование => Разработка игр => Тема начата: ann-joker от Март 28, 2012, 10:29



Название: Sea Batle
Отправлено: ann-joker от Март 28, 2012, 10:29
Нужно сделать рабочий Морской бой с "компьютером".

Даже не знаю с чего начать... ???
help


Название: Re: Sea Batle
Отправлено: LisandreL от Март 28, 2012, 10:53
1) Смотрим как же всё-таки пишется название игры на английском
2) Придумываем алгоритм бота.
Например так:
а) учим на основании уже подбитых кораблей и выбитых клеток понимать где корабля точно не может быть
б) придумываем алгоритм поиска целей, то есть клеток когда у нас нет подбитых кораблей.
На выбор:
- случайный выбор
- по некоторой сетке
- ходом коня
Любую из стратегий можно потом усложнить учётом оставшихся кораблей (то есть, если  у нас много клеток выбито, а ещё остались крупные корабли, то они могут быть только в определённых местах), но для начала можно этот момент опустить.
в) учим бота алгоритму добивания цели (то есть, если подбита одна клетка корабля - находить остальные).
3) Реализуем графическое оформление игры.
Тут тоже выбор широк - начиная с использования стандартных виджетов-кнопок с картинками на них (а-ля сапёр) или даже консольного варианта, до трёхмерного варианта на GL'е с анимацией выстрелов, взрывов и т.п. 


Название: Re: Sea Batle
Отправлено: Bepec от Март 28, 2012, 10:56
Почитать Страуструпа/Шелле/ выучить Qt/
1) подумать как будешь делать.
2) взять листок бумаги - измарать, но нарисовать приблизительный вид как хочешь.
3) попытаться наклепать приблизительный вид в дизайнере.(для начала)
4) спросить что лучше использовать для такой (придуманной) реализации.
5) выучить или Model/view или GraphicsScene или иную выбранную технологию
6) нарисовать поле с помощью выбранной технологии
7) прикрутить к полю данные (корабли и прочая)
8) прикрутить к игре бота
9) настроить логику бота
10) сделать клёвую анимацию выстрелов
11) выложить сюда :D


Название: Re: Sea Batle
Отправлено: Пантер от Март 28, 2012, 12:10
А еще чтобы можно было караваны грабить.


Название: Re: Sea Batle
Отправлено: Bepec от Март 28, 2012, 12:11
Блек джек с шлю... с женщинами :D


Название: Re: Sea Batle
Отправлено: mutineer от Март 28, 2012, 12:12
А еще чтобы можно было караваны грабить.
Джва года хочешь?


Название: Re: Sea Batle
Отправлено: Пантер от Март 28, 2012, 12:20
А еще чтобы можно было караваны грабить.
Джва года хочешь?
Ога. :)


Название: Re: Sea Batle
Отправлено: lolbla2 от Март 28, 2012, 16:37
а ещё лучше логику бота сделать на языке типа Prolog и прицепить в виде dll.
P.S. : курс пролога в универе не прошёл даром))


Название: Re: Sea Batle
Отправлено: V1KT0P от Март 28, 2012, 18:46
а ещё лучше логику бота сделать на языке типа Prolog и прицепить в виде dll.
P.S. : курс пролога в универе не прошёл даром))
Нет, лучше логику бота сделать на QScripts, Lua, Python, Ruby, JavaScript и т.д. И прицепить в виде текстовых файлов *.bot. Всяко лучше, особенно простота добавления ботов.


Название: Re: Sea Batle
Отправлено: lolbla2 от Март 29, 2012, 12:34
а ещё лучше логику бота сделать на языке типа Prolog и прицепить в виде dll.
P.S. : курс пролога в универе не прошёл даром))
Нет, лучше логику бота сделать на QScripts, Lua, Python, Ruby, JavaScript и т.д. И прицепить в виде текстовых файлов *.bot. Всяко лучше, особенно простота добавления ботов.

Пролог как раз язык для задач искусственного интеллекта, так что спорно что лучше


Название: Re: Sea Batle
Отправлено: Bepec от Март 29, 2012, 13:06
Простота важнее в этом деле ;)

Я к примеру пролог незнаю, но яву, руби, луа знаю.
Джава/QScripts  понять - час работы. А пролооог... хзчто такое ;)


Название: Re: Sea Batle
Отправлено: lolbla2 от Март 29, 2012, 13:22
Простота важнее в этом деле ;)

Я к примеру пролог незнаю, но яву, руби, луа знаю.
Джава/QScripts  понять - час работы. А пролооог... хзчто такое ;)

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


Название: Re: Sea Batle
Отправлено: Bepec от Март 29, 2012, 13:31
Джава, луа и ява скрипт Си подобны. Чтобы их изучить нужно знать любой Си язык и ты автоматом переходишь в нубо программиста ;)

А вот пролог... хз хз ;)



Название: Re: Sea Batle
Отправлено: Igors от Март 29, 2012, 13:42
Пролог как раз язык для задач искусственного интеллекта, так что спорно что лучше
Народная примета: если оно так громко звучит (типа "искусственный интеллект"") - его лучше обойти


Название: Re: Sea Batle
Отправлено: mutineer от Март 29, 2012, 13:48
Пролог как раз язык для задач искусственного интеллекта, так что спорно что лучше

Пролог - это язык, созданный для того, чтобы определить кот ли Мурзик ;D


Название: Re: Sea Batle
Отправлено: V1KT0P от Март 29, 2012, 13:52
Пролог как раз язык для задач искусственного интеллекта, так что спорно что лучше
Пролог может обучаться? А самосовершенствоваться? Если нет то он не годится для задач искусственного интеллекта.


Название: Re: Sea Batle
Отправлено: Igors от Март 29, 2012, 14:02
Пролог - это язык, созданный для того, чтобы определить кот ли Мурзик ;D
Ага. Я тоже единственное что помню о прологе - что в результате каких-то вумных рассуждений выясняется - Мухтар (елы-палы) собака!