4Comments
혼
2004.06.20(일) 오후 02:23:15
질문이 너무 길어서 틱부분 읽다가 -_- 그냥 틱부분만 답변 하고 갑니당
저도 잘은 모르지만 제가 봐온 머드에서는
틱 구현을 머드를 띄워줄때 데몬으로 띄워줘서
일정시간마다 함수를 불러주도록 무한 루프를 만들어주는걸로 압니당.
머드 띄울때 그 함수 한번 불러주고 그 함수 마지막 부분에 몇초 뒤에 또 이 함수를 실행해라
이런 명령어로 하면 무한루프가 되겠죠
저도 잘은 모르지만 제가 봐온 머드에서는
틱 구현을 머드를 띄워줄때 데몬으로 띄워줘서
일정시간마다 함수를 불러주도록 무한 루프를 만들어주는걸로 압니당.
머드 띄울때 그 함수 한번 불러주고 그 함수 마지막 부분에 몇초 뒤에 또 이 함수를 실행해라
이런 명령어로 하면 무한루프가 되겠죠
Raven
2004.06.20(일) 오후 05:43:31
월드 구성은... Circle이나 Smaug에서는 로딩은 '존' 단위로 하되, 실제 각 '방'의 연결은 그 각각의 방이 연결정보를 가지고 있는 것으로 합니다. Mordor에는 '존'이라는 개념 없이 오로지 '방'만... ^^;
'존' 자체가 모든 방의 연결 상태를 알고 있는 것은 아닙니다.
'존'이 가지는 정보는... 리젠 시간, 날씨 변화 정도의 아주 적은 양입니다.
틱 같은 경우는 별도로 Thread 하나를 띄워서 백그라운드에서 시간만 처리하게 만들거나, 머드의 메인 루프 부분에서 매번 시간을 체크하는 부분을 따로 만들어줘야 합니다.
어차피 머드 자체도 '루프'로 돌아가기 때문에 어쩔 수가 없겠더군요. ^^;
그리고 대부분의 머드 엔진이 그런 방식을 씁니다.
맨 처음 머드가 가동 될 때, 현재 시스템 시간을 변수에 저장해놓은 다음...
다음번에 시간을 체크할 때 현재 시스템 시간과 처음에 저장해둔 시간의 차이가 일정 시간 이상이라면,
특정 함수나 메소드를 호출하면 되겠죠.
저 같은 경우는 예전의 소스에서 편법으로 한번 구현해 본적은 있었는데 아무래도 영... ^^;
지금은 처음부터 다시 만들고 있어서 틱 부분을 어떻게 할지 따로 구상해봐야겠습니다.
'존' 자체가 모든 방의 연결 상태를 알고 있는 것은 아닙니다.
'존'이 가지는 정보는... 리젠 시간, 날씨 변화 정도의 아주 적은 양입니다.
틱 같은 경우는 별도로 Thread 하나를 띄워서 백그라운드에서 시간만 처리하게 만들거나, 머드의 메인 루프 부분에서 매번 시간을 체크하는 부분을 따로 만들어줘야 합니다.
어차피 머드 자체도 '루프'로 돌아가기 때문에 어쩔 수가 없겠더군요. ^^;
그리고 대부분의 머드 엔진이 그런 방식을 씁니다.
맨 처음 머드가 가동 될 때, 현재 시스템 시간을 변수에 저장해놓은 다음...
다음번에 시간을 체크할 때 현재 시스템 시간과 처음에 저장해둔 시간의 차이가 일정 시간 이상이라면,
특정 함수나 메소드를 호출하면 되겠죠.
저 같은 경우는 예전의 소스에서 편법으로 한번 구현해 본적은 있었는데 아무래도 영... ^^;
지금은 처음부터 다시 만들고 있어서 틱 부분을 어떻게 할지 따로 구상해봐야겠습니다.
혼
2004.06.20(일) 오후 06:09:57
HanLP 는 시간체크로 안하고..
그냥 함수 내용에 콜아웃으로 그 함수를 일정시간뒤에 다시 불러주게 해서...
그 함수가 계속 돌아가는데 @_@
아래의 메인함수를 머드가 시작될때 한번 실행해줌
int main(){
....틱에 관한 소스들....
....x초뒤에 main 함수 호출 내용....
소스의 끝
}
HanLP 가 아니라 ㅡㅡ;; HanLP계열 머드에서 틱 쓴 머드를 본거임..
그냥 함수 내용에 콜아웃으로 그 함수를 일정시간뒤에 다시 불러주게 해서...
그 함수가 계속 돌아가는데 @_@
아래의 메인함수를 머드가 시작될때 한번 실행해줌
int main(){
....틱에 관한 소스들....
....x초뒤에 main 함수 호출 내용....
소스의 끝
}
HanLP 가 아니라 ㅡㅡ;; HanLP계열 머드에서 틱 쓴 머드를 본거임..
Raven
2004.06.20(일) 오후 06:57:55
LPC는 일단 '기본언어'가 아니니까요... call_out도 내부적으로는 시간 체크로 갈거라고 생각됩니다. ^^;
코멘트를 삭제할 비밀번호를 입력하세요.
정회원 이상만 코멘트 쓰기가 가능합니다.
총 게시물 954개 / 검색된 게시물: 954개
글번호 | 제목 | 작성자 | 조회수 | 좋아요 | 싫어요 | 작성일 | |
---|---|---|---|---|---|---|---|
[기타]질문 답변 외 글은 자유 게시판에 올려 주세요... | 머드클럽 | 4341 | 0 | 0 | 2004-01-01 | ||
394 | [기타] 로봇 돌리는법, ㅠㅠ, [2] | 웁스우웁스 | 2120 | 0 | 0 | 2004-06-26 | |
393 | [기타] 다운로드 클릭이 안되여~ [1] | 김도현 | 1993 | 0 | 0 | 2004-06-24 | |
392 | [기타] 자꾸 메일이 왔다고하는데. [1] | 주사진 | 1698 | 0 | 0 | 2004-06-22 | |
391 | [기타] 서버 리붓관련인데요. [1] | 주사진 | 1927 | 0 | 0 | 2004-06-22 | |
390 | [기타] '틱'에 관해 질문!! [7] | Jero | 2545 | 0 | 0 | 2004-06-21 | |
389 | [기타] muhan13.tgz 에서 startm컴파일 관련요. [1] | 주사진 | 2112 | 0 | 0 | 2004-06-20 | |
388 | [기타] 정말 궁금해요.... [4] | Jero | 2089 | 0 | 0 | 2004-06-20 | |
387 | [기타] 혹시 pclink에서 상용화돼었던 시간여행자에 대해서;; 소식을 아시는분 있나요 [1] | 양은철 | 2109 | 0 | 0 | 2004-06-18 | |
386 | [hanlp] 마군님의 에디터에서 [4] | 혼 | 1730 | 0 | 0 | 2004-06-16 | |
385 | [기타] 요새도 제3의눈 계정 주네요 =.= | 데모닉 | 1986 | 0 | 0 | 2004-06-14 | |
384 | [기타] 처음부터 만들어 볼수있게 도와주세요~ [6] | 이동호 | 1736 | 0 | 0 | 2004-06-12 | |
383 | [hanlp] 작년에 섭닫아버린 {환상의지대} 게속하고 싶은데... [1] | 전신 | 1953 | 0 | 0 | 2004-06-12 | |
382 | [기타] 쥬라기공원하드코어 텔넷 주소좀 가르쳐주세요 [1] | 김용희 | 2037 | 0 | 0 | 2004-06-05 | |
381 | [기타] 운영자님!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! [2] | 데모닉 | 1996 | 0 | 0 | 2004-06-05 | |
380 | [기타] 파이썬 머드에 관한 질문입니다. [2] | Jero | 2834 | 0 | 0 | 2004-06-05 | |
379 | [기타] ytin과 배경안시 [2] | 탈퇴 | 2140 | 0 | 0 | 2004-06-03 | |
378 | [기타] 궁금해서요 [7] | 탈퇴 | 1874 | 0 | 0 | 2004-05-31 | |
377 | [circle] 시간의문에 대한 질문입니다. [2] | 시문 | 2183 | 0 | 0 | 2004-05-31 | |
376 | [기타] 안녕하세요 초보인데요 [1] | 이창희 | 1880 | 0 | 0 | 2004-05-31 | |
375 | [기타] 십웅기 검하천산 소스를 받았는데요... [1] | 박준석 | 2308 | 0 | 0 | 2004-05-30 |