CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·아이포니앙 ·주식한당 ·방탄소년당 ·MaClien ·일본산당 ·개발한당 ·자전거당 ·소시당 ·AI당 ·이륜차당 ·골프당 ·소셜게임한당 ·안드로메당 ·콘솔한당 ·키보드당 ·걸그룹당 ·곰돌이당 ·나스당 ·퐁당퐁당 ·가상화폐당 ·바다건너당 ·리눅서당 ·클다방 ·노젓는당 ·디아블로당 ·위스키당 ·찰칵찍당 ·라즈베리파이당 ·육아당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI그림당 ·날아간당 ·사과시계당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·전기자전거당 ·e북본당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·물고기당 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·IoT당 ·KARA당 ·꼬들한당 ·덕질한당 ·어학당 ·가죽당 ·레고당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·소리당 ·노키앙 ·적는당 ·방송한당 ·PC튜닝한당 ·그림그린당 ·소풍간당 ·심는당 ·패스오브엑자일당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·축구당 ·나혼자산당 ·스타한당 ·스팀한당 ·파도탄당 ·테니스친당 ·테스트당 ·빨콩이당 ·공대시계당 ·여행을떠난당 ·터치패드당 ·트윗당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·와인마신당 ·WOW당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

땅판당

강좌
커맨드블록을 이용한 인챈 시스템 3

아침놀
5,573
2014-01-19 13:24:43 112.♡.104.90

enchant-vending-machine.png

요즘 다들 바쁘신지 별로 글이 없어서 하나 써봅니다. ㅎㅎ

 

플러그인 없는 순정판에서도 command block을 이용하면 재밌는 시스템들을 만들 수 있습니다.

Hypixel과 같은 custom map maker 그룹이 인기를 끌면서 Mojang에서도 관련 기능들을 점점 강화하고 있고요.

 

제가 소개하려는 건 xp level을 이용해 원하는 인챈을 얻을 수 있는 간단한 인챈 자판기(?)입니다.

예를 들어 xp level 10 이상인 사람이 1번 버튼을 누르면 xp level 10을 소모하면서 손에 들고 있는 도구(예: 다이아 곡괭이)에 unbreaking III + efficiency III 인챈을 받는 겁니다.

당연히 xp level이 부족한 사람에게는 효과가 적용되지 않고요.

일종의 레벨별 혜택 부여 시스템이라고 볼 수 있겠습니다.

 

첨부 그림을 보시면 회로 그림을 보실 수 있습니다.

우선 전체는 서바이벌 모드의 일반 플레이어들이 회로를 조작할 수 없도록 베드락으로 감싸져있습니다.

(회로를 보여주기 위해 천장은 덮지 않았습니다)

 

내부 회로는 크게 4가지 영역으로 나눠져 있습니다.

 

먼저 interface 부분은 단순히 버튼과 안내 문구가 써있는 sign이 전부입니다.

이 시스템의 경우

xp level 10 => unbreaking III + efficiency III,

xp level 20 => unbreaking III + efficiency IV + fortune III,

xp level 30 => unbreaking III + efficiency V + silk touch I

을 부여하도록 했습니다.

 

Querier 부분은 하나의 input signal을 둘로 나눠서 한쪽은 3 tick delay, 다른 한쪽은 아래와 같은 명령이 설정된 command block을 통과합니다.

/testfor @p[x,y,z,r,lm=10]

여기서 x,y,z는 플레이어를 찾고자하는 중심점의 정수 좌표로 제 경우 버튼과 동일하게 했으며

r은 중심점으로부터 최대 radius를 나타내므로 3 블록 이내에서 찾도록 3으로 설정했습니다.

lm은 최소 요구 xp level로 버튼에 따라 10, 20, 30으로 설정했습니다.

이 command block이 성공할 경우(조건에 맞는 플레이어가 있을 경우) 그 위에 붙은 comparator로 신호가 나오게 됩니다.

이때 나오는 신호의 세기는 검색된 플레이어들의 인원수인데, 제 경우 보통 1명만 사용한다고 가정하여 바로 AND gate 입력으로 연결시켰습니다.

여기서 delay를 넣은 이유는 testfor 명령이 들어있는 command block은 그 상태가 새로운 signal을 받을 때만 업데이트되기 때문에 조건에 맞는 플레이어가 한번 작동시킨 후 조건에 맞지 않는 플레이어가 다시 이어서 작동시킬 때 남아있는 신호로 오작동하지 않게 하기 위해 command block이 먼저 작동하도록 하는 역할입니다.

 

AND gates 부분은 앞서 delay된 signal과 command block이 조건에 맞는 플레이어를 찾는 2가지 조건이 모두 만족되었을 경우만 다음 단계로 신호가 가도록 하는 역할을 합니다.

AND gate 만드는 방법은 마인크래프트 위키를 찾아보시면 되겠습니다.

 

그리고 마지막 Action 부분에서 command block 별로

/enchant 33 3 @p[x,y,z,r]

/enchant 34 3 @p[x,y,z,r]

...

/xp -10L @p[x,y,z,r]

이런 식으로 명령을 넣어서 원하는 인챈과 xp level 소모를 구현합니다.

역시 enchantment ID 같은 건 마인크래프트 위키를 보시면 나옵니다.

 

이 장치에서 버튼은 3개가 있지만 보여지는 회로는 2개뿐인데 level 20 짜리 회로는 공간 부족으로 지하에 만들었습니다.

기본 구성은 똑같습니다.

 

아마 custom map 만드시는 분들이나 플러그인 없이도 뭔가 멀티서버에 보상 시스템을 만들고 싶다 하시는 분들은 참고하시면 좋을 것 같습니다. :)

/testfor 대신 /clear 명령을 이용하면 플레이어의 인벤토리에서 특정 아이템을 검색해서 없애고, 없애는 것이 성공(플레이어가 해당 아이템을 가지고 있을 때)했을 때 comparator로 신호를 받아서 아이템을 가지고 있는지 여부로 조건을 거는 것도 가능합니다.

다만 이 경우 개수를 지정할 수 없다는 단점이 있어서 본격 경제 시스템화하기에는 아직 무리가 있습니다.

 

참고로 멀티서버에서 command block을 사용하려면

server.properties (서버 설정 파일) 에 enable-command-block=true 세팅이 추가되어야 하고(기본값은 false)

op 권한을 가진 사람이 creative mode에서만 command block에 명령을 설정할 수 있습니다.

 

참고 자료:

http://minecraft.gamepedia.com/Enchanting#Enchantments

http://minecraft.gamepedia.com/Commands

http://minecraft.gamepedia.com/Command_Block

아침놀 님의 게시글 댓글
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [3] 을 클릭하면 간단한 회원메모를 할 수 있습니다.
삭제 되었습니다.
아침놀
IP 112.♡.104.90
01-23 2014-01-23 11:16:07 / 수정일: 2017-04-30 12:55:35
·
미리 예상 가능한 인챈 받는다는 게 장점이죠. 제가 적은 거 말고 다른 인챈들도 가능하고 인챈이 아니라 아이템을 얻는 것도 가능하고요.
rsaw3925
IP 203.♡.206.50
01-22 2014-01-22 02:13:11 / 수정일: 2017-04-30 12:55:35
·
인잰자판기라니!! 재밋네요. 그나저나 게임하고싶은데 하지 못하는게 슬프네요.
아침놀
IP 112.♡.104.90
01-23 2014-01-23 11:16:25 / 수정일: 2017-04-30 12:55:35
·
저도 요새 바빠서 찔끔찔끔.. ㅠㅠ
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB
업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.