개인 자료란 (JE)

  서버 커뮤니티

Profile 코리3855 대표칭호 없음

cory3292 f52f80e25dbd4c21940969d0098be481

Profile

질문하기 스크립트

스크립트 질문입니다...

2021.02.08 조회 수 262 추천 수 0
이해도 1.12 
게임버전 (JE) 모드버킷 
스크립트 버전 입문자(아무것도 몰라요) 
스크립트 애드온 2.2-dev37c 

catServer서버 입니다

제가 머리가 나빠서 그런걸까요?? 이제는 제가 너무 한심한 지경까지 이르렀습니다....

왜자꾸 정말 간단한 명령어에서 에러가 나는지 도무지 이해할 수 없습니다...

전체 구문은 이렇습니다...

on join:

    if {배지.%uuid of player%} is not set:

        set {배지.%uuid of player%} to 0

options:

    s : &9[&e포켓몬&9]

command /배지:

    trigger:

        if {배지.%uuid of player%} > 0 :

            message "{@s} &6현재 보유한 배지의 수는 &f%{배지.%uuid of player%}%&6개 입니다."

        else:

            message "{@s} &6현재 보유한 배지의 수는 &f0&6개 입니다."

command /배지보기 [<player>]:

    trigger:

        if player is op:

            message "{@s} &d%arg 1%&6님이 보유한 배지의 수는 &f%{배지.%uuid of arg 1%}%&6개 입니다."

command /배지추가 [<player>]:

    trigger:

        if player is op:

            if {뱃지.%uuid of arg 1%} < 10:

                add 1 to {배지.%uuid of arg 1%}

                message "{@s} &d%arg 1%&6님에게 배지를 1개 추가하였습니다. 현재 &d%arg 1%&6님의 배지의 수는 %{배지.%uuid of arg 1%}%&6개 입니다."

            else:

                message "{@s} &d%arg 1%&6님은 배지가 &f%{배지.%uuid of arg 1%}%&6개 입니다. 더 이상 배지를 추가할 수 없습니다."

command /배지제거 [<player>]:

    trigger:

        if player is op:

            if {배지.%uuid of arg 1%} > 0:

                subtract 1 from {배지.%uuid of arg 1%}

                message "{@s} &d%arg 1%&6님에게 배지를 1개 제거하였습니다. 현재 &d%arg 1%님의 배지의 수는 %{뱃지.%uuid of arg 1%}%개 입니다."

            else:

                message "{@s} &d%arg 1%&6님은 배지가 &f%{배지.%uuid of arg 1%}%&6개 입니다. 더 이상 배지를 제거할 수 없습니다."

저는 도무지 뭐가 문제인지 잘 모르겠는데 리로드를 하면

>sk reload 배지

[03:52:21] [Server thread/INFO]: [Skript] Skript command.reload.reloading

[03:52:21] [Server thread/ERROR]: Can't understand this expression: uuid of player (배지.sk, line 2: if {%uuid of player%.배지} is not set:')

[03:52:21] [Server thread/ERROR]: Can't understand this expression: uuid of player (배지.sk, line 8: if {배지.%uuid of player%} > 0 :')

[03:52:21] [Server thread/ERROR]: 'else' has to be placed just after an 'if' or 'else if' section (배지.sk, line 10: else:')

[03:52:21] [Server thread/ERROR]: Can't compare  types.classinfo with 'op' (배지.sk, line 14: if player is op:')

[03:52:21] [Server thread/ERROR]: Can't compare  types.classinfo with 'op' (배지.sk, line 18: if player is op:')

[03:52:21] [Server thread/ERROR]: Can't compare  types.classinfo with 'op' (배지.sk, line 26: if player is op:')

[03:52:21] [Server thread/INFO]: [Skript] Skript command.reload.error

이런식으로 나옵니다... 뭐가 문제인 걸까요??

혹시 제가 최근의 캣서버 버킷을 최신꺼로 바꿨는데 그게 문제일까요?


5개의 댓글

스크립터브혼
2021.02.08

항상 모드서버가 문제죠. 먼저 버킷 기반 서버(버킷, 스피곳, 페이퍼)에서 테스트해 보세요.
모드서버에서 스크립트를 사용하실때는 항상 버킷 기반 서버와 모드 서버 두 곳에서 같이 테스트를 해야합니다.

스크립트는 모드 서버를 지원하지 않아요.
모드에서 버킷의 기반이 되는 바닐라 코드를 수정했다면 오류가 발생합니다.

코리3855
2021.02.08
@스크립터브혼

그러면 바닐라 코드는 스피곳에서 하고 모드 관련된 코드는 모드버킷에서 수정해야 한다는건가요?

스크립터브혼
2021.02.08
@코리3855

아뇨 플러그인, 모드 개념을 혼동하시는 것 같은데요.

플러그인은 마인크래프트에서 제공하는 소스만을 사용해서 기능을 확장하는 프로그램을 말합니다.

모드는 제공되는 소스 외 새로운 소스를 추가하거나, 제공된 소스를 변형한 프로그램을 말하구요.

 

스크립트는 플러그인이고, 모드버킷은 모드 서버입니다.

스크립트는 마인크래프트가 제공하는 소스를 사용하여 개발된 플러그인이기 때문에 소스가 바뀌어선 안됩니다.

그런데 모드버킷은 모드서버이기 때문에 설치된 모드에 따라 소스가 바뀔 수도 있는거죠.

 

이건 프로그래밍 레벨이라 스크립트 사용자가 어떻게 할 수 있는 영역이 아닙니다.

코리3855
2021.02.08
@스크립터브혼

아...그렇군요... 알겠습니다..

코리3855
2021.02.09
@스크립터브혼

다시보니 mods파일에 제가 착각했는지 애드온들이 들어가 있더라구요 ㅎㅎ 그래서 빼고 실행시켜보니 문제가 모두 해결되었습니다. 감사합니다!

뉴스 및 창작물
/files/thumbnails/268/789/003/262x150.crop.jpg?20240515192032

레드스톤

벌레먹은 돌 빠르게 제거하는 법

GlassesFilm

2024-05-15

0

/files/thumbnails/797/788/003/262x150.crop.jpg?20240515090924

건축

마인크래프트로 구현한 카르카손 보드게임

Warak

2024-05-15

1

/files/thumbnails/487/784/003/262x150.crop.jpg?20240508233607

모드

Windows Borderless 모드에서 악성코드 발견

학교가기싫다

2024-05-08

1

/files/thumbnails/384/778/003/262x150.crop.jpg?20240512002324

업데이트

마인크래프트 자바 에디션 스냅샷 24w18a

학교가기싫다

2024-05-06

0

/files/thumbnails/855/781/003/262x150.crop.jpg?20240505141129

레드스톤

레이저 클리너

GlassesFilm

2024-05-05

1