1. 개요
게임 민더스트리의 모드를 만드는 행위, 즉 모딩을 하는 방법을 서술한다.1.1. 모딩에 앞서
본 게임이 자바로 만들어졌다. 즉, 보통 모드는 자바스크립트나 자바로 만들어진다.모딩을 시작하기 전에 이 언어들의 기본 문법을 익히고 가면 도움이 될 것이다.
(이 문서에는 내용이 적으니 자세한건 다른 사이트를 찾아보는걸 추천)
이 문서의 가이드는 자바스크립트를 사용한 모딩을 기반으로 만들어졌습니다. 자바를 이용한 모딩은 따로 문서를 추가하여 주시기 바랍니다.
1.2. 디렉터리 만들기
일단 민더스트리의 자바스크립트 기반 모드는 zip 파일로 만들어져있다. 즉 모드 폴더를 만들고 zip파일로 압축을 하면 된다는 것이다.여기서 우리는 이 폴더의 구조를 다 만들어야 한다. 이와 같은 폴더의 구조를 디렉터리(Directory)라고 한다.
보통 민더스트리 모드의 디렉터리는 이렇다.
폴더 이름
├── mod.json(hjson)
├── content
│ ├── items
│ ├── blocks
│ ├── liquids
│ ├── units
│ └── zones
├── maps
├── bundles
├── sounds
├── schematics
├── scripts
├── sprites-override
├── sectors
├── weathers
├── planets
└── sprites
mod.json | 모드에 대한 기초 정보를 적는 파일이다. | |||||
content | 컨텐츠의 JSON 또는 hJSON 파일이 있는 곳이다. | |||||
items(아이템) | blocks(블록) | liquids(액체) | units(유닛) | zones(지역) | contents의 하위 폴더. | |
maps | 모드에서 추가되는 맵들이 들어있는 폴더이다. | |||||
bundles | 번역 파일이 있는 곳이다. | |||||
sounds | 소리 파일이 있는 곳이다. | |||||
schematics | 설계도 파일이 있는 곳이다. | |||||
sprites-override | 기존 바닐라 게임의 스프라이트를 덮어 씌운 것이다. | |||||
sprites | 스프라이트 파일이 있는 곳이다. (png) |
2. 공장 만들기
공장을 만들어 보자. 이 문서에서는 고철과 석탄을 합하여 강철을 만드는 공장을 예로 들었다.먼저
content/blocks/production에 (공장 이름).hjson 파일을 만든다.
공장에는 크게 GenericCrafter와 GenericSmelter 타입이 있다.
GenericCrafter는 새로운 자원을 만드는 것이고, GenericSmelter는 광석에서 광물을 추출해내는 것이다.
여기서는 그러므로 GenericCrafter라고 써야 한다.
#!syntax json
type: GenericCrafter
그리고, 이 공장의 사이즈(크기)와 체력을 써주어야 한다.
#!syntax json
type: GenericCrafter
size: 2
health: 600