Russian Qt Forum
Ноябрь 22, 2024, 23:00
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Программирование
>
Разработка игр
>
Sea Batle
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Sea Batle (Прочитано 15613 раз)
ann-joker
Гость
Sea Batle
«
:
Март 28, 2012, 10:29 »
Нужно сделать рабочий Морской бой с "компьютером".
Даже не знаю с чего начать...
help
Записан
LisandreL
Птица говорун
Offline
Сообщений: 984
Надо улыбаться
Re: Sea Batle
«
Ответ #1 :
Март 28, 2012, 10:53 »
1) Смотрим как же всё-таки пишется название игры на английском
2) Придумываем алгоритм бота.
Например так:
а) учим на основании уже подбитых кораблей и выбитых клеток понимать где корабля точно не может быть
б) придумываем алгоритм поиска целей, то есть клеток когда у нас нет подбитых кораблей.
На выбор:
- случайный выбор
- по некоторой сетке
- ходом коня
Любую из стратегий можно потом усложнить учётом оставшихся кораблей (то есть, если у нас много клеток выбито, а ещё остались крупные корабли, то они могут быть только в определённых местах), но для начала можно этот момент опустить.
в) учим бота алгоритму добивания цели (то есть, если подбита одна клетка корабля - находить остальные).
3) Реализуем графическое оформление игры.
Тут тоже выбор широк - начиная с использования стандартных виджетов-кнопок с картинками на них (а-ля сапёр) или даже консольного варианта, до трёхмерного варианта на GL'е с анимацией выстрелов, взрывов и т.п.
Записан
Bepec
Гость
Re: Sea Batle
«
Ответ #2 :
Март 28, 2012, 10:56 »
Почитать Страуструпа/Шелле/ выучить Qt/
1) подумать как будешь делать.
2) взять листок бумаги - измарать, но нарисовать приблизительный вид как хочешь.
3) попытаться наклепать приблизительный вид в дизайнере.(для начала)
4) спросить что лучше использовать для такой (придуманной) реализации.
5) выучить или Model/view или GraphicsScene или иную выбранную технологию
6) нарисовать поле с помощью выбранной технологии
7) прикрутить к полю данные (корабли и прочая)
прикрутить к игре бота
9) настроить логику бота
10) сделать клёвую анимацию выстрелов
11) выложить сюда
«
Последнее редактирование: Март 28, 2012, 12:07 от Bepec
»
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Sea Batle
«
Ответ #3 :
Март 28, 2012, 12:10 »
А еще чтобы можно было караваны грабить.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
Bepec
Гость
Re: Sea Batle
«
Ответ #4 :
Март 28, 2012, 12:11 »
Блек джек с шлю... с женщинами
Записан
mutineer
Гость
Re: Sea Batle
«
Ответ #5 :
Март 28, 2012, 12:12 »
Цитата: Пантер от Март 28, 2012, 12:10
А еще чтобы можно было караваны грабить.
Джва года хочешь?
Записан
Пантер
Administrator
Джедай : наставник для всех
Offline
Сообщений: 5876
Жаждущий знаний
Re: Sea Batle
«
Ответ #6 :
Март 28, 2012, 12:20 »
Цитата: mutineer от Март 28, 2012, 12:12
Цитата: Пантер от Март 28, 2012, 12:10
А еще чтобы можно было караваны грабить.
Джва года хочешь?
Ога.
Записан
1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
lolbla2
Гость
Re: Sea Batle
«
Ответ #7 :
Март 28, 2012, 16:37 »
а ещё лучше логику бота сделать на языке типа Prolog и прицепить в виде dll.
P.S. : курс пролога в универе не прошёл даром))
Записан
V1KT0P
Гость
Re: Sea Batle
«
Ответ #8 :
Март 28, 2012, 18:46 »
Цитата: lolbla2 от Март 28, 2012, 16:37
а ещё лучше логику бота сделать на языке типа Prolog и прицепить в виде dll.
P.S. : курс пролога в универе не прошёл даром))
Нет, лучше логику бота сделать на QScripts, Lua, Python, Ruby, JavaScript и т.д. И прицепить в виде текстовых файлов *.bot. Всяко лучше, особенно простота добавления ботов.
Записан
lolbla2
Гость
Re: Sea Batle
«
Ответ #9 :
Март 29, 2012, 12:34 »
Цитата: V1KT0P от Март 28, 2012, 18:46
Цитата: lolbla2 от Март 28, 2012, 16:37
а ещё лучше логику бота сделать на языке типа Prolog и прицепить в виде dll.
P.S. : курс пролога в универе не прошёл даром))
Нет, лучше логику бота сделать на QScripts, Lua, Python, Ruby, JavaScript и т.д. И прицепить в виде текстовых файлов *.bot. Всяко лучше, особенно простота добавления ботов.
Пролог как раз язык для задач искусственного интеллекта, так что спорно что лучше
Записан
Bepec
Гость
Re: Sea Batle
«
Ответ #10 :
Март 29, 2012, 13:06 »
Простота важнее в этом деле
Я к примеру пролог незнаю, но яву, руби, луа знаю.
Джава/QScripts понять - час работы. А пролооог... хзчто такое
Записан
lolbla2
Гость
Re: Sea Batle
«
Ответ #11 :
Март 29, 2012, 13:22 »
Цитата: Bepec от Март 29, 2012, 13:06
Простота важнее в этом деле
Я к примеру пролог незнаю, но яву, руби, луа знаю.
Джава/QScripts понять - час работы. А пролооог... хзчто такое
а я не знаю руби, луа, яваскрипт всего малость))
Записан
Bepec
Гость
Re: Sea Batle
«
Ответ #12 :
Март 29, 2012, 13:31 »
Джава, луа и ява скрипт Си подобны. Чтобы их изучить нужно знать любой Си язык и ты автоматом переходишь в нубо программиста
А вот пролог... хз хз
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Sea Batle
«
Ответ #13 :
Март 29, 2012, 13:42 »
Цитата: lolbla2 от Март 29, 2012, 12:34
Пролог как раз язык для задач искусственного интеллекта, так что спорно что лучше
Народная примета: если оно так громко звучит (типа "искусственный интеллект"") - его лучше обойти
Записан
mutineer
Гость
Re: Sea Batle
«
Ответ #14 :
Март 29, 2012, 13:48 »
Цитата: lolbla2 от Март 29, 2012, 12:34
Пролог как раз язык для задач искусственного интеллекта, так что спорно что лучше
Пролог - это язык, созданный для того, чтобы определить кот ли Мурзик
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...