최근 수정 시각 : 2024-05-02 20:19:32

Hearts of Iron IV/모딩

호이4 모딩에서 넘어옴
{{{#!wiki style="margin:-0px -10px -5px; color: #c7b89e"
{{{#!folding [ 게임 관련 정보 ]
{{{#!wiki style="margin:-5px -1px -11px; color: #000, #ddd"
<colbgcolor=#575a52> 공략 공략 | 정치 및 외교 | 군사 | 기술 연구 | 교리 | 창발적 플레이 | 정보기관
국가 국가 | 고유 중점 국가 | 형성 가능 국가 | 해방 국가
국가 중점 | 7대 열강 중점 | 고유 중점
국가목록
인물 인물 | 7대 열강 인물 | 고유 중점 국가 인물
게임 이벤트 | 도전과제 | 역사적 AI 중점 | OST | 멀티 | 주 목록
모드 모드 | 모딩
{{{#!wiki style="margin:0 -10px -5px; min-height:calc(1.5em + 5px)"
{{{#!folding [ 단독 문서가 개설된 모드 펼치기 · 접기 ]
{{{#!wiki style="margin:-5px -1px -11px"
고증 개선/타 시대 배경 모드
<colbgcolor=#fff,#222> Black ICE
The Road to 56
| 국가중점
Millennium Dawn: Modern Day Mod
| 국가중점
Eight Years' War of Resistance
| 국가, 인물
The Great War Redux
| 국가
End of a New Beginning
대체역사 모드
Kaiserreich: Legacy of the Weltkrieg
| 국가, 인물, 이벤트, 업데이트 내역, 모에라이히
Kaiserredux: A Kaiserreich Expansion
| 국가
The New Order: Last Days of Europe
| 국가, 정당과 이념, 법안, 이벤트
The Red Order: First Days of Eurasia
Thousand-Week Reich
| 국가
Red Flood
| 국가, 이벤트
THE LAST EMPIRE
| 국가, 이벤트
Pax Britannica: An Imperial Timeline
| 국가, 이벤트
타 작품 배경 모드
Old World Blues
| 국가
Equestria at War
| 등장 국가
}}}}}}}}}
기타 패치 | DLC | 발매 전 정보
문서 분류            파일 분류            둘러보기 틀 }}}}}}}}}

Hearts of Iron IV : 모딩
{{{#!wiki style="margin:-0px -10px -5px; color: #c7b89e"
{{{#!folding [ 펼치기 · 접기 ]
{{{#!wiki style="margin:-5px -1px -11px; color: #000, #ddd"
<colbgcolor=#575a52> 문서 작성 이펙트 | 트리거 | 정의 | 모디파이어(수정자) | 스코프 | 번역(로컬리제이션) | 변수 | 행동변수(실행 시) | 데이터
스크립트 작성 도전과제 | AI | 괴뢰국 주 관리 | 힘의 균형
북마크, 시나리오(게임 규칙) | 건설 | 인물
태그 | 국가 | 편제 | 결정(디시전) | 장비 | 이벤트 | 국민정신 | 이념 | 산업체 | 국가 중점 | 자원 | 스크립트 GUI | 기술, 교리 | 유닛
지도 지도 | | 보급 지역 | 전략 구역
그래픽 인터페이스 | 그래픽 에셋 | 엔티티 | 포스트이펙트 | 파티클 | 폰트
외부 초상화 | 사단 이름 | 음악 | 효과음
기타 콘솔 명령어 | 문제 해결 | 모드 구조 | 모드 | 넛져
문서 분류            모딩 둘러보기 틀            게임 둘러보기 틀 }}}}}}}}}




1. 개요2. 중요사항(팁들)3. 모드의 구조4. 게임 데이터5. 이미지 파일의 형식6. 유용한 모딩 도구7. 같이 보기

1. 개요


모딩(modding) 혹은 모드 제작은 개인적, 또는 스팀 워크샵을 통해 다른 플레이어에게 공개하기 위하여 기본 게임( 바닐라)를 수정하는 행위를 말한다.

모든 패러독스사의 게임은 상당부분이 수정이 가능하다. 모딩의 동기는 각각 크게 다를수 있다. 한국어로 모드를 번역하는 것, 이벤트, 디시전, 맵 개선, 전체적인 개선등으로 크게 차이가 날수 있다.

기본적으로 Hearts of Iron IV의 모드는 다음 폴더에 있다.
  • 윈도우 :C:/Users/<Username>/Documents/Paradox Interactive/Hearts of Iron IV/mod
  • 맥 OS :~/Documents/Paradox Interactive/Hearts of Iron IV/mod
  • 리눅스 :~/.local/share/Paradox Interactive/Hearts of Iron IV/mod
모딩을 시작하려면 mod 디렉토리에 mod의 구조를 제작해야 한다.

2. 중요사항(팁들)

  • 게임 파일 수정 금지 : 작은 변경이라고 할지라도 변경점이 예고없이 사라질수 있으므로 스팀 폴더의 'Hearts of Iron IV' 폴더에서 직접 수정하지 말아야 한다.
  • Notepad ++ 또는 Sublime Text와 같은 우수한 텍스트 편집기를 사용하여 파일을 편집하고 여러 파일을 검색해야 한다.[1]
  • 모드의 호환성과 유지관리를 향상시키기 위하여 별도의 파일로 추가하고 바닐라 파일을 덮어쓰는 것을 최소화 해야한다. (파일 이름은 상관 없다. 폴더의 모든 파일은 게임에 의해 로드된다. 이름만 정하면 된다. 예 : coolmod_countries)
  • 적절한 폴더 병합도구를 사용하여 폴더를 합치고 수정된 바닐라 파일을 새로운 바닐라의 패치로 업데이트 해야한다.
  • 모든 것을 잃어버리지 않도록 작업을 백업해야 한다. Git과 같은 소스 제어 시스템과 GitHub와 같은 협업시스템을 사용하여 팀의 협업을 관리하거나 파일의 사본을 만들어라.
  • 텍스트 파일에는 UTF-8을 사용하면 된다.
  • localization 파일(.yml)에는 UTF-8-BOM을 사용하면 된다.
  • 띄어쓰기 대신 TAB을 사용하면 된다.
  • 한글로 주석을 달고 싶다면 #을 사용하면 된다. ex:) id = YUG.7 #유고슬라비아 내전 이벤트
  • 디버그 모드를 자주 사용하는 것이 좋다. steam의 실행 옵션에 -debug를 입력하여 디버그 모드를 실행 시킬 수 있다. 디버그 모드는 자세한 오류를 확인 할 수 있다.

3. 모드의 구조

모드의 위치는 다음과 같은 곳에 있다.
  • 일반적 - \\Paradox Interactive\\Hearts of Iron IV\\mod\\
  • 스팀 워크샵 : \\Steam\\steamapps\\workshop\\content\\394360\\

.mod 파일의 이름에는 공백이 없어야 한다. 그렇지 않으면 게임 런처가 자동으로 인식해주지 못한다.

.mod 파일의 구조 3가지가 있다. 마이너 모드, 메이저 모드, 서브 모드이다. 이러한 모드의 일반적인 구조는 다음과 같다. 마이너, 메이저 또는 서브 모드로 간주되어야 하는지에 대한 여부는 .mod 파일의 구조에 달려 있다.

마이너 모드

가장 일반적인 유형의 모드는 게임의 일부만 변경하는 것이다. 이런 유형은 새로운 그래픽 , 저장 폴더 등이 필요하지 않으므로 다른 모드들과 호환성을 유지하기 위하여 필요한 user_dir, replace_path 구조 또한 없다.

 name = "Minor Mod"
path = "mod/MinorMod"
picture = "MinorMod.png"
tags = { 
    "Minor" 
    "Mod"
}


메이저 모드
메이저 모드는 일반적으로 2가지 범주로 나눌수 있지만 종종 게임 파일(예시 : Overhauls와 Total Conversion Mod)이 겹치는 에러가 날수 있다. 그래서 user_dir을 이용하여 다른 외부에 저장과 로드를 할수 있게 할수 있다.
replace_path의 경우에는 모드에서 의미가 없는 바닐라 파일 (history, flags등)을 완전히 무시하는데 사용한다.

 name = "Major Mod"
path = "mod/MajorMod"
picture = "MajorMod.png"
user_dir = "MajorMod" 
replace_path = "history / states" 
tags = { 
    "Major" 
    "Mod"
}


서브 모드
메이저 모드의 서브 모드는 dependencies를 사용하여 메인 모드의 파일에 상위에 위치하게 정의해준다. 이것은 서브 모드가 정확하게 작동하는데 필요하다.

 name = "Major Mod"
path = "mod/MajorMod"
picture = "MajorMod.png"
dependencies = {
    "Major Mod"
}
tags = { 
    "Major" 
    "Mod"
}

4. 게임 데이터

  • 콘솔 커맨드, 모드에 유용한 디버그 명령 가능.
  • 정의, 어렵게 코딩 되어있는 바닐라에 영향을 미칠수 있음.
  • 범위, 스크립팅에 사용되는 조건 및 명령.
  • 모디파이어, 게임의 연산에 영향을 주는 명령.
  • 이벤트 모딩, 의사 결정으로 게임의 영향을 줄수 있음

게임 내 항목의 이름 (can_create_faction = AXIS에서 AXIS같은 것과 연구나 규칙같은 것)은 게임의 localization 폴더에서 찾을수 있다.

5. 이미지 파일의 형식

이미지는 DDS형식을 사용해야 한다. 일부 이벤트 이미지는 .tga형식일 수도 있다. 이미지의 형식이 png일 경우는 허용되나 게임 실행 속도가 조금 느려진다.
대부분의 파일은 8.8.8.8 ARGB, 32비트 서명되지 않은 하위 형식으로 저장된다. 일부 파일(예: 리더 인물)들은 1.5.5.5 ARGB 16비트 서명되지 않은 변형을 사용하여 저장된다. 플래그는 32bpp .tga 파일로 저장된다.

6. 유용한 모딩 도구

7. 같이 보기

  • 모드
  • Man the Guns DLC에서 어떻게 함선 부품을 제작하는지에 대한 포럼
  • 어떻게 새로운 유닛을 만드는가 - 포럼


[1] 대규모 모드에서 Dev가 된 경우에는 그 모드 Lead Dev 들이 사용하라는 프로그램을 써야한다. 예시) 밀던-> Visual Studio Code