Quay lại cộng đồng
Hướng dẫn

Cách tạo bản mod Stardew Valley: Tạo gói hội thoại đầu tiên của bạn bằng Content Patcher

Tạo một gói nhỏ để thay đổi đoạn hội thoại gặp mặt lần đầu của Abigail bằng cách sử dụng SMAPI và Content Patcher trong phiên bản Stardew Valley PC 1.6. Tìm hiểu nguyên tắc thay đổi dữ liệu bằng hai tệp JSON mà không cần C# DLL. So sánh việc áp dụng và hủy áp dụng trong một bản lưu thử nghiệm mới mà không ghi đè trực tiếp các tệp XNB của trò chơi.

1. Chuẩn bị SMAPI và Content Patcher

Xác nhận rằng trò chơi gốc chạy ở trạng thái mặc định và sao lưu bản lưu cùng thư mục Mods. Cài đặt SMAPI cho phiên bản trò chơi hiện tại từ trang web của nhà phát triển, sau đó tải Content Patcher từ nguồn gốc. Kiểm tra các phiên bản được hỗ trợ và Yêu cầu của từng tệp. Chạy trò chơi một lần bằng SMAPI để kiểm tra xem trình khởi chạy và Content Patcher hiển thị bình thường hay không, sau đó thoát. Tạm thời tắt các gói chỉnh sửa hội thoại khác trong lần kiểm tra đầu tiên giúp việc xác định nguyên nhân dễ dàng hơn.

Stardew · 원본 파일을 덮어쓰지 않는 팩 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식
Stardew · 원본 파일을 덮어쓰지 않는 팩 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식

2. Tạo thư mục gói

Tạo thư mục [CP] TroubleMakerHello ngay bên dưới thư mục Mods của trò chơi. Kiểm tra vị trí của tệp manifest.json khi giải nén tệp zip để các thư mục có cùng tên không bị chồng chéo hai lần. Trên Windows, hãy bật hiển thị phần mở rộng tệp và cẩn thận không lưu nó dưới dạng .json.txt.

Stardew Valley/
  Mods/
    ContentPatcher/
    [CP] TroubleMakerHello/
      manifest.json
      content.json

3. Viết tệp manifest.json

Đặt UniqueID theo định dạng creator.packname không xung đột với các gói khác. UniqueID của ContentPackFor không phải là ID gói do bạn tạo mà là ID của Content Patcher. Nội dung bên dưới là tệp manifest đầy đủ của ví dụ này. Lưu dưới dạng định dạng UTF-8 trong trình soạn thảo văn bản.

{
  "Name": "TroubleMaker Hello Dialogue",
  "Author": "TroubleMaker",
  "Version": "1.0.0",
  "Description": "An original introduction dialogue example.",
  "UniqueID": "TroubleMaker.HelloDialogue",
  "MinimumApiVersion": "4.0.0",
  "ContentPackFor": {
    "UniqueID": "Pathoschild.ContentPatcher"
  }
}

4. Thay đổi một đoạn hội thoại bằng tệp content.json

EditData sửa đổi khóa được chỉ định của dữ liệu hiện có. Chèn hội thoại của riêng bạn vào khóa Introduction của Characters/Dialogue/Abigail. Gói Format 2.0.0 là định dạng ví dụ gói Content Patcher dành cho dòng trò chơi 1.6, và các phiên bản thực tế bắt buộc của SMAPI và Content Patcher được kiểm tra trên hướng dẫn công cụ đã cài đặt. Ví dụ này không thay đổi hội thoại hàng ngày thông thường mà chỉ thay đổi hội thoại giới thiệu đầu tiên.

{
  "Format": "2.0.0",
  "Changes": [
    {
      "Action": "EditData",
      "Target": "Characters/Dialogue/Abigail",
      "Entries": {
        "Introduction": "Xin chào! Bạn là chủ trang trại mới phải không. Hãy gặp nhau thường xuyên ở làng nhé!"
      }
    }
  ]
}
대사 팩의 두 파일 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식
대사 팩의 두 파일 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식

5. Xác nhận áp dụng trên bản lưu mới

  1. Chạy bằng SMAPI và kiểm tra xem TroubleMaker Hello Dialogue đã được đọc trong bảng điều khiển chưa.
  2. Tạo một trang trại thử nghiệm mới và trò chuyện với Abigail lần đầu tiên khi bạn chưa từng gặp cô ấy trước đó.
  3. Nếu đoạn hội thoại giới thiệu bạn viết xuất hiện, khóa và đường dẫn đã được áp dụng bình thường. Nếu bạn đã thực hiện cuộc trò chuyện giới thiệu trong bản lưu hiện có, cùng một câu có thể không xuất hiện lại.
  4. Nếu hội thoại không thay đổi, hãy kiểm tra gói và trạng thái bản vá bằng patch summary trong bảng điều khiển SMAPI.
  5. Sau khi thoát trò chơi, hãy sửa đổi tệp content.json và chạy lại để so sánh. Kiểm tra tài liệu Content Patcher đã cài đặt để biết cách sử dụng patch reload trong bảng điều khiển khi đang phát triển.
  6. Sau khi di chuyển gói sáng tạo ra bên ngoài thư mục Mods và chạy lại, hãy xác nhận trong một trang trại thử nghiệm riêng xem nó có quay lại hội thoại giới thiệu mặc định hay không.

6. Khắc phục sự cố lỗi JSON và xung đột

Thiếu dấu phẩy, lỗi dấu ngoặc kép và lỗi chính tả tên khóa rất phổ biến. JSON không sử dụng dấu phẩy thừa sau mục cuối cùng. Khi lưu bằng trình soạn thảo mặc định, hãy kiểm tra xem nó có bị đổi thành dấu ngoặc kép thông minh hay không. Nếu có gói khác thay đổi cùng một khóa Abigail Introduction, kết quả có thể khác nhau tùy thuộc vào thứ tự tải thực tế. Sau khi thành công với chỉ một gói được bật, hãy thêm các cấu hình hiện có từng cái một và so sánh nhật ký. Khi dữ liệu được tải thay đổi tùy theo ngôn ngữ của trò chơi, hãy tiếp tục kiểm tra các điều kiện dành riêng cho ngôn ngữ và tính năng i18n trong tài liệu gốc.

적용 확인과 해제 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식
적용 확인과 해제 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식

7. Gỡ cài đặt, quản lý phiên bản và phân phối

Gói này chỉ chỉnh sửa dữ liệu hội thoại. Bạn có thể gỡ cài đặt bằng cách thoát trò chơi và xóa thư mục gói tương ứng, rủi ro khác với việc gỡ bỏ các bản mod mở rộng bản đồ và vật phẩm. Đặt thư mục gói ở cấp cao nhất của tệp ZIP phân phối và làm cho hai tệp JSON hiển thị trực tiếp bên trong đó. Viết mô tả và điều kiện kiểm tra trong tệp README rằng cần có phiên bản PC 1.6, SMAPI và Content Patcher, và chỉ có đoạn hội thoại giới thiệu đầu tiên bị thay đổi. Xác minh rằng hội thoại và hình ảnh là tác phẩm của chính bạn và không bao gồm văn bản hoặc ảnh chân dung của nhà sáng tạo khác mà không có sự cho phép.

Tài liệu gốc và tiêu chí xác nhận

Đây là hướng dẫn nhập môn do đội ngũ vận hành TroubleMaker viết bằng cách kiểm tra tài liệu công cụ chính thức và của nhà sáng tạo vào ngày 7 tháng 10 năm 2026. Mã nguồn và biểu đồ là các ví dụ tự tạo để giải thích chứ không phải là kết quả xác minh việc chơi trò chơi thực tế trên máy chủ này. Hãy xác nhận bằng phiên bản được chỉ định trong văn bản trong một bản lưu thử nghiệm riêng và phân phối. Các phiên bản mới nhất và phần phụ thuộc cho mỗi công cụ được đối chiếu từ bản gốc bên dưới.

Content Patcher 제작자 가이드

Stardew 콘텐츠 팩 문서

Content Patcher 모딩 문서

SMAPI 원본

Bản dịch tự động Gemini · Giữ nguyên văn bản và khu vực gốc.

Ngôn ngữ gốc · ko

스타듀밸리 모드 만드는 법: Content Patcher로 첫 대사 팩 만들기

Stardew Valley PC 1.6 계열에서 SMAPI와 Content Patcher를 사용해 Abigail의 첫 만남 대사를 바꾸는 작은 팩을 만듭니다. C# DLL 없이 JSON 두 파일로 데이터 변경 원리를 배울 수 있습니다. 게임 XNB 파일을 직접 덮어쓰지 않고, 새 테스트 세이브에서 적용·해제를 비교합니다.

[1. SMAPI와 Content Patcher 준비]

정품 게임이 기본 상태로 실행되는지 확인하고 세이브와 Mods 폴더를 백업합니다. 현재 게임에 맞는 SMAPI를 제작자 사이트에서 설치한 뒤 Content Patcher를 원본 제공처에서 받습니다. 각 파일의 지원 버전과 Requirements를 확인하세요. SMAPI로 게임을 한 번 실행해 로더와 Content Patcher가 정상 표시되는지 확인한 뒤 종료합니다. 다른 대사 수정 팩은 첫 테스트에서 잠시 꺼두면 원인 구분이 쉽습니다.

[image:conditions]

[2. 팩 폴더를 만들기]

게임의 Mods 바로 아래에 [CP] TroubleMakerHello 폴더를 만듭니다. 압축을 풀었을 때 같은 이름의 폴더가 두 번 겹치지 않도록 manifest.json의 위치를 확인합니다. Windows는 확장자 표시를 켜고 .json.txt로 저장되지 않도록 주의하세요.

```text
Stardew Valley/
Mods/
ContentPatcher/
[CP] TroubleMakerHello/
manifest.json
content.json
```

[3. manifest.json 작성하기]

UniqueID는 다른 팩과 충돌하지 않는 제작자.팩이름 형태로 지정합니다. ContentPackFor의 UniqueID는 내가 만든 팩 ID가 아니라 Content Patcher의 ID입니다. 아래 내용은 이번 예제의 전체 manifest입니다. 텍스트 편집기에서 UTF-8로 저장합니다.

```json
{
"Name": "TroubleMaker Hello Dialogue",
"Author": "TroubleMaker",
"Version": "1.0.0",
"Description": "An original introduction dialogue example.",
"UniqueID": "TroubleMaker.HelloDialogue",
"MinimumApiVersion": "4.0.0",
"ContentPackFor": {
"UniqueID": "Pathoschild.ContentPatcher"
}
}
```

[4. content.json으로 대사 하나 변경하기]

EditData는 기존 데이터의 지정 키를 수정합니다. Characters/Dialogue/Abigail의 Introduction 키에 자체 대사를 넣습니다. 팩 Format 2.0.0은 게임 1.6 계열용 Content Patcher 팩 예제의 형식이며 SMAPI와 Content Patcher 실제 요구 버전은 설치한 도구 안내에서 확인합니다. 이 예제는 일반 매일 대사가 아니라 첫 소개 대사만 바꿉니다.

```json
{
"Format": "2.0.0",
"Changes": [
{
"Action": "EditData",
"Target": "Characters/Dialogue/Abigail",
"Entries": {
"Introduction": "안녕! 네가 새로 온 농장 주인이구나. 마을에서 자주 만나자!"
}
}
]
}
```

[image:request]

[5. 적용 확인은 새 세이브에서]

1. SMAPI로 실행하고 콘솔에 TroubleMaker Hello Dialogue가 읽혔는지 확인합니다.
2. 새 테스트 농장을 만들고 Abigail을 아직 만나지 않은 상태에서 처음 대화합니다.
3. 작성한 소개 대사가 나오면 키와 경로가 정상 적용된 것입니다. 기존 세이브에서 이미 소개 대화를 했다면 같은 문장이 다시 나오지 않을 수 있습니다.
4. 대사가 안 바뀌면 SMAPI 콘솔에서 patch summary로 팩과 패치 상태를 확인합니다.
5. 게임을 종료한 뒤 content.json을 수정하고 재실행해 비교합니다. 개발 중 콘솔의 patch reload 사용법은 설치한 Content Patcher 문서를 확인합니다.
6. 제작 팩을 Mods 밖으로 옮긴 뒤 다시 실행해 기본 소개 대사로 돌아오는지 별도 테스트 농장에서 확인합니다.

[6. JSON 오류와 충돌 해결]

쉼표 누락, 따옴표 오류, 키 이름 오타가 흔합니다. JSON은 마지막 항목 뒤에 불필요한 쉼표를 쓰지 않습니다. 기본 편집기로 저장할 때 스마트 따옴표로 바뀌지 않았는지 확인하세요. 같은 Abigail Introduction 키를 바꾸는 다른 팩이 있으면 실제 로딩 순서에 따라 결과가 달라질 수 있습니다. 팩 하나만 켠 상태에서 성공한 뒤 기존 구성을 하나씩 추가하고 로그를 비교합니다. 게임 언어에 따라 불러오는 데이터가 달라질 때는 언어별 조건과 i18n 기능을 원본 문서에서 이어서 확인합니다.

[image:contact]

[7. 제거·버전 관리·배포]

이 팩은 대사 데이터만 수정합니다. 게임을 종료하고 해당 팩 폴더를 제거해 해제할 수 있으며 지도·아이템 확장 모드의 제거와는 위험이 다릅니다. 배포 ZIP 최상위에 팩 폴더를 두고 그 안에 두 JSON이 바로 보이게 만듭니다. README에 PC 1.6, SMAPI·Content Patcher 필요, 첫 소개 대사만 바뀐다는 설명과 테스트 조건을 적으세요. 대사와 이미지가 본인 작성물인지 확인하고 다른 제작자의 텍스트·초상화를 허락 없이 포함하지 않습니다.

[원본 문서와 확인 기준]

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

Content Patcher 제작자 가이드

Stardew 콘텐츠 팩 문서

Content Patcher 모딩 문서

SMAPI 원본

Chia sẻ bằng ngôn ngữ của bạn bè

bình luận 0

Hãy là người bình luận đầu tiên.

Bình luận bằng tên thành viên. Đăng nhập hoặc tham gia

COMMUNITY NOTICE

Không thể đăng

Nội dung có từ không được phép sử dụng.

Hãy chỉnh sửa nội dung và thử lại.

Đăng nhập

Đăng nhập

Tiếp tục với Google
hoặc email

Hỗ trợ khách hàng

Hãy cho chúng tôi biết vấn đề hoặc câu hỏi của bạn. Bạn có thể gửi mà không cần đăng nhập.

Tên, email, nội dung và thông tin tài khoản nếu đã đăng nhập được lưu để xử lý yêu cầu; chỉ quản trị viên có thể xem. Yêu cầu đủ điều kiện xóa tự động sau 180 ngày. Không cung cấp mật khẩu, số thẻ hoặc giấy tờ tùy thân. Thông báo quyền riêng tư

Cookie phân tích tùy chọn giúp hiểu cách sử dụng trang web. Từ chối không ảnh hưởng đến đăng nhập hoặc duyệt trang. Google quản lý riêng sự đồng ý quảng cáo.

Chính sách quyền riêng tư