Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 05.09.2008, 00:12   #1
klopmaks
ПроЭктировщик
 
Аватар для klopmaks
 
Регистрация: 22.12.2006
Сообщений: 182
Написано 2 полезных сообщений
(для 2 пользователей)
MMO??? Что и как ? O_o

Может быть ктото подкинет простой сетевой игры...
С сервером простеньким чтобы только передвижение просчитывало и клиентом.
Типа кубы ходят по плейну. Или просто какую нибуть инфу о работе блица с сервером.
Или может просто пример игры по локальной сети.
Простенький пример.
Или может уроки какие нибуть, статьи на эту тему.
Заранее благодарен всем.

А теперь короткое ЧаВо по моему посту:
1. Да я нуб который ничего не умеет
2. ДА я уже начал делать мморпг
3. Прошу свои "умные" посты постить в другой теме , не здесь

Спасибо за внимание.
(Offline)
 
Ответить с цитированием
Старый 05.09.2008, 01:07   #2
ABTOMAT
Ференька
 
Аватар для ABTOMAT
 
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,741
Написано 5,461 полезных сообщений
(для 15,675 пользователей)
Ответ: MMO??? Что и как ? O_o

Фак Ю! (FAQ)
http://forum.boolean.name/showthread.php?t=4775
http://forum.boolean.name/showthread.php?t=4760

Спасибо Тадеусу за статьи. (Жаль что мало кто их читает или даже ищет) Это имхо базовые знания которые нужны для создания сетевой игры разумеется. Не ММО, разумеется, для этого нужен вагон терпения и опыт.

Кроме того обрати внимание что должна быть сервер-клиентная архитектура игры, то есть всё, что обрабатывает игровую логику, физику, коллизии - должно быть собрано вчётко в одном месте, а то, что обрабатывает инпут, вывод и необязательную физику, которая на игры влияния не оказывает (колыхание травы, например) - в другом месте, чтобы когда будет написана основа разделить уже это всё на непосредственно сервер и клиент.
Кроме того всё надо обязательно стандартизировать, никаких глобальных переменных для игрока, оружия и т.п. т.к. это делает невозможным добавление и обработку новых игроков.

Передачу данных свести к минимуму. Не передавать строки кроме случаев, где по-иному никак и ни в коем случае не в цикле (имя игрока один раз при коннекте). Продумай, шо будеш делать если пинг от юзера (или сервера) слишком велик. Например, ЕСЛИ всё ещё нет пинга И игрок бежал ТОГДА продолжить заставлять персонажа бежать дальше пока ситуация с пингом не изменится ИНАЧЕ если есть пинг - делать шо "скажет" клиент, если нету пинга то ничего не делать.

На Блитзетцетере ищи урок "Делаем чат" где собсно есть простейшая сервер-клиентная прога, ну, конечно, в игре всё в разы сложнее.
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**

* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена

(Offline)
 
Ответить с цитированием
Старый 05.09.2008, 01:09   #3
ffinder
Дэвелопер
 
Аватар для ffinder
 
Регистрация: 10.09.2007
Сообщений: 1,442
Написано 793 полезных сообщений
(для 1,460 пользователей)
Ответ: MMO??? Что и как ? O_o

иногда человек так задает вопрос что невозможно ему ответить...
по пунктам:
1. не путай онлайн и ММО (отличие в слове "массивная")
2. на Блице никто в здравом уме сервер писать не станет.
3. тебе надо будет написать И клиент, И сервер.
4. уроки и статьи находятся на http://blitzetc.blitzmax.ru/index.ph...B9%D1%82%D0%B8
5. вот еще по русски: http://gamedev.ru/articles/?sect=8 (заметь я потратил на поиск ровно 1 минуту)
(Offline)
 
Ответить с цитированием
Старый 05.09.2008, 01:47   #4
MiXaeL
Бывалый
 
Аватар для MiXaeL
 
Регистрация: 22.08.2006
Сообщений: 700
Написано 146 полезных сообщений
(для 267 пользователей)
Ответ: MMO??? Что и как ? O_o

Тебе оно надо?
Вообще-то сначала я собирался делать MMORPG, но умные люди сказали: "убей сибя, пешы арканоед"
(Offline)
 
Ответить с цитированием
Старый 05.09.2008, 01:56   #5
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Ответ: MMO??? Что и как ? O_o

Немог пройти мимо такой темы и решил ответить конкретно на поставленый вопрос:
> MMO??? Что и как ? O_o

Модно, круто, прибыльно и долго, дорого, нереально малыми силами. Ж)
__________________
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо SBJoker за это полезное сообщение:
ABTOMAT (05.09.2008), HolyDel (05.09.2008), impersonalis (05.09.2008), Randomize (28.03.2010)
Старый 06.09.2008, 16:36   #6
Антихрист
Разработчик
 
Регистрация: 20.01.2007
Сообщений: 485
Написано 182 полезных сообщений
(для 412 пользователей)
Ответ: MMO??? Что и как ? O_o

Для начало Изучи всё о пакетах(прием отправка) посмотри примеры с udp соединением(Tcp не покатит на онлаин игру-это будет слаидшоу)
(Offline)
 
Ответить с цитированием
Старый 06.09.2008, 16:59   #7
jimon
 
Сообщений: n/a
Ответ: MMO??? Что и как ? O_o

Антихрист
это вопрос кривизны рук, а не отличий технологий tcp и udp
 
Ответить с цитированием
Старый 06.09.2008, 17:10   #8
Tadeus
Троллота
 
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений
(для 1,772 пользователей)
Ответ: MMO??? Что и как ? O_o

2Антихрист О, чудо! Как же тогда работают современные ММОРПГ на тсп? :D
(Offline)
 
Ответить с цитированием
Старый 06.09.2008, 17:11   #9
Антихрист
Разработчик
 
Регистрация: 20.01.2007
Сообщений: 485
Написано 182 полезных сообщений
(для 412 пользователей)
тогда добавлю имхо tcp не покатит.Тем более если он(а) в этом нечего не понимает

Современные игры делают на BLitz? :D без библ?

Последний раз редактировалось jimon, 06.09.2008 в 17:19.
(Offline)
 
Ответить с цитированием
Старый 06.09.2008, 17:17   #10
Tadeus
Троллота
 
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений
(для 1,772 пользователей)
Ответ: MMO??? Что и как ? O_o

Сообщение от Tadeus Посмотреть сообщение
2Антихрист О, чудо! Как же тогда работают современные ММОРПГ на тсп? :D
Сообщение от Антихрист Посмотреть сообщение
Современные игры делают на BLitz? :D без библ?
Где я хотя бы слово сказал о блице?
(Offline)
 
Ответить с цитированием
Старый 07.09.2008, 04:37   #11
Антихрист
Разработчик
 
Регистрация: 20.01.2007
Сообщений: 485
Написано 182 полезных сообщений
(для 412 пользователей)
Радость Ответ: MMO??? Что и как ? O_o

Сообщение от klopmaks Посмотреть сообщение
Может быть ктото подкинет простой сетевой игры...
С сервером простеньким чтобы только передвижение просчитывало и клиентом.
Типа кубы ходят по плейну. Или просто какую нибуть инфу о работе блица с сервером.
Или может просто пример игры по локальной сети.
Простенький пример.
Или может уроки какие нибуть, статьи на эту тему.
Заранее благодарен всем.

А теперь короткое ЧаВо по моему посту:
1. Да я нуб который ничего не умеет
2. ДА я уже начал делать мморпг
3. Прошу свои "умные" посты постить в другой теме , не здесь

Спасибо за внимание.
Tadeus Ну речь то идет о создании Игры на Blitz3d. Ему с udp будет проще.
(Offline)
 
Ответить с цитированием
Старый 07.09.2008, 10:30   #12
Tadeus
Троллота
 
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений
(для 1,772 пользователей)
Ответ: MMO??? Что и как ? O_o

Сообщение от Антихрист Посмотреть сообщение
Tadeus Ну речь то идет о создании Игры на Blitz3d. Ему с udp будет проще.
В данном случае имхо надо использовать их совместно. Например, ТСР для логина, регистрации, чата и т.п., а ЮДП - для передвижения и действий.
(Offline)
 
Ответить с цитированием
Старый 14.09.2008, 16:18   #13
klopmaks
ПроЭктировщик
 
Аватар для klopmaks
 
Регистрация: 22.12.2006
Сообщений: 182
Написано 2 полезных сообщений
(для 2 пользователей)
Re: MMO??? Что и как ? O_o

спасибо Тадеусу за статии =)
Там дальше приводиться пример "кубо-гонок"
Я там немного застрял...
Код я понял и переписал так что у одного клиента вид(камера) от одного куба
у второго от второго. И управление.
Потоки тоже вроде поменял , но мне выдает 1 клиент что стрим_1 даз нот екзист
Кода немного поетому я выложу. Вопрос в первую очередь к Tадуесу помогите плз.

1 Клиент
Const out_port=53424
Const in_port=53425
Global Stream_1=CreateUDPStream(53425)
Global Stream_2=CreateUDPStream(53424)
Global op_ip$=Input()
Global cub
Global cub2

Graphics3D 640,480,32,2
SetBuffer BackBuffer()

plane=CreatePlane()
plane_tex=LoadTexture("terrain-1.jpg")
PositionEntity plane,0,-1,0
EntityTexture plane,plane_tex
ScaleTexture plane_tex,15,15

cub=CreateCube()
MoveEntity cub,-2,0,0
cub2=CreateCube()
MoveEntity cub2,2,0,0

cam=CreateCamera(cub)
PositionEntity cam,0,5,-10

While Not KeyHit(1)
If KeyDown(200) MoveEntity cub,0,0,.1
If KeyDown(208 ) MoveEntity cub,0,0,-.1
If KeyDown(203) TurnEntity cub,0,1,0
If KeyDown(205) TurnEntity cub,0,-1,0
UpdateNetwork()
RenderWorld
Flip
Wend

End

Function UpdateNetwork()
WriteLine Stream_1,EntityX(cub)
WriteLine Stream_1,EntityZ(cub)
WriteLine Stream_1,EntityYaw(cub)
SendUDPMsg Stream_1,Int_IP(op_ip$),in_port
If RecvUDPMsg(Stream_2) Then
PositionEntity cub2,Float(ReadLine$(Stream_2)),0,Float(ReadLine$( Stream_2))
RotateEntity cub2,0,Float(ReadLine$(Stream_2)),0
EndIf
End Function

Function Int_IP(IP$)
d1%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d2%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d3%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d4%=IP$
Return (d1 Shl 24) + (d2 Shl 16) + (d3 Shl 8 ) +d4
End Function

2 Клиент

Const out_port=53425
Const in_port=53424
Global Stream_1=CreateUDPStream(53424)
Global Stream_2=CreateUDPStream(53425)
Global op_ip$=Input()
Global cub
Global cub2

Graphics3D 640,480,32,2
SetBuffer BackBuffer()

plane=CreatePlane()
plane_tex=LoadTexture("terrain-1.jpg")
PositionEntity plane,0,-1,0
EntityTexture plane,plane_tex
ScaleTexture plane_tex,15,15

cub=CreateCube()
MoveEntity cub,-2,0,0
cub2=CreateCube()
MoveEntity cub2,2,0,0

cam=CreateCamera(cub2)
PositionEntity cam,0,5,-10

While Not KeyHit(1)
If KeyDown(200) MoveEntity cub2,0,0,.1
If KeyDown(208 ) MoveEntity cub2,0,0,-.1
If KeyDown(203) TurnEntity cub2,0,1,0
If KeyDown(205) TurnEntity cub2,0,-1,0
UpdateNetwork()
RenderWorld
Flip
Wend

End

Function UpdateNetwork()
WriteLine Stream_1,EntityX(cub2)
WriteLine Stream_1,EntityZ(cub2)
WriteLine Stream_1,EntityYaw(cub2)
SendUDPMsg Stream_1,Int_IP(op_ip$),in_port
If RecvUDPMsg(Stream_2) Then
PositionEntity cub,Float(ReadLine$(Stream_2)),0,Float(ReadLine$(S tream_2))
RotateEntity cub,0,Float(ReadLine$(Stream_2)),0
EndIf
End Function

Function Int_IP(IP$)
d1%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d2%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d3%=Left(IP$,Instr(IP$,".")-1):IP$=Right(IP$,Len(IP$)-Instr(IP$,"."))
d4%=IP$
Return (d1 Shl 24) + (d2 Shl 16) + (d3 Shl 8 ) +d4
End Function
(Offline)
 
Ответить с цитированием
Старый 14.09.2008, 16:31   #14
Tadeus
Троллота
 
Регистрация: 09.07.2007
Сообщений: 1,829
Написано 554 полезных сообщений
(для 1,772 пользователей)
Ответ: MMO??? Что и как ? O_o

В ЮДП нет клиентов и серверов. И тот код, что я давал работает так: каждый запускает и вводит ИП второго игрока. Ну, а потом начинается беготня кубиками.
(Offline)
 
Ответить с цитированием
Старый 14.09.2008, 17:36   #15
klopmaks
ПроЭктировщик
 
Аватар для klopmaks
 
Регистрация: 22.12.2006
Сообщений: 182
Написано 2 полезных сообщений
(для 2 пользователей)
Re: MMO??? Что и как ? O_o

Да?
А если мы запускаем два раза эту програму на одной машине.(одну из блица , вторую компилируем) и вводим 127.0.0.1 то тогда что будет ?
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Cистема Редактирования Графики GRAF AndruXa Проекты на Blitz3D 17 22.04.2010 13:45
ПТС (пошаговая тактическая стратегия) Putin Проекты на Blitz3D 30 27.04.2009 17:00
Все статьи, уроки,дополнения, ошибки компl anton_obuhov Основной форум 3 14.09.2008 13:11
куплю исходник военной стратегии на blitz3d эд Blitz3D 15 18.02.2008 15:50
Как обозвать функцию... AndruXa Blitz3D 11 11.01.2008 03:14


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com