Alterações

Saltar para a navegação Saltar para a pesquisa
11 711 bytes adicionados ,  11h33min de 11 de julho de 2023
Criando esta página com título em português (já que a anterior estava em inglês)
← [[Modificações:Índice|Índice]]

Essa pagina explicará como editar os arquivos, informações imagens e mapas de dentro do jogo.

==Introdução==
===O que são arquivos XNB?===
O jogo guarda informações, mapas e texturas em um formato comprimido com a extensão de arquivo <samp>.xnb</samp> dentro de sua pasta <samp>Content</samp>. Por exemplo, o retrato da Abigail exibido durante diálogos vem do diretório <samp>Content\Portraits\Abigail.xnb</samp>. Descomprimindo esse arquivo, lhe dará um arquivo <samp>Abigail.png</samp> como este:<br />[[File:Modding - creating an XNB mod - example portraits.png]]

===Como eu aplico minhas modificações no jogo?===
Existem três formas de aplicar suas modificações no jogo:
# [[Modificações:Content Patcher|Crie um pacote de conteúdos com o Content Patcher]]. Isso permite que você altere as informações XNB do jogo com zero programação (apenas editando arquivos JSON) e sem modificar os arquivos do jogo.
# [[Modificações:Guia do Modder/Começando|Crie um mod com SMAPI]] e use a [[Modificações:Guia do Modder/APIs/Content|Content API]]. Nesse caso é necessário programação.
# Crie um mod XNB cujo substitua os arquivos originais do jogo. No entanto, isso não é recomendado e não é documentado aqui; Veja [[Modificações:Using XNB mods|Usando XNB modificado]] para saber mais.

=== Onde eu posso conseguir ajuda?===
A comunidade de modding de Stardew Valley é muito acolhedora. Sinta-se à vontade para pedir ajuda [[Modificações:Comunidade|à comunidade]].

==Descompactando arquivos do jogo==
Você não pode editar um arquivo .xnb por sí só, você precisa editar os arquivos que estão dentro dele. Retirar esse arquivo interno é chamado de descompactar e colocá-lo de volta é chamado de compactar. Há dois descompactadores XNB notáveis disponíveis:

===StardewXnbHack===
{{github|Pathoschild/StardewXnbHack#readme|StardewXnbHack}} é uma ferramenta open-source e multiplataforma para descompactar arquivos XNB. Ele não consegue empacotar de volta os arquivos em um <samp>.xnb</samp>, mas você [[Modificações:Content Patcher|raramente irá precisar]].

Para descompactar os arquivos:

# [[Modificações:Guia do Jogador/Começando#Instalar o SMAPI|Instale o SMAPI]].
# {{github|Pathoschild/StardewXnbHack/releases|Baixe o StardewXnbHack}}. (Certifique-se de baixar o arquivo para o seu sistema operacional, como <samp>StardewXnbHack-*-for-windows.zip</samp>, e não o código-fonte!)
# Descompacte o arquivo baixado na [[Modificações:Guia do Jogador/Começando#Encontre a sua pasta do jogo|pasta do seu jogo]], assim que fique o {{executable name|StardewXnbHack}} na mesma pasta do {{executable name|StardewValley}}.
# Dê um duplo clique no {{executable name|StardewXnbHack}} (no Windows), <code>StardewXnbHack.sh</code> (no Linux), ou <code>StardewXnbHack.command</code> no (MacOS) para descompactar os todos os arquivos da pasta <samp>Content</samp>.

É isso! Após esse processo, os arquivos descompactados estarão em uma nova pasta chamada <samp>Content (unpacked)</samp>. Os arquivos descompactados já serão compatíveis com o [[Modificações:Content Patcher|Content Patcher]].

===xnbcli===
{{github|LeonBlade/xnbcli#readme|xnbcli}} é uma ferramenta open-source e multiplataforma para compactar e descompactar arquivos XNB.

Este suporta arquivos XNB de outros jogos, porém não consegue lidar com alguns arquivos específicos do Stardew Valley. Por isso [[#StardewXnbHack|StardewXnbHack]] é recomendado.

{{collapse|content=
Notas especiais:
* Ele não consegue descompactar arquivos XNB contendo informações de modelos (como <samp>Data\FishPondData</samp> ou <samp>Data\Movies</samp>); Use [[#StardewXnbHack|StardewXnbHack]] se você precisar desses.
* Você precisará editar arquivos de informações descompactados manualmente para que funcione com mods como o Content Patcher.
* Ao descompactar uma imagem com o xnbcli, você terá um arquivo <samp>.json</samp> adicional ao lado da imagem. Este só será utilizado para converter de volta a um <samp>.xnb</samp>, e geralmente você não precisa modificá-lo.

Para descompactar os arquivos:

<ol>
<li>{{github|LeonBlade/xnbcli/releases|Baixe o xnbcli}}. (Certifique-se que você baixou o arquivo para o seu sistema operacional, como <samp>xnbcli-windows-x64.zip</samp>, e não o código-fonte!)</li>
<li>Descompactar o arquivo para edições:
# Encontre o arquivo que você deseja editar na [[Modificações:Guia do Jogador/Começando#Encontre a sua pasta do jogo|pasta <samp>Content</samp> do seu jogo]].
# Copie-o até a pasta <samp>packed</samp> do xnbcli.
# Dê um duplo clique no arquivo <samp>unpack.bat</samp> (Windows), <samp>unpack.sh</samp> (Linux), ou <samp>unpack.command</samp> (Mac).
# Verifique a pasta <samp>Unpacked</samp> para acessar seus arquivos descompactados. (Se você não descompactou muitos arquivos, ele pode apenas ter piscado na tela e desaparecido logo em seguida, mas isso é normal! Vale notar que a 1.4 introduziu um novo formato de modelo de data que o xnbli não suporta; para alguns arquivos será necessário usar o [[#StardewXnbHack|StardewXnbHack]].)
</li>
<li>Edite o arquivo descompactado (veja abaixo).</li>
<li>Se este arquivo é um, arquivo de informação (não uma imagem ou mapa), é necessário fazer mais um passo caso você deseje substituir ou editar o arquivo com o [[Modificações:Content Patcher|Content Patcher]]: removendo os metadados do XNB. Seu arquivo JSON deve se parecer com algo parecido com isto:
<syntaxhighlight lang="js">
{
"header": {
"target": "w",
"formatVersion": 5,
"hidef": true,
"compressed": true
},
"readers": [
{
"type": "Microsoft.Xna.Framework.Content.DictionaryReader`2[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089],[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]",
"version": 0
},
{
"type": "Microsoft.Xna.Framework.Content.Int32Reader",
"version": 0
},
{
"type": "Microsoft.Xna.Framework.Content.StringReader",
"version": 0
}
],
"content": {
"0": "Weeds/0/-1/Basic/Weeds/A bunch of obnoxious weeds."
}
}
</syntaxhighlight>
Basta remover tudo, exceto o campo Content, para que fique assim:
<syntaxhighlight lang="js">
{
"0": "Weeds/0/-1/Basic/Weeds/A bunch of obnoxious weeds."
}
</syntaxhighlight></li>
</ol>
'''Solução de problemas:'''
* Se você tiver permissão negada no Linux / Mac:
*# Abra o terminal. (No MacOS, procure 'Terminal' no Spotlight.)
*# Escreva <code>chmod +x&nbsp;</code>, ''com um espaço no final''. Não pressione Enter ainda.
*# Arraste o arquivo <samp>unpack.sh</samp> (Linux) ou <samp>unpack.command</samp> (Mac) até o terminal para colar o caminho do arquivo.
*# Pressione Enter, caso tenha feito corretamente, o terminal não mostrará nenhuma mensagem, mas o erro de permissão deve ter desaparecido.
*# Repita para <samp>pack.sh</samp> (Linux) ou <samp>pack.command</samp> (Mac).

* Se você receber algum comando não reconhecido no Windows:
*# Certifique-se que você não baixou o zip do código-fonte por acidente. Se o caminho da pasta se refere a "master", este é o errado!
}}
==Compactando os arquivos==
Não há necessidade de compactar os arquivos de volta caso você esteja usando o [[Modificações:Content Patcher|Content Patcher]]! Apenas use o <samp>.json</samp>, <samp>.png</samp>, <samp>.tmx</samp>, ou <samp>.tbin</samp> direto em seu <samp>content.json</samp>.

Se você realmente quer recompactar os arquivos, você precisará usar [[#xnbcli|xnbcli]]:

# Procure o arquivo que você deseja recompactar.
# Copie-o para a pasta <samp>unpacked</samp> do xnbcli.
# Dê um duplo clique no arquivo <samp>pack.bat</samp> (Windows), <samp>pack.sh</samp> (Linux), ou <samp>pack.command</samp> (Mac).
# Mova o arquivo <samp>.xnb</samp> recompactado de volta a localização original.

==Fazendo mudanças==
===Data===
Cada arquivo XNB data tem seu próprio formato. Veja a documentação em [[Modificações:Índice#Tópicos Avançados]].

===Imagens===
[[File:Modding - creating an XNB mod - example tilesheet.png|thumb|Um exemplo de tilesheet, em que consiste em uma grade de 'tiles' como este: [[File:Modding - creating an XNB mod - example tile 1.png]]]]
Algumas definições:
* Uma '''spritesheet''' é um arquivo PNG que contém pequenas imagens (geralmente em um padrão de grade regular). Cada quadrado na grade da spritesheet é chamado de '''sprite'''. Por exemplo, cada item dentro do jogo tem um sprite em <samp>Content\Maps\spring_objects.xnb</samp>.
* Um '''tilesheet''' é um sinônimo para spritesheet quando usado para tiles de mapa. Em um '''tilesheet''' cada quadrado é chamado de '''tile'''composto por 16x16 pixels.
* Um '''portrait''' é um sprite dos spritesheets encontrados em <samp>Content\Characters\*.xnb</samp>.

Spritesheets são fáceis de editar:
# [[#Descompactando arquivos do jogo|Descompacte o arquivo]] que você deseja alterar.
# Abrar o arquivo descompactado <samp>.png</samp> em um editor de imagens (como [http://www.getpaint.net/download.html Paint.NET] no Windows, ou [https://www.gimp.org/downloads/ GIMP] no Windows/Linux/Mac). ''Observe que é importante usar um editor de imagens que possa lidar com a transparência (conhecido por canal alfa), diferente do Microsoft Paint.''
# Altere a imagem do jeito que desejar.
# [[#Descompactando arquivos do jogo|Compacte novamente o arquivo]] e copie-o para a localização original.

É isso! Você pode iniciar o jogo para ver suas alterações.

===Mapas===
Ver em https://stardewvalleywiki.com/Modding:Maps (ainda não traduzido para o português)

===Edição de Content===
Vale notar que os preços dos softwares listados abaixo estão sujeitos a alterações.
====Softwares de Pixel Art====
{| class="wikitable"
|-
! Software
! Preço (USD)
! Sistema Operacional
! Notas
|-
| [https://www.aseprite.org/ Aseprite]
| $19.99
| Windows, macOS, Linux
| Gratuito se você compilar por conta própria [https://github.com/aseprite/aseprite source code]
|-
| [https://www.adobe.com/products/photoshop.html Photoshop]
| $9.99 por mês
| Windows, macOS
| Serviço baseado em assinatura
|-
| [https://www.getpaint.net/ PAINT.NET]
| Grátis e $6.99 na Microsoft Store
| Windows
|
|-
| [https://www.gimp.org/ GIMP]
| Grátis
| Windows, macOS, Linux
|
|-
| [https://krita.org/en/ Krita]
| Grátis e $9.99 na Steam
| Windows, macOS, Linux
|
|-
| [https://pyxeledit.com/ Pyxel Edit]
| $9.00
| Windows
| Atualmente em versão beta, sujeito a um aumento de preço após o lançamento completo
|-
| [https://play.google.com/store/apps/details?id=com.PixelStudio Pixel Studio Android] or [https://store.steampowered.com/app/1204050/Pixel_Studio_for_pixel_art/ Pixel Studio Steam]
| Grátis - Compras dentro do aplicativo no Android
| Android, Windows
|
|-
|}
====Softwares de edição de texto====
{| class="wikitable"
|-
! Software
! Preço (USD)
! Sistema Operacional
! Notas
|-
| [https://www.sublimetext.com/ Sublime Text]
| $99.00
| Windows, macOS, Linux
| Avaliação gratuita ilimitada
|-
| [https://notepad-plus-plus.org/downloads/ Notepad++]
| Grátis
| Windows
|
|-
| [https://code.visualstudio.com/ Visual Studio Code]
| Grátis
| Windows, macOS, Linux
|
|-
| [https://atom.io/ Atom]
| Grátis
| Windows, macOS, Linux
|
|-
|}

[[Categoria:Modificações]]

[[en:Modding:Editing XNB files]]
[[es:Modding:Edición de archivos XNB]]
[[ru:Модификации:Редактирование XNB файлов]]
[[zh:模组:编辑 XNB 文件]]
63

edições

Menu de navegação