[기타]간만에 질문 하나 ^^;
member photo Jero 8 1,889 0 2004-07-02 08:48:45
0
8Comments
member photo
달마 2004.07.02(금) 오전 11:16:58
공격력 a x b + d + e + (f) 방식으로 되어 있습니다 a (면) b (굴림) d (추가공격력) e (강화주문등에의한 인첸트) f (힘등의 능력치에 의한 보너스)

공식은 여느게임등이나 다 비슷할것으로 생각합니다. 수치는 자신의머드의 개성과.. 레벨대또는 특성에 맞도록 운영자분들이 많은 시행착오를 격으실수록 좋은 게임이 만들어지겠지요.. *^^*
member photo
Raven 2004.07.02(금) 오후 01:54:22
머드는 보통 외국에서 만들어진 것을 한글화해서 쓰는데, 그런 머드들은 전부 D&D 룰을 따르고 있습니다. 완벽하게는 아니지만요...
무기 자체에 주사위 굴림이 있어서 (1d4 + 2) 이런식으로 표현이 되고, 이 무기의 공격력은 1개의 4면체 주사위를 굴린 후 거기에 2를 더하는 것이므로, 최소 3 최대 6이 나오겠죠.

그리고 방과 몹은... 별도의 클래스로 만드셨는지요? 그게 알고 싶군요... ^^;;

그리고 사냥 부분의 경우, 일반적으로는 별도의 Thread를 만들지 않고(사실 왠만한 머드들이 전부 C로 만들어져 있어서 Thread 개념은 이용하기가 힘들었죠. 구현된게 거의 없었거든요. ^^;) 하나의 사이클이 존재하고 이 사이클에 맞춰서 몹과 사용자가 동시에 공격하는 방식입니다. 고로 하나의 사이클을 담당하는 하나의 Thread(물론 C로 만든 머드에서는 이걸 loop로 돌렸죠. Mordor에서의 update.c 같은 부분에서요...)가 존재하면 되는겁니다. ^^
member photo
성천사 2004.07.02(금) 오후 04:11:43
공격력같은건 자신이 만들고 싶은 방식으로 만들면되는겁니다. (예> 무기데미지*(힘+민첩)+기타등) 계산방식은 자신이 원하는 정도로 하면되는거예요. 꼭 다른 머드를 따라할 필요는 없습니다. 직접 제작중이시니 자신만의 계산방법이라던지 자신만의 방식등을 도입하셔서 재미있게 만드신다면, 인기절정의 머드가 될겁니다.
member photo
2004.07.05(월) 오후 01:11:36
성천사님의 의견에 올인합니당~
member photo
Jero 2004.07.12(월) 오전 11:49:26
참,공격력부분은요 어느 RPG게임 제작책자를 뒤져보다가 적당한 공식 하나를 발견해서 적용해 봤습니다.
데미지는 (공격력*공격력)/방어력 이죠..
물론 공격력에 민뎀과 맥뎀 두가지가 들어가고 실제 타격치는 민뎀과 맥뎀사이의 랜덤수치로 적용이 되구요..
이제는 데미지보다는 케릭터의 기본 공격력을 결정할 부분인데 누가 힌트좀 주세요~
무기에 의한 공격력 말고 케릭의 기본 공격력요...
이건 감이 잘 안오네요 ^^;
member photo
Jero 2004.07.12(월) 오전 11:50:51
위에 답변주신분들 감사드립니당~ ^^*
열흘정도 여기 들르지 못했던것 같군요 ^^
그동안 엄청난 시행착오를 격어가면서 소스 수정하기를 몇십번(약간 과장해서 몇백번 ㅎㅎ)하다보니 요즘엔 진이 빠져서 잠시 접어두고 있었죠 ^^;
일단 레이븐님 말씀처럼 방정보와 몹정보는 별도의 클래스를 사용했답니다.
방정보는 rooms 폴더에 000(방번호),001,002 이런식으로 간단하게 방타이틀,방설명,방플래그,몹플래그를 넣었구요..
보거나 이동시에 그 방정보를 읽어서 몹이 있다면 방정보에 기록된 몹 번호를 읽어서 몹파일을 읽어드리는방식이죠
그런데 소스를 수정하다보니 방정보는 메모리에 상주 시키지 않아도 되는데 몹정보는 그게 안되더군요...
제가 머리가 나빠서 그런지 아님 상상력이 부족해서 그런진 모르겠지만.. 혼자하는 어드라면 몹정보를 메모리에 상주시키지 않아도 되겠지만 여럿이 하는 머드다 보니 몹 한마리 잡았을때 모든 사용자가 그 몹의 상태플래그(몹있을때 1, 몹 없을때 0)를 봐야 하거든요..
그래서 서버 가동할때 모든 방 정보를 읽고 거기에 몹이 있다면 해당하는 방번호와 몹번호,몹플래그를 읽어서 모두 열람할 수 있는 리스트에 차곡차곡 쌓아 뒀죠.
몹 사냥시나 이동시에 그 리스트에서 방번호,몹번호,몹플래그를 꺼내 읽을수 있도록 했구요,물론 사냥시에 변하는 몹플래그에 대해서도 알아서 업데이트 되구요
member photo
Jero 2004.07.12(월) 오전 11:51:05
여기까지 구현해놓고 혼자 만족감에 빠져있을때 엄청난 사실을 알아버렸죠 ㅋ
두마리를 접속시켜놓고 둘이서 다른 몹을 사냥할때 한쪽의 몹이 다른쪽을 쫒아가더라는...
(예를들면 a는 토끼를,b는 고양이를 잡을때 b의 몹이 토끼로 변하더라는겁니다..)
이거 뜯어 고치느라고 상당히 헤멨구요..
지금은 위에것들은 어느정도 진정된 상태고요, 한마리를 여럿이서 사냥할수 있게 개편하는 중입니다.
(여태까지는 한마리를 둘이서 공격할때 별도의 쓰레드로 돌아가니 토끼는 한마리라도 둘이서 잡으면 토끼가 둘로 '분신'하더군요..)
소스를 수정중인데 아직 테스트를 못해봐서 뭐라 말씀은 못드리겠구요...
일단은 A라는 플레에어가 토끼를 잡을때 A.MOB=토끼 가 되어서요, 다른 플레이어가 도착했을때 그냥 토끼가 아니라 A.MOB(즉 토끼)을 보여주는 방식이죠..
그렇게 하면 둘이 가치 잡아도 A.MOB을 사냥하는것이기 때문에 몹의 체력이나 경험치 면에서 양분 가능할것 같아서요...
일단은 이 소스를 테스트 해 보고 또 질문 드리죵 ^^
ㅎㅎ 그럼 이만 ~
member photo
Raven 2004.07.17(토) 오전 01:27:01
아무래도 인스턴스 변수로 잡아야 할 것을 클래스 변수로 잘못 잡으신듯 하군요. ^^;
해결하셨다니 다행이구요...

A.MOB을 토끼로 잡았는데, 만약 플레이어 A가 다른 방으로 도망을 가버린다면?
그럼 A와 같이 토끼를 사냥중이던 B는 어떻게 하죠?
A.MOB을 가지고 있는 A는 다른 방에 있는데...
B.MOB이 A.MOB을 가리키는게 아니라, 그냥 토끼 자체를 가리키게 만들어야합니다.
만약이지만, A가 로그아웃해버리면 B는... '새'가 되는거죠 -_-;
코멘트를 삭제할 비밀번호를 입력하세요.
비밀번호:
정회원 이상만 코멘트 쓰기가 가능합니다.
총 게시물 943개 / 검색된 게시물: 943개
쪽지를 전송하고 있습니다. 잠시 기다려주세요.
쪽지보내기
받는이(ID/닉네임)
내용
쪽지가 도착하였습니다.
쪽지 내용을 읽어오고 있습니다. 잠시 기다려주세요.
--