Bumalik sa komunidad
Guide

Paano Gumawa ng Mod sa Stardew Valley: Paggawa ng Iyong Unang Dialogue Pack gamit ang Content Patcher

Lumikha ng isang maliit na pack upang baguhin ang unang diyalogo ng pagkikita ni Abigail gamit ang SMAPI at Content Patcher sa serye ng Stardew Valley PC 1.6. Alamin ang mga prinsipyo ng pagbabago ng data gamit ang dalawang JSON file nang walang C# DLL. Ikumpara ang paglalapat at pag-alis sa isang bagong test save nang hindi direktang pinapatungan ang mga XNB file ng laro.

1. Paghahanda ng SMAPI at Content Patcher

Kumpirmahing tumatakbo ang orihinal na laro sa karaniwang estado at i-backup ang save at ang folder na Mods. I-install ang SMAPI para sa kasalukuyang laro mula sa site ng lumikha at pagkatapos ay kunin ang Content Patcher mula sa orihinal na pinagmulan. Suriin ang mga sinusuportahang bersyon at Mga Kinakailangan ng bawat file. Patakbuhin ang laro nang isang beses gamit ang SMAPI upang suriin kung ang launcher at Content Patcher ay karaniwang ipinapakita at pagkatapos ay lumabas. Ang pansamantalang pagpatay sa iba pang mga pack ng pagbabago ng diyalogo sa unang pagsubok ay nagpapadali sa pagtukoy sa sanhi.

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

2. Paggawa ng folder ng pack

Lumikha ng folder na [CP] TroubleMakerHello sa ilalim ng Mods ng laro. Suriin ang lokasyon ng manifest.json upang ang mga folder na may parehong pangalan ay hindi mag-overlap nang dalawa kapag binubuksan ang zip. Sa Windows, i-on ang pagpapakita ng extension at mag-ingat na huwag i-save ito bilang .json.txt.

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

3. Pagsusulat ng manifest.json

Itakda ang UniqueID sa anyo ng creator.packname na hindi sumasalungat sa iba pang mga pack. Ang UniqueID ng ContentPackFor ay hindi ang ID ng pack na ginawa mo kundi ang ID ng Content Patcher. Ang nilalaman sa ibaba ay ang kumpletong manifest ng halimbawang ito. I-save bilang UTF-8 sa isang text editor.

{
  "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. Pagbabago ng isang diyalogo gamit ang content.json

Binabago ng EditData ang tinukoy na key ng umiiral na data. Ilagay ang iyong sariling diyalogo sa key na Introduction ng Characters/Dialogue/Abigail. Ang pack Format 2.0.0 ay ang format ng halimbawa ng pack ng Content Patcher para sa serye ng laro 1.6, at ang aktwal na kinakailangang mga bersyon ng SMAPI at Content Patcher ay sinusuri sa mga naka-install na tagubilin sa tool. Ang halimbawang ito ay hindi nagbabago ng normal na pang-araw-araw na diyalogo kundi ang unang diyalogo lamang ng pagpapakilala.

{
  "Format": "2.0.0",
  "Changes": [
    {
      "Action": "EditData",
      "Target": "Characters/Dialogue/Abigail",
      "Entries": {
        "Introduction": "Hello! Ikaw ang bagong may-ari ng farm. Magkita-kita tayo nang madalas sa nayon!"
      }
    }
  ]
}
대사 팩의 두 파일 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식
대사 팩의 두 파일 — TroubleMaker 운영팀 제작 · 제작·테스트 절차 도식

5. Kumpirmasyon ng aplikasyon sa isang bagong save

  1. Patakbuhin gamit ang SMAPI at suriin kung ang TroubleMaker Hello Dialogue ay nabasa sa console.
  2. Lumikha ng isang bagong farm ng pagsubok at kausapin si Abigail sa unang pagkakataon habang hindi mo pa siya nakikilala.
  3. Kung lumabas ang isinulat na diyalogo ng pagpapakilala, ang key at landas ay normal na inilapat. Kung nagawa mo na ang pag-uusap ng pagpapakilala sa isang umiiral na save, ang parehong pangungusap ay maaaring hindi lumabas muli.
  4. Kung ang diyalogo ay hindi nagbabago, suriin ang pack at katayuan ng patch gamit ang patch summary sa console ng SMAPI.
  5. Pagkatapos lumabas sa laro, baguhin ang content.json at muling patakbuhin upang ihambing. Suriin ang dokumentasyon ng nakapirming Content Patcher para sa kung paano gamitin ang patch reload sa console habang nag-develop.
  6. Pagkatapos ilipat ang pack ng paggawa sa labas ng Mods at patakbuhin muli, kumpirmahin sa isang hiwalay na farm ng pagsubok kung bumabalik ito sa default na diyalogo ng pagpapakilala.

6. Paglutas ng mga error at hidwaan sa JSON

Ang mga nawawalang kuwit, mga error sa panipi, at mga typo sa pangalan ng key ay karaniwan. Ang JSON ay hindi gumagamit ng hindi kinakailangang kuwit pagkatapos ng huling item. Kapag nagse-save gamit ang default editor, suriin kung ito ay nabago sa mga smart quote. Kung may isa pang pack na nagbabago sa parehong key na Abigail Introduction, ang mga resulta ay maaaring mag-iba depende sa aktwal na pagkakasunud-sunod ng pag-load. Pagkatapos magtagumpay sa isang pack lamang na naka-on, magdagdag ng mga umiiral na configuration nang paisa-isa at ihambing ang mga log. Kapag ang data na na-load ay nagbabago depende sa wika ng laro, magpatuloy sa pagsusuri ng mga kondisyon na tukoy sa wika at ang i18n function sa orihinal na dokumento.

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

7. Pagtanggal, Pamamahala ng Bersyon, at Pamamahagi

Ang pack na ito ay nagbabago lamang ng data ng diyalogo. Maaari mo itong i-uninstall sa pamamagitan ng paglabas sa laro at pag-alis ng kaukulang folder ng pack, at ang panganib ay naiiba kaysa sa pag-alis ng mga mod ng pagpapalawak ng mapa at item. Ilagay ang folder ng pack sa tuktok ng pamamahagi ng ZIP at gawing direktang nakikita ang dalawang JSON sa loob nito. Isulat sa README ang paglalarawan at mga kondisyon ng pagsubok na kinakailangan ang PC 1.6, SMAPI, at Content Patcher, at tanging ang unang diyalogo ng pagpapakilala ang binago. Kumpirmahin na ang diyalogo at mga imahe ay iyong sariling gawa at huwag isama ang teksto o larawan ng ibang tagalikha nang walang pahintulot.

Orihinal na Dokumento at Pamantayan sa Kumpirmasyon

Ito ay isang pambungad na gabay na isinulat ng koponan ng operasyon ng TroubleMaker sa pamamagitan ng pagsusuri sa tagalikha at opisyal na dokumentasyon ng tool noong Oktubre 7, 2026. Ang code at diagram ay mga sariling halimbawa para sa paliwanag at hindi mga resulta ng pagpapatunay ng aktwal na paglalaro ng laro sa server na ito. Kumpirmahin sa isang hiwalay na test save na may bersyon na tinukoy sa teksto at ipamahagi. Ang mga pinakabagong bersyon at mga dependency sa bawat tool ay itinutugma mula sa orihinal sa ibaba.

Content Patcher 제작자 가이드

Stardew 콘텐츠 팩 문서

Content Patcher 모딩 문서

SMAPI 원본

Awtomatikong salin ng Gemini · Nananatili ang orihinal at rehiyon ng pinagmulan.

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

https://github.com/Pathoschild/StardewMods/blob/develop/ContentPatcher/docs/author-guide.md

https://wiki.stardewvalley.net/Modding:Content_packs

https://wiki.stardewvalley.net/Modding:Content_Patcher

https://smapi.io/

Ibahagi sa wika ng kaibigan

komento 0

Maunang magkomento.

Gagamitin ang iyong member nickname. Mag-sign in o sumali

COMMUNITY NOTICE

Hindi maipost

May hindi pinapayagang salita sa nilalaman.

Baguhin ang nilalaman at subukang muli.

Mag-sign in

Mag-sign in

Magpatuloy sa Google
o email

Suporta sa customer

Mag-ulat ng problema o magtanong. Maaari kang magpadala nang hindi naka-sign in.

Iniimbak ang pangalan, email, mensahe at detalye ng account kung naka-sign in upang asikasuhin ang tanong. Mga tagapangasiwa lamang ang makakakita. Maaari nang awtomatikong burahin ang mga tanong pagkalipas ng 180 araw. Huwag magsama ng password, numero ng card o dokumento ng pagkakakilanlan. Abiso sa pagkapribado

Nakakatulong ang opsyonal na analytics cookies upang maunawaan ang paggamit ng site. Hindi apektado ang pag-login o pag-browse kung tatanggihan. Hiwalay na pinamamahalaan ng Google ang pahintulot sa mga ad.

Patakaran sa privacy