forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   2D-программирование (http://forum.boolean.name/forumdisplay.php?f=13)
-   -   TCP/IP,UDP (http://forum.boolean.name/showthread.php?t=328)

Lexa 16.11.2005 03:09

Скажите как на одной машине проверить работоспосоность, например гамы?
Какой протокол лучше использовать для игры (танчики)?
Что такое DirectPlay?

Жека 16.11.2005 19:24

Если проверяешь сеть на одном компе, то при подключении к серваку пишешь IP-адрес 127.0.0.1

Я работал только с DirectPlay - по мне, так это набор функций для работы с сетью.

Пример:
Код:

gamename$ = "super_tanks"
serverIP$ = "127.0.0.1"

Text 10,10, "Создаём сервер..."
Flip

newGame = HostNetGame (gamename$)
If (newGame <> 2)
 newGame = JoinNetGame (gamename$,serverIP$)
 If (newGame <> 1)
 RuntimeError ("Сеть не работает!")
 End
 Endif
EndIf

Если игра с именем gamename$ ещё НЕ была запущена, то будет создан сервер с этим именем, и в переменной newGame будет значение 2(два). Если игра с этим именем запущена, то пробуем подключиться к ней. Если подключились, то в newGame будет значение 1(одЫн).

Потом создаёшь сетевых игроков, пишешь функции приёма/отправки сообщений по сети. Тут пригодится переменная newGame: если она равна 2, то этот игрок - сервер, если 1, то клиент.

Lexa 19.11.2005 18:15

Ну лана запустить у меня на одной машине удалось.

А что такое DirectPlay?

:rolleyes:

jimon 19.11.2005 21:19

directplay ето библеотека из комплекса directx
предназначена для работы по сети
оптимизирована для игровых приложений

Lexa 10.04.2006 16:19

Я видел либу по сетям у кого и где не помню. МОжет кто подскажет, где её мона найти? :SOS:

impersonalis 10.04.2006 18:44

Честно говоря, вопрос абстрактный.
конкретизируй.

Lexa 11.04.2006 01:30

Я имел в виду. кто как и чем пользовался?
Зачем изобретать инет если он есть.
Я кстати нашёл пару примеров по работе с сетью.
Так что в принципе вопрос закрыт. :rolleyes:

impersonalis 11.04.2006 14:43

Я ДиректПлэй юзаю.

Lexa 11.04.2006 15:46

Хорошо продолжаю тему.
Чем отлчаются CreateTCPServer от AcceptTCPStream.
Точнее вопрос в другом. вырезка из хелпа
Цитата:

Creates a TCP/IP server with the designated port. Use this for communications between other clients and the local box. See OpenTCPStream, CloseTCPServer, and CloseTCPStream for more information.
меня смутило "other clients and the local box" как это понимать?
==========================================
Цитата:

Originally posted by impersonalis@11.4.2006, 12:43
Я ДиректПлэй юзаю.

Какие приемущества? Пожалуста по подробней разкажи про + и -.

impersonalis 11.04.2006 16:36

Как и в любой надстройке :
плюсы - ты абстрагирован от нижнего уровня организации протокола
минусы - если всё же возникнет необходимость докопаться до этого уровня - то это будет не самое тривиальное или рациональное решение.

Баланс - вариативность/простота_юзания как всегда.

имхо.

Lexa 11.04.2006 18:18

А есть какой нить пример с DirectPlay? поделитесь. :SOS:

Я тут кое что нашёл http://www.blitzcoder.com/blitzplay/

ZanoZa 23.04.2006 21:22

Да, хотелось бы посмотреть.
А то я чё-то не доганяю по работе в сети в blitz.

alcoSHoLiK 23.04.2006 22:28

В справке все расписано с примерами.

Conan Fedr 30.04.2006 03:02

Имхо для игр что юзать я незнаю =) но сам люблю TCP , писал на блитзе IRC бота =) решил перенести на плюсяру ну так и неразобрался с вин интерфейсом так что он типа консоли =)

tormoz 30.04.2006 04:47

Для рпг-подобных с низкой динамикой - TCP
Для динамичных (шуттер) - только UDP
во первых он в разы быстрей, не вешает систему при ошибках (чем грешит TCP) , позволяет получать список запущенных серверов.


Часовой пояс GMT +4, время: 04:24.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot