- 상위 항목: 문명 5
문명 5의 모드랑 데이터에 대한 항목.
목차
1 개요
문명 5는 모듈화가 되어 있어 모딩이 매우 쉬운 축에 속한다. 모드 문명 항목에 가면 알겠지만 별의별게 다 나온다. 문명 5의 모딩은 3부분으로 나뉘어져 있는데, 이는 데이터베이스 모딩, LUA 스크립트랑 추가적으로 모델링이나 텍스쳐 모딩이 있다. 데이터베이스의 경우 XML이나 SQL로 하며, LUA 스크립트는 말 그대로 LUA로 쓰며, 모델링의 경우 모델링 프로그램 + (텍스쳐를 위한) 이미지 에디터와 3자 파티 스크립트랑 공식 도구박스로 해결한다.
XML/SQL이랑 LUA로 모딩을 만드려면 스팀에서 문명 5 SDK를 받아서 ModBuddy를 돌리자. 이거 없이 순수히 텍스트 에디터로 모드를 만들 수 있기는 하지만 파일 임포트 같은 것을 수동으로 처리해야 하고 모드 요구사항/참조 같은 것을 더하는데 매우 불편해져서 그냥 이거 쓰는게 낫다.
2 도움말
- 로깅을 켜라
ModBuddy는 컴파일러지만 자체적으로 XML이든 LUA든 신택스 같은 것을 점검하지 않아서 모드를 막상 시험하려 하면, 특히나 첫작품일 경우 왠만해서는 오류가 쏟아져 나온다. 로깅을 키면 게임에서 무엇을 제대로 못 읽었는지 잡아준다. 로깅을 활성화하는 방법은 문명 5 세팅 폴더에 가는건데, 윈7 기준으로 기본적으로 내 문서/내 게임들/Sid Meier's Civilization 5가 그 폴더다. 그 폴더 안에는 config.ini가 있는데, 여기서 바꿔야 할 것은
EnableTuner = 1 (FireTuner를 쓸 경우)
ValidateGameDatabase = 1
EnableLuaDebugLibrary = 1 (LUA 코딩을 쓰는 모드를 썼을 경우)
LoggingEnabled = 1
이 네 항목이다. 이 것을 게임 시작 전에 바꿔서 저장하면 된다. 이중 LoggingEnabled와 ValidateGameDatabase는 필수적이며, 오류가 나타났다 하면 폴더 안의 Log 폴더에서 Database.log를 확인하면 된다. 보통 제작자의 모드에 오류가 있으면 제작자가 만들 파일에 연결된 오류가 로그에 잡힌다. 이 것에 있는 문제 덕에 문명이 제대로 돌아가지 않는게 십중팔구므로 아예 백업 config.ini 파일을 만들어서 빨리 Ctrl+CV를 할 수 있게 하자. LUA의 경우 위에 있는 코드에 오류가 있으면 밑에 있는 코드는 죄다 씹으므로, lua.log를 보아서 빨리 버그를 제거하자. (정확히는 Runtime Error일 경우이다. Syntax Error일 경우 그냥 코드 파일이 통째로 로드되지 않는다) 그리고 버그 잡느니라 모더는 몇시간동안 수십번 문명을 껐다 켜고 문명하게된다
- InGame Editor를 써라
아이템 효과 테스팅 같은 것에 도움이 된다. 또한 더미 건물들 같은것도 체크하므로 더더욱 유용하다. 더미의 경우 구분이 쉽도록 따로 Description 항목에 키를 적은후에 Language_ko_KR (한국어 기준)에 Row Tag="(Description항목에 넣은 키)" 항목을 만들어서 이름을 넣으면 된다.
- 게임 시작 누를 시 게임이 크래시하는 경우
건물 클래스랑 건물 XML을 체크해라. 클래스 이름이 정확히 건물 BuildingClass 항목의 것이랑 동일 해야하며, 클래스를 지정한 경우 그 클래스를 위한 건물이 있어야 한다. 없거나 틀리면 CTD.
-
Reload Landmark System을 키지 말 것
보통은 건드릴 일 없지만, 자원 모드를 만들 때 Landmark 태그 때문에 이를 키는 경우가 있다. 이를 킬 경우 문명 5의 안정성이 급감하므로 절대 키지 말자. 자원 텍스쳐 같은 모드는 이거 없어도 잘 돌아간다.
2.1 기본적 문제
2.1.1 문명이 안뜨거나 고유 유닛이 안나올 경우
위에 있는 로깅을 킨 후 통상적으로 Sid Meier's Civilization V 폴더에 있는 Database.log를 찾아야 한다. 윈도우스 7 기준으로 내 문서 -> My Games -> Sid Meier's Civilization V -> Logs 폴더로 들어가면 찾을 수 있다.
이것을 열어서 While executing이나 no such tables같은 항목이 나온 다음 줄에 제작한 모드 파일 이름이 있다면 거기에 문제가 있어서 파일에 있는 모든 내용이 통째로 읽히지 않으므로 꼼꼼히 점검해야 한다.
2.1.2 건설 패널이 안 나올 경우
건설 패널을 열 수 없으면 모딩에 따라 다르다. 하지만 문제와 이에 따른 해법은
- 새로운 유닛 종류이나 기술을 더하고 유닛의 기술 요구사항을 바꿨을때: 유닛의 기술 요구사항이 모드나 기본 게임에 들어있는 기술인지 꼼꼼이 확인해야 한다. 테크트리에 포함되어 있는 기술이 아닌 경우 건설 패널이 뜨지 않는다.
- 새로운 세계 회의 대업을 더했을 경우: 회의 대업과 관련된 Process의 유무를 확인해야 한다. 자세한 설명은 기타와 세계 대회 항목을 참조.
2.1.3 사회정책 UI가 뜨지 않을 경우
- 사회정책이 필요 하위 정책에 연결되었으나 이 정책이 똑같은 트리에 소속되지 않을 경우 뜨지 않는다.
2.1.4 사회정책 UI의 버튼이 안 뜰 경우
2.1.5 맵이 안나오고 그냥 승리로 끝나는 경우
스타팅 조건을 점검해라.
- REGION_GRASS - 초원
- REGION_PLAINS - 평원
- REGION_FOREST - 숲
- REGION_JUNGLE - 정글
- REGION_DESERT - 사막
- REGION_TUNDRA - 툰드라
3 ModBuddy 이용법과 파일 양식
우선적으로 문명 5 SDK 메뉴에서 ModBuddy를 키면 비쥬얼 스튜디오 2010을 기반으로 하는 IDE가 뜬다. 새로운 프로젝트를 만드는 것은 그냥 File->New...->Project를 눌러 뜨는 창에서 Empty Mod를 선택해 주고 그 후에 텍스트를 영문으로 적당히 써주면 된다.
그 후 비쥬얼 스튜디오 형식의 솔루션이 뜨며, 그 후 프로젝트 이름에 오른쪽 클릭을 통해 파일이나 폴더를 추가하고 편집하면 된다.
3.1 모드 파일 연결
그러나 그냥 파일만 다 쓰고 테스트 하려고 하면 아무것도 안뜨는데, 이유는 데이터베이스에 파일을 읽어 업데이트 하지 않았기 때문이다. 이들 중 XML이나 SQL 파일들은 모조리 데이터베이스 업데이트 행동에 연결 시켜야 하는데, 이를 하는 법은 프로젝트 이름에 오른쪽 클릭을 하여 Property를 선택한다. 그 후 Action 탭에 가서 Add를 누른 후 Event에서는 OnModActivated, Action에서는 UpdateDatabase를 선택해주고 지도자 씬 파일을 제외한 XML파일들을 모조리 선택해서 이렇게 연결해주면 된다. 왠만한 LUA 코드의 경우 Content 탭에 가서 Add를 누른 후 파일에서 LUA 파일을 우선 선택한 후 Type에서 InGameUIAddin을 선택해주면 땡.
그러나 그게 끝이 아니다. 텍스쳐 파일과 음악의 경우 따로 손을 봐줘야 하는데, 솔루션 탐색기에서 .dds 파일이나 음악 파일을 선택한 후에 오른쪽에 보면 Property 탭이 있는데, 여기서 Misc 하위 항목에 Import int(o VFS) 항목에 True라고 설정해 주어야 한다.
4 XML/SQL을 통한 데이터베이스 모딩
여기서는 문명 5의 기본 데이터베이스에 추가함으로서 새로운 요소를 추가하거나 기존의 요소를 변경한다. 문명 5의 Asset 파일들은 XML로 되어 있어서 참조하기 쉬워서 XML을 중심으로 서술한다.
하지만 게임 자체는 XML을 SQL로 전환해서 읽는다고 하니 SQL 방식도 차후에 추가바람.
4.1 문명 자체
새로운 문명을 더하겠다면 기본적으로 선택할 문명을 위한 XML(이나 SQL) 파일을 만들고 특정 태그들을 추가해야 한다. XML파일 기준으로 우선적으로 Civilization 항목을 만들고 그 안에 Row 항목을 만든 후에 그 Row 하위 항목 안에서 이것들을 더해야 한다. 후술할 Row의 경우 모두 XML 파일 기준이다. SQL 방식은 추가바람.
- Type: 게임 데이터상 문명 이름
- Description: 공식 이름. 지도자 이름 밑에 나온다.
- ShortDescription: 선택창에서 나오는 문명 이름.
- Adjective: 수식어. 외교나 유닛 위로 마우스를 올릴때 나오는 수식어같은 데서 쓰인다. (예를 들어 Adjective가 붕탁교라면 그 문명의 궁수 위에 마우스를 올리면 붕탁교 궁수라고 나온다)
- Civilopedia: 안 쓰인다.
- CivilopediaTag: 문명 백과사전에서 쓰일 수식어. 코드 자체는 하드코드 되어서 이 명칭 다음에 여러가지를 붙여 쓴다. 예를 들어 밑에 여러가지 항목의 대문의 경우 _HEADING_#이 붙는다.
- DefaultPlayerColor: 쓰이는 색깔. PlayerColor 항목을 만들고 거기에 Type에 적혀 있는 것을 쓰면 된다.
- ArtDefineTag: 추가바람. 효과는 없는 것으로 추정된다.
- ArtStyleType: 도시 모델 형태를 지정하는 태그 중 하나.
- ArtStyleSuffix: 도시 모델 형태를 지정하는 태그 중 하나.
- ArtStylePrefix: 도시 모델 형태를 지정하는 태그 중 하나.
- PortraitIndex: IconAtlas랑 AlphaIconAtlas에서 뽑을 인덱스. IconAtlas 항목에서 추가 설명을 함.
- IconAtlas: 요소들을 표기하는 아이콘 모음들. 여기서는 문명을 상징하는 문양을 위한 태그.
- AlphaIconAtlas: 위와 비슷하나, 이곳의 문양은 플레이어의 문명이 아닌 타 도시의 오른쪽에 나오는 문양과 종교 스크린에 나오는 문양을 위한 태그.
- MapImage: 게임 계속하기 스크린이나 문명 선택시 오른쪽에 나오는 길쭉한 이미지.
- DawnOfManQuote: 게임 시작시 로딩 스크린에서 나오는 대사 포인터.
- DawnOfManImage: 로딩 스크린에 나올 스플래시 이미지.
- SoundtrackTag: 문명이 쓸 사운드트랙. 기본적인 문화권인 Asian, European, African같은 것을 쓰거나 고유 사운드트랙을 쓸 수 있다.
- Playable: 플레이어가 선택 가능.
- AIPlayable: AI 플레이어가 선택 가능.
그 후에 추가적인 항목들을 만들어야 한다. 여기서는 볼드체는 (반)필수 항목. 주 항목 밑에 있는 항목들은 다 Row 하위 항목 안에서 쓰는 것이다.
- Civilization_Religion 항목: Row 하위 항목 하나.
- CivilizationType: 타 항목들도 들어간다. Civilization 항목에 있는 Type를 복사하면 된다.
- ReligionType: 선호하는 종교. 예를 들어 RELIGION_PROTESTANISM은 개신교, RELIGION_ORTHODOXY는 동방 정교를 뜻한다.
- Civilization_CityNames: 도시 하나마다 Row 하위 항목을 만들어야 한다. 도시를 개척할 때 쓰는 기본 이름들을 수식하며, 이게 없으면 타 문명의 도시 이름을 무작위로 가져가 쓴다.[1]
- CivilizationType: 동일하다.
- CityName: 포인터. 나중에 Language_언어태그에 링크하여 이름을 뽑는다.
- Civilization_SpyNames: 문명에게 주어지는 간첩들의 이름. 이게 없으면 스파이를 뽑게 될 경우 게임 진행이 안된다. 스파이 하나마다 Row 하위 항목을 만들어야 하며, 보통 9명을 적는다.
- CivilizationType: 동일하다.
- SpyName: 위의 CityName과 거의 동일한 맥락.
- Civilization_Leaders: 문명을 이끌 지도자.
- CivilizationType: 동일하다.
- LeaderHeadType: 나중에 넣을 Leader 항목에 있을 Type에 있는 내용물을 복사하면 된다.
- Civilization_FreeBuildingClasses: 수도를 건설할때 즉시 지급되는 건물들. 건물 종류 당 Row 하위 항목이 필요하다.
- CivilizationType: 동일하다.
- BuildingClassType: BuildingClass를 집어 넣는다. 차후 만들 Buildings 항목에서 설명됨.
- Civilization_FreeTechs: 문명에게 기본적으로 지급되는 기술들. 문명 디렉토리/Assets/DLC/Expansion2/Gameplay/XML/Buildings/CIV5Buildings(_Expansion2/_Inherited_Expansion2).xml안의 원하는 건물의 BuildingClass안에 있는 항목을 뽑으면 된다. 기본적으로 궁전을 더하기 위해 BUILDINGCLASS_PALACE는 기본으로 더해준다.
- CivilizationType: 동일하다.
- TechType: 기술 타입. 기본적으로 농업을 들고 시작하는데, 이러려면 TECH_AGRICULTURE를 넣고, 종특으로 기술을 갖고 시작함을 넣으려면 멋진 신세계 기준으로 문명 디렉토리/Assets/DLC/Expansion2/Gameplay/XML/Technologies/CIV5Technologies.xml에서 Type을 찾아 넣으면 된다.
- Civilization_FreeUnits: 새 게임 시작시 문명에게 지급되는 유닛들. 위에도 다 그렇지만 유닛 종류마다 Row 하위 항목이 필요하다.
- CivilizationType: 위와 동일.
- UnitClassType: 유닛 종류.
- UnitAIType: AI가 제어할 경우 유닛이 할 행동 범위.
- Count: 유닛의 수량.
- Civilization_Start_Along_Ocean
- CivilizationType: 위와 동일.
- StartAlongOcean: 이 것을 true로 지정 했으면 시작지점이 해안으로 될 가능성이 높아진다.
- Civilization_Start_Along_Rive
- CivilizationType: 위와 동일.
- StartAlongRiver: 이 것을 true로 지정 했으면 시작지점이 강가로 될 가능성이 높아져야 하겠지만 그런거 없다.
- Civilization_Start_Region_Priority: 위의 Start_Along_Ocean과 같이 시작 지점 선호도를 정한다.
- CivilizationType: 위와 동일.
- RegionType: 타일 종류. 예를 들어 REGION_JUNGLE일 경우 정글 시작 지점이 잘 나온다.
- Civilization_Start_Region_Avoid: 위의 Start_Region_Priority의 반대 효과. 시작 지점에 지정된 타일 종류가 잘 안나온다.
- CivilizationType: 위와 동일.
- RegionType: 타일 종류.
밑의 항목들은 문명 고유 항목들에 대한 것으로서, 최소한 2개가 필요하다.
- Civilization_UnitClassOverrides: 고유 유닛 항목. 고유 유닛 종류 하나마다 Row 하위 항목이 필요하다.
- CivilizationType: 위와 동일.
- UnitClassType: 대체할 기본 유닛 종류
- UnitType: 고유 유닛 타입
- Civilization_BuildingClassOverrides: 고유 건물 항목. 위랑 거의 동일한 맥락이다.
- CivilizationType: 위와 동일.
- BuildingClassType: 대체할 기본 건물 종류
- BuildingType: 고유 건물 타입
- Improvements: 새로운 시설. 시설 항목에서 더 자세하게 설명함.
- CivilizationType: 문명 고유 시설로 지정하게하는 항목
예시 문명
<Civilizations> <Row> <Type>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</Type> <Description>TXT_KEY_CIV_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS_DESC</Description> <ShortDescription>TXT_KEY_CIV_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS_SHORT_DESC</ShortDescription> <Adjective>TXT_KEY_CIV_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS_ADJECTIVE</Adjective> <Civilopedia>TXT_KEY_CIV_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS_TEXT_1</Civilopedia> <CivilopediaTag>TXT_KEY_CIV5_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilopediaTag> <DefaultPlayerColor>PLAYERCOLOR_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</DefaultPlayerColor> <ArtDefineTag>ART_DEF_CIVILIZATION_GREECE</ArtDefineTag> <ArtStyleType>ARTSTYLE_GRECO_ROMAN</ArtStyleType> <ArtStyleSuffix>_MED</ArtStyleSuffix> <ArtStylePrefix>MEDITERRANEAN</ArtStylePrefix> <PortraitIndex>0</PortraitIndex> <IconAtlas>LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS_COLOR_ATLAS</IconAtlas> <AlphaIconAtlas>LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS_ALPHA_ICON</AlphaIconAtlas> <MapImage>MapMacedonia512.dds</MapImage> <DawnOfManQuote>TXT_KEY_CIV5_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS_DOM</DawnOfManQuote> <DawnOfManImage>Arche_Hellenike_Scene.dds</DawnOfManImage> <SoundtrackTag>Hellenistic</SoundtrackTag> <Playable>1</Playable> <AIPlayable>1</AIPlayable> </Row> </Civilizations> <Civilization_CityNames> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <CityName>TXT_KEY_CITY_NAME_AIRODYNAMIKEIA</CityName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <CityName>TXT_KEY_CITY_NAME_LESS_BREAST_CANCER</CityName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <CityName>TXT_KEY_CITY_NAME_STRONG_BACK</CityName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <CityName>TXT_KEY_CITY_NAME_LESS_HARASSMENT</CityName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <CityName>TXT_KEY_CITY_NAME_LESS_MALE_GAZE</CityName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <CityName>TXT_KEY_CITY_NAME_CLOSER_TO_HEART</CityName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <CityName>TXT_KEY_CITY_NAME_LESS_BRASSIERE_PRESSURE</CityName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <CityName>TXT_KEY_CITY_NAME_NO_CLEAVAGE_STENCH</CityName> </Row> </Civilization_CityNames> <Civilization_SpyNames> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_RIE_KUGIMIYA</SpyName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_AYA_HIRANO</SpyName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_SUNG_YURI</SpyName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_GIANNA_JUN</SpyName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_AKIHA_TOHNO</SpyName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_CHIHAYA_KISARAGI</SpyName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_RYUUJOU</SpyName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_EMMA_WATSON</SpyName> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <SpyName>TXT_KEY_SPY_NAME_NATALIE_PORTMAN</SpyName> </Row> </Civilization_SpyNames> <Civilization_Leaders> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <LeaderheadType>LEADER_LORD_OF_FLAT_CHEST</LeaderheadType> </Row> </Civilization_Leaders> <Civilization_FreeBuildingClasses> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <BuildingClassType>BUILDINGCLASS_PALACE</BuildingClassType> </Row> </Civilization_FreeBuildingClasses> <Civilization_FreeTechs> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <TechType>TECH_AGRICULTURE</TechType> </Row> </Civilization_FreeTechs> <Civilization_FreeUnits> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <UnitClassType>UNITCLASS_SETTLER</UnitClassType> <UnitAIType>UNITAI_SETTLE</UnitAIType> <Count>1</Count> </Row> </Civilization_FreeUnits> <Civilization_UnitClassOverrides> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <UnitClassType>UNITCLASS_MECH</UnitClassType> <UnitType>UNIT_BOOB_DESTROYER_DREADNOUGHT</UnitType> </Row> </Civilization_UnitClassOverrides> <Civilization_BuildingClassOverrides> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <BuildingClassType>BUILDINGCLASS_HOSPITAL</BuildingClassType> <BuildingType>BUILDING_CLONING_VAT</BuildingType> </Row> </Civilization_BuildingClassOverrides> <Civilization_Start_Region_Avoid> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <RegionType>REGION_JUNGLE</RegionType> </Row> <Row> <CivilizationType>CIVILIZATION_LEAGUE_OF_FLAT_CHEST_TRANSHUMANISTS</CivilizationType> <RegionType>REGION_TUNDRA</RegionType> </Row> </Civilization_Start_Region_Avoid>
4.2 지도자
대항목들이 5개로서, 각각 Leader, Leader_Traits, Leader_Flavors, Leader_MinorCivApproachBiases랑 Leader_MajorCivApproachBiases다.
4.2.1 Leader
항목: 지도자 자체를 추가하는 항목이다. Row 하위 항목은 지도자 하나당 한개가 있으면 된다.
- Type: 위의 문명에 나오는 Type와 동일하게 게임 데이터베이스에서 등록되는 이름.
- Description: 이름
- Civilopedia
- CivilopediaTag: 위의 문명의 항목과 동일.
- VictoryCompetitiveness: 경쟁심. 높을수록 타 문명이 승리에 근접할 수록 경계하게 한다.
- WonderCompetitiveness: 불가사의 경쟁심. 높을 수록 짓고 있었던 불가사의를 지었을때의 외교 페널티가 심해진다.
- MinorCivCompetitiveness: 도시국가 호의 경쟁심. 높을 수록 똑같은 도시국가를 노릴때의 외교 페널티가 잘 나타난다.
- WorkAgainstWillingness: 연합하여 전쟁하는 것에 대한 호응도.
- WorkWithWillingness
- Boldness: 호전성 요소 중 1. 이게 높으면 군사력을 상관하지 않고 전쟁을 벌일 확률이 높다.
- DiploBalance: 외교시 수가 높을 수록 사이가 일정 범위 안으로 안 좋더라도 비교적 공정하게 거래를 받아준다.
- WarmongerHate: 전쟁광 혐오도. 외교 항목에서 자세한 설명이 있다.
- DenounceWillingness: 비난 선호도. 높을 수록 비난을 잘 시전한다.
- DoFWillingness: 우호 관계 선포 선호도.
- Loyalty: 충성도. 높을수록 우호 관계의 문명에게 배신을 때릴 확률이 적다. 다만, 숨겨진 관계 악화 요소는 감안해야 한다.
- Neediness: 구걸 선호도. 높을 수록 우호 선언을 한 플레이어에게 구걸을 잘 한다(...)
- Forgiveness: 용서도. 높을 수록 외교적 악화 요소가 더 빨리 해소된다.
- Chattiness: 높을 수록 말이 많다. 적대적일 경우에서 도발이라던가 스파이의 음모 발견시 비밀 공유라던가.
- Meanness: 높을 수록 친해지기 어렵고 다굴이라던가 국제적 왕따에게 더 거칠게 대한다.
- PortraitIndex, IconAtlas: 위의 문명 항목의 것과 동일.
4.2.2 Leader_MajorCivApproachBiases
지도자의 타 문명을 대하는 태도에 영향을 끼치는 지수를 저장하는 항목이다. 위와 달리 밑의 항목마다 Row 하위 항목에 LeaderType과 Bias 치수와 같이 MajorCivApproachType 항목에 넣어야 한다.
- MAJOR_CIV_APPROACH_WAR: 호전성.
- MAJOR_CIV_APPROACH_HOSTILE: 적대적으로 대하는 지수
- MAJOR_CIV_APPROACH_GUARDED: 방어적으로 대하는 지수
- MAJOR_CIV_APPROACH_DECEPTIVE: 위장 우호적으로 대하는 지수
- MAJOR_CIV_APPROACH_FRIENDLY: 우호적으로 대하는 지수
- MAJOR_CIV_APPROACH_NEUTRAL: 중립적으로 대하는 지수
- MAJOR_CIV_APPROACH_AFRAID: 두려워함으로 대하는 지수
4.2.3 Leader_MinorCivApproachBiases
지도자의 도시국가를 대하는 태도에 영향을 끼치는 지수를 저장하는 항목이다. 위의 MajorCivApproachBiases랑 동일하다. MajorCivApproachType게 MinorCivApproachType으로 바뀌지만.
- MINOR_CIV_APPROACH_IGNORE: 도시국가에 적극적으로 행동을 하지 않게 하는 지수.
- MINOR_CIV_APPROACH_FRIENDLY: 도시국가에게 적극적으로 우호도를 높이게 하려 하게 하는 지수.
- MINOR_CIV_APPROACH_PROTECTIVE: 도시국가를 보호하고 자신의 것으로 만들려고 하는 지수. 이거랑 MinorCivCompetitiveness가 높으면 엘리자베스처럼 도국과 친해지지 말라고 으름장을 내놓는 지도자가 된다.
- MINOR_CIV_APPROACH_CONQUEST: 도시국가를 정복하게 하는 지수.
- MINOR_CIV_APPROACH_BULLY: 도시국가에 공물을 바치게 하게 하닌 지수.
4.2.4 Leader_Flavors
AI의 전반적인 운영 스타일에 영향을 끼치는 지수를 저장하는 항목. 여기도 역시 MajorCivApproach처럼 Row당 LeaderType, FlavorType, 그리고 Bias 항목이 종속되어 있다. 밑은 FlavorType 목록.
단, 주의해야 할 것은 이는 그냥 무늬일 뿐이며, 모드를 통해 새 유닛이나 건물같을 것을 만들면 이에 상응하는 Flavor 수치를 지정해야 한다. 그러므로 지상 유닛에게 FLAVOR_NAVAL을 높게 지정했으면 해상 문명이 이 유닛을 선호하게 된다.
- FLAVOR_OFFENSE: 침략전을 위한 유닛 육성 성향.
- FLAVOR_DEFENSE: 방어전을 위한 유닛 육성 성향.
- FLAVOR_CITY_DEFENSE: 도시 방어물 건설 성향.
- FLAVOR_MILITARY_TRAINING: 군사 건물 건설 성향.
- FLAVOR_RECON: 정찰 유닛 육성 성향.
- FLAVOR_RANGED: 원거리 유닛 육성 성향.
- FLAVOR_MOBILE: 기병/전차 육성 성향.
- FLAVOR_NAVAL: 해군 육성 성향.
- FLAVOR_NAVAL_RECON: 해상 정찰 유닛 육성 성향.
- FLAVOR_NAVAL_GROWTH: 해안 도시 인구 증가에 신경쓰는 성향을 정한다.
- FLAVOR_NAVAL_TILE_IMPROVEMENTS: 해안 자원 개발 성향.
- FLAVOR_AIR: 공군 육성 성향.
- FLAVOR_EXPANSION: 확장 성향. 이게 높을 수록 영토를 탐한다가 더 잘 뜬다. 다만, 낮더라도 간디같이 행복 성향이 높지 않다면 확장할 곳이 많으면 도시를 좀 깔아준다.
- FLAVOR_GROWTH: 도시 인구 증가에 신경쓰는 성향.
- FLAVOR_TILE_IMPROVEMENTS: 타일 개간에 신경쓰는 성향.
- FLAVOR_INFRASTRUCTURE: 도로 건설에 신경쓰는 성향.
- FLAVOR_PRODUCTION: 생산력 집중 성향.
- FLAVOR_GOLD: 금 생산 집중 성향.
- FLAVOR_SCIENCE: 과학력 생산 집중 성향.
- FLAVOR_CULTURE: 문화력 집중 성향.
- FLAVOR_HAPPINESS: 행복도 관리 성향.
- FLAVOR_GREAT_PEOPLE: 위인 선호 성향.
- FLAVOR_WONDER: 불가사의 건설 선호 성향.
- FLAVOR_RELIGION: 종교 선호, 높으면 특히나 적극적인 전파를 좋아한다. 이 수치가 낮더라도 레닌같이 종교를 아예 아오안 수준으로 보지 않으면 가능하면 종교를 먹으러 하려 하고, 확률적으로 신앙을 찍는다.
- FLAVOR_DIPLOMACY: 외교 승리 선호. 이게 높을수록 도시국가 매수같을 것을 선호한다. 알렉산드로스 대왕이 도시국가를 꿀꺽꿀꺽하는 이유.
- FLAVOR_SPACESHIP: 과학 승리 선호.
- FLAVOR_WATER_CONNECTION:
- FLAVOR_NUKE: 핵무기 보유 선호. 이게 높을 수록 핵무기를 먹으려 한다. 간디의 경우 12.
- FLAVOR_USE_NUKE: 핵무기 사용 선호.
- FLAVOR_ESPIONAGE: 첩보질 선호. 이게 높을 수록 스파이 철수 권고를 잘 씹는다.
- FLAVOR_ANTIAIR: 대공 방어용 유닛 육성 성향
- FLAVOR_AIR_CARRIER: 항공모함 건조 성향
- FLAVOR_I_LAND_TRADE_ROUTE
- FLAVOR_I_SEA_TRADE_ROUTE
- FLAVOR_ARCHAEOLOGY
- FLAVOR_I_TRADE_ORIGIN
- FLAVOR_I_TRADE_DESTINATION
- FLAVOR_AIRLIFT
4.2.5 예시 지도자
<GameData> <Leaders> <Row> <Type>LEADER_MATHALX_KAGUYA</Type> <Description>TXT_KEY_LEADER_MATHALX_KAGUYA</Description> <Civilopedia>TXT_KEY_CIVILOPEDIA_LEADERS_MATHALX_KAGUYA_PEDIA</Civilopedia> <CivilopediaTag>TXT_KEY_CIVILOPEDIA_LEADERS_MATHALX_KAGUYA</CivilopediaTag> <ArtDefineTag>Kaguya_Scene.xml</ArtDefineTag> <VictoryCompetitiveness>2</VictoryCompetitiveness> <WonderCompetitiveness>4</WonderCompetitiveness> <MinorCivCompetitiveness>3</MinorCivCompetitiveness> <WorkAgainstWillingness>1</WorkAgainstWillingness> <WorkWithWillingness>7</WorkWithWillingness> <Boldness>2</Boldness> <DiploBalance>10</DiploBalance> <WarmongerHate>2</WarmongerHate> <DenounceWillingness>2</DenounceWillingness> <DoFWillingness>7</DoFWillingness> <Loyalty>8</Loyalty> <Neediness>9</Neediness> <Forgiveness>7</Forgiveness> <Chattiness>7</Chattiness> <Meanness>2</Meanness> <PortraitIndex>2</PortraitIndex> <IconAtlas>MATHALX_EIENTEI_COLOR_ATLAS</IconAtlas> </Row> </Leaders> <Leader_MajorCivApproachBiases> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MajorCivApproachType>MAJOR_CIV_APPROACH_WAR</MajorCivApproachType> <Bias>1</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MajorCivApproachType>MAJOR_CIV_APPROACH_HOSTILE</MajorCivApproachType> <Bias>2</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MajorCivApproachType>MAJOR_CIV_APPROACH_DECEPTIVE</MajorCivApproachType> <Bias>6</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MajorCivApproachType>MAJOR_CIV_APPROACH_GUARDED</MajorCivApproachType> <Bias>4</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MajorCivApproachType>MAJOR_CIV_APPROACH_AFRAID</MajorCivApproachType> <Bias>7</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MajorCivApproachType>MAJOR_CIV_APPROACH_FRIENDLY</MajorCivApproachType> <Bias>8</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MajorCivApproachType>MAJOR_CIV_APPROACH_NEUTRAL</MajorCivApproachType> <Bias>5</Bias> </Row> </Leader_MajorCivApproachBiases> <Leader_MinorCivApproachBiases> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MinorCivApproachType>MINOR_CIV_APPROACH_IGNORE</MinorCivApproachType> <Bias>5</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MinorCivApproachType>MINOR_CIV_APPROACH_FRIENDLY</MinorCivApproachType> <Bias>9</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MinorCivApproachType>MINOR_CIV_APPROACH_PROTECTIVE</MinorCivApproachType> <Bias>4</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MinorCivApproachType>MINOR_CIV_APPROACH_CONQUEST</MinorCivApproachType> <Bias>2</Bias> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <MinorCivApproachType>MINOR_CIV_APPROACH_BULLY</MinorCivApproachType> <Bias>3</Bias> </Row> </Leader_MinorCivApproachBiases> <Leader_Flavors> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_OFFENSE</FlavorType> <Flavor>1</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_DEFENSE</FlavorType> <Flavor>6</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_CITY_DEFENSE</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_MILITARY_TRAINING</FlavorType> <Flavor>3</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_RECON</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_RANGED</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_MOBILE</FlavorType> <Flavor>4</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_NAVAL</FlavorType> <Flavor>4</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_NAVAL_RECON</FlavorType> <Flavor>6</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_NAVAL_GROWTH</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_NAVAL_TILE_IMPROVEMENTS</FlavorType> <Flavor>8</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_AIR</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_EXPANSION</FlavorType> <Flavor>0</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_GROWTH</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_TILE_IMPROVEMENTS</FlavorType> <Flavor>6</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_INFRASTRUCTURE</FlavorType> <Flavor>3</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_PRODUCTION</FlavorType> <Flavor>5</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_GOLD</FlavorType> <Flavor>6</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_SCIENCE</FlavorType> <Flavor>6</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_CULTURE</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_HAPPINESS</FlavorType> <Flavor>6</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_GREAT_PEOPLE</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_WONDER</FlavorType> <Flavor>8</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_RELIGION</FlavorType> <Flavor>4</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_DIPLOMACY</FlavorType> <Flavor>9</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_SPACESHIP</FlavorType> <Flavor>6</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_WATER_CONNECTION</FlavorType> <Flavor>6</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_NUKE</FlavorType> <Flavor>3</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_USE_NUKE</FlavorType> <Flavor>2</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_ESPIONAGE</FlavorType> <Flavor>3</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_ANTIAIR</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_AIR_CARRIER</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_I_LAND_TRADE_ROUTE</FlavorType> <Flavor>5</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_I_SEA_TRADE_ROUTE</FlavorType> <Flavor>8</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_ARCHAEOLOGY</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_I_TRADE_ORIGIN</FlavorType> <Flavor>5</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_I_TRADE_DESTINATION</FlavorType> <Flavor>7</Flavor> </Row> <Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <FlavorType>FLAVOR_AIRLIFT</FlavorType> <Flavor>5</Flavor> </Row> </Leader_Flavors> -<Leader_Traits> -<Row> <LeaderType>LEADER_MATHALX_KAGUYA</LeaderType> <TraitType>TRAIT_MATHALX_GOLDEN_CITY</TraitType> </Row> </Leader_Traits> </GameData>
이 지도자의 경우 Loyalty, DoFWillingness, 그리고 MAJOR_CIV_APPROACH_FRIENDLY가 높아서 전반적으로 우호적으로 접근하며, WarmongerHate가 낮아서 전쟁질을 많이 하지 않는 이상 별로 신경을 쓰지 않는다. Flavor_Expansion이 0라서 확장도 거의 하지 않고 근처에 알박이 해도 군사력이 충분하다면 별로 신경쓰지 않고, MAJOR_CIV_APPROACH_WAR, Meanness같은게 전부 낮아서 대놓고 건드리지 않는 이상 우호적으로 접근하는 만인의 친구형 성격. FLAVOR_WONDER가 높아서 불가사의를 많이 지으려 하고 MINOR_CIV_APPROACH_FRIENDLY도 높아 도국을 많이 사려 하지만, WonderCompetitiveness와 MinorCivCompetitiveness가 낮아서 설령 불가사의를 빼앗기거나 같은 도시 국가에 눈을 들여도 큰 갈등은 없으며, 갈등도 Forgiveness가 높아서 좀 놔두면 그냥 넘어가는 매우 온화한 지도자다.
또한 전반적인 플레이스타일은 FLAVOR_DIPLOMACY가 높아서 외교 승리를 우선적으로 노린다. 확장보다는 도시를 가꾸는 스타일이며 (자유보다 전통을 선호), 종교에 대한 관심이 비교적 낮으며 (신앙을 꺼린다), 또한 군사력을 통한 패권에 대한 욕심이 적다(명예를 꺼린다). 그리고 해상적으로 개발을 좋아하며, 문화력과 위인을 우선시 하되 금과 과학력에도 우선도를 두는 측이다.
여담으로 다른 예시들에는 GameData 태그가 없었으나, 모든 XML파일에는 무조건 GameData 태그 안에 타 항목들이 존재해야 한다.
4.2.6 지도자 대사
지도자 대사에 관여하는 항목은 2개 있다. DiplomacyResponses 항목과 직접적으로 출력될 텍스트를 저장할 Languages_(언어코드)항목이 있다. 후자는 텍스트 항목에 더 자세히 설명되며, DiplomacyResponses에서는 대략 이런 구조를 가지고 있다.
<DiplomacyResponses> <Row LeaderType="LEADER_PINK_TARIC"> <ResponseType>RESPONSE_FIRST_GREETING</ResponseType> <Response>TXT_KEY_LEADER_PINK_TARIC_FIRSTGREETING%</Response> <Bias>1</Bias> </Row> </DiplomacyResponses> <Language_en_US> <Row Tag="TXT_KEY_LEADER_PINK_TARIC_FIRSTGREETING_1> <Text>Ang? Is this Ezreal? No, but if you are a guy, we should hang out some more.</Text> </Row> <Row Tag="TXT_KEY_LEADER_PINK_TARIC_FIRSTGREETING_2> <Text>Hello, stranger! I am Taric.</Text> </Row> </Language_en_US> <Language_ko_KR> <Row Tag="TXT_KEY_LEADER_PINK_TARIC_FIRSTGREETING_1> <Text>Ang? 이즈리얼이야? 아니군, 그래도 네가 남자라면 우리 좀 더 시간을 보내자.</Text> </Row> <Row Tag="TXT_KEY_LEADER_PINK_TARIC_FIRSTGREETING_2> <Text>안녕, 이방인이여! 나는 타릭이라네.</Text> </Row> </Language_ko_KR>
DiplomacyResponses안의 Row 항목 안의 부가 항목 설명
- ResponseType - 지정되어 있는 대사 상황. 볼드체는 기본적으로 주어지지 않아 없으면 그냥 텅빈 대사가 나오는 것. 더 많이 있으니 차후 추가될 예정.
- RESPONSE_FIRST_GREETING - 문명을 처음 만났을때
- RESPONSE_DEFEATED - 플레이어에 의해 문명 멸망시
- RESPONSE_GREETING_POLITE_HELLO - 친밀하거나 위장 우호시 대화창을 띄웠을 때 기본적으로 하는 대사. 다만, 우호 선언의 경우 기본적으로 다른 대사가 나온다.
- RESPONSE_GREETING_NEUTRAL_HELLO - 중립적인 관계시 반길때 나오는 대사.
- RESPONSE_GREETING_HOSTILE_HELLO - 사이가 나쁠시 반길때 나오는 대사.
- Response - 지도자가 말할 대사 (아니면 포인터)
- Bias - 대사의 가중치. 높을 수록 링크된 대사가 잘 나온다. 이 커스텀 대사를 주로 쓰게 하고 싶으면 적어도 8정도는 붙여주자. 그 이상이면 기본적으로 제공하는 대사는 거의 안 쓴다.
4.3 특성
4.3.1 Trait
제일 기본적으로 필요한게 Traits 항목이다. 이게 바로 특성을 만드는 것으로, 어떤 특성들은 모두 LUA로 실행해서 껍데기로만 만드는 특성도 존재한다. Row 항목이 하나 있으며, (반)필수적인 것은 볼드체.
- Type: 데이테베이스에 등록되는 이름.
- Description
- ShortDescription
- LevelExperienceModifier: 레벨을 얻기 위해 필요한 경험치 배수. 높을 수록 경험치 요구도가 증가한다. 음수일 경우 작아진다.
- GreatPeopleRateModifier: 전역 위인 생성률 조절
- GreatScientistRateModifier: 전역 위대한 과학자 생성률 조절.
- GreatGeneralRateModifier: 위대한 장군 생성률
- GreatGeneralExtraBonus: 위대한 장군 보너스 (%, 기존의 15% + 이 수치 = 총 위대한 장군 보너스)
- GreatPersonGiftInfluence: 위인 선물시 오르는 우호도
- MaxGlobalBuildingProductionModifier
- MaxTeamBuildingProductionModifier
- MaxPlayerBuildingProductionModifier
- CityUnhappinessModifier: 도시로 인해 생성되는 전역 불행 조정도. 정수를 받아들이며 백분율이다. 간디의 특성은 이게 100으로 되어 있어 전역 불행이 2배로 늘어난다.
- PopulationUnhappinessModifier: 인구로 인해 생성되는 지역 불행 조정도. 위랑 같이 정수를 받아들이며 백분율로 취급한다. 간디의 특성에서는 -50으로 되어 있어 인구 불행이 절반으로 감소한다.
- CityStateBonusModifier: 도시 국가 보너스 증가량 (문화력, 식량, 신앙)
- CityStateFriendshipModifier: 도시 국가 우호도 회복률/감소률 조정
- CityStateCombatModifier: 도시 국가 상대로 전투 보너스
- LandBarbarianConversionPercent: 주둔지 청소시 야만인이 문명에 합세할 확률.
- LandBarbarianConversionExtraUnits
- SeaBarbarianConversionPercent
- LandUnitMaintenanceModifier: 지상 유닛에 드는 유지비. 백분율.
- NavalUnitMaintenanceModifier: 해상 유닛에 드는 유지비. 백분율.
- CapitalBuildingModifier: 수도에 있는 건물을 타 도시에서 짓는데 들어가는 보정.
- PlotBuyCostModifier: 타일 구매에 필요한 금 비용 변경. 백분율.
- PlotCultureCostModifier: 타일 구매에 필요한 문화 비용 변경. 백분율.
- CultureFromKills: 적 유닛 처치시 얻는 문화. 문화는 (처치한 유닛의 전투력 * 배율 / 100)에서 소수점을 뺀만큼 추가된다.
- FaithFromKills: 적 유닛 처치시 얻는 신앙. 신앙는 (처치한 유닛의 전투력 * 배율 / 100)에서 소수점을 뺀만큼 추가된다.
- CityCultureBonus: 도시마다 생성되는 문화. BNW 전의 프랑스가 썼다.
- CapitalThemingBonusModifier: 수도에서 테마 완성 보너스 증폭량. 백분율.
- PolicyCostModifier: 사회 정책 비용 조정율. 백분율.
- CityConnectionTradeRouteChange
- WonderProductionModifier: 불가사의 건설에 들어가는 생산력 보정. 백분율.
- PlunderModifier: 야만인 주둔지 및 도시 점령시 얻는 금 변경. 백분율.
- ImprovementMaintenanceModifier: 시설 유지비 변경. 백분율.
- GoldenAgeDurationModifier: 황금기 지속시간 변경. 백분율.
- GoldenAgeMoveChange: 황금기때 유닛이 얻는 이동력.
- GoldenAgeCombatModifier: 황금기때 얻는 유닛의 전투력 보정.
- GoldenAgeTourismModifier: 황금기때 관광 생성력 보정. 백분율.
- GoldenAgeGreatArtistRateModifier: 황금기때 위대한 예술가 점수 생성 보정. 백분율.
- GoldenAgeGreatMusicianRateModifier: 황금기때 위대한 음악가 점수 생성 보정. 백분율.
- GoldenAgeGreatWriterRateModifier: 황금기때 위대한 작가 점수 생성 보정. 백분율.
- ExtraEmbarkMoves: 해상/승선 유닛이 얻는 추가 이동력.
- NaturalWonderFirstFinderGold: 자연 불가사의를 처음 발견했을 때 지급받는 금.
- NaturalWonderSubsequentFinderGold: 다른 이가 먼저 발견한 자연불가사의를 발견했을 때 지급받는 금.
- NaturalWonderYieldModifier: 자연 불가사의로 인한 산출량 보정. 백분율.
- NaturalWonderHappinessModifier: 자연 불가사의로 인한 행복도 변경. 백분율.
- NearbyImprovementCombatBonus: 시설로 인한 전투력 보너스 보정.
- NearbyImprovementBonusRange: 전투력 보정을 주는 시설 사정거리.
- CultureBuildingYieldChange:
- CombatBonusVsHigherTech: (시대) 기술 요구사항이 더 높은 유닛을 상대로 받는 전투력 보정.
- CombatBonusVsLargerCiv: 도시가 더 많은 제국을 상대로 받는 전투력 보정.
- RazeSpeedModifier: 도시 불태우기 속도 보정.
- DOFGreatPersonModifier: 우호 선언으로 인한 위인 점수 축적률 보정.
- LuxuryHappinessRetention: 사치품을 줘서 여분이 없을때 받는 행복도. 백분율.
- ExtraSpies: 추가로 받는 첩자.
- UnresearchedTechBonusFromKills: 살해한 유닛이 문명이 갖고 있지 않은 기술을 요구할 경우 얻는 과학력.
- ExtraFoundedCityTerritoryClaimRange: 도시 개척시 추가로 제공받는 영토.
- FreeSocialPoliciesPerEra: 시대당 받는 사회 정책.
- NumTradeRoutesModifier: 무역로 변경량. 백분율.
- TradeRouteResourceModifier: 자원으로 인한 금 산출량 보정에 대한 보정. 백분율.
- UniqueLuxuryCities: 도시 개척으로 받는 추가 사치 자원. Resource에서 고유 자원을 설정해야 한다.
- UniqueLuxuryQuantity: 도시 당 종특으로 받는 자원의 양.
- WorkerSpeedModifier: 일꾼 개간 속도 보정. 백분율.
- AfraidMinorPerTurnInfluence
- LandTradeRouteRangeBonus: 육지 무역로 사정거리 보정. 백분율.
- TradeReligionModifier: 무역로로 인한 종교 전파 보정. 백분율.
- TradeBuildingModifier
- FightWellDamaged: 일본의 종특.
- MoveFriendlyWoodsAsRoad: 우호 영토의 숲과 정글을 도로로 취급함.
- FasterAlongRiver: 강 옆에 있는 타일을 도로로 취급함.
- FasterInHills
- EmbarkedAllWater
- EmbarkedToLandFlatCost: 유닛 상륙시 이동력 1만 소모하게 함.
- NoHillsImprovementMaintenance: 언덕에서 시설 유지비가 들지 않음.
- TechBoostFromCapitalScienceBuildings: 수도에서 과학력을 주는 건물을 지을 경우 과학력 보너스를 받음. 단, 타 건물의 효과로 과학력을 받게 되면 이는 해당되지 않느다.
- StaysAliveZeroCities: 도시가 없어도 멸망하지 않음.
- FaithFromUnimprovedForest
- BonusReligiousBelief: 추가 교리 선택 가능.
- AbleToAnnexCityStates: 도시 국가 합병 가능 (오스트리아)
- CrossesMountainsAfterGreatGeneral: 첫 위대한 장군 생성 이후 산 타일 넘을 수 있음.
- MayaCalendarBonuses: 마야 종특.
- NoAnnexing: 도시 합병 불가. 대신 괴뢰 도시에서 구매 가능.
- TechFromCityConquer: 도시 점령시 기술 획득 가능. (아시리아)
- UniqueLuxuryRequiresNewArea: 고유 사치품이 새로운 대륙이여야 함.
- RiverTradeRoad: 강 타일이 무역로에 한정해 도로 취급 받음.
- AngerFreeIntrusionOfCityStates: 쓰이지 않음.
- FreeUnit: 무료 유닛.
- FreeUnitPrereqTech: 무료 유닛 지급하는데 필요한 연구.
- CombatBonusImprovement: 전투력 보정을 주는 시설. NearbyImprovementCombatBonus와 NearbyImprovementCombatRange와 병행함.
- FreeBuilding: 도시 개척시 지급되는 무료 건물.
- FreeBuildingOnConquest: 도시 점령시 지급되는 무료 건물.
- ObsoleteTech: 연구시 종특 무효화.
- PrereqTech: 종특 발동에 필요한 기술.
4.3.2 Trait_YieldChangesStrategicResources
특성을 지닌 문명의 영토 안의 전략 자원의 산출량을 조절한다.
- TraitType - 특성의 데이터베이스에 등록된 Type, 즉 이름.
- YieldType - 산출 유형
- Yield - 산출 변경 수치
4.3.3 Trait_ImprovementYieldChanges
특성을 지닌 문명이 소유하고 있는 시설의 산출량을 조절한다.
- TraitType - 특성의 데이터베이스에 등록된 Type, 즉 이름.
- ImprovementType - 시설 종류, 데이터베이스에 등록된 Type를 지정해야 한다.
- YieldType - 산출 유형
- Yield - 산출 변경 수치
4.3.4 Trait_SpecialistYieldChanges
특성을 지닌 문명의 전문가의 산출량을 조절한다.
- TraitType - 특성의 데이터베이스에 등록된 Type, 즉 이름.
- SpecialistType - 전문가 종류, 데이터베이스에 등록된 Type를 지정해야 한다.
- YieldType - 산출 유형. 단, 문화와 신앙은 정상적으로 작동되지 않는다.
- Yield - 산출 변경 수치
4.3.5 예시 특성 1
<GameData> -<Traits> -<Row> <Type>TRAIT_MATHALX_MASTERMIND</Type> <Description>TXT_KEY_TRAIT_MATHALX_MASTERMIND</Description> <ShortDescription>TXT_KEY_TRAIT_MATHALX_MASTERMIND_SHORT</ShortDescription> <FreeBuilding>BUILDING_MATHALX_PHROURION_FUCK_MERCHANT_DUMMY</FreeBuilding> </Row> </Traits> <Trait_YieldChangesStrategicResources> <Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <YieldType>YIELD_PRODUCTION</YieldType> <Yield>1</Yield> </Row> </Trait_YieldChangesStrategicResources> -<Trait_ImprovementYieldChanges> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_ACADEMY</ImprovementType> <YieldType>YIELD_SCIENCE</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_ACADEMY</ImprovementType> <YieldType>YIELD_PRODUCTION</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_MANUFACTORY</ImprovementType> <YieldType>YIELD_SCIENCE</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_MANUFACTORY</ImprovementType> <YieldType>YIELD_PRODUCTION</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_CITADEL</ImprovementType> <YieldType>YIELD_SCIENCE</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_CITADEL</ImprovementType> <YieldType>YIELD_PRODUCTION</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_CUSTOMS_HOUSE</ImprovementType> <YieldType>YIELD_SCIENCE</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_CUSTOMS_HOUSE</ImprovementType> <YieldType>YIELD_PRODUCTION</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_HOLY_SITE</ImprovementType> <YieldType>YIELD_SCIENCE</YieldType> <Yield>2</Yield> </Row> -<Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <ImprovementType>IMPROVEMENT_HOLY_SITE</ImprovementType> <YieldType>YIELD_PRODUCTION</YieldType> <Yield>2</Yield> </Row> </Trait_ImprovementYieldChanges> <Trait_SpecialistYieldChanges> <Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <SpecialistType>SPECIALIST_ENGINEER</SpecialistType> <YieldType>YIELD_SCIENCE</YieldType> <Yield>1</Yield> </Row> <Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <SpecialistType>SPECIALIST_ENGINEER</SpecialistType> <YieldType>YIELD_PRODUCTION</YieldType> <Yield>2</Yield> </Row> <Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <SpecialistType>SPECIALIST_SCIENTIST</SpecialistType> <YieldType>YIELD_SCIENCE</YieldType> <Yield>2</Yield> </Row> <Row> <TraitType>TRAIT_MATHALX_MASTERMIND</TraitType> <SpecialistType>SPECIALIST_SCIENTIST</SpecialistType> <YieldType>YIELD_PRODUCTION</YieldType> <Yield>1</Yield> </Row> </Trait_SpecialistYieldChanges> </GameData>
XML의 특성만 보면 기술자와 과학자, 그리고 위인 시설만 볼 경우 세종대왕의 상위호환인 종특을 지니고 있다. 위인 시설이 과학/생산력을 2씩 생산해내며, 기술자가 과학력 1, 생산력 2을 더 생성하며, 또한 과학자가 과학력 2, 생산력 1을 더 생성한다. 러시아가 지닌 전략 자원당 생산력 +1은 덤.
4.4 시설
시설은 여러의 항목이 있다. 기본적인 시설 정의를 하는 Improvement 항목, 시설의 기본적 산출량을 지정하는 Improvement_Yields 항목, 시설 건설의 유효 지형을 지정하는 Improvement_ValidTerrains, 시설 건설의 유효 추가 지상 지형을 지정하는 Improvement_ValidFeatures, 유효 자원을 표시하는 Improvement_ResourceTypes, 자원 산출량을 조절하는 Improvement_ResourceType_Yields, 기술 해금시 산출량 변경을 조정하는 Improvement_TechYieldChanges, 시대마다 산출량 변경을 지정하는 Improvement_YieldPerEra, 담수 타일일 경우 변경 산출량을 지정하는 Improvement_TechFreshWaterYieldChanges등 많고, 건설 명령 버튼과 기본 건설 시간을 저장하는 Builds과 추가 지형에 대한 수식을 지정하는 BuildFeatures이 있다.
Improvement 항목
- Description: 표기되는 이름
- Civilopedia: 백과사전에 등록되는 설명.
- ArtDefineTag: 생김새 태그
- CivilizationType: 문명의 고유 시설로 마크하는 것.
- PortraitIndex, IconAtlas: 위의 문명 항목의 것과 동일.
- PillageGold: 약탈시 지급하는 금.
- DestroyedWhenPillaged: 약탈되면 파괴됨.
- GoodyHut: 고대 유적지
- BarbarianCamp: 야만인 주둔지
4.4.1 Build
시설 건설 명령에 상응하는 항목.
4.5 건물
건물과 관련된 데이터는 BuildingClasses와 Buildings 2항목에서 정의가 되며, 그리고 Buildings 항목에 포함되어 있지 않는 효과들은 타 항목에서 정의가 된다. 다만 Buildings 항목 자체만은 새 건물을 넣을 때 필수적이다. BuildingClasses는 새 건물 종류를 정의하며, Buildings는 이에 종속된 건물 종류들을 정의한다. 예를 들어서 BuildingClasses의 BUILDINGCLASS_BANK의 경우 보통 은행인 BUILDING_BANK랑 페르시아 고유 건물인 BUILDING_SATRAPS_COURT라는 건물 Type들이 있다.
4.5.1 Buildings
Buildings 자체에 들어가있는 항목은 건물 종류 하나당 Row 태그가 필요하다. 진짜 많다
- ID - 건물 ID. 다만, 자동적으로 설정해주기 때문에 왠만해서는 수동적으로 안 건드리는 것이 좋다.
- Type - 데이터베이스에서 저장되는 건물 종류 이름.
- Description - 표기되는 이름.
- Civilopedia - 문명 백과사전에서 역사 항목에 들어갈 텍스트 (아니면 포인터)
- Strategy - 문명 백과사전에서 전략 항목에 들어갈 텍스트 (아니면 포인터)
- Help - 건물 버튼에 마우스 올릴시 이름과 효과 밑에 나오는 짧은 도움말에 들어갈 텍스트 (아니면 포인터)
- ThemingBonusHelp - 테마 보너스 도움말 텍스트 (아니면 포인터)
- Quote - 불가사의 전용. 건설후 하단 좌측에 나오는 대사 텍스트 (아니면 포인터)
- GoldMaintenance - 유지 비용
- MutuallyExclusiveGroup - 그룹. 여기에 수를 배정하면 똑같은 수를 가진 건물과 중첩 건설이 불가능하다. (예: 원자력 발전소/태양력 발전소)
- TeamShare
- Water
- River - 강가에서만 지을 수 있음.
- FreshWater - 담수 타일 위에서만 지을 수 있음.
- Mountain - 도시가 산 옆에 있어야 함. (예: 천문대)
- NearbyMountainRequired - 도시 국경안에 2타일 미만 떨어진 산이 있어야 함. (예: 마추픽추)
- Hill
- Flat
- FoundsReligion
- IsReligious
- BorderObstacle
- PlayerBorderObstacle
- Capital - 이게 있으면 이 건물 완성시 도시가 수도로 표기된다.
- GoldenAge
- MapCentering
- MinorFriendshipChange - 건물을 지을 시 도시국가의 현재 우호도의 수치를 더한다. 예를 들어 이 항목이 50일 경우 만난 모든 도시 국가들의 우호도가 각각 현재 우호도의 50%만큼 증가한다.
- NeverCapture - 점령시 무조건 파괴됨.
- NukeImmune - 핵 공격으로 파괴되지 않음.
- AllowsWaterRoutes
- ExtraLuxuries - 사치품 복제 능력. 아라비아의 바자르에 쓰임.
- DiplomaticVoting - 전의 외교 승리용 특수 회의를 여는 국제 연합 불가사의에 쓰인 태그.
- AffectSpiesNow
- NullifyInfluenceModifier
- Cost - 생산력 비용. 금 값도 이것이 관여하지만, 여기의 숫자는 보통 속도에서 건물 완성에 필요한 생산력이다.
- FaithCost - 신앙 비용.
- LeagueCost
- UnlockedByBelief
- UnlockedByLeague
- HolyCity - 도시가 성도여야 함.
- NumCityCostMod - 도시 추가 비용. 도시가 추가될 수록 생산 비용을 높이며, 기본적으로 국가 불가사의에 쓰여있다.
- HurryCostModifier
- MinAreaSize
- ConquestProb - 도시 점령시 건물이 파괴되지 않을 확률. 다만, 이게 고유 건물일 경우 기본 건물로 변화한다.
- CitiesPrereq
- LevelPrereq
- CultureRateModifier - 도시의 문화력 생산력 보정. 백분율이며, 시스템상 도시의 실제 문화 산출량은 항상 소수점이 잘린다.
- GlobalCultureRateModifier - 문명의 모든 도시에 적용되는 문화력 생산력 보정.
- GreatPeopleRateModifier - 도시의 위인 점수 누적 속도 보정치.
- GlobalGratePeopleRateModifier - 전역 위인 점수 누적 속도 보정치.
- GreatGeneralRateModifier - 위대한 장군 점수 누적 속도 보정치.
- GreatPersonExpendGold - 위인 소모시 제공되는 금.
- GoldenAgeModifier - 황금기 지속시간 보정치.
- UnitUpgradeCostMod - 유닛 업그레이드시 소모되는 금 보정치
- Experience - 도시에서 유닛 생산시 제공하는 경험치량
- GlobalExperience
- FoodKept - 시민 생성시 유지되는 식량. 백분율.
- Airlift - 공항 능력
- AirModifier
- NukeModifier
- NukeExplosionRand
- HealRateChange
- Happiness - 지역 행복
- UnmoddedHappiness - 전역 행복
- HappinessPerCity - 도시당 행복.
- HappinessPerXPolicies - 이 수만큼의 정책당 1의 전역 행복이 제공된다.
- CityCountUnhappinessMod - 도시 수로 인한 불행도 조절. 백분율로 되어있다.
- NoOccupiedUnhappiness - 법원
- MilitaryProductionModifier - 군사 유닛 생산시 생산력 보정.
- SpaceProductionModifier - 도시의 우주선 부품 생산력 보정.
- GlobalSpaceProductionModifier - 전역 우주선 부품 생산력 보정. 허블 우주 망원경에 25가 있다.
- BuildingProductionModifier - 건물 건설시 생산력 보정. 예를 들어 풍차의 경우 여기 10이 되어있다.
- WonderProductionModifier - 불가사의 생산력 보정.
4.5.2 Buildings_AreaYieldModifiers
4.5.3 Buildings_BuildingClassHappiness
건물을 소유할 경우 제국 전역에 일정한 종류의 건물 당 (대체 고유 건물을 포함) 부여되는 지역 행복도.
- BuildingType - 보너스를 주는 건물
- BuildingClassType - 보너스가 적용되는 건물 부류
- Happiness
4.5.4 Building_BuildingClassYieldChanges
건물을 소유할 경우 제국 전역에 일정한 종류의 건물 당 (대체 고유 건물을 포함) 부여되는 산출량.
- BuildingType - 보너스를 주는 건물
- BuildingClassType - 보너스가 적용되는 건물 부류
- YieldType
- Yield
4.6 유닛
- ID
- Type
- Description - 게임상 나오는 이름. 보통 포인터.
- Civilopedia - 백과사전의 역사적 정보에 나오는 단락. 보통 포인터.
- Strategy - 백과사전의 전략에 나오는 단락. 보통 포인터.
- Help - 유닛을 생산하려 할때 전투력/생산 비용등 설명란 맨 밑에 뜨는 도움말. 보통 포인터.
- Requirements - 기타 유닛 생산 요구사항 (자원이나 건물은 따로 분류되어 있다.)
- Combat - 전투력.
- RangedCombat - 원거리 전투력.
- Cost - 생산 비용
- FaithCost - 신앙 비용. 단, 이는 시대 비율을 적용받는다.
- RequiresFaithPurchaseEnabled - 관련 교리을 찍어야 신앙으로 구매가능하게 함.
- PurchaseOnly - 구매로만 유닛을 얻을 수 있음. (예: 란츠네흐트)
- MoveAfterPurchase - 구매후 바로 이동 가능.
- Moves - 이동력.
- Immobile
- Range - 사정거리
- BaseSightRange - 기본 시야
- Class
- Special
- Capture
- CombatClass
- Domain
- CivilianAttackPriority
- DefaultUnitAI
- Food - 유닛 생산시 잉여 식량 소모 여부[2]
- NoBadGoodies
- RivalTerritory
- MilitarySupport - 군사 건물의 지원 받음.
- MilitaryProduction - 군사 유닛 생산력 정책/건물 등의 효과를 적용받음.
- Pillage - 약탈 가능
- PillagePrereqTech - 약탈 가능 요구사항
- Found
- FoundAbroad
- CultureBombRadius
- GoldenAgeTurns - 황금기를 여는데 소모되면 표준 속도/보통 크기 맵 기준으로 지속되는 황금기의 턴수.
- FreePolicies - 소모하면 지급하는 무료 사회정책
- OneShotTourism - 순회 공연으로 지급하는 관광력. 게임 안의 최소 값은 (지정된 값 * 10 * 속도 배율[3])이며, 그것보다 더 클 경우 (관광 * 지정된 값 * 속도 배율) 지정된 값이다.
- OneShotTourismPercentOthers - 순회 공연시 순회 공연을 한 문명을 제외한 타 문명에게 적용되는 관광력. 이는 음악가의 관광력 * 지정된 값 / 100으로 계산된다.
- IgnoreBuildingDefense
- PrereqResources
- Mechanized
- Suicide - 이 유닛이 공격하면 이 유닛은 사라진다
일본 고유 유닛으로 오카 만드는데 적합하다 - CaptureWhileEmbarked
- PrereqTech - 요구되는 기술
- ObsoleteTech - 퇴보되는 기술 (예: 정찰병 - 과학 이론)
- GoodyHutUpgradeUnitClass - 유적으로 유닛을 개량했을때 변신하는 유닛 종류.
- HurryCostModifier
- AdvancedStartCost
- MinAreaSize
- AirInterceptRange
- AirUnitCap
- NukeDamageLevel
- WorkRate - 작업 배율. 이는 시설 건설과 관련되어 있다.
- NumFreeTechs
- BaseBeakersTurnsToCount - 연구 가속으로 얻는 과학력
- BaseCultureTurnsToCount - 정치 논문 작성으로 얻는 문화력
- RushBuilding - 건설 가속 가능
- BaseHurry
- HurryMultiplier
- BaseGold
- NumGoldPerEra
- SpreadReligion
- RemoveHeresy
- ReligionSpreads - 종교 전파 가능 횟수
- ReligiousStrength
- FoundReligion
- RequiresEnhancedReligion
- ProhibitsSpread - 종교 전파 금지
- CanBuyCityState - 도시국가 매수 가능
- CombatLimit
- RangeAttackOnlyInDomain
- RangeAttackIgnoreLOS
- Trade
- NumExoticGoods
- PolicyType
- RangedCombatLimit
- XPValueAttack
- XPValueDefense
- SpecialCargo
- DomainCargo
- Conscription
- ExtraMaintenanceCost
- NoMaintenance
- Unhappiness
- UnitArtInfo
- UnitArtInfoCulturalVariation
- UnitArtInfoEraVariation
- ProjectPrereq
- SpaceshipProject
- LeaderPromotion
- LeaderExperience
- DontShowYields
- ShowInPedia
- MoveRate
- UnitFlagIconOffset
- PortraitIndex
- IconAtlas
- UnitFlagAtlas
4.7 전문가
새로운 전문가를 정의하여 XML에서 기본적인 연결된 위인, 위인 점수와 산출량을 부여할 수 있다. 그 후의 기타 효과는 더미 건물과 LUA 코드로 해결해야 한다.
4.8 자연경관
새로운 자연경관도 만들수 있다. XML에서는 Features 항목과 이에 종속된 주요 항목으로서 Feature_YieldChanges, Natural_Wonder_Placement이 있다. 다만, 이렇게 만든 자연경관은 ArtDefineTag에 무엇이 있는지 모조리 씹고 후지산에서 쓰이는 흰 눈이 쌓인 산 그래픽을 쓰게 되며, 후지산의 봉우리 구름은 없다.
4.9 자원
자연경관처럼 새로운 자원도 만들 수 있다. 다만, 그래픽 (텍스쳐 수정만이라도 할 경우라면) gr2 파일을 수정해야 하기 때문에 골치아프고, 또한 ModNexus를 통하여 기존의 양식을 추출해 오는게 가장 편하다. 파일 자체는 게임데이터를 받아들이는 XML, 모델의 텍스쳐에 관여하는 fxsxml, 소리에 관여하는 ftsxml, 모델 자체인 gr2, 그리고 텍스쳐 파일인 dds가 있다.
다만, 여기서는 순수 XML, 그러니까 게임 효과만 고려한다면 Resources, Resource_YieldChanges, Resource_Flavors, Improvement_ResourceTypes, Resource_TerrainBooleans, Improvement_ResourceType_Yields, IconFontTextures, IconFontMapping, 그리고 ArtDefine_Landmarks이 있다.
Resources에 들어가는 항목 (자원 종류당 Row 항목 하나)
- Type
- Happiness - 하나라도 있을 경우 성공적 개발 (필요한 기술 개발)시 얻는 행복도.
- TechCityTrade - 자원 자체를 개발하는데 필요한 기술. 단, 이는 시설을 통한 산출력과 무관하다.
- Description - 출력될 이름
- Civilopedia
- ResourceClassType - RESOURCECLASS_LUXURY는 사치 자원, RESOURCECLASS_STRATEGIC은 전략 자원, 그리고 RESOURCECLASS_BONUS는 추가자원.
- ArtDefineTag - 그래픽 요소
- AIObjective
- PlacementOrder
- ConstAppearance
- MinAreaSize
- MaxLatitude
- RandApp1
- RandApp2
- Player
- Hills
- GroupRange
- GroupRand
- IconString - 아이콘 (문명 백과사전, 행복도 툴팁 및 그리드에 마우스 올릴시 뜨는 사치 자원 그림) 이름 지정.
- PortraitIndex
- IconAtlas
4.9.1 그래픽 관련 텍스트 파일
아이콘이랑 자원 텍스쳐와 모델에 관련된 항목이다.
자원 특유의 아이콘을 만드는데 ggxml 파일 형태가 쓰이지만. 이는 그냥 보통 텍스트 에디터로 편집이 가능하다.
4.10 텍스트
게임에서 직접 출력되는 설명 및 텍스트. 기본적으로 Language_en_US는 필수적이며, 그 후에 타 언어 태그를 넣어서 그 로칼을 지원하게 할 수 있다. 한국어의 경우 Language_ko_KR. 이 곳의 경우 Row 항목이 Tag="항목 이름"으로 뒤에 추가되어 있다. 예를 들어서 <Row Tag="TXT_KEY_FEATURE_LAKE_VICTORIA><Text>빅토리아 호수</Text></Row>의 경우 빅토리아 호수 자연경관에 마우스를 올리거나 문명 백과사전에서 표시되는 이름을 정의한다. 다만, Language_ko_KR 항목에서만 Row항목들을 만들 수는 없고, Language_en_US에 반드시 똑같은 Tag가 있는 항목을 만들어야지 한국어 쪽에서 인식을 한다(...) 더러운 영어제일주의
예를 들어 건물을 위해 한국어도 지원하겠다고 보자.
<-- 기본적인 포인터 --> <Trait> <Row> <Type>TRAIT_DEEP_DARK_FANTASY</Type> <Description>TXT_KEY_TRAIT_DEEP_DARK_FANTASY</Description> <ShortDescription>TXT_KEY_TRAIT_DEEP_DARK_FANTASY_SHORT</ShortDescription> </Row> </Trait> <Buildings> ... <Description>TXT_KEY_BUILDING_HONGKONG_GAYBAR</Description> ... </Buildings> <-- 영문 텍스트 --> <Language_en_US> <Row Tag="TXT_KEY_BUILDING_HONGKONG_GAYBAR"> <Text>Hong Kong Gay Bar</Text> </Row> <Row Tag="TXT_KEY_TRAIT_DEEP_DARK_FANTASY"> <Text>No [ICON_HAPPINESS_4]Unhappiness from Cities (not population)</Text> </Row> <Row Tag="TXT_KEY_TRAIT_DEEP_DARK_FANTASY_SHORT"> <Text>DEEP♂DARK♂FANTASIES♂</Text> </Row> </Language_en_US> <-- 한글 텍스트 --> <Language_ko_KR> <Row Tag="TXT_KEY_BUILDING_HONGKONG_GAYBAR"> <Text>홍콩행 게이바</Text> </Row> <Row Tag="TXT_KEY_TRAIT_DEEP_DARK_FANTASY"> <Text>도시 수로 생성되는 [ICON_HAPPINESS_4]불행이 없어집니다</Text> </Row> <Row Tag="TXT_KEY_TRAIT_DEEP_DARK_FANTASY_SHORT"> <Text>딥♂다크♂판타지♂</Text> </Row> </Language_ko_KR>
이렇게 보면 된다. 한 파일에 모든 텍스트에 관한 항목을 넣을 지 각각 항목에 (예: 유닛/건물 XML) 하나씩 넣을지는 자유. 나무위키에 있는 모드 문명은 대다수가 Language_ko_KR가 없어서 거의 다 영문으로 나온다. 그냥 영문으로 즐기는 자야 별 문제가 없겠지만 한국어판을 한다면 조금 깨기는 하다.
여기의 ICON_HAPPINESS_4가 뭔지 궁금하다면 그것은 바로 빨간 불행 이모티콘이다. 여기 쓰일 모든 기본 아이콘들은 여기 참고바람.
순수히 한글만 쓰고 Language_ko_KR 항목까지 만들기 귀찮으면 Language_en_US에 한국어 텍스트를 집어넣어도 문제 없다.
4.11 승급
4.12 기술
4.12.1 시대
새 시대를 만드는 것
이에 상응하는 이미지를 넣고 싶으면 NewEraPopup.lua 파일을 덮어 씌우는 파일을 만들어야 한다. 그렇지 않으면 새 시대가 뜰 때 중세시대 이미지가 뜬다.
만드는 방법은 Era 항목을 만든 뒤, 원하는 수의 시대 만큼의 Row 태그를 넣은 뒤 정보를 삽입하면 된다.
- ID
- Type
- Description
- ShortDescription
- Abbreviation
- ArtPrefix
- Strategy
- NoGoodies
- NoBarbUnits
- NoReligion
- FirstSoundtrackFirst
- ResearchAgreementCost
- EmbarkedUnitDefense
- StartingUnitMultiplier
- StartingDefenseUnits
- StartingWorkerUnits
- StartingExploreUnits
- StartingGold
- StartingCulture
- FreePopulation
- LaterEraBuildingConstructMod
- StartPercent
- BuildingMaintenancePercent
- GrowthPercent
- TrainPercent
- ConstructPercent
- CreatePercent
- ResearchPercent
- BuildPercen
- ImprovementPercent
- GreatPeoplePercent
- CulturePercent
- TradeRouteFoodBonusTimes100
- TradeRouteProductionBonusTimes100
- EventChancePerTurn
- SpiesGrantedForPlayer
- SpiesGrantedForEveryone
- FaithCostMultiplier
- DiploEmphasisReligion
- DiploEmphasisLatePolicies
- LeaguePercent
- WarmongerPercent
- SoundtrackSpace
- CityBombardEffectTag
- AudioUnitVictoryScript
- AudioUnitDefeatScript
- CityArtType
4.13 사회 정책
사회 정책을 새로이 만들거나 수정이 가능하다.
사회 정책으로 건물이나 종특에 있는 XML 항목으로 구현이 어려우나 정책으로 구현이 쉽게 가능하면 쓰는 경우가 있으며, 또한 정책 트리에 새로운 정책을 더하는 것도 가능하다, 단, 사회 정책 UI가 9개의 트리(이념 추가 10개)로만 구성되어 있어서 UI를 만지지 않는 이상 새로운 트리를 넣을 수 없으며, 이념도 UI에 관여하는 LUA를 만져야 하며, AI는 추가적인 이념을 선택하지 않는다.
4.13.1 Policies
4.13.2 Policy_TourismOnUnitCreation
- PolicyType - 정책 종류
- UnitClassType - 유닛 종류
- Tourism - 유닛 생성시 추가되는 관광
4.14 세계 대회
새로운 (시대로 인해) 세계 대회 종류는 LeagueSpecialSession, 안건 자체는 Resolutions, 그리고 대업의 경우 LeagueProject와 이에 대한 보상은 LeagueProjectRewards에서 설정할 수 있다.
예를 들어 새롭운 시대를 만들어서 새로운 대회를 만들고 싶다면 대략
<GameData> <Row> <Type>LEAGUE_SPECIAL_SESSION_START_INTERNATIONAL_PROTOCOLS</Type> <Description>TXT_KEY_LEAGUE_SPECIAL_SESSION_START_INTERNATIONAL_PROTOCOLS</Description> <Help>TXT_KEY_LEAGUE_SPECIAL_SESSION_START_INTERNATIONAL_PROTOCOLS_HELP</Help> <SessionSplashImage>Victory_Cultural.dds</SessionSplashImage> <EraTrigger>ERA_FUTURE</EraTrigger> <ImmediateProposal>RESOLUTION_CHANGE_LEAGUE_HOST</ImmediateProposal> <RecurringProposal>RESOLUTION_DIPLOMATIC_VICTORY</RecurringProposal> <TurnsBetweenSessions>5</TurnsBetweenSessions> <CivDelegates>6</CivDelegates> <HostDelegates>6</HostDelegates> <CityStateDelegates>2</CityStateDelegates> <UnitedNations>true</UnitedNations> </Row> </GameData>
이렇게 해주면 된다. UnitedNation 태그의 경우 UnitedNation과 관련된 불가사의나 건물을 지으면 자동적으로 해금된다는 뜻이지만, 모드 없이는 국제 연합 불가사의가 없으므로 무시된다. 한편, 게임적으로 중요한 것은
- EraTrigger - 한 문명이 이 시대 다음으로 넘어가거나 살아남은 문명중 절반 이상이 이 시대에 접어들면 해금됨
- ImmediateProposal - 이 특별 회의에서 바로 제안되는 것. 보통 RESOLUTION_CHANGE_LEAGUE_HOST를 쓰며, 이는 바로 개최국을 선정하는 것이다.
- RecurringProposal - 이게 있으면 회의가 보통 안건 제안과 이 특별 제안을 번갈아 가면서 한다. 모드 없이 쓰이는 곳은 바로 국제 연합때의 외교 승리를 위한 RESOLUTION_DIPLOMATIC_VICTORY.
- TurnsBetweenSessions - 안건에 대한 투표에 걸리는 턴.
- CivDelegates - 문명이 가지고 있는 기본 표
- HostDelegates - 주최국 특권 표.
- CityStateDelegates - 동맹 도시국가당 받는 표
4.14.1 대업
대업을 만들려면 우선적으로 이를 해금하는 Resolutions, 대업을 정의하는 LeagueProject, 그리고 이에 상응하는 보상을 나열하는 LeagueProjectRewards, 그리고 Process 항목을 만져야 한다.
해금하는 안건의 예
<GameData> <Resolutions> <Row> <Type>RESOLUTION_LARGE_HADRON_COLLIDER</Type> <Description>TXT_KEY_RESOLUTION_LARGE_HADRON_COLLIDER</Description> <Help>TXT_KEY_RESOLUTION_LARGE_HADRON_COLLIDER_HELP</Help> <VoterDecision>RESOLUTION_DECISION_YES_OR_NO</VoterDecision> <ProposerDecision>RESOLUTION_DECISION_NONE</ProposerDecision> <TechPrereqAnyMember>TECH_PARTICLE_PHYSICS</TechPrereqAnyMember> <LeagueProjectEnabled>LEAGUE_PROJECT_LARGE_HADRON_COLLIDER</LeagueProjectEnabled> </Row> </Resolutions> </GameData>
여기서 중요한 것은 LeagueProjectEnabled다.
대업 자체를 만들려면
<GameData> <LeagueProjects> <Row> <Type>LEAGUE_PROJECT_LARGE_HADRON_COLLIDER</Type> <Description>TXT_KEY_LEAGUE_PROJECT_LARGE_HADRON_COLLIDER</Description> <Help>TXT_KEY_LEAGUE_PROJECT_LARGE_HADRON_COLLIDER_SPLASH</Help> <ProjectSplashImage>Large_Hadron_Collider_project.dds</ProjectSplashImage> <Process>PROCESS_LARGE_HADRON_COLLIDER</Process> <CostPerPlayer>1100</CostPerPlayer> <RewardTier1>LEAGUE_PROJECT_REWARD_LARGE_HADRON_COLLIDER_1</RewardTier1> <RewardTier2>LEAGUE_PROJECT_REWARD_LARGE_HADRON_COLLIDER_2</RewardTier2> <RewardTier3>LEAGUE_PROJECT_REWARD_LARGE_HADRON_COLLIDER_3</RewardTier3> <PortraitIndex>0</PortraitIndex> <IconAtlas>INTL_PROJECT_ATLAS_EXP2</IconAtlas> </Row> </LeagueProjects> </GameData>
이렇게 해주면 된다. 다만, 보상 레벨은 직접 지정할 수 없으며, RewardTier1은 항상 CostPerPlayer의 반, RewardTier2는 CostPerPlayer, 그리고 RewardTier3는 최대 공헌자에게 주어진다. CostPerPlayer는 문명당 필요한 생산력. 하지만, 중요한 것은 Process인데 이를 지정하고 Process 항목에 이에 상응하는 건설작업을 선택하지 않으면 교육학이나 길드가 해금하는 부, 연구 같은 기타 항목에 있는 것이 해금될 경우 건설 패널이 뜨지 않는다.
4.15 기타
특수한 능력들, 예를 들어 세계 대회에러 통과한 프로젝트나 부같은 것은 Process 항목에 포함되어 있다.
4.15.1 Process
- ID - 그냥 ID 숫자. 무시해야 됨.
- Type - 게임 데이터베이스에서 쓰는 이름.
- Description - 스크린에 출력되는 이름.
- Help - 간략한 설명.
- Strategy - 백과사전에 나오는 전략
- TechPrereq - 기술 요구사항
- PortraitIndex
- IconAtlas
4.15.2 Process_Flavor
Flavor가 들어간게 다 그렇듯 AI가 이것을 얼마나 선호하는지를 지정한다.
- ProcessType
- FlavorType - AI 선호 분야 (예: FLAVOR_EXPANSION은 확장, 지도자 항목의 Leader_Flavors 부분 참조바람)
- Flavor - 지수
4.15.3 Process_ProductionYields
- ProcessType
- YieldType
- Yield - 생산력 교환 백분율. 25의 경우 생산력의 25%가 YieldType이 지정한 산출로 전환된다. 다만, 이로서 얻는 산출량은 건물의 % 보정을 받지 않는다.
4.16 종교
교리의 경우 Belief 항목에서 정의가 된다.
예시 교리들
<GameData> <Beliefs> <Row> <Type>BELIEF_LIFEGIVER</Type> <Description>TXT_KEY_BELIEF_LIFEGIVER</Description> <ShortDescription>TXT_KEY_BELIEF_LIFEGIVER_SHORT</ShortDescription> <Pantheon>true</Pantheon> </Row> <Row> <Type>BELIEF_SANCTUARY</Type> <Description>TXT_KEY_BELIEF_SANCTUARY</Description> <ShortDescription>TXT_KEY_BELIEF_SANCTUARY_SHORT</ShortDescription> <Founder>true</Founder> </Row> <Row> <Type>BELIEF_TECHPRIEST</Type> <Description>TXT_KEY_BELIEF_TECHPRIEST</Description> <ShortDescription>TXT_KEY_BELIEF_TECHPRIEST_SHORT</ShortDescription> <Follower>true</Follower> </Row> </Beliefs> <Belief_FeatureYieldChanges> <Row> <BeliefType>BELIEF_LIFEGIVER</BeliefType> <FeatureType>FEATURE_OASIS</FeatureType> <YieldType>YIELD_CULTURE</YieldType> <Yield>2</Yield> </Row> <Row> <BeliefType>BELIEF_LIFEGIVER</BeliefType> <FeatureType>FEATURE_OASIS</FeatureType> <YieldType>YIELD_FAITH</YieldType> <Yield>2</Yield> </Row> <Row> <BeliefType>BELIEF_LIFEGIVER</BeliefType> <FeatureType>FEATURE_OASIS</FeatureType> <YieldType>YIELD_FOOD</YieldType> <Yield>1</Yield> </Row> </Belief_FeatureYieldChanges> <Belief_BuildingClassYieldChanges> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_TEMPLE</BuildingClassType> <YieldType>YIELD_SCIENCE</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_TEMPLE</BuildingClassType> <YieldType>YIELD_PRODUCTION</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_TEMPLE</BuildingClassType> <YieldType>YIELD_FAITH</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_UNIVERSITY</BuildingClassType> <YieldType>YIELD_SCIENCE</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_UNIVERSITY</BuildingClassType> <YieldType>YIELD_PRODUCTION</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_UNIVERSITY</BuildingClassType> <YieldType>YIELD_FAITH</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_WORKSHOP</BuildingClassType> <YieldType>YIELD_SCIENCE</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_WORKSHOP</BuildingClassType> <YieldType>YIELD_PRODUCTION</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_WORKSHOP</BuildingClassType> <YieldType>YIELD_FAITH</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_FACTORY</BuildingClassType> <YieldType>YIELD_SCIENCE</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_FACTORY</BuildingClassType> <YieldType>YIELD_PRODUCTION</YieldType> <YieldChange>1</YieldChange> </Row> <Row> <BeliefType>BELIEF_TECHPRIEST</BeliefType> <BuildingClassType>BUILDINGCLASS_FACTORY</BuildingClassType> <YieldType>YIELD_FAITH</YieldType> <YieldChange>1</YieldChange> </Row> </Belief_BuildingClassYieldChanges> <Belief_HolyCityYieldChanges> <Row> <BeliefType>BELIEF_SANCTUARY</BeliefType> <YieldType>YIELD_FAITH</YieldType> <Yield>4</Yield> </Row> <Row> <BeliefType>BELIEF_SANCTUARY</BeliefType> <YieldType>YIELD_CULTURE</YieldType> <Yield>4</Yield> </Row> </Belief_HolyCityYieldChanges> </GameData>
예시 교리들은
- BELIEF_LIFEGIVER: 오아시스 타일의 식량 산출이 1, 문화와 신앙 산출이 2만큼 증가함. 종교관.
- BELIEF_TECHPRIEST: 사원, 작업장, 대학과 공장의 과학, 신앙과 생산력 산출이 1만큼 증가함. 신자 교리.
- BELIEF_SANCTUARY: 성도의 신앙과 문화 산출량이 4만큼 증가함. 창시자 교리.
참고로 효과들의 적용 대상은 교리의 종류가 아닌 효과 종류에 따른다. 예를 들어 신앙으로 건물을 해금하는 Belief_BuildingClassFaithPurchase의 경우 어떠한 교리이든 창시자가 아닐지라도 도시가 종교를 믿으면 이 효과를 받는다. 이로서 예수회 교단 개혁 교리의 경우 타 문명의 도시에서도 건물 구입이 가능해진다. 향상 교리를 만들고 싶을 경우 교리에 <Enhancer>true</Enhancer>을 붙이면 되며, 개혁 교리는 <Reformation>true</Reformation>을 붙이면 된다.
5 LUA
자작 UI 추가/변경점을 만들거나 대화창 생성, 아니면 XML만으로 구현 불가능한 게임 효과를 구현하는데 쓰인다.
기본적인 양식은 function을 만들어 게임의 특정 이벤트에 붙이는 것. 이 중 제일 기본적인 이벤트는 GameEvents.PlayerDoTurn으로서, 거기에 function을 붙이면 된다.
더 자세한 내용은 모디키 문서에서 보면 된다. 다만, 효과는 설명하지는 않는다.
예시 LUA
function createGreatEngineer(iPlayer) local player = Players[iPlayer] if (player:GetCivilizationType() == GameInfoTypes["CIVILIZATION_SAMPLE_CIV"] and player:IsAlive()) then local proteuousa = player:GetCapitalCity() player:InitUnit(GameInfoTypes["UNIT_ENGINEER"], proteuousa:GetX(), proteuousa:GetY()) end end GameEvents.PlayerDoTurn.Add(createGreatEngineer)
이 LUA 코드는 CIVILIZATION_SAMPLE_CIV라고 등록되어 있는 문명의 턴이 시작될 때마다 그 문명을 위해 수도에서 위대한 기술자를 생성하는 코드다.
LUA의 용도 중 하나가 문명 특성인 경우가 많은데, 이런 경우에는 문명이 있을 때만 이벤트에 효과를 링크 시켜 최적화 시킬 수 있다.
예시 LUA
for iPlayer = 0, GameDefines.MAX_MAJOR_CIVS-1, 1 do local paichnides = Players[iPlayer] if paichnides:GetCivilizationType() == GameInfoTypes["CIVILIZATION_MATHALX_PHROURION"] then --Players[Game.GetActivePlayer()]:AddNotification(NotificationTypes.NOTIFICATION_GENERIC, "DETECTED", "MUH PLAYA") GameEvents.PlayerDoTurn.Add(OnTurnSpecialistsCheck) GameEvents.PlayerDoTurn.Add(GiveFreeGreatPerson) GameEvents.PlayerDoTurn.Add(PhrourionUpdate) paichnides:SetHasPolicy(GameInfoTypes["POLICY_MATHALX_PHROURION_GREAT_PEOPLE_PENALTY"], true) end end
여기서 GameEvents.x는 모두 효과가 들어 있는 함수를 이벤트에 연결시키는 것이다. 위의 for 루프는 플레이어들을 검색해 밑의 if에 있는 문명중 CIVILIZATION_MATHALX_PHROURION이라는 Type의 문명이 있으면 돌아가라는 뜻.
대화창의 경우 대화창 생김새 자체는 XML에서 짜지만, 효과와 대화창 생성은 LUA쪽에서 담당한다.
5.1 UI 모딩
UI 모드를 만들려면 우선적으로 XML에서 양식을 짜고, 효과와 대화창 생성은 LUA쪽에서 담당한다. 하지만, 이것이 게임에서 정상적으로 작동하게 하려면 XML과 LUA 파일의 이름이 같아야 하며, 동일한 폴더에 있어야 한다. 이 후에 Property에 가서 Content 탭을 누른후 이 중 하나를 선택하고, 도시 UI같은 것을 변경하지 않는 기본적인 UI 대화창일 경우 InGameUIAddin을 선택하면 된다.
5.2 이벤트와 판결 지원
중요한 팁으로 디버깅 할때 효과인 DoFunc와 조건인 CanFunc안의 내용물은 로깅으로 잡아내지를 않는다. 그렇기 때문에 문제가 생겼으면 반드시 그 안에 있는 내용물을 밖으로 집어내서 디버깅을 해야 한다.
6 2D 이미지 그래픽/음향 추가
준비하는 것과 모드에 추가하는 것이 따로 있다. 2D 이미지의 경우 문명은 DDS 파일만을 취급하는데, 공짜로 하려면 GIMP를 받은 후에 DDS 플러그인을 받아 쓰면 된다. 이미지를 다 준비하고 DDS 형식으로 내보내려면 최신 버전의 GIMP를 갖고 있을 경우 Export/내보내기를 누른 후에 뜨는 메뉴에서 끝 확장자를 .dds로 하면 끝이다. 압축은 안 하는게 그냥 편하고 밉맵은 꺼야한다.
이렇게 다 되었으면 ModBuddy에서 원하는 디렉토리에 오른쪽 클릭을 한 후에 Add -> Existing Item을 뽑아 원하는 것을 넣으면 된다. 그 후에 그 파일을 클릭해서 기본적으로 오른쪽에 있는 Property 바에 있는 항목중 Import into VFS라는 항목이 있는데, 2D 이미지, 음향, 그리고 리더 씬 XML파일의 경우 이것을 True로 세팅해야 한다.