PDA

View Full Version : Tutorial Tcp/ip로 타 서버에 접속하려는데요...



bigbang7
10-02-2011, 04:37 AM
안녕하세요

TCP/IP로 타 서버에 접속해서 실시간으로 정보를 받을려고 합니다.
샘플로 올라와 있는 TcpLink를 이용한 Client(TcpLinkClient.uc)를 수정해서 사용해볼까 하는데
이 클래스를 게임 내에서 어떻게 활용해야 하는지에 대한 설명이 없네요.
GameInfo 클래스에 등록해서 사용하는 것인지, 아니면 다른 방법이 있는건지...

아시는분 상세한 설명 좀 부탁드립니다.

Shinbi
10-10-2011, 10:18 PM
제가 봤을때는 Gameinfo같은 곳에서 만드신 TcpLink를 생성해서 그 생성된 instance를 GameInfo가 가지고 있게만 하시면 되지 않을 까 싶으네요.
그리고 주고 받는데 필요한 정보들은 Gameinfo에서 그 생성해둔 TcpLink instance이용해서 SendText나 SendBinary로 보내고,
그리고 TcpLink로 넘어온 데이터는 TcpLink가 받아서 GameInfo로 넘겨준다거나 하는 방식이면 되지 않을까 생각이 듭니다~

bigbang7
10-20-2011, 10:45 PM
감사합니다.
결국 Gameinfo에서 생성을 해서 해결을 했습니다.

그런데 문제가 있더군요
간단한 채팅서버를 만들어서 데이터를 주고 받는데 데이터가 깨져서 가고, 오는 데이터도 깨지는지 보이지를 않습니다. 데이터는 문자열이고요.
링크 모드 때문인가 해서 MODE_Line으로 바꿔 보니까 아얘 이벤트가 발생을 안하고요. MODE_Text로만 해야지 그나마 Receive 이벤트가 발생하는데 데이터를 읽을 수가 없습니다.

뭐가 문제인지 아시는분 계시면 좀 알려주십시요

Kwangsub Shin
10-21-2011, 05:45 AM
네. 일단 텍스트는 영문이든 한글이든 전부 깨져서 주고 받아지시나요?

bigbang7
10-22-2011, 02:56 AM
제가 송신한데이터는

SendText("Advise 시스템제어;"$chr(13)$chr(10));
SendText("Advise 훈련제어;"$chr(13)$chr(10));
SendText("Advise 자가진단실시;"$chr(13)$chr(10));
SendText("Advise 영상구분;"$chr(13)$chr(10));

이고요, 서버에서 수신한 데이터는
http://dl.dropbox.com/u/46447375/수신데이터.jpg
입니다

Kwangsub Shin
10-22-2011, 12:45 PM
네. 확인해보니 버그가 있어보입니다.
그래서 현재 빨리 구현해야 하시면 간단하게 tcp/ip dll을 붙이시는게 좋으실 것 같습니다.

bigbang7
10-26-2011, 02:04 AM
TCP/IP Dll을 만들어서 붙일려고 하는데 잘 모르는게 있습니다.

TCP Socket에서는 이벤트가 발생합니다.(Receive event 등) 이 이벤트에 동작하는 unreal Script 함수를 어떻게 만드나요? DLL에 정의된 이벤트 메시지를 Unreal Script에서 인식할 수 있는 방법이 있나요?