NeoForge 26.1 Docs
  • 문서
  • 노트
NeoForge 26.1
NeoForge 26.1
v26.1
학습 진도
0 / 77 챕터 완료방문 0
캡스톤 통합 설계 + 의존 구조차원에 보석 광물 배치 (WorldGen)기계 가공 통합 — Crusher로 광물 → 보석 정제차원 전용 새 몹 — GemGuardian이벤트로 모듈 연결사운드·파티클 폴리시마무리와 통합 빌드
마스터캡스톤

캡스톤 통합 설계 + 의존 구조

Master Tools, Master Dimension, Master Machine을 하나의 진행 루프로 연결하는 Master Capstone 모드의 비전, 의존성, 로드 순서, 배포 구조를 설계합니다.

캡스톤 통합 설계 + 의존 구조

마스터 트랙 #4는 앞에서 만든 3개 모드(master_tools, master_dimension, master_machine)를 복사해서 합치는 과정이 아닙니다. 각 모드는 독립 JAR로 유지하고, master_capstone은 세 모드가 제공하는 기능을 전제로 새 월드젠·레시피·몹·진행 루프를 연결합니다.


1. 캡스톤 비전

완성 목표는 “마법 차원에서 발견한 자원을 기계로 가공해 다시 차원 진행을 강화하는 루프”입니다.

  1. 플레이어가 master_dimension의 magic_realm 또는 master_dimension으로 입장합니다.
  2. 차원 안에서 캡스톤이 추가한 Ruby Ore 월드젠을 발견합니다.
  3. master_tools의 도구로 광물을 채굴해 원시 보석을 얻습니다.
  4. 차원에서 귀환한 뒤 master_machine의 Crusher로 원시 보석을 가공합니다.
  5. 정제 보석을 사용하면 차원 입장 효과가 강화되어 다음 탐험이 쉬워집니다.
  6. 차원 전용 새 몹 GemGuardian을 처치하면 특별 드롭을 얻습니다.

이 루프의 핵심은 기능을 한 프로젝트로 뭉치지 않는 것입니다. 도구, 차원, 기계는 각자의 책임을 유지하고, 캡스톤만 세 모드를 의존성으로 삼아 플레이 경험을 엮습니다.


2. 통합 의존 그래프

다이어그램 렌더링 중…

master_capstone은 세 모드를 아래처럼 사용합니다.

의존 모드캡스톤에서 사용하는 역할캡스톤이 추가하는 것
master_toolsRuby 보석과 도구 계열차원 광물 채굴 조건, 정제 보석 진행 보상
master_dimensionMagic Portal, Magic Realm차원 전용 광석, 몹 스폰, 입장 강화 효과
master_machineCrusher와 CrusherRecipe 흐름광석 → 보석 가공 레시피, 진행 루프 연결

3. MasterCapstoneMod.java 생성

examplemod-master-projects/capstone/src/main/java/com/example/master/capstone/MasterCapstoneMod.java

package com.example.master.capstone;
 
import com.mojang.logging.LogUtils;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.fml.ModContainer;
import net.neoforged.fml.common.Mod;
import org.slf4j.Logger;
 
@Mod(MasterCapstoneMod.MOD_ID)
public class MasterCapstoneMod {
    public static final String MOD_ID = "master_capstone";
    public static final Logger LOGGER = LogUtils.getLogger();
 
    public MasterCapstoneMod(IEventBus modEventBus, ModContainer container) {
        LOGGER.info("Master Capstone Mod 로드 — 4개 모드 통합");
        // 다음 챕터들에서 worldgen 데이터팩, recipe, entity, event 통합
    }
}

아직 레지스트리는 연결하지 않습니다. 이번 챕터의 목표는 “캡스톤 모드가 로드되고, 세 마스터 모드 뒤에서 동작할 준비가 되었는지”를 확인하는 것입니다.


4. Gradle 의존성 설계

capstone/build.gradle의 핵심 의존성은 다음 모양입니다.

dependencies {
    implementation "net.neoforged:neoforge:${neo_version}"
 
    // 3개 마스터 모드 의존 (같은 그룹 전체 빌드 가정)
    runtimeOnly project(':master_tools')
    runtimeOnly project(':master_dimension')
    runtimeOnly project(':master_machine')
}

이 코드는 settings.gradle에서 네 프로젝트를 한 Gradle 루트로 묶었을 때 사용하는 형태입니다. 현재 예제 저장소는 각 마스터 모드가 독립 프로젝트로 분리되어 있으므로, 실제 실행 검증은 더 단순한 방식으로 진행합니다.

mods/
├── master_tools-1.0.0.jar
├── master_dimension-1.0.0.jar
├── master_machine-1.0.0.jar
└── master_capstone-1.0.0.jar

즉, 이번 트랙의 기준 배포 방식은 JAR 4개를 같은 mods/ 폴더에 배치하는 것입니다. 다중 프로젝트 Gradle 설정은 별도 고급 주제로 분리합니다.


5. neoforge.mods.toml 의존성 선언

런타임 배치만으로는 충분하지 않습니다. NeoForge 로더가 “이 모드는 다른 3개 모드가 필요하다”는 사실을 알도록 neoforge.mods.toml에도 의존성을 적습니다.

[[dependencies.master_capstone]]
modId = "master_tools"
type = "required"
versionRange = "[1.0.0,)"
ordering = "AFTER"
side = "BOTH"
 
[[dependencies.master_capstone]]
modId = "master_dimension"
type = "required"
versionRange = "[1.0.0,)"
ordering = "AFTER"
side = "BOTH"
 
[[dependencies.master_capstone]]
modId = "master_machine"
type = "required"
versionRange = "[1.0.0,)"
ordering = "AFTER"
side = "BOTH"

ordering = "AFTER"는 캡스톤이 세 모드 뒤에서 로드되도록 의도를 드러냅니다. 실제 레지스트리 객체를 직접 참조하는 챕터에서는 이 선언이 빠졌을 때 오류가 훨씬 빨리 드러납니다.

⚠️ 의존성 누락
4개 JAR을 같은 mods/ 폴더에 배치하지 않으면:
→ MasterCapstoneMod 로드 시 master_tools 클래스 못 찾음
→ ClassNotFoundException: MasterToolsMod
항상 4개 JAR(tools/dimension/machine/capstone) 모두 mods/에 배치하세요.


6. 이 챕터의 완료 기준

  • MasterCapstoneMod.java가 master_capstone 모드 ID로 로드됩니다.
  • build.gradle에 NeoForge와 3개 마스터 모드 런타임 의존성 구조가 준비됩니다.
  • neoforge.mods.toml에 master_tools, master_dimension, master_machine required 의존성이 선언됩니다.
  • 다음 챕터에서 Ruby Ore 월드젠, CrusherRecipe, GemGuardian을 각각 독립 기능으로 추가할 수 있습니다.

다음 단계부터는 세 모드의 코드를 복사하지 않고, 캡스톤 모드가 “기존 모드들이 제공하는 API와 리소스를 사용하는 방식”으로 확장합니다.

기계 모드 마무리 + JAR 빌드

Crusher 자동화 기계 모드의 전체 코드를 점검하고, Gradle로 JAR를 빌드하여 인게임에서 동작을 최종 검증합니다. 빌드 산출물 구조와 배포 전 체크리스트도 다룹니다.

차원에 보석 광물 배치 (WorldGen)

NeoForge 데이터팩 worldgen JSON 3종(configured_feature, placed_feature, biome_modifier)을 작성해 master_dimension의 magic_realm 차원에만 Ruby Ore를 생성합니다.

On this page

캡스톤 통합 설계 + 의존 구조1. 캡스톤 비전2. 통합 의존 그래프3. MasterCapstoneMod.java 생성4. Gradle 의존성 설계5. neoforge.mods.toml 의존성 선언6. 이 챕터의 완료 기준
NeoForge 26.1 Docs

NeoForge 26.1 모딩 개발 문서 사이트

GitHubDiscord

문서

  • 문서
  • 노트

GitHub

  • GitHub
  • Discord

© 2026 NeoForge 26.1 Docs. 콘텐츠는 MIT 라이선스로 제공됩니다.

Built with Next.js · Tailwind CSS · shadcn/ui