KKS 문서

위키 포맷으로 되어있어서 조금 지저분합니다. 나중에 수정 예정.

—–

KKS는 Killing floor Koreanization Script 를 뜻하는 조금 이상한 확장자이다.

프로젝트에서 한글화를 위해 쓰인 스크립트 파일이다.

===== 기본 문법 =====
명령어|인자1|인자2|인자3….

전부 이렇게 생겼다.

주석은 ; 를 사용하면 되겠다.

===== 명령어 =====
**SetFile**
SetFile|파일

고칠 파일을 미리 선택하게끔 해주는 명령어이다.

이 명령어를 실행하면서 파일의 유니코드 관련 처리도 한다.

다른 것들을 쓰기 전에 꼭 한번은 들어가야 함.

**SetSection**

SetSection|섹션

우선 이걸 설명하기 전에, 킬링 플로어의 텍스트 파일은 이런 구조로 되어있다.

[[Section]]
Foo=”Bar”

이때 Section 부분을 매번 입력하기는 귀찮으니, 고치기 전에 미리 지정해줄 수 있다.

꼭 써야되지는 않지만 쓰면 편한 명령어이다.

**Write**

Write|섹션|텍스트=”내용”
Write|텍스트=”내용”

섹션을 지정해줄 경우 지정해준 섹션에 맞춰서 파일을 쓰고

지정하지 않을 경우 SetSection으로 지정했던 섹션에 맞춰서 쓴다.

**cWrite**

cWrite|섹션|”원문”|텍스트=”내용”
cWrite|”원문”|텍스트=”내용”

섹션을 지정해줄 경우 지정해준 섹션에 맞춰서 파일을 쓰고

지정하지 않을 경우 SetSection으로 지정했던 섹션에 맞춰서 쓴다.

Write랑 다른점은, 쓰기전에 원래 내용이 “원문” 과 일치하는지 먼저 체크한 후

일치할 경우에만 내용으로 덮어쓴다.

주의할점은 원문도 무조건 따옴표로 묶여있어야 한다는 것.

사용 예:

cWrite|AA12AmmoPickup|”12-Gauge Drum”|PickupMessage=”12-게이지 드럼”

**rWrite**

rWrite|섹션|”원문”|텍스트=”내용”
rWrite|”원문”|텍스트=”내용”

섹션을 지정해줄 경우 지정해준 섹션에 맞춰서 파일을 쓰고

지정하지 않을 경우 SetSection으로 지정했던 섹션에 맞춰서 쓴다.

cWrite랑 다른점은, 원문을 “찾아바꾸기” 하여 부분적인 번역이 가능하다는 것이다.

주의할점은 원문이 따옴표로 묶여있지 않다면 끔찍한 일이 벌어짐.

사용 예:

예: 원문이 “12-Gauge Drum” 일때

rWrite|AA12AmmoPickup|”Drum”|PickupMessage=”드럼”

이걸 거치면
“12-Gauge 드럼” 이 된다.

**FileCopy**
FileCopy|원본파일명|대상파일명

파일을 복사하는 명령어이다.

안전을 위해 원본 파일은 Data 폴더에서만 지정 가능하고, 대상 파일은 킬링 플로어 설치경로에만 지정 가능하다.

**RunScript**
RunScript|스크립트.kks

스크립트 처리 중 다른 스크립트를 호출한다.

스크립트가 너무 길어서 분할하고 싶을때 용이.

**MessageBox**
MessageBox|내용

단순히 그냥 메세지박스를 띄운다. 별거 없다.

**MessageBoxYesNo**
MessageBoxYesNo|내용

메세지박스를 띄우고, 예, 아니오, 취소 값을 기억한다.

**Exit**
Exit

프로그램을 종료한다.

===== 조건문 =====
MessageBoxYesNo로 받은 값에 따라 조건문의 사용이 가능하다.

사용하려는 명령어 앞에

!Yes| 혹은 !No| 혹은 !Cancel| 을 쓸 수 있다.

예제 프로그램:

MessageBoxYesNo|테스트
!Yes|MessageBox|예를 눌렀습니다.
!No|MessageBox|아니오를 눌렀습니다.
!Cancel|MessageBox|취소룰 눌렀습니다.

===== 매크로 =====
%BAR% – | 를 반환한다. 스크립트에서 |를 구분자로 쓰기때문에 텍스트에서 |가 필요할시 사용한다.

%EQUAL% – = 를 반환한다. 위의 이유와 같다.

%CRLF% – 줄바꿈(엔터키)을 반환한다. 통상적으로는 쓸 일이 없으나, 메세지박스의 줄바꿈에 쓴다.

%POUND% – £ 기호를 반환한다. 파일 인코딩 문제때문에 만들어졌다.