클라이언트 개발 현황
컨텐츠 정보
- 740 조회
- 35 댓글
- 목록
본문
지난 테스트에 접속해주시고 의견을 주신 덕분에 많은 부분을 개선하고 기능을 추가할 수 있었습니다.
다시 한 번 테스트에 참여해주신분들께 감사의 인사 말씀 드립니다.
그 동안 미구현이거나 부족했던 기능들이 이제 자리를 잡아가고 있습니다.
요정, 마법사 스킬 구현과 활, 마법 공격 그리고 MR, ER, SP 등 모든 스탯 및 PVP, PVE 공식들을 적용하고
퀘스트, 거래소, 교환, 상점, 선착장(배타기), NPC 스프라이트 조립 등 클라이언트가 기본적으로 가지고 있던 기능은 이제 모두 완성된거 같습니다.
몬스터 배치와 스킬 구현 마무리하고 몬스터 인공지능을 고도화 한 다음 98년도 추억을 살려 본섭처럼 재미있는 전투가 가능하도록 구현하고 오픈 테스트를 통해 버그와 부족한 부분 마무리 작업 후 클라이언트 파일과 서버 파일을 github 에 공유할 수 있도록 리패키징 과정을 거쳐 다른분들과 함께 업그레이드 할 수 있는 방향으로 계획하고 있습니다.
제일 힘들고 고난의 시간인 배치 작업을 진행해야해서 막막하긴한데 전체 배치는 무리고 플레이에 무리가 없을 정도까지만 배치해서 테스트하면서 버그를 해결하고 작업은 마무리할 계획입니다.
(테스트 당시에도 직접 테스트할때 전혀 발견되지 않았던 버그들이 굉장히 많이 발견되어 혼자 테스트는 무리가 있다는걸 느꼈습니다.)
일정은 추후에 다시 한번 안내 말씀드리도록 하겠습니다.
이번에도 많은 의견과 버그나 문제점 지적 부탁 드리겠습니다!
관련자료
댓글 35
시루비님의 댓글의 댓글
판기사님께서 말씀해주셨던 부분 기능들도 업데이트 다 되었습니다.
1. 한개의 장비를 상점에서 여러개 사면 장비 갯수가 겹쳐진 채로 들어옵니다. 강화해서 날리면 한꺼번에 날아갑니다.
= 아이템 overlap 속성을 픽업에만 적용하고 상점 구매에서 적용하지 않아 발생한 버그 였는데, 업데이트 되었습니다.
2. 아이템 인벤 열고 시프트 아이템 클릭해서 다중선택이 안됩니다.
= 아이템 다중 선택 기능 적용해서 버리거나 삭제할때 본섭 클라이언트처럼 선택 가능하도록 구현 했습니다.
3. 채팅을 치고 말풍선이 뜬 상태로 이동하면 말풍선이 심하게 흔들리는거같습니다.
= 본섭 클라이언트도 흔들리긴 하던데 제가 조금 심해서 그냥 고정으로 정리 했습니다.
1. 단축키 창에서도 우클릭으로 물약 % 설정이 가능했으면 좋겠습니다. 용기의 물약, 초록물약도 같이요
= 인벤토리, 단축키 창에서 물약, 변신주문서, 스킬 모두 자동사용 기능이 설정 가능하고 양쪽 모두 표시되도록 업데이트 했습니다.
2. 상점에서 숫자 키패드 입력됐으면 좋겠습니다.
= 본섭 클라이언트와 동일하게 입력 가능하도록 처리하면서 화살표도 동작하고 숫자를 누르면 직접 입력도 가능하도록 업데이트 되었습니다. (직접 입력은 모바일 용이라고 볼 수 있습니다.)
3. ctrl + a로 현재 케릭터창이 열렸으면 합니다.
= ctrl + a 단축키 동작 적용 되었고, 이번에 확장 기능으로 서버쪽 db 에서 단축키를 변경할 수 있도록 설계를 변경해서 업데이트 했습니다.
4. 자동사냥을 키면 가까운 몬스터를 무시하고 저 멀리 떨어진 아이템부터 먼저 먹으려고 합니다.
너무 멀리 떨어진 아이템은 적당히 무시했으면 좋겠습니다.
= ATS 기능 자체의 고도화는 계속 진행해야겠지만, 몬스터와 아이템중에 최우선은 몬스터이고 그 다음은 아이템으로 거리를 기준으로 몬스터가 먼저라면 공격을 아이템이 먼저라면 픽업 순서로 동작하도록 변경 했습니다. (이때 발생하는 부분은 먹자를 방지하기가 어려울거 같긴한데, 고민중에 있습니다. 먹자도 나름 그 당시 게임 외적인 요소로 작용하던 분쟁요소였기에 지금처럼 아이템 소유권 시간을 두고 싶지는 않거든요.)
말씀해주신 내용들 덕분에 많은 부분을 개선할 수 있었습니다.
감사합니다.
1. 한개의 장비를 상점에서 여러개 사면 장비 갯수가 겹쳐진 채로 들어옵니다. 강화해서 날리면 한꺼번에 날아갑니다.
= 아이템 overlap 속성을 픽업에만 적용하고 상점 구매에서 적용하지 않아 발생한 버그 였는데, 업데이트 되었습니다.
2. 아이템 인벤 열고 시프트 아이템 클릭해서 다중선택이 안됩니다.
= 아이템 다중 선택 기능 적용해서 버리거나 삭제할때 본섭 클라이언트처럼 선택 가능하도록 구현 했습니다.
3. 채팅을 치고 말풍선이 뜬 상태로 이동하면 말풍선이 심하게 흔들리는거같습니다.
= 본섭 클라이언트도 흔들리긴 하던데 제가 조금 심해서 그냥 고정으로 정리 했습니다.
1. 단축키 창에서도 우클릭으로 물약 % 설정이 가능했으면 좋겠습니다. 용기의 물약, 초록물약도 같이요
= 인벤토리, 단축키 창에서 물약, 변신주문서, 스킬 모두 자동사용 기능이 설정 가능하고 양쪽 모두 표시되도록 업데이트 했습니다.
2. 상점에서 숫자 키패드 입력됐으면 좋겠습니다.
= 본섭 클라이언트와 동일하게 입력 가능하도록 처리하면서 화살표도 동작하고 숫자를 누르면 직접 입력도 가능하도록 업데이트 되었습니다. (직접 입력은 모바일 용이라고 볼 수 있습니다.)
3. ctrl + a로 현재 케릭터창이 열렸으면 합니다.
= ctrl + a 단축키 동작 적용 되었고, 이번에 확장 기능으로 서버쪽 db 에서 단축키를 변경할 수 있도록 설계를 변경해서 업데이트 했습니다.
4. 자동사냥을 키면 가까운 몬스터를 무시하고 저 멀리 떨어진 아이템부터 먼저 먹으려고 합니다.
너무 멀리 떨어진 아이템은 적당히 무시했으면 좋겠습니다.
= ATS 기능 자체의 고도화는 계속 진행해야겠지만, 몬스터와 아이템중에 최우선은 몬스터이고 그 다음은 아이템으로 거리를 기준으로 몬스터가 먼저라면 공격을 아이템이 먼저라면 픽업 순서로 동작하도록 변경 했습니다. (이때 발생하는 부분은 먹자를 방지하기가 어려울거 같긴한데, 고민중에 있습니다. 먹자도 나름 그 당시 게임 외적인 요소로 작용하던 분쟁요소였기에 지금처럼 아이템 소유권 시간을 두고 싶지는 않거든요.)
말씀해주신 내용들 덕분에 많은 부분을 개선할 수 있었습니다.
감사합니다.
시루비님의 댓글
다른분들께서도 말씀해주셨던 부분도 업데이트 모두 했습니다.
개인구축러 님.
0. 구울한테 원격으로 쳐맞네요..(서버상 캐릭 위치랑 클라이언트 캐릭위치랑 달라지는 핑문제는 방법이 없는건가.)
= 처음 설계는 클라이언트 위치를 서버에 보고하는 방식으로 했었는데, 말씀하신 현상으로 클라이언트가 보간 위치와 엔티티 규칙을 서버에 전달하지 않는 현상이 발생할 수 있어 서버로 옮기고 서버는 클라이언트에게 보고 받지 않고 직접 처리해 이 문제를 해결 했습니다. 미세하게 공격시점에 움직이면 공격 프레임이 동작하는 동안 초록+용기 먹고 도망가면 위치가 달라보이는 현상은 시각적으로 보일 수 있긴한데, 더 개선할 수 있는지 고민해보고 있습니다.
1. 마을에 허수아비 하나만 있었으면~!
= 마을에 허수아비를 배치하는건 사실 조금 에러같아서 퀘스트 기능을 적용 했습니다. 캐릭터 생성하면 단검 착용하기, 가죽 재킷 착용하기, 채팅하기 처럼 간단한 퀘스트를 진행하면 허수아비로 레벨 올리는것보다 빠르게 5레벨에 도달하고 이후에는 사냥 같은 퀘스트로 약간의 보조 역활을 하는 아이템 제공도 가능한 퀘스트 기능을 리니지m 을 보면서 착안해서 업데이트 했습니다.
2. 자동칼질 매우 필요!
= 말씀하신 자동칼질은 저도 옛날에 마우스 채팅창으로 내리는 방식으로 사용했던거라 그대로 구현해서 적용 했습니다. 추가로 리니지 클래식은 몬스터 공격중에 마우스를 살짝만 움직여서 몬스터 이름이 사라지기만 해도 자동칼질이나 활질이 되더라구요. 그래서 그 부분까지 적용 했습니다.
3. 몹에게 나온 아이템 상점 npc한테 재판매 기능
= 상점 판매 기능은 원래 있었습니다. 다만, 마을에 1원 이벤트 상인은 없었고 판도라 npc 에게 판매가 가능한데 이 당시 npc 매입은 판매하는 아이템만 다시 매입하는 방식이었기에 그대로 구현한건데 리니지m 의 매입 상인처럼 대부분의 아이템을 매입하는 기능과 한번에 매입처리 하는 기능도 고민해보고 있습니다. (구버전 리니지는 아이템 등급이 존재하지 않아 어떻게 분류할지 좋은 규칙이 없어서 고민하고 있습니다.)
개인구축러님 테스트하고 말씀주셔서 감사합니다.
오크서버 님.
보안이라는 가장 어려운 부분을 말씀해주셨는데 몇일 모든 코드를 점검하면서 보안 구멍이 생길 수 있는 부분을 찾아보고 방어하고 빈틈도 없이 진행 했습니다.
중요하게 본 부분은 웹접속으로 플레이하시기 때문에 클라이언트 파일은 접속자분들이 설치를 하지 않고 에셋 리소스(이미지, html파일)만 가지고 있기 때문에 외부 공격으로 서버를 무력화하는 정도외에는 할수 있는게 크게 없다고 판단하고 있지만, 보안이라는게 어디서 뚫려서 문제될지 모르니 계속 업그레이드 할 예정입니다.
오크서버님께서 말씀해주셔서 하나 작업할때마다 변칙플레이로 아이템 복사가 발생할 수 있는 구멍과 네트워크 핑지연으로 얻을 수 있는 조작, 에셋 파일 조작 모두 대응하고 있으며 에셋파일 조작하면 접속 자체가 되지 않고 즉시 다시 다운로드되도록 했습니다.
보안 부분은 지속적으로 체크할 예정입니다.
말씀 감사합니다.
이렇게 말씀해주신 덕분에 좋은 기능과 많은 부분이 업데이트 되어 감사할 따름입니다.
앞으로 많은 지적과 조언 말씀 부탁 드리겠습니다.
감사합니다!
개인구축러 님.
0. 구울한테 원격으로 쳐맞네요..(서버상 캐릭 위치랑 클라이언트 캐릭위치랑 달라지는 핑문제는 방법이 없는건가.)
= 처음 설계는 클라이언트 위치를 서버에 보고하는 방식으로 했었는데, 말씀하신 현상으로 클라이언트가 보간 위치와 엔티티 규칙을 서버에 전달하지 않는 현상이 발생할 수 있어 서버로 옮기고 서버는 클라이언트에게 보고 받지 않고 직접 처리해 이 문제를 해결 했습니다. 미세하게 공격시점에 움직이면 공격 프레임이 동작하는 동안 초록+용기 먹고 도망가면 위치가 달라보이는 현상은 시각적으로 보일 수 있긴한데, 더 개선할 수 있는지 고민해보고 있습니다.
1. 마을에 허수아비 하나만 있었으면~!
= 마을에 허수아비를 배치하는건 사실 조금 에러같아서 퀘스트 기능을 적용 했습니다. 캐릭터 생성하면 단검 착용하기, 가죽 재킷 착용하기, 채팅하기 처럼 간단한 퀘스트를 진행하면 허수아비로 레벨 올리는것보다 빠르게 5레벨에 도달하고 이후에는 사냥 같은 퀘스트로 약간의 보조 역활을 하는 아이템 제공도 가능한 퀘스트 기능을 리니지m 을 보면서 착안해서 업데이트 했습니다.
2. 자동칼질 매우 필요!
= 말씀하신 자동칼질은 저도 옛날에 마우스 채팅창으로 내리는 방식으로 사용했던거라 그대로 구현해서 적용 했습니다. 추가로 리니지 클래식은 몬스터 공격중에 마우스를 살짝만 움직여서 몬스터 이름이 사라지기만 해도 자동칼질이나 활질이 되더라구요. 그래서 그 부분까지 적용 했습니다.
3. 몹에게 나온 아이템 상점 npc한테 재판매 기능
= 상점 판매 기능은 원래 있었습니다. 다만, 마을에 1원 이벤트 상인은 없었고 판도라 npc 에게 판매가 가능한데 이 당시 npc 매입은 판매하는 아이템만 다시 매입하는 방식이었기에 그대로 구현한건데 리니지m 의 매입 상인처럼 대부분의 아이템을 매입하는 기능과 한번에 매입처리 하는 기능도 고민해보고 있습니다. (구버전 리니지는 아이템 등급이 존재하지 않아 어떻게 분류할지 좋은 규칙이 없어서 고민하고 있습니다.)
개인구축러님 테스트하고 말씀주셔서 감사합니다.
오크서버 님.
보안이라는 가장 어려운 부분을 말씀해주셨는데 몇일 모든 코드를 점검하면서 보안 구멍이 생길 수 있는 부분을 찾아보고 방어하고 빈틈도 없이 진행 했습니다.
중요하게 본 부분은 웹접속으로 플레이하시기 때문에 클라이언트 파일은 접속자분들이 설치를 하지 않고 에셋 리소스(이미지, html파일)만 가지고 있기 때문에 외부 공격으로 서버를 무력화하는 정도외에는 할수 있는게 크게 없다고 판단하고 있지만, 보안이라는게 어디서 뚫려서 문제될지 모르니 계속 업그레이드 할 예정입니다.
오크서버님께서 말씀해주셔서 하나 작업할때마다 변칙플레이로 아이템 복사가 발생할 수 있는 구멍과 네트워크 핑지연으로 얻을 수 있는 조작, 에셋 파일 조작 모두 대응하고 있으며 에셋파일 조작하면 접속 자체가 되지 않고 즉시 다시 다운로드되도록 했습니다.
보안 부분은 지속적으로 체크할 예정입니다.
말씀 감사합니다.
이렇게 말씀해주신 덕분에 좋은 기능과 많은 부분이 업데이트 되어 감사할 따름입니다.
앞으로 많은 지적과 조언 말씀 부탁 드리겠습니다.
감사합니다!
시루비님의 댓글의 댓글
안녕하세요. 테스트때 많은 도움주시고 특히 커츠 잡으려고 하실때 그 덕분에 AI 문제점도 발견할 수 있었고 여러가지 PVE 공식 벨런싱도 진행할 수 있었습니다.
감사합니다.
그런데 아직 테스트를 진행하기에는 배치 문제나 사소한 문제들을 잡고 있습니다.
클라이언트는 작업이 다 되었지만, 서버쪽 작업이 아직 미구현 부분이 있어 테스트를 하기에는 분량이 적어 말하는섬, 말섬던전1층, 맑섬던전2층, 커츠레이드 정도까지는 구축해서 기본적인 몬스터AI 까지는 완성하고 테스트하려고 준비하고 있습니다.
테스트할 수 있는 정도가 되었다 생각되면 말씀드리도록 하겠습니다.
시루비님의 댓글의 댓글
목적이 뚜렷하지도 거창하지도 않습니다.
그저 구버전의 향수 때문에 여기 사이트까지 왔고 포인트가 부족해서 충전하고 클라이언트를 받아서 이것저것 시도하고 만들어보다가 구버전 클라이언트가 설치에서 리소스 제약까지 막히는 부분이 많아 제가 만들어보고 싶은걸 만들고자 시도했지만 pc 유저와 모바일 유저가 함께 만날 수 있는 공간까지 고민을 하다보니 웹버전 클라이언트를 개발해보게 되었습니다.
그저 저 개인적인 만족을 위해 진행하고 있고 그 당시 본섭처럼 완성도 높은 구현율을 재현하고자 설계하고 작업하고 있습니다.
결국 마지막은 github 를 통해 클라이언트, 서버 공개하고 다른분들이 추가적인 부분까지 완성하시겠지만 저는 그걸로 만족하고 더 재밌는 환경은 없을지? 또 다른 시도를 하지 않을까요?
시루비님의 댓글
npc 에 AI 를 적용해서 npc 와 대화를 할 수 있는 기능을 적용해봤습니다.
(진짜, 그저 심심해서 만들었고 월드내에 모든 상황을 npc 를 통해서 물어보고 답변 받고 현실세계의 날씨나 최근 뉴스 같은걸 직접 대화로 답해줍니다.)
배 시간이나 성 세율, 몬스터 경험치 같은 여러가지 내용을 npc 에게 물어보면 모두 답해줍니다.
(물론, 시스템 조작이나 코드 질문이나 db 업데이트해달라는 프롬프트는 동작하지 않습니다.)
돈 잡아먹는 ai 이지만, 활용도가 무지막지하게 높은 방식이라 로컬 ai 와 연동해서 돈 1원도 사용하지 않고 npc 와 대화하는게 가능해서 나중에 업데이트하기 위해 기초틀을 설계해서 적용한 기능입니다.
시루비님의 댓글
나중에 운영하실분들을 고려해서 /warning 명령어와 /ban 명령어를 추가했습니다.
경고 명령어는 클라이언트와 서버의 비정상 동작 감지 모듈에서도 체크해서 경고를 하게 됩니다.
ban 처리된 캐릭터는 삭제나 접속 자체가 불가능해져서 ban 캐릭터를 보유하게되면 계정 자체에 불이익이 생긴거라 유의미한 경고가 되지 않을까 생각됩니다.
* 이제 월드 기능을 마무리 작업을 하고 있습니다. PVE, PVP 부분을 정리하고 맵만 정리하면 테스트를 해서 버그를 처리하는 단계가 될것으로 판단하고 있습니다. 솔직히 지금도 기능만 너무 많이 추가되고 설계되고 있어서 테스트할때 발생할 수 많은 버그가 겁이 납니다.
시루비님의 댓글
레벨패스 기능을 구현해서 적용 했습니다.
컬렉션과 마찬가지로 DB 에 등록해두면 알아서 html 로 파싱해서 월드에서 사용할 수 있는 html창이 뜨게 됩니다.
/패스 or /pass 명령어를 입력하면 레벨 도달하면 도달한 레벨에 대한 보상 아이템을 수령할 수 있습니다.
* 프리미엄 구매는 아데나로 구매하면 추가 보상 아이템을 받을 수 있습니다. (ask창에 아데나 100,000 이라고 표기가 안되어서 나중에 업데이트 할 예정입니다.)
+ 이제 왠만한 가이드 기능들은 구현한거 같네요. 테스트를 언제 시작할지 고민하고 있습니다. 부족한 부분들이 아직 많이 있지만 늘 그랬듯이 이런게 가능하다는걸 염두에 두고 부족하거나 어설픈 부분도 봐주시면 감사 하겠습니다.
* 리니지 본섭이나 클래식 본섭에 있는 기능을 추천해주시면 구현 검토해보도록 하겠습니다. 많은 도움 부탁 드리겠습니다.




















