h1. SkillBasicAttackSequence -------------------------------------------------- h2. 개요 - 스킬 데이터를 정의하는 데이터시트다. - 데이터시트의 1줄이 스킬 1종의 데이터를 나타낸다. - 여기서는 각 스킬의 공통 특성 외에는 상세한 능력 데이터를 정의하지 않는다. : 스킬들은 능력을 해석하는 방식이나 종류가 스킬마다 전부 다를 수 있기 때문에, 데이터시트의 조합만으로 완전히 없던 스킬의 동작구성을 만들기는 어렵다. (가능하지만, 스크립트 구조는 훨씬 더 추상화되고 복잡해져서, 별도의 도구 프로그램 없이 사람이 수동으로 편집하기는 쉽지 않아진다.) 그래서 각 스킬들은 데이터시트에서는 능력에 대한 매개변수 목록만 문자열 목록(list)의 형식으로 받고, 이에 대한 해석은 사전에 프로그램 코드에 구현되어 있는 개별 종류의 스킬 객체에 위임한다. - 위와 같은 이유 때문에, 결국 여기에서 정의하는 스킬들은 모두 프로그램 코드 단계에서 매개변수들의 해석 형식을 별도로 구분하여 정의하고 있어야 하므로, *원래 프로그램 코드에서 구현하지 않았던 스킬을 데이터시트만으로 만들 수는 없다.* - 이 데이터시트에서 정의하는 스킬 객체들은 결국 *스킬의 능력을 설정하기 위한 매개변수들을 해석하는 방식*을 규정할 뿐이며, 실질적인 스킬 능력은 '어딘가에서 주어지는' 매개변수들의 목록이라 할 수 있다. - 또한, 여기 스킬 객체들은 플레이어 캐릭터들이 직업 클래스마다 고유하게 내장하고 있는 스킬, 몬스터의 능력으로 지정되어 있는 스킬 외에도 아이템의 능력 옵션의 한 방식으로도 작동하게 되어 있는 소위 '아이템 스킬'들도 전부 포함하는 개념이다. : 따라서 *스킬 객체 그 자체는, 특정한 캐릭터의 종류 및 직업과 직접적인 관련이 없다*고 할 수 잇다. -------------------------------------------------- h2. [1] Read h3. 형식 - 적용 대상 : 툴 - 자료형 : bool h3. 설명 툴에서 해당 줄의 데이터들을 읽어들일지 아닐지 결정한다. 다음 값들을 사용할 수 있다. *TRUE* : 툴은 그 줄의 데이터를 읽는다. *FALSE* : 툴은 그 줄의 데이터를 읽어들이지 않는다. 툴은 데이터시트에서 읽어들인 줄의 데이터들로만 데이터 스크립트를 제작한다. 따라서, 이 필드를 이용해서 특정한 줄의 데이터들을 선택적으로 게임에 적용하거나, 혹은 적용하지 않게 만드는 데 쓸 수 있다. 예를 들어, 데이터시트에 테스트를 위해 임시로 넣은 데이터가 많은데, 이런 기능이 없는 경우, 게임에 빌드를 하기 위해서는 테스트 데이터를 그대로 사용하든가 아니면 제거해야 한다. 그런데 작업 경과에 따라 이제까지의 작업이 아깝거나, 게임 빌드 이후에 또 실험하던 데이터를 써야하는 등의 갖가지 이유 때문에 게임 빌드에 적용할 동안만 '잠시 툴이 특정 줄들의 데이터를 읽지 못하게' 하고 싶을 수 있다. 이 필드는 그런 경우에 사용할 수 있다. -------------------------------------------------- h2. [2] Comment h3. 형식 - 적용 대상 : 툴 - 자료형 : string h3. 설명 편집하는 사용자에게, 현재 편집하는 줄이 무엇을 위한 데이터인지 알려주는 주석을 적는 공간이다. 따라서 대부분은 순전히 데이터시트를 편집하는 사람의 편의를 위한 필드이기 때문에, 툴에서 데이터 스크립트로 변환할 때 이 필드의 값은 무시한다. 이 필드에 들어가야 하는 값에 대한 규칙도 특별히 존재하지 않는다. 다만, 소스 파일에 데이터 값을 상수로 정의하여 내보내는 경우, Comment 필드의 값은, 소스 코드에서 해당 상수의 역할을 설명하는 주석문으로 사용한다. -------------------------------------------------- h2. [3] Character_Code h3. 형식 - 적용 대상 : 공통 - 자료형 : EodGTC : key_reference : Character h3. 설명 대상이 되는 캐릭터 데이터의 식별 코드. 이 값은 [[Datascript_Character|Character]] 데이터시트의 필드에서 정의한 값이어야 한다. 이 값은 다중 열 데이터(Multi-Line Data)로 구성한다. 따라서, 이 열의 위치에 있는 각 줄의 값들은 [] 기호 안에 인덱스 번호를 넣어서 순번을 구분한다. 인덱스는 0부터 순차적으로 숫자를 1씩 증가시키면서 매겨야 한다. 각 열에 인덱스를 부여하지 않을 수는 있지만, 그럴 경우에는 데이터 스크립트에 실제로 데이터가 적재되는 순서는 변환기 프로그램이 자동으로 결정한다. 인덱스의 값은 프로그램 내부적으로 int로 취급하기 때문에, int의 한계값(약 21.47억)을 벗어나지 말아야 한다. 자료형에 선언한 [] 기호 내부의 문자열 값은, 다중 열 데이터를 소스 코드에서 표현할 때 사용할 객체 선언 이름이다. -------------------------------------------------- h2. [4] Skill_Code h3. 형식 - 적용 대상 : 공통 - 자료형 : EodGTC : key_reference : Skill h3. 설명 일반 공격 콤보를 구성할, 일반 공격의 스킬 데이터 식별 코드. 이 값은 [[Datascript_Skill|Skill]] 데이터시트의 필드의 값이어야 한다. -------------------------------------------------- h2. [5] Time_To_Reset h3. 형식 - 적용 대상 : 공통 - 자료형 : float h3. 설명 콤보가 초기화될 때까지의 대기 시간. 이 시간이 지나면 콤보가 초기화되어, 다시 필드 값이 0인 스킬부터 사용하게 된다. * 시간은 초 단위로 고정한다.