Mob Talker/스크립팅

상위 항목 : 마인크래프트, 마인크래프트/모드, Mob Talker

몹토커 모드의 스크립팅 방법에 대해 다루는 문서이다.

1 몹토커 1

가장 배우기 쉬운 스크립트.

텍스트 파일에 글을 써 넣으면 대사가 되며, 몇 가지 명령어만 입력해 주면 스크립트를 만들 수 있다.

1.1 공통 명령어

1.1.1 #SET_NAME

사용례 : #SET_NAME 이름
띄어쓰기 주의. 위 명령어로 이름 창에 출력되는 이름을 바꿀 수 있으며,

1.1.2 #Face

사용례 : #Face Angry
위 명령어로 몬스터의 표정을 바꿀 수 있다.
지원 표정은 다음과 같다.
Angry
Happy
Normal
Sad
Shy
Tired

1.1.3 #END

해당 스크립트를 끝낸다. 스크립트가 끝날 때마다 불러와야 한다.

1.1.4 #CONDITION

사용례 : #SET_NAME Cupa
고... 고양이...!!! 저리 치워줘! 저리! 제발! 부탁이야! !!!!!

  1. CONDITION{[네 옆에 있는 거 같은데?,Option1A],[무슨 고양이? ,Option1B],[내가 데리고 있는 얘 말이야?,Option1C]}
  2. END

선택지를 출력하고, 선택 시 해당하는 파일의 스크립트를 읽어 온다.[1]
3 초과로 쓰인 스크립트가 없어 3가지 이상 선택지를 주었을 경우는 불명.

1.1.5 #MAKESHADOW

  1. INCREASE_LOVE와 함께 몹토커 모드의 핵심이다.

Friendly 폴더 전 몬스터의 이름이 쓰인 폴더 내 Normal.script에 들어가는 스크립트. 이 스크립트를 읽어올 경우 Shadow 모드에 진입해 다음 대화부터는 Friendly 폴더 내의 love0.script를 읽어오게 되며, 몬스터가 하던 행동 양식은 그대로 따라하나 공격을 하진 않는다. [2]

1.1.6 #FETCH_NAME

플레이어 이름을 스크립트 내에 사용하기 전 꼭 불러와야 한다.
예를 들면

  1. FETCH_NAME

(playername)
이라고 썼을 경우 대사에는 플레이어의 이름이 출력되지만, fetchname을 불러오지 않았을 경우 (playername)이라고 그대로 출력되니 주의.

1.1.7 ::

콜론 두개 맞다.
몹토커1의 스크립트는 엔터가 쳐졌을 때는 다음 대사로 인식한다.


이라고 스크립트가 써졌을 경우 ㅁ라는 대사가 출력된 뒤 클릭해 다음 대사로 넘기면 ㄴ가 출력된다는 것.
그러나 ㅁ::ㄴ
라고 썼을 경우 줄바꿈이 되어


라고 출력되게 된다.

1.1.8 #SELF_DEAD

불러왔을 시 몬스터가 사라져, 다시는 나타나지 않는다.
SELF_DEAD 명령어를 사용했을 시 REV_TRANS 명령어로 해당 몬스터의 기억을 없애 줘야 한다.
예시 :

  1. SELF_DEAD
  2. REV_TRANS

1.2 Shadow 모드 전용

1.2.1 #REV_TRANS

후술할 Shadow 모드에서 빠져나간다.

1.2.2 #ATTACK

이 명령어를 호출했을 경우 attack 명령어 뒤의 숫자만큼 플레이어가 데미지를 입는다.

1.2.3 #INCREASE_LOVE

몹토커 1의 핵심.
몹토커 1의 경우 대사를 love0.script, love1.script...등으로 관리하는데, 예를 들어 love0.script에서 #INCREASE_LOVE 1을 호출했을 경우 다음 대화에서는 love1.script의 대사를 출력한다. 이 경우 100을 넘어가면 게임이 깨진다고 하니 주의 요망.

1.2.4 #DECREASE_LOVE

INCREASE_LOVE와 비슷한 효과를 내나, 이 경우 1->0으로 내리는 등의 효과를 내며, 0 아래로 내려가게 될 경우 마찬가지로 게임이 깨져 버린다고 한다.

1.2.5 #FINISH_DAY

그 날의 대화를 끝낸다. 이 명령어를 읽었을 경우 마인크래프트 상에서 하루가 지나기 전까진 해당 날짜의 default.script 파일의 대사만 출력한다.

1.2.6 #SET_FOLLOW

true로 설정했을 경우 몬스터가 자신을 따라다니며, false로 설정했을 경우 해제된다. 대화를 걸었을 때 몬스터가 보던 방향 그대로 따라온다는 점과, 거미 및 동굴거미의 경우 벽타기가 불가능하다는 점 등이 소소하게 아쉽다.

1.2.7 #SET_ESCORT

ON으로 했을 경우 몬스터가 주변의 적대적 몬스터를 공격하며, OFF로 했을 경우 취소한다.
ON/OFF를 쓰지 않았을 경우 토글한다.

1.2.8 #SET_ACTIVE_ATTACK

공식 위키에 따르면, Shadow화된 몹이 플레이어에게 적대적[3]이 된다고 하며, 완벽하게 작동되는 기능인지 알지 못한다고 한다.

2 몹토커 2

Lua 언어를 사용하는지라 상당히 복잡하다. 그러나 포럼에 몹토커 1의 스크립트를 몹토커 2의 스크립트로 바꿔 주는 프로그램[4]이 있으며, Lua 언어에 대해 해박하지 않은 경우 몹토커 1으로 스크립트를 짜 몹토커 2로 바꾸는 것이 더 나을 것이다.

변환 시 주의점으로, 한글을 사용 시 사용된 한글*2만큼 공백 또는 영어, 특수문자를 맨 끝에 넣어 줘야 한다[5] . 이렇게 하지 않고 한글만 넣은 경우 마인크래프트가 멈추거나 고장나므로 주의.
예시 :
난 크리퍼야!
라는 대사를 사용하고 싶다면,
난 크리퍼야!..........

같은 식으로 쓴 뒤 변환해 줘야 한다.
  1. 위 예시에서 네 옆에 있는 거 같은데?를 선택했을 경우 Option1A.script의 스크립트를 읽어 온다는 뜻.
  2. 스노우 골렘으로 실험했으며, 스켈레톤에게 눈덩이를 던지던 스노우 골렘을 Shadow 모드로 진입시킨 결과 눈덩이를 던지지 않았음
  3. 공격한다.
  4. 자바로 만든 것으로 보인다.
  5. 한글 등 2바이트 문자를 제대로 잡지 못해 일어나는 현상으로 보이며, 이렇게 들어간 1바이트 문자는 마인크래프트 내에서 출력할 때 사라진다.