Модераторы: Rickert

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Алгоритм игры Футбол на листочке, помогите придумать 
:(
    Опции темы
RinOSpro
Дата 26.10.2007, 14:04 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Кто еще не забыл школьные или студенческие годы вероятно помнят такую игру: Футбол на листочке. Я задумал написать эту игру. Вот только проблема не могу представить как это все реализовать. Подскажите с алгоримом, как можно это сделать.

Правила игры такие (хотя возможны вариации)

Поле 10 клеточек на 10 + ворота. см. рис. поля. Цель довести линию до ворот соперника, Начинают ход с центральной точки. Ходить можно во всех направлениях где еще не ходили см. рис. ходы. Можно Отскакивать от стен и от точек ходов см. рис. отскоки. Играют 2 игрока. Каждый стремиться таким образом довести линию до ворот противника. Тот кто умышленно или случайно попадает в тупик тот проиграл. Тупик - это ситуация при которой ход не возможен из за того что вокруг уже линии см. рис. тупик

Вот рисунки

Это сообщение отредактировал(а) RinOSpro - 26.10.2007, 14:08

Присоединённый файл ( Кол-во скачиваний: 107 )
Присоединённый файл  pole.gif 1,52 Kb
  Вверх
RinOSpro
Дата 26.10.2007, 14:09 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вот еще

Присоединённый файл ( Кол-во скачиваний: 97 )
Присоединённый файл  hodi.gif 1,66 Kb
  Вверх
RinOSpro
Дата 26.10.2007, 14:09 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Вот еще


Присоединённый файл ( Кол-во скачиваний: 84 )
Присоединённый файл  otskok.gif 2,53 Kb
  Вверх
RinOSpro
Дата 26.10.2007, 14:09 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











вот еще

Присоединённый файл ( Кол-во скачиваний: 80 )
Присоединённый файл  tupik.gif 3,20 Kb
  Вверх
Mazzi
Дата 26.10.2007, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 4
Всего: 21



Готов тебе помочь. smile

Сначала давай определимся на чём будем писать.

Я предлагаю на С++ с использованием QT4.

Теперь об алгоритме. Сначала нужно задать двумерный массив каждый элемент которого соответствует пересечению линий поля. Содержимое элемента должно однозначно определять проходила ли линия через неё или нет, и если проходила , то какого цвета. Затем у нас должен быть так называемый курсор, который содержит координаты текущей точки и текущий цвет чернил. В вышеописанный в самом начале массив-поле записываются проделанные ходы.
После каждого изменения положения курсора программа проверяет не наступило ли одно из событий - гол 1-му игроку, гол 2-му игроку, тупик.

Выполнение программы:
1) Инициализация (очистка поля и т.д.)
2) Отрисовка поля
3) Ход игрока
4) Если игра не закончена перейти к п2.
5) Показать победителя
6)если хотим играть ещё, то перейти к п1.
7) покинуть программу.

Пиши, вместе мы её осилим!


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
RinOSpro
Дата 26.10.2007, 19:12 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Mazzi - ты играл в эту игру? Правда очень интересная, стратегическая, мы по ней даже чемпионаты устраивали.
Цитата(Mazzi @  26.10.2007,  15:38 Найти цитируемый пост)
Сначала давай определимся на чём будем писать

Я больше в delphi пишу, но соглашусь с тобой что игры обычно пишуться на С++, только вопрос что такое QT4.

Вот еще размер массива, сколько на сколько? И как представить в массиве косые линии \   / ?
  Вверх
Ryoga
Дата 26.10.2007, 20:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 262
Регистрация: 20.9.2005

Репутация: 3
Всего: 6



Товарищи, тут где-то в теме была эта игра (или похожая), уж не помню с исходниками или нет - посмотрите...
PM MAIL   Вверх
RinOSpro
Дата 27.10.2007, 13:03 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Ryoga  если ты про это http://forum.vingrad.ru/topic-149470.html то это не то
  Вверх
Ryoga
Дата 27.10.2007, 14:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 262
Регистрация: 20.9.2005

Репутация: 3
Всего: 6



нет, вот ссылка... http://forum.vingrad.ru/forum/topic-147045...игра-basic.html
Правда, автор так и не ответил...
PM MAIL   Вверх
RinOSpro
Дата 28.10.2007, 12:36 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Посмотрел оставил свое мнение. 
  Вверх
Mazzi
Дата 31.10.2007, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 4
Всего: 21



QT4 - это мультиплатформенная библилтека позволяющая компилировать программу под несколькими операционками. Разработана фирмой тролльтеч   http://www.trolltech.com/ 
Бесплатная для использования. Сильно облегчает жизнь программисту. Скачать можно с сайта.

В ней есть работа с графикой, со звуком, и прочее. Поддерживает OpenGL. Генерирует очень компактный и быстрый код.

Весьма рекомендую.

>> Вот еще размер массива, сколько на сколько? И как представить в массиве косые линии \   / ?

Я думаю что размер массива должен соответствовать размерам поля. А как иначе?
А косые линии хранить не нужно, нужно хранить точки через которые проходит линия, и цвет линии.


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
RinOSpro
Дата 30.4.2008, 10:55 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











В общем что то накатал на delphi но попал в тупик... может я не прfвильно выбрал размер массива. Как вообще представить это поле... Помогите плиз
вот исходники:


Присоединённый файл ( Кол-во скачиваний: 27 )
Присоединённый файл  Football.rar 11,20 Kb
  Вверх
ksnk
Дата 15.5.2008, 17:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 2
Всего: 386



Чего-то взялся игру писать ;-) smile  В качестве тестовой платформы взял JavaScript, чтобы алгоритм отладить. В последствии предполагалось перетащить расчетную часть на сервер или даже в cgi... Алгоритм - простейший полный перебор на X (сейчас 6) ходов. "Стоимость позиции" - близость мяча к воротам - от 0 до 1100 (с шагом 100). 

Лучше смотреть на FireFox или Opera, так как при таком переборе на моей машине "Genuine Intel [email protected] 1,50ГБ", просчет хода длится несколько секунд - успевает возникнуть окошко " Чего-то долго выполняется скрипт...".

Хочется, чтобы народ сказал - правила игры я правильно понял или чего-то не догнал? 

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

http://ksnk.dpb.ru/football

Добавлено через 5 минут и 56 секунд
О! Совсем забыл. Кнопка X в панельке управления - расчитать свой собственный ход. Чекбокс, если отмечен, второй ход бедет делаться автоматически. И начинают игру красные... smile


--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
DeMoNN
Дата 7.7.2008, 14:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 179
Регистрация: 21.3.2008

Репутация: 1
Всего: 2



Попал в тупик и игра зависла(
PM MAIL ICQ   Вверх
Mazzi
Дата 7.7.2008, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Правильный
**


Профиль
Группа: Комодератор
Сообщений: 825
Регистрация: 3.4.2003

Репутация: 4
Всего: 21



ksnk,  круто сделал!


--------------------
Мне нужны помощники.
PM MAIL WWW   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование игр, графики и искуственного интеллекта"
Rickert

НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.

  • Литературу, связанную с программированием графики, обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы связанные с программированием графики и мультимедии на языках С++ и Delphi
  • Вопросы по реализации алгоритмов рассматриваются здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема »


 




[ Время генерации скрипта: 0.0517 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.