Diferenças entre edições de "Modificações:Dados do NPC"

Fonte: Stardew Valley Wiki
Saltar para a navegação Saltar para a pesquisa
 
(Há 25 revisões intermédias de 6 utilizadores que não estão a ser apresentadas)
Linha 1: Linha 1:
 +
← [[Modificações:Índice|Índice]]
 +
{{Traduzir}}
 +
Esta página é uma visão geral sobre o que é necessário para criar um Npc personalizado. Este é um guia AVANÇADO para desenvolvedores de modificações.
  
← [[Modding:Index|Index]]
+
'''Antes de ler essa pagina''', veja [[Modificações:Editando arquivos XNB]] para conceitos básicos.
 
 
Essa pagina é um overview sobre o que é necessário para criar um "custom NPC". Esse é um guia AVANÇADO para desenvolvedores de mods.
 
 
 
'''Before reading this page''', see [[Modding:Editing XNB files]] for the basic concepts.
 
  
 
==Arquivos para editar==
 
==Arquivos para editar==
Para criar um novo NPC,você precisara editar um número diferente de Saves. Enfim, Você não precisara de experiencia de programação e isso pode ser feito com {{nexus mod|1915|Content Patcher}} (com algumas ajudas.)
+
Para criar um novo NPC, você precisará editar vários arquivos diferentes. Enfim, Você não precisará de experiência de programação e isso pode ser feito com {{nexus mod|1915|Content Patcher}} (com algumas ajudas).
 
 
 
===Informação Basíca===
 
===Informação Basíca===
O <tt>Arquivo \NPCDispositions</tt> ativo contem informação basíca para seu personagem, incluindo seu nome, aniversário, relações com outros personagens, personalidade, e eles também podem ser datados.
+
O asset <samp> Data\NPCDispositions</samp> contem informação basíca para seu personagem, incluindo seu nome, aniversário, relações com outros personagens, personalidade, e eles também podem ser datados.
 
O arquivo possui uma linha como a seguir:
 
O arquivo possui uma linha como a seguir:
<source lang="yaml">
+
<syntaxhighlight lang="yaml">
 
   Abigail: "teen/rude/outgoing/neutral/female/datable/Sebastian/Town/fall 13/Caroline 'mom' Pierre 'dad'/SeedShop 1 9/Abigail"
 
   Abigail: "teen/rude/outgoing/neutral/female/datable/Sebastian/Town/fall 13/Caroline 'mom' Pierre 'dad'/SeedShop 1 9/Abigail"
</source>
+
</syntaxhighlight>
  
 
A chave (antes dos dois pontos) é o nome interno que identifica especificamente aquele NPC. esse nome não é mostrado a jogador, mas pode ser usado para referenciar aquele NPC em outros Saves. O valor contem no campo a seguir:
 
A chave (antes dos dois pontos) é o nome interno que identifica especificamente aquele NPC. esse nome não é mostrado a jogador, mas pode ser usado para referenciar aquele NPC em outros Saves. O valor contem no campo a seguir:
  
{| class="wikitable"
+
{|class="wikitable"
 
|-
 
|-
 
! index
 
! index
Linha 27: Linha 25:
 
| 0
 
| 0
 
| Idade
 
| Idade
| <tt>teen</tt>
+
| <samp>teen</samp>
| Quando o NPC é uma <tt>child</tt>, <tt>teen</tt>, or <tt>adult</tt>. <span color="red">TODO</span>: O que isso afeta?
+
| Quando o NPC é uma <samp>child</samp> (Criança), <samp>teen</samp> (Adolescente), ou <samp>adult</samp> (Adulto). Isso afeta as linhas de diálogo geradas (''por exemplo,'' uma criança diria ''bobo'' e um adulto diria ''deprimente''), o diálogo genérico (''por exemplo,'' uma criança responderia ao ver você vasculhar as latas de lixo com "''Eca... O que você está fazendo?''" e um adolescente diria "''Hum... Por que você está vasculhando o lixo?''"), e o presente que eles escolhem como [[Festival da Estrela Invernal|o presente secreto da troca de presentes]]. As crianças também estão excluídas das [[Missões|missões ''Precisa-se de Ajuda'']].
 
|-
 
|-
 
| 1
 
| 1
 
| Comportamento
 
| Comportamento
| <tt>rude</tt>
+
| <samp>rude</samp>
| Quando o NPC é <tt>polite</tt>, <tt>rude</tt>, or <tt>neutral</tt>. Isso afeta alguns diálogos.
+
| Quando o NPC é <samp>polite</samp> (Educado), <samp>rude</samp> (Grosseiro), or <samp>neutral</samp> (Neutro). Isso afeta alguns diálogos.
 
|-
 
|-
 
| 2
 
| 2
 
| Ansiedade social
 
| Ansiedade social
| <tt>outgoing</tt>
+
| <samp>outgoing</samp>
| Quando o NPC é <tt>outgoing</tt>, <tt>shy</tt>, or <tt>neutral</tt>. Isso afeta alguns diálogos.
+
| Quando o NPC é <samp>outgoing</samp> (Extrovertido), <samp>shy</samp> (Tímido), or <samp>neutral</samp> (Neutro). Isso afeta alguns diálogos.
 
|-
 
|-
 
| 3
 
| 3
 
| Otimismo
 
| Otimismo
| <tt>neutral</tt>
+
| <samp>neutral</samp>
| Quando o NPC é <tt>positive</tt>, <tt>negative</tt>, or <tt>neutral</tt>. <span color="red">TODO</span>: O que isso afeta?
+
| Quando o NPC é <samp>positive</samp> (Positivo), <samp>negative</samp> (Negativo), or <samp>neutral</samp> (Neutro). ''Não utilizado.''
 
|-
 
|-
 
| 4
 
| 4
 
| Genero
 
| Genero
| <tt>female</tt>
+
| <samp>female</samp>
|
+
|Quando o NPC é <samp>male</samp> (Macho) ou <samp>female</samp> (Fêmea). Isso afeta o diálogo, independentemente de os filhos serem adotados ou concebidos, e afeta as posições dos frames na spritesheet.
Quando o NPC é <tt>male</tt> or <tt>female</tt>. Isso afeta dialogo, quando a criança no casamento é obtida por adoção ou parto, e seus frames reservados e posições na spritesheet
+
|-
-
+
|5
| 5
 
 
| Solteira/o
 
| Solteira/o
| <tt>datable</tt>
+
| <samp>datable</samp>
| Quando o NPC é <tt>datable</tt> ou <tt>non-datable</tt>. Isso altera seus recursos em relações (por exemplo a etiqueta 'solteira/o no meno social, presentear buques e casamento).
+
| Quando o NPC é <samp>datable</samp> ou <samp>non-datable</samp>. Isso altera seus recursos em relações (''Por exemplo,'' a etiqueta 'solteira/o no menu social, presentear, buques e casamento).
 
|-
 
|-
 
| 6
 
| 6
 
| Interesse amoroso
 
| Interesse amoroso
| <tt>Sebastian</tt>
+
| <samp>Sebastian</samp>
| ''sem uso''
+
| ''Não utilizado.''
 
|-
 
|-
 
| 7
 
| 7
 
| Região da casa
 
| Região da casa
| <tt>Town</tt>
+
| <samp>Town</samp>
| Quando o NPC mora no <tt>Desert</tt>, <tt>Town</tt>, ou <tt>Other</tt>. Isso é usado para aumentar os pontos de amizade de todos os NPCs de determinada região, atualmente apenas usado no [[Luau]] (Que apenas afeta os NPCs na <tt>Town</tt> region).
+
| Quando o NPC mora no <samp>Desert</samp> (Deserto), <samp>Town</samp> (Cidade), ou <samp>Other</samp> (Outro). Isso é usado para aumentar os pontos de amizade de todos os NPCs de determinada região, atualmente apenas usado no [[Luau]] (Que apenas afeta os NPCs na região da Cidade).
 
|-
 
|-
 
| 8
 
| 8
 
| Aniversário
 
| Aniversário
| <tt>fall 13</tt>
+
| <samp>fall 13</samp>
| A estação e dia do aniversário do NPC.
+
| Respectivamente, a estação e o dia do aniversário do NPC.
 
|-
 
|-
 
| 9
 
| 9
 
| Relações
 
| Relações
| <tt>Caroline 'mom' Pierre 'dad'</tt>
+
| <samp>Caroline 'mom' Pierre 'dad'</samp>
| Determina dialogos genericos 'especiais' para revelar gostos e desgostos de familiares. Pode também afetar os dialogos "inlaw" do [[NPC]].
+
| Determina diálogos 'especiais' para revelar gostos e desgostos de familiares. Pode também afetar os dialogos "inlaw_<NPC>". Pode estar vazio se não for aplicável (''Por exemplo'', <code>/fall 13//SeedShop 1 9/</code>).
 
|-
 
|-
 
| 10
 
| 10
 
| mapa padrão e posições
 
| mapa padrão e posições
| <tt>SeedShop 1 9</tt>
+
| <samp>SeedShop 1 9</samp>
| A localização e nome da onde [[Modding:Modder Guide/Game Fundamentals#Tiles|tile position]] o NPC começa e termina cada dia.
+
| A localização e nome da onde [[Modificações:Modder Guide/Game Fundamentals#Tiles|tile position]] o NPC começa e termina cada dia.
 
|-
 
|-
 
| 11
 
| 11
 
| Nome mostrado
 
| Nome mostrado
| <tt>Abigail</tt>
+
| <samp>Abigail</samp>
| TO nome do NPC mostrado ao jogador.
+
| Para o nome do NPC mostrado ao jogador.
 
|}
 
|}
  
===Preferencias de presentes===
+
===Preferências de presentes===
A <tt>Data\NPCGiftTastes</tt> configuração padrão contem suas preferencias de presentes. (Por exemplo que presentes eles amam ou odeiam), "E suas respostas ao receber um. Veja [[Modding:Gift taste data]] Para mais informações.
+
O asset Data\NPCGiftTastes contém as preferências de presente. (Por exemplo, os presentes que amam ou que odeiam), "E suas respostas ao receber um. Veja [[Modificações:Dados dos gostos do presente]] Para mais informações.
  
O arquivo tem uma linha por NPC como esta:
+
O arquivo tem uma única linha por NPC, assim como a do exemplo abaixo:
<source lang="yaml">
+
<syntaxhighlight lang="yaml">
 
   Abigail: "I seriously love this! You're the best, @!/66 128 220 226 276 611/Hey, how'd you know I was hungry? This looks delicious!//What am I supposed to do with this?/-5 -75 -79 16 245 246/What were you thinking? This is awful!/330/You brought me a present? Thanks.// " #!String
 
   Abigail: "I seriously love this! You're the best, @!/66 128 220 226 276 611/Hey, how'd you know I was hungry? This looks delicious!//What am I supposed to do with this?/-5 -75 -79 16 245 246/What were you thinking? This is awful!/330/You brought me a present? Thanks.// " #!String
</source>
+
</syntaxhighlight>
  
A linha pode ser separada em 5 pares de dialogos + IDs de itens em ordem: Ama, Gosta, Neutro, Não gosta, Odeia. Se o campo de dialogo está vazio, o game vai usar um texto de dialogo genérico. Veja [[Modding:Object data]] para Itens IDs.
+
A linha pode ser separada em 5 pares de dialogos + IDs de itens em ordem: Ama, Gosta, Neutro, Não gosta, Odeia. Se o campo de dialogo está vazio, o game vai usar um texto de dialogo genérico. Veja [[Modificações:Object data]] para Itens IDs.
  
===Overworld sprites===
+
===Sprites do mundo superior:===
Os "Overworld sprites" Estão em <tt>Characters/NpcName</tt>, incluindo movimento e frames de animação. Cada frame é exatamente 16x32 pixels, e algumas posições são reservadas para certas ações:
+
Os "sprites Overworld" estão em: <samp>Characters/NpcName</samp>, incluindo movimento e frames de animação. Cada frame é exatamente 16x32 pixels, e algumas posições são reservadas para certas ações:
 
* Os primeiros 16 Frames são para sprites genricos andando (Quatro frames por direção);
 
* Os primeiros 16 Frames são para sprites genricos andando (Quatro frames por direção);
 
* 33 Frames (Mulher) e 35 (Homem) pode ser os Sprites beijando se eles são casáveis;
 
* 33 Frames (Mulher) e 35 (Homem) pode ser os Sprites beijando se eles são casáveis;
Linha 105: Linha 102:
  
 
===Portraits===
 
===Portraits===
The dialogue portraits are stored in <tt>Portraits/NpcName</tt>. Each frame is exactly 64x64 per portrait. The first six represent specific emotions (see [[Modding:Dialogue#Portrait commands]]), followed by any number of custom portraits. The first portrait is used when the dialogue doesn't specify one. Each NPC can have up to 12 portraits.
+
Os retratos de dialogo estão guardados em <samp>Portraits/NpcName</samp>. Cada Sprite tem 64x64 pixels. Os primeiros 6 representam expressões especificas (Veja [[Modificações:Diálogo#Portrait commands]]), Seguido pelo número dos retratos customizáveis. O primeiro retrato é usado quando o dialogo não representa nenhuma expressão especifica. Cada NPC tem até 12 retratos.
 
 
===Schedule===
 
Their schedule file tells the game where the NPC starts and moves based on on the time. You need to add strings to a separate schedules file found in the Strings folder to allow custom dialogue. See [[Modding:Schedule data]] for more info.
 
 
 
===Dialogue and events===
 
The NPC dialogue and events are stored in several files; see [[Modding:Dialogue]] and [[Modding:Event data]] for more info.
 
  
===Festivals===
+
===Cronograma===
Festivals are tricky things. Everyone in the vanilla game is added to the festival map by placing tiles on the Set-Up and MainEvent map layers from a character tilesheet that draws from NPCDispositions to get exactly who to place. This is not ideal for custom NPCs, since you have no way of knowing where on the NPCDispositions data list your NPC goes when a player is using multiple custom NPCs. For this reason, it is recommended to use {{nexus mod|1820|TMXLoader}}, as it has a festival addition function to add your character to the Festival Maps, since it will draw upon your character's internal name instead of their position on the list. It's fairly easy to do, and there's an explanation on the {{nexus mod|1820|TMXLoader}} Nexus Description.
+
Seus arquivos de cronograma contam pro jogo onde o NPC tem que começar o dia, e os movimentos baseados no tempo. Você precissa adicionar "strings" para separar arquivos de cronogramas, encontrados na pasta "strings" para seguir com o dialogo customizável. Veja [[Modificações:Schedule data]] para mais informações.
  
O arquivo esta sendo traduzido por Zoz0207
+
===Diálogos e Eventos===
 +
Os dialogos de NPC e eventos estão guardados no arquivo "several"; veja [[Modificações:Diálogo]] e [[Modificações:Dados de Eventos]] para mais informações.
  
==Adding your NPC==
+
===Festivais===
Here's how you'd create an example NPC we'll name Dobson:
+
Festivais são difíceis de modificar. Todos os NPCs do jogo "Vanilla" é adicionado nos mapas de festivais selecionandocamadas no "Set-Up" e nas camadas no mapa de"MainEvent" planilha de caracteres de personagens extraída de NPCDispositions para obter exatamente quem posicionar. Isso não é ideal para NPCs personalizados, já que você não tem como saber para onde na lista de dados NPCDispositions seu NPC vai quando um jogador está usando vários NPCs personalizados. Por este motivo, é recomendado o uso de {{nexus mod | 1820 | TMXLoader}}, pois tem uma função de adição de festival para adicionar seu personagem aos Mapas do Festival, uma vez que irá usar o nome interno de seu personagem ao invés de sua posição a lista. É bastante fácil de fazer e há uma explicação na descrição do Nexus {{nexus mod | 1820 | TMXLoader}}
  
 +
==Adicionando seu NPC==
 +
Veja como você criaria um NPC de exemplo que chamaremos de Dobson:
 
<ol>
 
<ol>
<li>[https://github.com/Pathoschild/StardewMods/tree/develop/ContentPatcher#create-a-content-pack Create an empty Content Patcher content pack]. By convention, we'll name the folder <tt>[CP] Dobson</tt>.</li>
+
<li>[https://github.com/Pathoschild/StardewMods/tree/develop/ContentPatcher#create-a-content-pack Crie um pacote de conteúdos Content Patcher vazio]. Por convenção, nós nomearemos a pasta <samp>[CP] Dobson</samp>.</li>
<li>Create the following files:
+
<li>Crie os seguintes arquivos:
* <tt>assets/dialogue.json</tt> containing the dialogue.
+
* <samp>assets/dialogue.json</samp> containing the dialogue.
* <tt>assets/marriageDialogue.json</tt> containing the marriage dialogue (if applicable).
+
* <samp>assets/marriageDialogue.json</samp> containing the marriage dialogue (if applicable).
* <tt>assets/sprites.png</tt> containing their overworld sprites.
+
* <samp>assets/sprites.png</samp> containing their overworld sprites.
* <tt>assets/portraits.png</tt> containing their portraits.
+
* <samp>assets/portraits.png</samp> containing their portraits.
* <tt>assets/schedule.json</tt> containing their schedule data.
+
* <samp>assets/schedule.json</samp> containing their schedule data.
 
</li>
 
</li>
<li>Edit the <tt>content.json</tt> to load the files:
+
<li>Edite o <samp>content.json</samp> para carregar os arquivos:
<source lang="json">
+
<syntaxhighlight lang="json">
 
{
 
{
 
   "Format": "1.5",
 
   "Format": "1.5",
Linha 183: Linha 177:
 
   ]
 
   ]
 
}
 
}
</source>
+
</syntaxhighlight>
 
</li>
 
</li>
 
</ol>
 
</ol>
That's it! If you load your game, the NPC should appear. If you want to create events, don't forget to add that file too.
+
É isso! Se você carregar o jogo, o NPC deve aparecer. Se você deseja criar eventos, não se esqueça de adicionar esse arquivo também.
  
 
[[Category:Modificações]]
 
[[Category:Modificações]]
  
 
[[en:Modding:NPC data]]
 
[[en:Modding:NPC data]]

Edição atual desde as 04h47min de 10 de janeiro de 2024

Índice

Robin building.png
“Ainda tenho muito trabalho a fazer”
— Robin

Tradução incompleta

Este artigo ou seção não foi completamente traduzido para o português. Você está convidado a ajudar na sua construção editando-o
Última edição por Edivilson em 2024-01-10 04:47:16.

Esta página é uma visão geral sobre o que é necessário para criar um Npc personalizado. Este é um guia AVANÇADO para desenvolvedores de modificações.

Antes de ler essa pagina, veja Modificações:Editando arquivos XNB para conceitos básicos.

Arquivos para editar

Para criar um novo NPC, você precisará editar vários arquivos diferentes. Enfim, Você não precisará de experiência de programação e isso pode ser feito com Content Patcher (com algumas ajudas).

Informação Basíca

O asset Data\NPCDispositions contem informação basíca para seu personagem, incluindo seu nome, aniversário, relações com outros personagens, personalidade, e eles também podem ser datados. O arquivo possui uma linha como a seguir:

   Abigail: "teen/rude/outgoing/neutral/female/datable/Sebastian/Town/fall 13/Caroline 'mom' Pierre 'dad'/SeedShop 1 9/Abigail"

A chave (antes dos dois pontos) é o nome interno que identifica especificamente aquele NPC. esse nome não é mostrado a jogador, mas pode ser usado para referenciar aquele NPC em outros Saves. O valor contem no campo a seguir:

index campo Exemplo Objetivo
0 Idade teen Quando o NPC é uma child (Criança), teen (Adolescente), ou adult (Adulto). Isso afeta as linhas de diálogo geradas (por exemplo, uma criança diria bobo e um adulto diria deprimente), o diálogo genérico (por exemplo, uma criança responderia ao ver você vasculhar as latas de lixo com "Eca... O que você está fazendo?" e um adolescente diria "Hum... Por que você está vasculhando o lixo?"), e o presente que eles escolhem como o presente secreto da troca de presentes. As crianças também estão excluídas das missões Precisa-se de Ajuda.
1 Comportamento rude Quando o NPC é polite (Educado), rude (Grosseiro), or neutral (Neutro). Isso afeta alguns diálogos.
2 Ansiedade social outgoing Quando o NPC é outgoing (Extrovertido), shy (Tímido), or neutral (Neutro). Isso afeta alguns diálogos.
3 Otimismo neutral Quando o NPC é positive (Positivo), negative (Negativo), or neutral (Neutro). Não utilizado.
4 Genero female Quando o NPC é male (Macho) ou female (Fêmea). Isso afeta o diálogo, independentemente de os filhos serem adotados ou concebidos, e afeta as posições dos frames na spritesheet.
5 Solteira/o datable Quando o NPC é datable ou non-datable. Isso altera seus recursos em relações (Por exemplo, a etiqueta 'solteira/o no menu social, presentear, buques e casamento).
6 Interesse amoroso Sebastian Não utilizado.
7 Região da casa Town Quando o NPC mora no Desert (Deserto), Town (Cidade), ou Other (Outro). Isso é usado para aumentar os pontos de amizade de todos os NPCs de determinada região, atualmente apenas usado no Luau (Que apenas afeta os NPCs na região da Cidade).
8 Aniversário fall 13 Respectivamente, a estação e o dia do aniversário do NPC.
9 Relações Caroline 'mom' Pierre 'dad' Determina diálogos 'especiais' para revelar gostos e desgostos de familiares. Pode também afetar os dialogos "inlaw_<NPC>". Pode estar vazio se não for aplicável (Por exemplo, /fall 13//SeedShop 1 9/).
10 mapa padrão e posições SeedShop 1 9 A localização e nome da onde tile position o NPC começa e termina cada dia.
11 Nome mostrado Abigail Para o nome do NPC mostrado ao jogador.

Preferências de presentes

O asset Data\NPCGiftTastes contém as preferências de presente. (Por exemplo, os presentes que amam ou que odeiam), "E suas respostas ao receber um. Veja Modificações:Dados dos gostos do presente Para mais informações.

O arquivo tem uma única linha por NPC, assim como a do exemplo abaixo:

   Abigail: "I seriously love this! You're the best, @!/66 128 220 226 276 611/Hey, how'd you know I was hungry? This looks delicious!//What am I supposed to do with this?/-5 -75 -79 16 245 246/What were you thinking? This is awful!/330/You brought me a present? Thanks.// " #!String

A linha pode ser separada em 5 pares de dialogos + IDs de itens em ordem: Ama, Gosta, Neutro, Não gosta, Odeia. Se o campo de dialogo está vazio, o game vai usar um texto de dialogo genérico. Veja Modificações:Object data para Itens IDs.

Sprites do mundo superior:

Os "sprites Overworld" estão em: Characters/NpcName, incluindo movimento e frames de animação. Cada frame é exatamente 16x32 pixels, e algumas posições são reservadas para certas ações:

  • Os primeiros 16 Frames são para sprites genricos andando (Quatro frames por direção);
  • 33 Frames (Mulher) e 35 (Homem) pode ser os Sprites beijando se eles são casáveis;
  • 40 Frames–47 (Mulher) e 44–47 (Homem) pode ser a dança das flores, se eles são participantes;
  • 36 Frames–38 (Mulher) e 48–50 (Homem) São reservados aos Spites de casamento.

Portraits

Os retratos de dialogo estão guardados em Portraits/NpcName. Cada Sprite tem 64x64 pixels. Os primeiros 6 representam expressões especificas (Veja Modificações:Diálogo#Portrait commands), Seguido pelo número dos retratos customizáveis. O primeiro retrato é usado quando o dialogo não representa nenhuma expressão especifica. Cada NPC tem até 12 retratos.

Cronograma

Seus arquivos de cronograma contam pro jogo onde o NPC tem que começar o dia, e os movimentos baseados no tempo. Você precissa adicionar "strings" para separar arquivos de cronogramas, encontrados na pasta "strings" para seguir com o dialogo customizável. Veja Modificações:Schedule data para mais informações.

Diálogos e Eventos

Os dialogos de NPC e eventos estão guardados no arquivo "several"; veja Modificações:Diálogo e Modificações:Dados de Eventos para mais informações.

Festivais

Festivais são difíceis de modificar. Todos os NPCs do jogo "Vanilla" é adicionado nos mapas de festivais selecionandocamadas no "Set-Up" e nas camadas no mapa de"MainEvent" planilha de caracteres de personagens extraída de NPCDispositions para obter exatamente quem posicionar. Isso não é ideal para NPCs personalizados, já que você não tem como saber para onde na lista de dados NPCDispositions seu NPC vai quando um jogador está usando vários NPCs personalizados. Por este motivo, é recomendado o uso de 1820 TMXLoader, pois tem uma função de adição de festival para adicionar seu personagem aos Mapas do Festival, uma vez que irá usar o nome interno de seu personagem ao invés de sua posição a lista. É bastante fácil de fazer e há uma explicação na descrição do Nexus 1820 TMXLoader

Adicionando seu NPC

Veja como você criaria um NPC de exemplo que chamaremos de Dobson:

  1. Crie um pacote de conteúdos Content Patcher vazio. Por convenção, nós nomearemos a pasta [CP] Dobson.
  2. Crie os seguintes arquivos:
    • assets/dialogue.json containing the dialogue.
    • assets/marriageDialogue.json containing the marriage dialogue (if applicable).
    • assets/sprites.png containing their overworld sprites.
    • assets/portraits.png containing their portraits.
    • assets/schedule.json containing their schedule data.
  3. Edite o content.json para carregar os arquivos:
    {
      "Format": "1.5",
      "Changes": [
        {
          "LogName": "Sprites", 
          "Action": "Load",
          "Target": "Characters/Dobson",
          "FromFile": "assets/sprites.png",
        },
        {
          "LogName": "Portraits",
          "Action": "Load",
          "Target": "Portraits/Dobson",
          "FromFile": "assets/portraits.png",
        },
        {
          "LogName": "Dialogue",
          "Action": "Load",
          "Target": "Characters/Dialogue/Dobson",
          "FromFile": "assets/dialogue.json",
        },
        {
          "LogName": "Marriage Dialogue",
          "Action": "Load",
          "Target": "Characters/Dialogue/MarriageDialogueDobson",
          "FromFile": "assets/marriageDialogue.json",
        },
        {
          "LogName": "Schedule",
          "Action": "Load",
          "Target": "Characters/schedules/Dobson",
          "FromFile": "assets/schedule.json",
        },
        {
          "LogName": "NPC Dispositions",
          "Action": "EditData",
          "Target": "Data/NPCDispositions",
          "Entries": {
            "Dobson": "adult/rude/neutral/positive/male/datable//Town/summer 7//BusStop 19 4/Dobson"
          },
        },
        {
          "LogName": "Gift tastes",
          "Action": "EditData",
          "Target": "Data/NPCGiftTastes",
          "Entries": {
            "Dobson": "You're giving this to me? This is amazing!/207 232 233 400/Thank you! This is a very interesting specimen./-5 -79 422/...What is this?/80 330/This is disgusting./2/That was very thoughtful of you./-4/ ",
          },
        },
      ]
    }
    

É isso! Se você carregar o jogo, o NPC deve aparecer. Se você deseja criar eventos, não se esqueça de adicionar esse arquivo também.