Diferenças entre edições de "Modificações:Guia do Modder/Teste e Solução de Problemas"

Fonte: Stardew Valley Wiki
Saltar para a navegação Saltar para a pesquisa
Etiquetas: Edição via dispositivo móvel Edição feita através do sítio móvel
 
(Há 12 revisões intermédias de 3 utilizadores que não estão a ser apresentadas)
Linha 1: Linha 1:
 
{{traduzir}}
 
{{traduzir}}
{{./cabecalho}}
+
{{../cabeçalho}}
  
This page helps you test your mods and solve common issues. '''For issues ''using'' mods, see [[Modding:Player Guide/Troubleshooting]].'''
+
Essa página te ajudará a testar seus mods e resolver problemas comuns. '''Já para problemas ao ''usar'' mods, veja [[Modding:Player Guide/Troubleshooting]].'''
  
 
==Teste o mod==
 
==Teste o mod==
Linha 25: Linha 25:
 
## Deixe a caixa ''Insira o IP...' vazia e clique em OK.
 
## Deixe a caixa ''Insira o IP...' vazia e clique em OK.
  
===Testing on all platforms===
+
===Testando em todas as plataformas===
For complex mods, you may need to test your mod on all platforms. The game is mostly the same on Linux/Mac, so you only need to test your mod twice: once on Windows, and again on Linux or Mac. You can do that by testing one version on your computer, and the other in a virtual machine.
+
Para mods complexos, você talvez precise testar seu mod em todas as plataformas. O jogo é quase o mesmo no Linux/Mac, sendo assim, você terá de testar seu mod apenas duas vezes: uma vez no Windows, e a outra no Linux ou Mac. Você pode fazer isso testando uma versão no seu computador, e a outra em uma maquina virtual.
  
 
<dl>
 
<dl>
<dt>If your main computer is Windows 11:</dt>
+
<dt>Se o seu computador é Windows 11:</dt>
 
<dd>
 
<dd>
 
<ol>
 
<ol>
<li>[https://docs.microsoft.com/en-us/windows/wsl/install Install Windows Subsystem for Linux (WSL)].</li>
+
<li>[https://docs.microsoft.com/en-us/windows/wsl/install Instale o Windows Subsystem for Linux (WSL)].</li>
<li>Install the required software in WSL:</li>
+
<li>Instale o software necessário no WSL:</li>
 
<ol>
 
<ol>
<li>[https://linuxconfig.org/how-to-install-steam-on-ubuntu-20-04-focal-fossa-linux Install Steam].</li>
+
<li>[https://linuxconfig.org/how-to-install-steam-on-ubuntu-20-04-focal-fossa-linux Instale o Steam].</li>
<li>Launch <code>export TERM=xterm && steam</code>, then install & launch Stardew Valley through its UI. This will also install its dependencies.</li>
+
<li>Inicialize <code>export TERM=xterm && steam</code>,e então install & launch Stardew Valley através de sua interface. Isso também irá instalar suas dependências.</li>
<li>''(optional)'' Download and install your preferred IDE, if you plan to compile the code on Linux. For the [https://www.jetbrains.com/help/rider/Installation_guide.html#prerequisites latest standalone Rider version] (not free):
+
<li>''(opcional)'' Baixe e instale sua IDE preferida, se você planeja compilar seu código no linux. para a [https://www.jetbrains.com/help/rider/Installation_guide.html#prerequisites ultima versão do standalone Rider] (Pago):
 
<syntaxhighlight lang="sh">
 
<syntaxhighlight lang="sh">
 
wget "<download url here>" -O rider-install.tar.gz
 
wget "<download url here>" -O rider-install.tar.gz
Linha 44: Linha 44:
 
./rider.sh
 
./rider.sh
 
</syntaxhighlight></li>
 
</syntaxhighlight></li>
<li>[[Modding:Installing SMAPI on Linux|Install SMAPI]].</li>
+
<li>[[Modding:Installing SMAPI on Linux|Instale SMAPI]].</li>
 
</ol></li>
 
</ol></li>
<li>To launch the game, launch <code>steam</code> and run the game through its UI.</li>
+
<li>Para iniciar o jogo, inicie o <code>steam</code> e rode o jogo através de sua interface </li>
 
</ol></li>
 
</ol></li>
 
</ul>
 
</ul>
Linha 52: Linha 52:
 
</dl>
 
</dl>
  
; If your main computer is Windows 10 or earlier&#x3A;
+
; Se o seu computador for Windows 10 ou anterior&#x3A;
:# Install [https://www.virtualbox.org/ VirtualBox].
+
:# Instale a [https://www.virtualbox.org/ VirtualBox].
:# Create a [https://zorinos.com/ ZorinOS Core] VM in VirtualBox.
+
:# Crie uma [https://zorinos.com/ ZorinOS Core] VM na VirtualBox.
:#* ''See [https://extr3metech.wordpress.com/2013/09/05/installing-zorin-os-7-in-virtual-box-screenshots this setup guide] for more details. The ZorinOS installer might be a bit different than shown, but should be pretty intuitive.''
+
:#* ''Veja [https://extr3metech.wordpress.com/2013/09/05/installing-zorin-os-7-in-virtual-box-screenshots esse guia de instalação] para mais detalhes. O instalador do ZorinOS pode ser um pouco diferente que o mostrado, mas deve continuar a ser bem intuitivo.''
:#* ''If you don't see any options for 64-bit OSes in VirtualBox, see [https://superuser.com/a/866963 how to enable them].''
+
:#* ''Se você não ver qualquer opção para sistemas operacionais de 64-bits na VirtualBox, veja [https://superuser.com/a/866963 como habilita-lo].''
:#* ''When creating the virtual disk, at least 20GB is recommended.''
+
:#* ''Quando criar o disco virtual, pelo menos 20GB é recomendado.''
:# [https://store.steampowered.com/about Download the Steam installer] in the VM and run it.
+
:# [https://store.steampowered.com/about Baixe o instalador do Steam] no VM e execute-o.
:# Launch Steam to finish installation. If nothing happens, see [https://askubuntu.com/questions/771032/steam-not-opening-in-ubuntu-16-04-lts these extra steps] to fix it.
+
:# Inicie o Steam para finalizar a instalação. Se nada acontecer, veja [https://askubuntu.com/questions/771032/steam-not-opening-in-ubuntu-16-04-lts essas etapas extras] para conserta-lo.
:# Install Stardew Valley through Steam.
+
:# Instale o Stardew Valley pelo Steam.
:# [[Modding:Player Guide/Getting Started#Install SMAPI|Install SMAPI]].
+
:# [[Modding:Player Guide/Getting Started#Install SMAPI|Instale SMAPI]].
:# ''(optional)'' Install [https://www.mono-project.com/ <samp>mono-complete</samp>] and [http://www.monodevelop.com/download/ MonoDevelop] in your VM. This is only needed if you want to compile separately for Linux/Mac. When installing <samp>.deb</samp> files, use the instructions for [https://zorinos.com/help/install-apps/#deb-files the Ubuntu version shown here]. If you run into errors, may Linux have mercy on your soul.
+
:# ''(opcional)'' Instale o [https://www.mono-project.com/ <samp>mono-complete</samp>] e o [http://www.monodevelop.com/download/ MonoDevelop] na sua VM. Isso só é necessário se você quiser compilar separadamente para Linux/Mac. Ao instalar os arquivos <samp>.deb</samp>, use as instruções para [https://zorinos.com/help/install-apps/#deb-files a versão Ubuntu mostrada aqui]. Se você encontrar erros, que o Linux tenha piedade da sua alma.
:# ''(optional)'' For unlocking Mac OS only: [https://www.insanelymac.com/forum/files/file/838-unlocker/ Virtual Machine Unlocker 2.1.1] for VmWare Workstation 11/12/14, VmWare Player 7/12/14, or Fusion 7/8/10.  '''This is needed to boot Mac OS on a virtual Machine'''
+
:# ''(opcional)'' Para desbloquear apenas o Mac OS: [https://www.insanelymac.com/forum/files/file/838-unlocker/ Virtual Machine Unlocker 2.1.1] para VmWare Workstation 11/12/14, VmWare Player 7/12/14, ou Fusion 7/8/10.  ''' Isso é necessário para inicializar o Mac OS em uma Maquina virtual (Virtual Machine).'''
  
; If your main computer is Linux or macOS&#x3A;
+
; Se o seu computador principal for Linux ou macOS&#x3A;
:# Install [https://www.virtualbox.org/ VirtualBox].
+
:# Instale [https://www.virtualbox.org/ VirtualBox].
:# [http://www.macworld.co.uk/how-to/mac-software/run-windows-10-on-your-mac-using-virtualbox-3621650/ Create a VM with Windows].
+
:# [http://www.macworld.co.uk/how-to/mac-software/run-windows-10-on-your-mac-using-virtualbox-3621650/ Crie uma VM com o windows].
:# Install Stardew Valley in your VM.
+
:# Instale o Stardew Valley na sua VM (Virtual machine).
:# [[Modding:Player Guide/Getting Started#Install SMAPI|Install SMAPI]].
+
:# [[Modding:Player Guide/Getting Started#Install SMAPI|Instale o SMAPI]].
:# ''(optional)'' Install [https://visualstudio.microsoft.com/vs/community/ Visual Studio Community] in your VM. This is only needed if you want to compile separately for Windows.
+
:# ''(opcional)'' Instale o [https://visualstudio.microsoft.com/vs/community/ Visual Studio Community] na sua VM. Isso só é necessário se você quiser compilar separadamente pelo windows.
  
==Fix common build warnings==
+
==Consertando alertas de compilação comums==
After building your project, you can see build warnings via ''Visual Studio > View > Error List'' or ''MonoDevelop > View > Pads > Errors''. Here are some common ones.
+
Após montar seu projeto, você pode ver avisos de compilação no ''Visual Studio > View > Error List'' ou ''MonoDevelop > View > Pads > Errors'. Aqui estão alguns deles.
  
 
===This implicitly converts...===
 
===This implicitly converts...===
Sample warning: "''This implicitly converts '{0}' from Net{1} to {2}, but Net{1} has unintuitive implicit conversion rules. Consider comparing against the actual value instead to avoid bugs. See https://smapi.io/buildmsg/avoid-implicit-net-field-cast for details.''"
+
Exemplo do alerta: "''This implicitly converts '{0}' from Net{1} to {2}, but Net{1} has unintuitive implicit conversion rules. Consider comparing against the actual value instead to avoid bugs. See https://smapi.io/buildmsg/avoid-implicit-net-field-cast for details.''"
  
Your code is referencing a [[Modding:Modder Guide/Game Fundamentals#Net fields|net field]], which can cause subtle bugs. This field has an equivalent non-net property, like <samp>monster.Health</samp> (<samp>int</samp>) instead of <samp>monster.health</samp> (<samp>NetBool</samp>). Change your code to use the suggested property instead.
+
Seu código está referenciando um [[Modding:Modder Guide/Game Fundamentals#Net fields|net field]], na qual pode causar alguns bugs sutis. Esse campo tem uma propriedade não-net equivalente, Como <samp>monster.Health</samp> (<samp>int</samp>) Ao invés de <samp>monster.health</samp> (<samp>NetBool</samp>). Altere seu código para usar a propriedade sugerida ao invés disso.
  
 
===FieldName is a Net* field...===
 
===FieldName is a Net* field...===
Sample warning: "'''{0}' is a Net{1} field; consider using the {2} property instead. See https://smapi.io/buildmsg/avoid-net-field for details.''"
+
Exemplo do alerta: "'''{0}' is a Net{1} field; consider using the {2} property instead. See https://smapi.io/buildmsg/avoid-net-field for details.''"
  
Your code is referencing a [[Modding:Modder Guide/Game Fundamentals#Net fields|net field]], which can cause subtle bugs. You should access the underlying value instead:
+
Seu código está referenciando um [[Modding:Modder Guide/Game Fundamentals#Net fields|net field]], na qual pode causar alguns bugs sutis. Você deveria acessar o valor base ao invés.
 
<ul>
 
<ul>
<li>For a reference type (''i.e.,'' one that can contain <samp>null</samp>), you can use the <samp>.Value</samp> property (or <samp>.FieldDict</samp> for a <samp>NetDictionary</samp>):
+
<li>Para um tipo de referencia (''ex.,'' aquele que pode conter <samp>null</samp>), você pode usar a propriedade <samp>.Value</samp> (ou <samp>.FieldDict</samp> para um <samp>NetDictionary</samp>):
 
<syntaxhighlight lang="c#">
 
<syntaxhighlight lang="c#">
 
if (building.indoors.Value == null)
 
if (building.indoors.Value == null)
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Or convert the value before comparison:
+
Ou converta o valor antes da comparação:
 
<syntaxhighlight lang="c#">
 
<syntaxhighlight lang="c#">
 
GameLocation indoors = building.indoors.Value;
 
GameLocation indoors = building.indoors.Value;
Linha 96: Linha 96:
 
   // ...
 
   // ...
 
</syntaxhighlight></li>
 
</syntaxhighlight></li>
<li>For a value type (''i.e.,'' one that can't contain <samp>null</samp>), check if the parent is null (if needed) and compare with <samp>.Value</samp>:
+
<li>Para um tipo value (''i.e.,'' aquele que não pode conter <samp>null</samp>), verifique se o pai é nulo (se necessário) e compare com <samp>.Value</samp>:
 
<syntaxhighlight lang="c#">
 
<syntaxhighlight lang="c#">
 
if (item != null && item.category.Value == 0)
 
if (item != null && item.category.Value == 0)
Linha 103: Linha 103:
  
 
===The FieldName field is obsolete...===
 
===The FieldName field is obsolete...===
Sample warning: "''The 'Character.friendships' field is obsolete and should be replaced with 'friendshipData'. See https://smapi.io/buildmsg/avoid-obsolete-field for details.''"
+
Exemplo de alerta: "''The 'Character.friendships' field is obsolete and should be replaced with 'friendshipData'. See https://smapi.io/buildmsg/avoid-obsolete-field for details.''"
  
You're referencing a field which should no longer be used. Use the suggested field name instead to fix it.
+
Você está referenciando um campo que não deverá mais ser usado. Use o nome do campo sugerido ao invés para conserta-lo.
  
===An instance of analyzer ... cannot be created===
+
===An instance of analyzer ... cannot be created===  
Update to the latest [https://visualstudio.microsoft.com/vs/community/ Visual Studio]; the NuGet package uses a recent feature that isn't available in older versions.
+
Atualize para o último [https://visualstudio.microsoft.com/vs/community/ Visual Studio]; o pacote NuGet usa um recurso recente que não está disponível em versões antigas.
  
==Other issues==
+
==Outros problemas==
===Can't target .NET 5===
+
===Não consigo definir .NET 5===
If the target framework list has options starting with...
+
Se a lista de frameworks tiver opções começando com...
* ''.NET Framework'': you created the wrong type of project. Make sure you create a .NET 5 project for your mod instead. (The naming is a bit confusing.)
+
* ''.NET Framework'': você criou o tipo de projeto errado. Certifique-se de criar um projeto .NET 5 ao invés disso. (A nomenclatura é um pouco confusa.)
* ''.NET Core'', ''.NET Standard'', or ''.NET 5+'': use .NET 5 for compatibility with the game. If you don't have that option, you can install the [https://dotnet.microsoft.com/en-us/download/dotnet/5.0 .NET 5 SDK] to add it.
+
* ''.NET Core'', ''.NET Standard'', ou ''.NET 5+'': use .NET 5 para compatibilidade com o jogo. Se você não tiver essa opção, você poderá instalar o [https://dotnet.microsoft.com/en-us/download/dotnet/5.0 .NET 5 SDK] para adiciona-lo.
  
===Visual Studio can't find the game/SMAPI/MonoGame DLLs===
+
===Visual Studio não consegue detectar o jogo/SMAPI/MonoGame DLLs===
 
<span id="Visual_Studio_can.27t_find_the_game.2FSMAPI.2FXNA_DLLs"><!--old section name--></span>
 
<span id="Visual_Studio_can.27t_find_the_game.2FSMAPI.2FXNA_DLLs"><!--old section name--></span>
Common solutions:
+
Soluções comuns:
* Restart Visual Studio.
+
* Reinicie o Visual Studio.
* Make sure the game and SMAPI are correctly installed and work fine.
+
* Certifique-se de que o jogo e o SMAPI estão instalados e funcionando corretamente.
* Check for an error like "''Failed to find game install path''". If it's present, you need to [https://smapi.io/package/custom-game-path specify your game path].
+
* Verifique se há um erro tipo "''Failed to find game install path/Falha ao encontrar o caminho de instalação do jogo''". Se isso aparecer, Você precisa [https://smapi.io/package/custom-game-path especificar o diretório do jogo].
* Make sure you created a .NET 5 project, '''not''' .NET Framework. (See [[Modding:IDE reference#Set the target framework|how to set the target framework]]; if you see options starting with .NET Framework, delete the project and create a .NET 5 project instead.)
+
* Certifique-se de ter criado um projeto .NET 5, e '''Não''' um .NET Framework. (Veja [[Modding:IDE reference#Set the target framework|Como definir o framework alvo]]; Se você ver as opções começando com .NET Framework, delete o projeto e crie um .NET 5 ao invés disso.)
* Make sure you target .NET 5 (see [[Modding:IDE reference#Set the target framework|how to]]).
+
* Tenha certeza de que selecionou .NET 5 (veja [[Modding:IDE reference#Set the target framework|como fazer]]).
  
If those didn't fix it:
+
Se isso não o consertar:
# Click ''Build > Rebuild Solution'' (Visual Studio) or ''Build > Rebuild All'' (MonoDevelop).
+
# Clique ''Compilação > Recompilar solução'' (Visual Studio) ou ''Build > Rebuild All'' (MonoDevelop).
# Check the ''Output'' pane or error list (Visual Studio), or the ''Errors'' pad (MonoDevelop).
+
# Verifique o painel de ''Saída/Output'' ou a lista de erros (Visual Studio), ou a aba de''Errors'' (MonoDevelop).
# If you don't see anything relevant, post the ''Output'' text to [https://hastebin.com hastebin], [[#Ask for help|ask for help on Discord]], and include a link to your hastebin.
+
# Se você não encontrou nada relevante, poste a ''Saída/Output'' na [https://hastebin.com hastebin], [[#Ask for help|peça por ajuda no discord]], e inclua o link da sua hastebin.
  
==Ask for help==
+
==Solicitar ajuda==
See [[Modding:Help]] for how to get help!
+
Veja a página [[Modificações:Ajuda]] para saber como solicitar ajuda!
  
 +
[[en:Modding:Modder Guide/Test and Troubleshoot]]
 
[[es:Modding:Guía del Modder/Prueba y solución de problemas]]
 
[[es:Modding:Guía del Modder/Prueba y solución de problemas]]

Edição atual desde as 14h20min de 27 de abril de 2024

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 MrsCupc4ke em 2024-04-27 14:20:21.

Creating SMAPI mods SMAPI mascot.png


Modificações:Índice

Essa página te ajudará a testar seus mods e resolver problemas comuns. Já para problemas ao usar mods, veja Modding:Player Guide/Troubleshooting.

Teste o mod

Teste básico

Fazer um teste é bem simples pra maioria dos mods:

  1. Clique em Compilação > Recompilar solução (Visual Studio) ou Compilação > Compilar tudo (MonoDevelop).
  2. Certifique-se de não ter erros de compilação, e seu mod será copiado para sua pasta Mods.
  3. Teste o mod dentro do jogo.
  4. Certifique-se de que não há erros ou avisos para seu mod no console do SMAPI.

No geral, se um mod funciona em uma plataforma então ele irá se sair bem em outras.

Testando no Multijogador

Você pode testar mods multijogador no mesmo computador, ao iniciar duas instacias do jogo:

  1. Prepare o jogador um:
    1. Inicie o SMAPI normalmente
    2. Na tela de titulo: clique em coop, e então em host.
    3. Inicie uma nova fazenda (a menos que você já tenha criado uma). Certifique-se de ajustar as 'cabanas iniciais' para ao menos uma (you precisará de uma cabana extra por jogador)
  2. Prepare o jogador dois:
    1. Inicie o SMAPI novamente (Isso irá automaticamente criar uma instancia separada)
    2. Na tela de titulo: clique em coop, e então em entrar em jogo LAN
    3. Deixe a caixa Insira o IP...' vazia e clique em OK.

Testando em todas as plataformas

Para mods complexos, você talvez precise testar seu mod em todas as plataformas. O jogo é quase o mesmo no Linux/Mac, sendo assim, você terá de testar seu mod apenas duas vezes: uma vez no Windows, e a outra no Linux ou Mac. Você pode fazer isso testando uma versão no seu computador, e a outra em uma maquina virtual.

Se o seu computador é Windows 11:
  1. Instale o Windows Subsystem for Linux (WSL).
  2. Instale o software necessário no WSL:
    1. Instale o Steam.
    2. Inicialize export TERM=xterm && steam,e então install & launch Stardew Valley através de sua interface. Isso também irá instalar suas dependências.
    3. (opcional) Baixe e instale sua IDE preferida, se você planeja compilar seu código no linux. para a ultima versão do standalone Rider (Pago):
      wget "<download url here>" -O rider-install.tar.gz
      sudo tar -xzvf rider-install.tar.gz -C /opt
      ln -s "/opt/JetBrains Rider-<version>/bin/rider.sh"
      ./rider.sh
      
    4. Instale SMAPI.
  3. Para iniciar o jogo, inicie o steam e rode o jogo através de sua interface
Se o seu computador for Windows 10 ou anterior:
  1. Instale a VirtualBox.
  2. Crie uma ZorinOS Core VM na VirtualBox.
    • Veja esse guia de instalação para mais detalhes. O instalador do ZorinOS pode ser um pouco diferente que o mostrado, mas deve continuar a ser bem intuitivo.
    • Se você não ver qualquer opção para sistemas operacionais de 64-bits na VirtualBox, veja como habilita-lo.
    • Quando criar o disco virtual, pelo menos 20GB é recomendado.
  3. Baixe o instalador do Steam no VM e execute-o.
  4. Inicie o Steam para finalizar a instalação. Se nada acontecer, veja essas etapas extras para conserta-lo.
  5. Instale o Stardew Valley pelo Steam.
  6. Instale SMAPI.
  7. (opcional) Instale o mono-complete e o MonoDevelop na sua VM. Isso só é necessário se você quiser compilar separadamente para Linux/Mac. Ao instalar os arquivos .deb, use as instruções para a versão Ubuntu mostrada aqui. Se você encontrar erros, que o Linux tenha piedade da sua alma.
  8. (opcional) Para desbloquear apenas o Mac OS: Virtual Machine Unlocker 2.1.1 para VmWare Workstation 11/12/14, VmWare Player 7/12/14, ou Fusion 7/8/10. Isso é necessário para inicializar o Mac OS em uma Maquina virtual (Virtual Machine).
Se o seu computador principal for Linux ou macOS:
  1. Instale VirtualBox.
  2. Crie uma VM com o windows.
  3. Instale o Stardew Valley na sua VM (Virtual machine).
  4. Instale o SMAPI.
  5. (opcional) Instale o Visual Studio Community na sua VM. Isso só é necessário se você quiser compilar separadamente pelo windows.

Consertando alertas de compilação comums

Após montar seu projeto, você pode ver avisos de compilação no Visual Studio > View > Error List ou MonoDevelop > View > Pads > Errors'. Aqui estão alguns deles.

This implicitly converts...

Exemplo do alerta: "This implicitly converts '{0}' from Net{1} to {2}, but Net{1} has unintuitive implicit conversion rules. Consider comparing against the actual value instead to avoid bugs. See https://smapi.io/buildmsg/avoid-implicit-net-field-cast for details."

Seu código está referenciando um net field, na qual pode causar alguns bugs sutis. Esse campo tem uma propriedade não-net equivalente, Como monster.Health (int) Ao invés de monster.health (NetBool). Altere seu código para usar a propriedade sugerida ao invés disso.

FieldName is a Net* field...

Exemplo do alerta: "'{0}' is a Net{1} field; consider using the {2} property instead. See https://smapi.io/buildmsg/avoid-net-field for details."

Seu código está referenciando um net field, na qual pode causar alguns bugs sutis. Você deveria acessar o valor base ao invés.

  • Para um tipo de referencia (ex., aquele que pode conter null), você pode usar a propriedade .Value (ou .FieldDict para um NetDictionary):
    if (building.indoors.Value == null)
    

    Ou converta o valor antes da comparação:

    GameLocation indoors = building.indoors.Value;
    if(indoors == null)
       // ...
    
  • Para um tipo value (i.e., aquele que não pode conter null), verifique se o pai é nulo (se necessário) e compare com .Value:
    if (item != null && item.category.Value == 0)
    

The FieldName field is obsolete...

Exemplo de alerta: "The 'Character.friendships' field is obsolete and should be replaced with 'friendshipData'. See https://smapi.io/buildmsg/avoid-obsolete-field for details."

Você está referenciando um campo que não deverá mais ser usado. Use o nome do campo sugerido ao invés para conserta-lo.

An instance of analyzer ... cannot be created

Atualize para o último Visual Studio; o pacote NuGet usa um recurso recente que não está disponível em versões antigas.

Outros problemas

Não consigo definir .NET 5

Se a lista de frameworks tiver opções começando com...

  • .NET Framework: você criou o tipo de projeto errado. Certifique-se de criar um projeto .NET 5 ao invés disso. (A nomenclatura é um pouco confusa.)
  • .NET Core, .NET Standard, ou .NET 5+: use .NET 5 para compatibilidade com o jogo. Se você não tiver essa opção, você poderá instalar o .NET 5 SDK para adiciona-lo.

Visual Studio não consegue detectar o jogo/SMAPI/MonoGame DLLs

Soluções comuns:

  • Reinicie o Visual Studio.
  • Certifique-se de que o jogo e o SMAPI estão instalados e funcionando corretamente.
  • Verifique se há um erro tipo "Failed to find game install path/Falha ao encontrar o caminho de instalação do jogo". Se isso aparecer, Você precisa especificar o diretório do jogo.
  • Certifique-se de ter criado um projeto .NET 5, e Não um .NET Framework. (Veja Como definir o framework alvo; Se você ver as opções começando com .NET Framework, delete o projeto e crie um .NET 5 ao invés disso.)
  • Tenha certeza de que selecionou .NET 5 (veja como fazer).

Se isso não o consertar:

  1. Clique Compilação > Recompilar solução (Visual Studio) ou Build > Rebuild All (MonoDevelop).
  2. Verifique o painel de Saída/Output ou a lista de erros (Visual Studio), ou a aba deErrors (MonoDevelop).
  3. Se você não encontrou nada relevante, poste a Saída/Output na hastebin, peça por ajuda no discord, e inclua o link da sua hastebin.

Solicitar ajuda

Veja a página Modificações:Ajuda para saber como solicitar ajuda!