Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];

Вниз

А есть ли пример кода игры, чтобы по Интернету двое могли играть?   Найти похожие ветки 

 
Нужен Хелп   (2005-06-03 06:48) [0]

Какая игра - не важно. Желательно простейшая. Просто чтобы понять как это можно сделать, и адаптировать под свои нужды.

Плюс ещё дополнительное пожелание, чтобы отлаживать можно было на одной машине. А то компьютеров не так уж и много у меня.


 
XProger ©   (2005-06-03 09:18) [1]


while not Quit do
begin
NetUpdate;
GameUpdate;
GameRender;
Exit;
end;

Но вообще не всё так просто в этой жизни и чтобы хоть чего-то добиться нужно изрядно попотеть...
http://www.zeiss.net.ru/docs/technol/tcpip/tcp00.htm
http://www.gamedev.ru/articles/?sect=8
http://www.delphimaster.ru/cgi-bin/forum.pl?n=4

P.S.
Можешь скачать исходники http://timeforkill.mirg.ru/files/sdk/TFK_045a_src.rar правда там, всё достаточно на высоком уровне реализовано, так что прямых операций с сокетами ни увидишь (всё в движке который не распространяется). Но в любом случае основные принципы сможешь найти...

Удачи!


 
Ландграф Павел ©   (2005-06-03 09:34) [2]

Не слушай его=) скачай delphix и посмотри пример chat


 
XProger ©   (2005-06-03 09:40) [3]

Ландграф Павел,
Ну раз на то пошло...
C:\Program Files\Borland\Delphi7\Demos\Internet\NetChat


 
cyborg ©   (2005-06-03 10:44) [4]

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


 
Нужен Хелп   (2005-06-04 02:03) [5]


> XProger ©   (03.06.05 09:40) [3]
> Ландграф Павел,
> Ну раз на то пошло...
> C:\Program Files\Borland\Delphi7\Demos\Internet\NetChat


> cyborg ©   (03.06.05 10:44) [4]

У меня к сожалению нету сейчас диска с Дельфи. Нельзя ли выложить куда нибудь эту программу ?
Например на : http://delphigfx.mastak.ru/


 
Нужен Хелп   (2005-06-04 02:19) [6]

Желательно из Delphi 2005. :)


 
Ландграф Павел ©   (2005-06-04 09:36) [7]

Я тоже, прошу и требую, выложите этот пример для Delphi 2005 Lamer Edition, на... что мелочиться, выкладывайте на microsoft.com, желательно на первой странице...
Спасибо!=))


 
Ке   (2005-06-05 04:00) [8]

NetChat глюкавый, как чёрт знает что.
Один баг нашёл :

TClientDataThread = class(TThread)
private
public
 ...
 destructor  Destroy; override;
end;

destructor TClientDataThread.Destroy;
begin
 ListBuffer.Free;
 inherited;
end;


Вернее утечку памяти. Но остались ещё утечки. Причём вроде в самой Дельфи 7. Кто-нибудь знает как их пофиксить ?

И ещё почему-то, когда просто запускаешь программу, а потом сразу закрываешь ничего не делая, вылетает ВиолэйшнАксесс.

Чтож Борлан не могли даже пример нормальный написать ? Позор !


 
XProger ©   (2005-06-05 04:46) [9]

Вот именно, они писали "ПРИМЕР", а не готовую программу-продукт ;)


 
lyeh ©   (2005-06-06 21:22) [10]

2 XProger ©

> Вот именно, они писали "ПРИМЕР", а не готовую программу-продукт
> ;)

Сам не компилировал, но раз там утечка, то какой же это пример? Не примерный пример получается!

2 Нужен Хелп
А так, согласен, смотри исходники чатов, пересылай вместо текста данные...


 
Нужен Хелп   (2005-06-07 01:33) [11]


> lyeh ©   (06.06.05 21:22) [10]
> 2 Нужен Хелп
> А так, согласен, смотри исходники чатов, пересылай вместо
> текста данные...


Так утечка памяти же в этом примере. Плюс ВиалэйшнАксэсс. Надо же пофиксить сналачала. Или найти нормальный пример.


 
XProger ©   (2005-06-07 01:46) [12]

Нужен Хелп, ещё раз повторяю это пример, а не готовый софт!
Сама суть работы там хорошо показана...


 
lyeh ©   (2005-06-07 04:50) [13]

2 Нужен Хелп

> Так утечка памяти же в этом примере. Плюс ВиалэйшнАксэсс.
> Надо же пофиксить сналачала. Или найти нормальный пример.

Ну зайди на http://www.ya.ru наконец! Поищи там исходники простенького чата. Да и в папке с примерами есть еще чаты всякие, поищи Indy и FastNet в папке Demos


 
Нужен Хелп   (2005-06-08 07:45) [14]


> lyeh ©   (07.06.05 04:50) [13]
> Ну зайди на http://www.ya.ru наконец! Поищи там исходники
> простенького чата.

Которые до сих пор ещё никто не нашёл.

Я ищу простой БЕЗГЛЮЧНЫЙ пример. Всего лишь.


 
Zer0 ©   (2005-06-08 09:11) [15]

Quake2 to Delphi - http://www.sulaco.co.za/quake2/


 
УпырЬ   (2005-06-08 09:59) [16]

Ну смысл сам такой: все клиенты в игре отправляют серверу свои действия, сервер все это обрабаывает, считает что произойдет если все это смешать и отправляет обратно клиетам то что произошло и так по кругу сотни раз в секунду... =)

Могу дать пример моей старой сетевой игры, сделанна крайне убого и не инстресно(еще и на VCL), но она как раз сетевая, использует UDP, все работает.


 
Omar2002 ©   (2005-06-08 19:19) [17]

Все зависит от уровня гамы, если тока на двух игроков, с небольшим трафиком(ну мало данных пересылать), то хватит и стандартных компонентов дельфи Indi или DelphiX(DirectPlay), а если что-то серьезное - то придется разобраться с сокетами. Да и кстати если игра динамичная (быстры движения обьектов или быстро меняющиеся параметры в игре есть), то еще и код придется серьезно дорабатывать. Я до сих пор нормально не смог избавиться от эффекта запаздывания, хотя до одного дошел - понял, что у мя сервер не правильно организован, но вот как его, так сказать, реорганизовать не могу придумать - времени пока нету, сессия однако! :)


 
Нужен Хелп   (2005-06-09 02:11) [18]


> УпырЬ   (08.06.05 09:59) [16]
> Могу дать пример моей старой сетевой игры, сделанна крайне
> убого и не инстресно(еще и на VCL), но она как раз сетевая,
> использует UDP, все работает.

Давай. Там нет глюков и утечек памяти ?


 
Нужен Хелп   (2005-06-10 05:00) [19]

Чтоже ты не даёшь, Упырь ?


 
WondeRu ©   (2005-06-11 16:54) [20]

XProger ©   (03.06.05 9:18) [1]
while not Quit do
begin
NetUpdate;
GameUpdate;
GameRender;
Exit;
end;


 
Sapersky   (2005-06-11 19:53) [21]

Может, для начала лучше взять NetChat из Delphi5 (на TServer/ClientSocket)? Он проще (без лишних потоков) и глюков вроде не замечено.
Кстати, переход от текстовых сообщений к "своим каким-то данным" не так уж и прост - сборка пакетов нужного размера при приёме вполне способна ввести начинающего в ступор, по себе знаю :)
Или (здесь я не в курсе) Indy сам собирает?


 
XProger ©   (2005-06-11 20:25) [22]

WondeRu, и? игра после запуска сразу вылетит =)
это Main LOOP (обработка сообщений в GameUpdate)
а Quit глобальная переменная, оповещающая о выходе из игры...


 
Нужен Хелп   (2005-06-12 01:24) [23]


> Sapersky   (11.06.05 19:53) [21]
> Может, для начала лучше взять NetChat из Delphi5

Гдеж взять то такое старьё? Может кто выложит сей раритет?


 
XProger ©   (2005-06-12 03:26) [24]

http://xproger.mirg.ru/?id=1&doc=arena

В скором времени может и на тему топика статейку накатаю... ;)


 
Нужен Хелп   (2005-06-25 06:22) [25]


> XProger ©   (12.06.05 03:26) [24]
> http://xproger.mirg.ru/?id=1&doc=arena
>
> В скором времени может и на тему топика статейку накатаю...
> ;)


Привет !
Как, не накатал статейку? Примера то как небыло так и нет. Так уж и игру закончишь, а сеть не приделаешь к ней.


 
XProger ©   (2005-06-25 09:25) [26]

В процессе...


 
Нужен Хелп   (2005-06-26 02:04) [27]


> XProger ©   (25.06.05 09:25) [26]
> В процессе...


Мы надеемя на тебя !


 
Нужен Хелп   (2005-07-03 05:43) [28]


> XProger ©   (25.06.05 09:25) [26]

Все ждут, недождуться твоей статьи !



Страницы: 1 вся ветка

Форум: "Игры";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.11 c
8-1120220228
Radgar
2005-07-01 16:17
2005.11.20
Заливка (Ведро)


14-1130388039
Ega23
2005-10-27 08:40
2005.11.20
С днем рождения! 27 октября


2-1130953198
getttr
2005-11-02 20:39
2005.11.20
Как разместить форму в правом нижнем углу десктопа?


4-1126824342
JJohn
2005-09-16 02:45
2005.11.20
WriteFile & ReadFile


2-1130848978
Monah
2005-11-01 15:42
2005.11.20
Разрешение экрана и форма





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский