IPB
ЛогинПароль:

 
 Ответить  Открыть новую тему 
> Сетевая игра
сообщение
Сообщение #1


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


Подскажите какую сетевую игру можно написать на паскале?
Наиболее распространненые игры и попроще в написании
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


mea culpa
*****

Группа: Пользователи
Сообщений: 1 372
Пол: Мужской
Реальное имя: Николай

Репутация: -  24  +


Ну, по-моему, паскалевский аналог "Танчиков" был бы интересен (сетевой). Только вот насчёт сложности его реализации не знаю, на паскале с сетью не работал.


--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Злостный любитель
*****

Группа: Пользователи
Сообщений: 1 755
Пол: Мужской

Репутация: -  62  +


Ну если на простом Паскале...
У меня многие знакомы делали дёшево и сердито.
Соединяли компы в сеть, создавали сетевой диск, который виден с обоих компов. Естественно, паскалевская программа тоже имеет к нему доступ через банальные Assign(F, FileName). Вот и писалась игра таким образом - с обменом данных через сетевой диск.
Правда скорость не очень. Но для пошаговых игр должно хватить. Вот тут правильно заметили про танчики (типа Worms).


--------------------
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


?
***

Группа: Пользователи
Сообщений: 283
Пол: Мужской

Репутация: -  4  +


опита не имею еще в написании игр, но как бы я зделал, допустим игра танчики:
на одном из кампов сделал сервер, а остальные клиенты, клиент отправлял бы свои координаты и сигнал что он тоже хочет поиграть. а сервер в свою очередь всем таким клиентам которые заявились отравлял бы дание через какойнить порт. прада на счет бистроты действие и синхронности незнаю что с этим будет(чесно говоря никогда не пробывал)..
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Если имется в виду BP for DOS, то использовал протокол IPX, при этом, правда, на обеих машинах был не "голый DOS", а DOS-сессия Win9x.
Если же имеется в виду какой-либо 32-разрядный компилятор под Win или Linux, то для динамических игрушек можно посоветовать UDP, а для логических (или походовых) - TCP.

По поводу игр:
Динамическая: какая-либо игра, где тем или иным образом соревнуются/сражаются 2 или несколько игроков. Игровое поле общее для всех и целиком помещается на экран (2D).
Логическая: реализация какой-нибудь классической карточной игры, либо шахмат, шашек, etc.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


А "крестики-нолики" на паскале или делфе есть примеры у кого? smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


?
***

Группа: Пользователи
Сообщений: 283
Пол: Мужской

Репутация: -  4  +


крестики нолике по сети или так на одном кампекампе?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


Компьютер - Компьютер.
С использованием сокетов.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


mea culpa
*****

Группа: Пользователи
Сообщений: 1 372
Пол: Мужской
Реальное имя: Николай

Репутация: -  24  +


Крестики-нолики с полем 3 на 3?


--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

Группа: Пользователи
Сообщений: 48
Пол: Мужской
Реальное имя: Антон

Репутация: -  0  +


Алгоритм для пошаговой очень прост. Во первых соединяемся с помощью assign с сетевым ресурсом.
Запоминаем некий файл game.txt Затем после каждого хода игроков вносим в этот файл необходимые изменения.
На практике это выглядит так:
Есть сетевой ресурс напр. ftp://mygame.net/ .
На ресурсе лежит файл game.gm с неким число.
Пользователь соединяется с файлом game.gm и проводит необходимые операции после чего файл game изменяется в зависемости от введенной информации.
Когда цель игры осуществлена всем игрокам выводится файл с их именами и местами.


Конечно я описал простейший случай но для начала такой способ самый оптимальный.


--------------------
Я бы исправил мир, но Бог не дает мне исходников...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


Цитата(Unconnected @ 7.12.2009 14:06) *

Крестики-нолики с полем 3 на 3?

да, самые обычные крестики-нолики для игры по сети между двумя компьютерами.
Shuruper, мне не нужен доп. сервер. Нужен простой пример данной игры.
Где есть поле 3 на 3. На обоих ПК запускается приложение, пользователи выбирают друг друга и играют.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


mea culpa
*****

Группа: Пользователи
Сообщений: 1 372
Пол: Мужской
Реальное имя: Николай

Репутация: -  24  +


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

Исходники в аттаче(не забудь проверить, установлены ли у тебя TClientSocket и TServerSocket).



--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


Господа, такой вопрос: как сделать, чтобы при потере соединения вылазила ошибка, что соединение потеряно?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Гуру
*****

Группа: Пользователи
Сообщений: 1 168
Пол: Мужской
Реальное имя: Сергей Андрианов

Репутация: -  28  +


Ну, наверное, предусмотреть постоянный периодический обмен пакетами. Если в течение таймаута пакет не пришел, соединение потеряно.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


mea culpa
*****

Группа: Пользователи
Сообщений: 1 372
Пол: Мужской
Реальное имя: Николай

Репутация: -  24  +


В моём варианте достаточно повесить на событие OnDisconnect сокетов вылет окошка с ошибкой.

{доделывать не стал, общался с Анной в ICQ, ей немного другое надо, а точнее целая курсовая}


--------------------
"Знаешь, стыдно - когда не видно, что услышал всё, что слушал.."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #16


Бывалая
***

Группа: Пользователи
Сообщений: 290
Пол: Женский
Реальное имя: Анютка

Репутация: -  7  +


Курсовая пишется уже мной smile.gif Вот на этом пока встала.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 18.04.2024 13:30
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name