편의상 반말 양해 부탁드립니다. 스크립트(sc.ript) 영어로 적으면 이상하게 출력되서 마침표 중간에 넣었습니다.
게임이 설치된 폴더
GOG: The Witcher 3 Wild Hunt
STEAM: The Witcher 3
1. 기본적인 모드 설치법
모드는 https://www.nexusmods.com/witcher3 에서 받을 수 있다. 상단에 ‘MODS > Most endorsed (all time)’를 클릭하면 역대 추천 순으로 모든 모드를 볼 수 있다. 그 후 Refine results 탭을 클릭하면 필터링할 수 있다.
모드를 클릭하여 들어가면 모드 이름 옆에 TRACKING 과 ENDORSE 버튼이 있다. 상단에 ‘MODS > Tracking Centre’를 클릭하면 트랙킹한 모드들을 볼 수 있고 모드가 업데이트되면 쉽게 알 수 있다. 상단에 ‘MODS > My download history’를 클릭하면 여태 다운로드한 모드들을 볼 수 있고 Endorse 할 수 있다. 모드를 사용해보고 마음에 들었다면 꼭 Endorse 해주자.
모드 페이지에서 Last updated 를 보면 마지막으로 파일을 업로드한 날짜를 알 수 있다. 이를 아래의 날짜와 비교하여 모드의 최신 버전의 게임과의 비호환 가능성을 염두에 두어야 한다. 하지만 DESC.RIPTION 탭의 설명을 수정해도 이 날짜는 안 바뀌므로 모더가 게임 패치 후에 업데이트 안 한 모드를 테스트해보고 정상 작동해서 DESC.RIPTION 탭이나 POSTS 탭에 “1.3x 버전에서도 잘 작동됨.” 과 같이 적은 경우도 많다.
확장팩 블러드앤와인 발매 날짜: 31 May 2016
1.30 패치 날짜: 30 August 2016
1.31 패치 날짜: 12 September 2016
1.31 패치 노트: https://witcher.fandom.com/wiki/Patch_1.31_(The_Witcher_3)
1.32(PC판 기준 최신 버전) 패치 날짜: 7 November 2018
1.32 패치 내역: 중국 간체자 추가
마지막 업데이트일이 30 August 2016 이전이면 1.30 패치에서는 바뀌는 게 많으므로 최신 버전의 게임에서 모드가 제대로 작동하지 않을 가능성이 높다. 30 August 2016, 12 September 2016 사이면 1.31 패치 노트의 변경점과 관련된 모드가 아니라면 웬만해선 잘 작동할 것이다. 12 September 2016 이후면 게임 버전 호환성은 고려하지 않아도 된다.
모드 페이지에서 DESC.RIPTION 탭은 정독하기를 권장하는데 특히 Requirements 를 눌러서 꼭 확인해야 한다. Off-site requirements 와 Nexus requirements 는 이 모드를 사용하기 위한 선행 조건으로 꼭 설치해야 한다. Mods requiring this file 은 이 모드를 선행 모드로 하는 모드로 본 모드의 버그 픽스 모드, 개선 모드, 애드온 모드, 한국어 패치 등이 있는 경우가 있으므로 확인하는 것이 좋다. 모드 설명을 다 읽기 귀찮으면 최소한 ‘Ctrl+F’로 ‘compatib’, ‘priorit’, ‘load order’ 등의 키워드를 찾아서 호환성, 로드 순서를 확인하고 빨간 글씨의 주의 사항 정도는 읽기를 권장한다. POSTS 탭을 누르면 모더가 상단에 빨간 테두리의 게시글을 고정한 경우가 있는데 이 게시글도 정독하기를 권장한다. FILES 탭에서 모드를 다운로드할 수 있는데 OLD FILES 외에는 전부 확인하는 게 좋다. 모드에 버그가 있는 것 같을 때 BUGS 탭을 확인해보면 가끔 버그 해결책이 적혀 있는 경우가 있다.
게임이 설치된 폴더에 ‘mods’란 이름으로 폴더를 만들고 그 안에 다운로드한 모드의 압축을 풀어서 수동 설치할 수 있다.(예: The Witcher 3 Wild Hunt\mods\modAbc\content) 다운로드한 모드에 readme.txt 파일이 있으면 정독하기를 권장한다. 게임을 시작하면 게임 화면이 뜨기 전에 ‘RED engine 3’라고 쓰인 빨간 창이 뜨는 경우가 있다. 이 창이 뜰 때마다 게임 메인 화면에서 껐다가 다시 실행해야 한다. 그대로 시작한다면 포션, 폭탄, 오일의 개수가 -1개로 되는 바닐라 버그가 걸릴 수 있다.
2. 모드가 최신 버전의 게임과 호환되지 않는 경우
1. TW3 Gameplay Tweaks 에서 해당 모드와 동일한 기능을 하는 모드가 있으면 설치한다. TW3 Gameplay Tweaks 은 최신 버전의 게임, ‘Community Patch – Base’ 또는 ‘Unification patch for 1.32 - 1.31 - 1.31GOTY - 1.31A game versions (UPatch)’ 모드와 호환되는 트윅들 모음이다.
2. https://docs.google.com/spreadsheets/d/107VmN0OxPuxO02xzN4ukM231Cq3fxCLl4fSsUCFK90E/edit#gid=0 에 해당 모드가 있으면 설치한다. 이 리스트는 기존의 모드를 최신 버전의 게임, ‘Community Patch – Base’ 또는 ‘Unification patch for 1.32 - 1.31 - 1.31GOTY - 1.31A game versions (UPatch)’ 모드와 호환되도록 업데이트한 것이다.
3. UNOFFICIAL 1.30-1.31 Mod update. Project 에 해당 모드가 있으면 설치한다. 이 리스트는 기존의 모드를 1.30-1.31 버전의 게임과 호환되도록 업데이트한 것이다.
4. 앞서 설명한 모드 필터링의 Filename contains… 에서 해당 모드 이름을 검색해본다. 다른 모더가 업데이트해서 업로드한 경우가 있다.
5. 해당 모드의 POSTS 탭이나 BUGS 탭에서 업데이트 버전 다운로드 링크를 찾아본다.
3. 모드의 설정 메뉴, 키 수동 설치법
1. Abc.xml(예시): 모드에 이런 파일이 있을 경우 [게임 설치 폴더]\bin\config\r4game\user_config_matrix\pc 에 이 파일을 복붙하면 된다. 이 파일의 기능은 인게임의 ‘옵션 > MODS’에 모드의 설정 메뉴를 추가하는 것이다.
2. C:\Users\[사용자 이름]\Documents\The Witcher 3\user.settings: 모더가 이 파일에 뭔가를 추가하라고 하면 메모장으로 열어서 새롭게 추가되는 부분만 맨 위에 복붙하면 된다. 모드의 설정 메뉴 세팅뿐만 아니라 게임의 옵션 세팅이 이 파일에 저장된다. Abc.xml(예시) 파일이 있는 모드를 설치할 때 따로 user.settings 파일을 수정하지 않아도 모드 설치 후 인게임에 한 번 들어가면 자동으로 모드의 설정 메뉴 세팅이 저장된다. 모더가 굳이 user.settings 파일에 뭔가를 추가하라고 하는 경우는 모드의 설정 메뉴에 권장하는 기본 세팅이 있는 경우다.
3. [게임 설치 폴더]\bin\config\r4game\user_config_matrix\pc\input.xml: 모더가 이 파일에 뭔가를 추가하라고 하면 노트패드++로 열어서 새롭게 추가되는 부분만 4번째 줄 ‘’와 104번째 줄 ‘’ 사이에 복붙하면 된다. 이 파일의 기능은 인게임의 ‘옵션 > 키 지정’의 메뉴를 구성하는 것이다. 이 파일에서 구성한 순서대로 키 지정 메뉴가 구성된다.
4. C:\Users\[사용자 이름]\Documents\The Witcher 3\input.settings: 모더가 이 파일에 뭔가를 추가하라고 하면 메모장으로 열어서 새롭게 추가되는 부분만 맨 위에 복붙하면 된다. 플레이어가 어떤 상태에 있을 때 어떤 키를 누르면 어떤 일이 일어나는가에 대한 키 세팅이 이 파일에 저장된다. 또한 인게임의 ‘옵션 > 키 지정’의 세팅이 이 파일에 반영된다. 키 지정 메뉴 추가가 없는 키는 input.settings 파일을 직접 수정하여 키 세팅을 해야 한다.
꼭 모더가 하라는 대로 할 필요 없이 추가, 삭제, 수정해도 된다. ‘AutoLoot Configurable All-in-One (1.30-1.31)’ 모드를 예로 든다면 모더는 input.settings 파일에 아래의 텍스트를 추가하라고 한다.
[Exploration]
IK_U=(Action=AutoLootRadius)
IK_Y=(Action=ToggleTrueAutoLoot)
[Horse]
IK_U=(Action=AutoLootRadius)
IK_Y=(Action=ToggleTrueAutoLoot)
[Combat]
IK_U=(Action=AutoLootRadius)
IK_Y=(Action=ToggleTrueAutoLoot)
[Swimming]
IK_U=(Action=AutoLootRadius)
IK_Y=(Action=ToggleTrueAutoLoot)
AutoLootRadius는 일정 반경 내의 아이템을 루팅하는 기능인데 위의 텍스트만 추가하면 물 속에 잠수 중일 때는 이 기능을 사용하지 못한다. 사용하려면 아래의 텍스트를 추가하면 된다.
[Diving]
IK_U=(Action=AutoLootRadius)
ToggleTrueAutoLoot에 키를 지정하지 않으려면 ‘IK_Y=(Action=ToggleTrueAutoLoot)’을 추가하지 않으면 된다. AutoLootRadius 기능을 ‘U’ 키가 아닌 ‘,’ 키로 사용하려면 ‘IK_Comma=(Action=AutoLootRadius)’로 바꾸면 된다. 결과적으로 input.settings 파일에 아래의 텍스트를 추가하면 된다.
[Exploration]
IK_Comma=(Action=AutoLootRadius)
[Horse]
IK_Comma=(Action=AutoLootRadius)
[Combat]
IK_Comma=(Action=AutoLootRadius)
[Swimming]
IK_Comma=(Action=AutoLootRadius)
[Diving]
IK_Comma=(Action=AutoLootRadius)
이렇게 input.settings 파일을 직접 수정할 때 고려할 만한 섹션은 다음과 같다.
[Boat] : 보트에 키를 잡고 앉아 있을 때
[BoatPassenger] : 보트의 키 반대편에 앉아 있을 때
[Combat] : 전투 중일 때
[Diving] : 잠수 중일 때
[Horse] : 말 타고 있을 때
[JumpClimb] : 기어오를 때
[Swimming] : 수면 위를 수영할 때
[ThrowHold] : 폭탄, 석궁 수동 조준할 때
[Exploration] :그 외 탐험 중일 때
[Combat_Replacer_Ciri] :시리로 전투 중일 때
[Horse_Replacer_Ciri] : 시리로 말 타고 있을 때
[Exploration_Replacer_Ciri] : 그 외 시리로 탐험 중일 때
[RadialMenu] : 단축 메뉴(Tab 키)
[Scene] : 컷 씬
4. 모드의 로드 순서(load order)
게임을 시작할 때 어떤 게임 파일 한 개는 단 하나의 모드에 의해서만 바뀔 수 있다. 그러나 같은 파일을 바꾸는 두 개의 활성화된 모드가 있다면 모드 충돌이 생긴다. 이 충돌이 스크립트 파일(.ws)이나 xml 파일에서 생긴다면 Sc.ript Merger로 해결할 수 있지만 텍스처나 모델 등에서 생긴다면 어떻게 할까? 이는 로드 순서로 해결할 수 있다.(먼저 로드=높은 우선권=Priority 숫자가 작음=모드 충돌 이김) 로드 순서는 모드의 폴더명에 따라 자동으로 정해진다. Sc.ript Merger로 합친 모드의 폴더명이 ‘mod0000_MergedFiles’인 이유가 여기에 있다.
그런데 mods.settings 파일을 이용하면 모드의 폴더명을 바꾸지 않고 로드 순서를 직접 지정할 수 있다. 다른 세팅 파일(user.settings 또는 input.settings)과는 다르게 mods.settings 파일은 자동 생성되지 않아서 직접 만들어야 한다. C:\Users\[사용자 이름]\Documents\The Witcher 3 에서 user.settings 또는 input.settings 파일의 복사본을 만들어서 확장자를 포함한 파일 이름을 ‘mods.settings’로 바꾸고 메모장으로 열어서 내용을 전부 지운다. mods.settings 파일은 C:\Users\[사용자 이름]\Documents\The Witcher 3 에 위치해야 한다. 아래는 mods.settings 파일의 사용 예시이다.
-----------------------------------------------------------------------------------------------------------------------------------------------------
;세미콜론으로 시작하는 줄은 무시되므로 메모로 이용할 수 있다.
;mods.settings 파일을 직접 수정할 때 대소문자를 구별해서 써야 한다.
[mod0000____CompilationTrigger]
; ‘Community Patch – Base’ 또는 ‘Unification patch for 1.32 - 1.31 - 1.31GOTY - 1.31A game versions (UPatch)’ 모드를 설치했다면 가장 높은 우선권을 주어야 한다.
Enabled = 1;’0’이면 모드 비활성화, ‘1’이면 모드 활성화
Priority = 0;Priority는 언제 모드를 로드할 것인지 결정한다. 이 값의 범위는 0~9999이다. 숫자가 작을수록 모드 충돌에서 이긴다.
[mod0000_MergedFiles]
;Sc.ript Merger를 사용한다면 ‘Community Patch – Base’ 또는 ‘Unification patch for 1.32 - 1.31 - 1.31GOTY - 1.31A game versions (UPatch)’ 모드를 제외하고 가장 높은 우선권을 주어야 한다.
Enabled = 1
Priority = 1
[modFriendlyHUD];대괄호 안에는 모드의 폴더명을 적는다. 예: Friendly HUD 모드
Enabled = 1
Priority = 8
;Priority에 꼭 연속하는 숫자들을 사용할 필요는 없다. 대신에 숫자 범위를 나눠서 모드를 분류해 놓는 것이 더 낫다.(예: 101~200은 버그 픽스 모드, 401~450은 전투 모드, …)
-----------------------------------------------------------------------------------------------------------------------------------------------------
아래는 최종적으로 정리한 로드 순서가 정해지는 규칙이다.
1. mods.settings 파일로 지정된 모드가 지정되지 않은 모드보다 먼저 로드된다.
2. Priority 숫자가 작을수록 먼저 로드된다.
3. Priority 숫자가 같은 여러 개의 모드들은 모드의 폴더명에 따라 정해진다.
4. mods.settings 파일로 지정되지 않은 모드는 모드의 폴더명에 따라 정해진다.
5. 모드의 폴더명에서 맨 앞 자리부터 비교해서 ‘숫자(0 > … > 9) > 밑줄(_) > 알파벳(A > … > Z)’ 순으로 로드되며 대소문자는 구별하지 않는다.
6. 모드의 폴더명에 숫자, 밑줄, 알파벳 외에 다른 기호(예: 괄호)가 있으면 위의 규칙이 적용되지 않을 수도 있다.
아래는 로드 순서를 정해주는 팁이다.
1. 문제없다는 게 확실하지 않으면 복잡한 모드보다 높은 우선권을 주지 않는다.
2. 많은 종류의 단순한 asset을 바꾸는 모드(예: LOD 모드)는 낮은 우선권을 줘서 더 정교한 모드가 충돌에서 이기도록 한다.
3. 중요한 시스템을 바꾸는 모드(예: 날씨, 빛, 전투 모드)는 asset을 추가하거나 바꾸기만 하는 모드보다 높은 우선권을 준다.
4. Sc.ript Merger로 스크립트나 xml 파일을 합칠 때 로드 순서가 아예 영향을 안 주는 것은 아니지만 경험상 크게 신경 쓰지 않아도 된다. 다만 Sc.ript Merger의 ‘Bundled Non-text – Not Mergeable’ 항목에서 충돌하는 모드들의 로드 순서는 신경 써야 한다.
아주 중요하고 유익한 내용이군요