mount & blade warband 모드 개발: WRECK, 향상된 컴파일러 키트
어제는 모듈 시스템의 구조와 기능, 절차를 알아보고 모듈 시스템 작업 이후에 모드를 완성하기 위해 무엇이 더 필요한지를 살펴봤습니다. 오늘은 모듈 시스템의 비효율을 개선한 유저 컴파일러에 대해 알아봅니다.
W.R.E.C.K
테일월드 포럼에 올라온 이 컴파일러는 유명 모드를 개발한 사람들이 추천하는 컴파일러입니다. 테일월드가 배포하는 기본 모듈 시스템은 배치파일(build_module.bat
)이 process_
파일을 정해진 순서대로 실행하여 결과물을 출력하는 방식입니다.
향상된 컴파일러 키트 W.R.E.C.K(Warband Refined & Enhanced Compiler Kit)는 작업속도의 향상과 더불어 파일 시스템의 개선과 플러그인 시스템의 도입 등 추가기능을 붙였습니다.
설치
포럼에서 키트를 다운로드 받은 후, 압축을 해제합니다. 압축을 해제한 디렉토리 안에 copy_n_forget
라는 폴더가 있는데, 폴더 안의 내용물을 모듈 시스템으로 옮깁니다.
다음으로 module_info.py
를 제외한 모든 module_*.py
파일을 열어 아래 코드를 스크립트 최상단에 추가합니다. 단 # -*- coding: cp1254 -*-
과 같은 인코딩을 지정하는 내용이 문서의 제일 위에 있는 경우에는 그 아랫줄에 붙여넣습니다.
from compiler import *
여기까지 끝났다면 이제 build_module.bat
과 process_
로 시작하는 모든 파일들은 쓸 일이 없습니다.
플러그인 시스템
plugin_{이름}.py
과 같은 형태의 파일을 만들어 플러그인으로 활용할 수 있습니다. 플러그인은 다음 내용으로 시작합니다.
from compiler import *
register_plugin(__name__)
이제 모듈 시스템에서 사용하는 변수, 예를 들어 플러그인 파일에서 부대 정보를 의미하는 module_troops.py
의 troops
를 불러오면 부대를 추가할 수 있습니다.
troops = [
["npc_new_1","New Companion","New Companion",tf_hero|tf_unmoveable_in_party_window, 0, reserved, fac_commoners,[itm_leather_jerkin,itm_nomad_boots, itm_sword_medieval_a],
str_10|agi_9|int_13|cha_10|level(10),wp(110),knows_warrior_npc| knows_weapon_master_2|knows_power_strike_2|knows_riding_2|knows_athletics_2|
knows_power_throw_2|knows_first_aid_1|knows_surgery_1|knows_tactics_2|knows_leadership_2,
0x000000057f1074002c75c6a8a58ad72e00000000001e1a890000000000000000]
]
종속성
플러그인이 다른 플러그인의 데이터를 참조할 때,
from compiler import *
register_plugin(__name__)
require_plugin("plugin_require")
와 같은 형태로 종속성을 표시할 수 있습니다. 여러 플러그인을 참조할 경우에는
from compiler import *
register_plugin(__name__)
require_plugin("plugin_basic_math", "plugin_advanced_math")
처럼 콤마(,
)를 사용하여 참조 플러그인을 표시할 수 있습니다.
'종료한 프로젝트 > mount&blade(종료)' 카테고리의 다른 글
mount & blade warband 모딩: 아이템 플래그 (0) | 2019.11.27 |
---|---|
mount & blade warband 모드 개발: 아이템 코드 따라가기 (0) | 2019.11.26 |
mount & blade warband 모드 개발: 모드 적용하기 (0) | 2019.11.24 |
mount & blade warband 모드 개발: 모듈 시스템의 파일 시스템 (0) | 2019.11.24 |
마운트 앤 블레이드: 워밴드 모드 공부 시작 (0) | 2019.11.23 |
댓글