동접 쭉 유지될줄 알고 우유렐름 한달 더 질렀다가

갑자기 동접 조져버려서 현타온김에 써보는 소소한 커맨드 블록 활용팁.


우유렐름엔 공지사항이랑 주민상점, 데스페널티, 경험치병 강화가 있음.



viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b2931df6810f34f4df740f7b178e788a6ce61144b682419996


접속시마다 출력되는 공지사항



viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b29359a6d66430f5def4e98435d3dc63a083a7d8242f554db4bd76e6c3


거래 아이템을 지정해서 뽑은 주민으로 만든 마켓



viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b29359a6d66430f5def4e98435d3dc63a0d3aa8e7572501de7f2b56d01


킵인벤인 대신 죽으면 5씩 떨어지는 레벨



먼저 렐름 설정 - 세계 설정에 들어가서

명령블록이 꺼져있다면 켜짐으로 바꿔줘

첨에 커맨드블록 쓰려고할때 이거 꺼져있는거 모르고 한참 해멨음



그 다음 명령블록은 크리에이티브 모드일때만 건드릴수 있어서

/gamemode creative ID

ID자리엔 자기 ID 써주면 돼

이렇게 써주면



이렇게 나와.


그 다음 /give ID minecraft:command_block 하면 인벤토리에 명령블록이 생길거야


그리고 스폰 근처에 깔아주는게 항상 청크로딩이 돼서 작동이 잘됨.




#1 접속시마다 공지사항 띄우기



viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b29359a6d66430f5def4e98435d3dc63a084ab8b7222001ae015f8f018


보라색은 반복형, 무조건적, 항상활성화

연두색은 연쇄형, 조건적, 항상활성화


viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b2931df6810f34f4df740f7b178c7adc30e71243b2825b8796


놓을때 방향 잘 보고 놓고


2개짜리에 보라색, 연두색 순서대로

scoreboard objectives add Leave_game minecraft.custom:minecraft.leave_game

scoreboard objectives add Join dummy


가운데 2개짜리에 위에처럼

execute as @a[scores={Leave_game=1}] run scoreboard players set @s Join 1

execute as @a[scores={Leave_game=1}] run scoreboard players set @s Leave_game 2


그리고 3개짜리는 공지사항이 몇줄이냐에 따라서 늘어나. 텍스트에 엔터를 어떻게 처리해야 할 지 몰라서 그냥 여러개 놨어

execute as @a if score @s Leave_game > @s Join run tellraw @s {"color":"blue","text":"환영합니다!"}

execute as @a if score @s Leave_game > @s Join run tellraw @s {"color":"white","text":"커맨드 초보의 소소한 커맨드활용"}

execute as @a if score @s Leave_game > @s Join run scoreboard players operation @s Join = @s Leave_game


줄 수를 늘리고싶으면 연두색을 더 놓고 tellraw를 계속 이어서 쓰면 돼




#2 주민상점 만들기


viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b2931df6810f34f4df740f7b17dd7b8f33b61340e5825b8796

이렇게 원하는 아이템을 에메랄드 주고 살 수 있는 주민들을 쭉 뽑아놓으면 되는데

어떻게 뽑냐면


viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b2931df6810f34f4df740f7b178428da60e54246e2825b8796


커맨드 블럭 놓고 버튼하나 달아준 담에


/summon minecraft:villager X Y Z 좌표적기{Offers:{Recipes:[

{maxUses:1000000,buy:{id:"minecraft:emerald",Count:에메랄드갯수},sell:{id: "minecraft:아이템이름",Count:아이템갯수},uses:0,rewardExp:0b},{maxUses:1000000,buy:{id:"minecraft:emerald",Count:에메랄드갯수},sell:{id: "minecraft:아이템이름",Count:아이템갯수},uses:0,rewardExp:0b},{maxUses:1000000,buy:{id:"minecraft:emerald",Count:에메랄드갯수},sell:{id: "minecraft:아이템이름",Count:아이템갯수},uses:0,rewardExp:0b}

]},Profession:0,CustomName:"{"text":"이름적어줘"}",CareerLevel:2,Career:3}


중간에 있는 기울어진 글자에 있는 부분만 수정해서 커맨드 블럭에 입력한 다음, 버튼을 눌러주면 입력한 좌표에 소환돼.

교환할 아이템 종류를 늘리거나 지우려면

{maxUses:1000000,buy:{id:"minecraft:emerald",Count:에메랄드갯수},sell:{id: "minecraft:아이템이름",Count:아이템갯수},uses:0,rewardExp:0b},

이거 추가하거나 지우면 돼.


F3+H 눌러서 뽑을 아이템 이름 봐가면서 하면 편하더라고.

미리 상점처럼 꾸며놓고 뽑으면 더 좋아.




#3 죽을때마다 경험치 감소시키기


viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b2931df6810f34f4df740f7b178c2cdf64b11140e7825b8796

커맨드블럭 이렇게 깔아주고


viewimage.php?id=20b4de23e6c039a07a&no=24b0d769e1d32ca73cee82fa11d028317b450a23a99188d24b1fca77b606b57732012b0cadc812b29359a6d66430f5def4e98435d3dc63a084ab8b7222001ae015f8f018


보라색은 반복형, 무조건적, 항상활성화

연두색은 연쇄형, 조건적, 항상활성화


보라색 하나에

scoreboard objectives add Death deathCount


보라색 하나, 연두색 두개에 차례대로

execute as @a[scores={Death=1}] run tellraw @s {"color":"yellow", "text":"죽음으로 인해 레벨이 5 감소합니다."}

execute as @a[scores={Death=1}] run xp add @s -5 levels

execute as @a[scores={Death=1}] run scoreboard players reset @s Death


이렇게 써주면 잘 작동해.

이거 하기 전에 /gamerule keepInventory true 먼저 쳐주는거 잊지 말고.



#4 경험치병 경험치량 늘리기


보라색 하나 연두색 하나에 차례대로

execute as @e[type=minecraft:experience_bottle] at @s run summon minecraft:experience_orb ~ ~ ~ {Value: 100}

execute as @e[type=minecraft:experience_bottle] at @s run kill @s


Value에 원하는 경험치량 넣어주면 돼. 0~30렙까지 경험치 1400정도 되는거같으니 맞춰서 조정해주면 돼.