返回社群
攻略

博德之门3模组制作教程:使用官方工具包进行自定义、测试与发布

本攻略介绍如何使用官方《博德之门3》工具包(Baldur’s Gate 3 Toolkit)中的属性编辑器(Stats Editor)和UUID对象编辑器(UUID Object Editor)制作练习用近战火焰法术。你将学习数据处理、本地化以及法术列表关联,而无需制作3D模型。请区分Windows PC制作环境与游戏内模组使用环境,并与支持官方模组管理器的游戏版本配合操作。

1. 安装工具包与创建空项目

请查阅拉瑞安的“安装工具包”(Installing the Toolkit)文档,确认你所使用的游戏商城对应的工具包及工具包数据(Toolkit Data)的安装顺序。Steam用户的流程通常是查看库中的工具部分以及游戏DLC中的工具包数据。记录你现有的游戏/工具包版本与存档,并根据“创建新模组”(Creating a New Mod)文档创建一个新项目。起一个类似TroubleMakerPracticeSpell的独特名称,并按官方文档保持默认的依赖项设置。初次工作时,加载整个游戏数据可能需要一些时间。

BG3 · 공식 도구의 작업 흐름 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식
BG3 · 공식 도구의 작업 흐름 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식

2. 在属性编辑器中创建目标法术数据

  1. 打开编辑器顶部的“属性编辑器”(Stats Editor)。
  2. 展开你自己的项目,而不是Shared(共享)原版。
  3. 在SpellData中选择+并添加Target(目标)数据。
  4. 在新的Target表中创建一行,并将Name指定为TMPracticeFlame。这是一个不带空格的内部名称。
  5. 技术标识名称将是Target_TMPracticeFlame。请勿将此显示名称与内部ID混淆。
  6. 参照官方“制作基础法术”(Basic Spell)文档中的必填列,填写以下数值和动画项。

3. 填写小型法术的必填值

以下是一组练习数值。不要将此代码块直接粘贴到文件中,请在属性编辑器中找到对应的列并分别输入。将其简单配置为1级、1.5米近战、敏捷豁免检定以及1d6火焰伤害。在一次性添加范围攻击或治疗之前,先测试单一效果。

Name: TMPracticeFlame
Level: 1
SpellSchool: Evocation
TargetRadius: 1.5
SpellRoll: not SavingThrow(Ability.Dexterity, SourceSpellDC())
SpellSuccess: DealDamage(1d6,Fire,Magical)
SpellFail: DealDamage(1d6/2,Fire,Magical)
TargetConditions: Character() and not Dead()
CastTextEvent: Cast
UseCosts: ActionPoint:1;SpellSlotsGroup:1:1:1
Icon: Spell_Evocation_Fireball

官方文档解释说,法术要实际施放需要法术动画(Spell Animation)。在 Shared → SpellData → Target 中找到Touch类型的原版法术,复制其法术动画值并填入你的行中。行号会根据游戏数据版本而有所不同,请通过搜索查找。使用官方文档中列出的对应后缀项来选择所需的 PrepareEffect、CastEffect 和 HitEffect。在 SpellFlags 中,勾选 IsSpell、IsHarmful、IsMelee 以及适当的施放条件。

4. 玩家可见的名称与描述

在 DisplayName 中输入诸如“练习用火焰接触”的自定义名称,在 Description 中输入“对目标造成 [1]”的描述。本地化输入窗口和字符串句柄使用“添加本地化”(Adding Localisation)文档的方法进行管理。在 DescriptionParams 和 TooltipDamageList 中使用 DealDamage(1d6,Fire),在 TooltipAttackSave 中使用 Dexterity,以确保实际数值与提示说明相符。翻译内部ID可能会破坏法术列表的连接,因此只需翻译显示字符串即可。

주문을 게임에 연결하기 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식
주문을 게임에 연결하기 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식

5. 加入法术列表并在游戏模式中验证

  1. 在UUID对象编辑器中创建你的项目的 Lists → SpellLists 表。
  2. 在新条目的 Name 中写下方便开发者识别的说明。
  3. 在 Spells 中放入 Target_TMPracticeFlame。此值需要法术类型前缀。
  4. 在 MergedInto 中选择该等级的原有职业法术列表。本示例为1级,因此请选择 Cleric SLevel 1 等匹配的列表。
  5. 保存所有更改并加载 Basic_Level_A 测试关卡。
  6. 进入游戏模式(Game Mode),在角色创建或升级时选择该职业和法术。你可以利用官方指南中提到的头像上方的 Ctrl+Shift+L 升级功能。
  7. 分别检查目标距离、豁免成功/失败的伤害、法术位/动作消耗,以及名称、描述和动画。

6. 本地 .pak 与公开发布

在 Project → Project Settings 中填写名称、描述和缩略图。发布本地(Publish Local)是一个无需公开上传即可创建 .pak 文件的功能,你可以选择生成位置。在单独的游戏配置文件中通过官方模组管理器启用本地包,并在新的测试存档中再次验证。在 mod.io 上公开发布还需要额外关联并验证 Larian 与 mod.io 账户、文件扫描以及描述、标签、依赖项设置。同时请注意原版指南中的说明:编辑器依赖项与 mod.io 依赖项必须分别进行设置。

테스트와 .pak 생성 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식
테스트와 .pak 생성 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식

7. 找不到法术时的排查与移除

如果看不到法术,请依次检查内部名称的 Target_ 前缀、SpellLists 中的 MergedInto、法术等级与职业等级。如果无法施放,请检查法术动画(Spell Animation)、CastTextEvent 和 UseCosts。如果提示数值不同,请将 DescriptionParams 与实际的 SpellSuccess 进行对比。在包含模组的存档中移除模组可能会影响加载和运行,因此请使用备份存档而不是原始存档进行对比。请在发布说明中写明支持的版本、测试过的职业、所需的依赖项以及多人游戏条件,并检查特定平台的官方审核结果以确认是否可在主机上使用。

原始文档与验证标准

本入门攻略由 TroubleMaker 运营团队于 2026 年 10 月 7 日根据经验证的创作者和官方工具文档编写。代码和图表仅为说明性质的自定义示例,并不代表本服务器对该游戏实际游玩效果的验证。请使用文中指定的版本在单独的测试存档中进行验证和发布。请从下方原版链接中核对各工具的最新版本与依赖项。

Larian Toolkit 설치

Larian 새 모드 생성

Larian 주문 데이터와 테스트

Larian 현지화 문자열

Larian 모드 배포

Gemini 自動翻譯 · 保留原文與來源地區。

原文語言 · ko

발더스 게이트 3 모드 만드는 법: 공식 Toolkit으로 주문 제작·테스트·배포

공식 Baldur’s Gate 3 Toolkit의 Stats Editor와 UUID Object Editor로 연습용 근접 화염 주문을 만드는 공략입니다. 3D 모델 제작 없이 데이터·현지화·주문 목록 연결을 익힙니다. Windows PC 제작 환경과 게임 내 모드 이용 환경을 구분하고, 공식 모드 관리자 지원 게임 빌드와 맞춰 작업합니다.

[1. Toolkit 설치와 빈 프로젝트]

Larian의 Installing the Toolkit 문서에서 보유 스토어의 Toolkit과 Toolkit Data 설치 순서를 확인합니다. Steam은 라이브러리의 도구 표시와 게임 DLC의 Toolkit Data를 확인하는 흐름입니다. 기존 게임·툴킷 버전과 세이브를 기록하고, Creating a New Mod 문서에 따라 새 프로젝트를 만듭니다. 이름은 TroubleMakerPracticeSpell처럼 고유하게 정하고 기본 의존성 설정은 공식 문서대로 유지합니다. 처음 작업할 때는 게임 전체 데이터의 로딩에 시간이 걸릴 수 있습니다.

[image:conditions]

[2. Stats Editor에서 Target 주문 데이터 만들기]

1. 에디터 상단의 Stats Editor를 엽니다.
2. Shared 원본이 아니라 자신의 프로젝트를 확장합니다.
3. SpellData에서 +를 선택하고 Target 데이터를 추가합니다.
4. 새 Target 표에 행을 만들고 Name을 TMPracticeFlame으로 지정합니다. 공백 없는 내부 이름입니다.
5. 기술 식별 이름은 Target_TMPracticeFlame이 됩니다. 표시 이름과 이 내부 ID를 혼동하지 마세요.
6. 공식 Basic Spell 문서의 필수 열을 함께 펼쳐 아래 값과 애니메이션 항목을 채웁니다.

[3. 작은 주문의 필수 값을 채우기]

아래는 연습용 값의 묶음입니다. 이 블록을 파일에 붙여넣는 방식이 아니라 Stats Editor에서 해당 열을 찾아 각각 입력합니다. Level 1, 근접 1.5m, 민첩 내성 굴림, 화염 1d6으로 단순하게 구성합니다. 반경 공격·치유를 한꺼번에 추가하기 전에 한 가지 효과부터 테스트합니다.

```text
Name: TMPracticeFlame
Level: 1
SpellSchool: Evocation
TargetRadius: 1.5
SpellRoll: not SavingThrow(Ability.Dexterity, SourceSpellDC())
SpellSuccess: DealDamage(1d6,Fire,Magical)
SpellFail: DealDamage(1d6/2,Fire,Magical)
TargetConditions: Character() and not Dead()
CastTextEvent: Cast
UseCosts: ActionPoint:1;SpellSlotsGroup:1:1:1
Icon: Spell_Evocation_Fireball
```

공식 문서는 주문이 실제 시전되려면 Spell Animation이 필요하다고 설명합니다. Shared → SpellData → Target에서 Touch 유형의 원본 주문을 찾아 Spell Animation 값을 복사해 자신의 행에 넣습니다. 행 번호는 게임 데이터 버전에 따라 바뀌므로 검색으로 찾으세요. 필요한 PrepareEffect·CastEffect·HitEffect는 공식 문서에 나온 대응 접미사 항목으로 선택합니다. SpellFlag에는 IsSpell·IsHarmful·IsMelee와 적절한 시전 조건을 확인합니다.

[4. 플레이어가 읽는 이름·설명]

DisplayName에는 연습용 화염 접촉이라는 자체 이름을, Description에는 대상에게 [1]을 가합니다라는 설명을 입력합니다. 현지화 입력 창과 문자열 handle은 Adding Localisation 문서 방식으로 관리합니다. DescriptionParams와 TooltipDamageList에는 DealDamage(1d6,Fire), TooltipAttackSave에는 Dexterity를 사용해 실제 수치와 툴팁이 어긋나지 않게 확인합니다. 내부 ID를 번역하면 주문 목록 연결이 끊길 수 있으므로 표시 문자열만 번역합니다.

[image:request]

[5. 주문 목록에 넣고 게임 모드에서 확인]

1. UUID Object Editor에서 자신의 프로젝트 Lists → SpellLists 표를 만듭니다.
2. 새 항목의 Name에 개발자가 알아볼 설명을 적습니다.
3. Spells에 Target_TMPracticeFlame을 넣습니다. 이 값에는 주문 유형 접두사가 필요합니다.
4. MergedInto에서 해당 레벨의 기존 클래스 주문 목록을 선택합니다. 이 예제는 Level 1이므로 Cleric SLevel 1처럼 맞는 목록을 선택합니다.
5. 모든 변경을 저장하고 Basic_Level_A 테스트 레벨을 로드합니다.
6. Game Mode로 들어가 캐릭터 생성·레벨업에서 해당 클래스와 주문을 선택합니다. 공식 안내의 초상화 위 Ctrl+Shift+L 레벨업 기능을 활용할 수 있습니다.
7. 대상 거리, 내성 성공·실패의 피해, 주문 슬롯·행동 비용, 이름·설명·애니메이션을 각각 확인합니다.

[6. 로컬 .pak과 공개 배포]

Project → Project Settings에서 이름·설명·썸네일을 작성합니다. Publish Local은 공개 업로드 없이 .pak을 만드는 기능이며 생성 위치를 선택할 수 있습니다. 별도 게임 프로필에서 공식 모드 관리자로 로컬 팩을 활성화하고 새 테스트 세이브에서 다시 확인합니다. mod.io 공개 배포는 Larian·mod.io 계정 연결과 인증, 파일 스캔, 설명·태그·의존성 설정이 추가로 필요합니다. 에디터 의존성과 mod.io 의존성은 각각 설정해야 한다는 원본 안내도 확인하세요.

[image:contact]

[7. 주문이 안 보일 때와 제거]

주문이 안 보이면 내부 이름의 Target_ 접두사, SpellLists의 MergedInto, 주문 레벨과 클래스 레벨을 순서대로 확인합니다. 시전되지 않으면 Spell Animation과 CastTextEvent, UseCosts를 확인합니다. 툴팁 수치가 다르면 DescriptionParams와 실제 SpellSuccess를 비교합니다. 모드를 사용한 세이브에서 제거하면 로딩·동작에 영향을 줄 수 있으므로 원본 세이브가 아닌 복사본으로 비교합니다. 배포 설명에는 지원 빌드·테스트한 클래스·필요 의존성·멀티플레이 조건을 적고, 콘솔 이용 가능 여부는 플랫폼별 공식 검토 결과를 확인합니다.

[원본 문서와 확인 기준]

2026년 10월 7일 제작자·공식 도구 문서를 확인해 TroubleMaker 운영팀이 작성한 입문 공략입니다. 코드와 도식은 설명을 위한 자체 예제이며 이 서버에서 해당 게임의 실제 플레이를 검증한 결과는 아닙니다. 본문에 명시한 버전으로 별도 테스트 세이브에서 확인하고 배포하세요. 도구별 최신 버전·의존성은 아래 원본에서 대조합니다.

https://docs.baldursgate3.game/index.php?title=Getting_Started:_Installing_the_Toolkit

https://docs.baldursgate3.game/index.php?title=Getting_Started:_Creating_a_New_Mod

https://docs.baldursgate3.game/index.php?title=Making_a_Basic_Spell

https://docs.baldursgate3.game/index.php?title=Adding_Localisation

https://docs.baldursgate3.game/index.php?title=Getting_Started:_Publishing_a_Mod

以朋友的語言分享

留言 1

Stats Editor에서 Spell Animation 값을 복사할 때, 원본 주문의 행 번호가 게임 업데이트에 따라 변경될 수 있다고 하셨는데, 특정 애니메이션 데이터를 찾기 위해 검색 기능을 활용할 때 가장 효율적인 키워드나 분류 기준은 무엇인가요?

將使用會員暱稱留言。 登入或註冊

COMMUNITY NOTICE

無法發佈

內容含有禁止使用的詞語。

請修改內容後再試一次。

登入

登入

使用 Google 繼續
或使用電子郵件

客服中心

請告訴我們遇到的問題或疑問。無須登入即可詢問。

我們儲存您的姓名、電子郵件、內容及登入時的帳戶資訊以處理詢問,僅供管理員查閱。提交180天後列入自動刪除範圍。請勿提供密碼、卡號或身分證件等敏感資訊。 隱私說明

選用的分析 Cookie 用於了解網站使用情況。拒絕不影響登入或瀏覽。廣告同意由 Google 另行管理。

隱私權政策