Skip to main content

Mods: Best Mods & How to Install Guide

Mods são pacotes criados por usuários que alteram ou expandem o shapez 2 — desde utilitários simples de qualidade de vida até novas máquinas, recursos de jogabilidade, traduções ou cenários personalizados. O jogo tem suporte nativo a mods e uma estrutura de pasta definida para que mods possam ser instalados, desenvolvidos e compartilhados com facilidade.

Onde colocar mods e dados persistentes

  • O jogo armazena dados persistentes (incluindo mods, cenários personalizados, presets e dados exportados de base) dentro da Pasta de Dados do Jogo (também chamada de Game Data ou pasta de save/game).
  • Caminhos:
    • Windows: %USERPROFILE%\AppData\LocalLow\tobspr Games\shapez 2\
    • MacOS: ~/Library/Application Support/tobspr Games/shapez 2/
    • Linux: ~/.config/unity3d/tobspr Games\shapez 2/
  • Abra a pasta a partir do jogo:
    • Menu principal → Play → Show Folder, então vá para a pasta pai.
    • No jogo → Blueprint Library → Open Folder, então vá para a pasta pai.
    • Comandos do console de depuração: logs.open-folder ou savegames.open-folder (nota: no MacOS alguns logs usam Player.log).

Estrutura da pasta mods e instalação

  • A pasta mods dentro da Pasta de Dados do Jogo é onde você deve colocar os mods para que o jogo os carregue localmente.
  • Cada mod é uma subpasta dentro da pasta mods. O jogo carregará cada subpasta como um mod separado.
  • Mods do Steam Workshop são suportados e serão baixados automaticamente quando você se inscrever via Workshop.

Recursos e ferramentas para modding

  • Recursos oficiais e da comunidade:
    • Documentação oficial de modding e diretrizes de arte/asset fornecidas pelo desenvolvedor.
    • Exemplos de mods e repositórios do ShapezShifter (modding API) estão disponíveis no GitHub.
    • Documentação não oficial da comunidade existe para complementar os documentos oficiais.
    • Documentação útil de ferramentas de terceiros: MonoMod RuntimeDetour e HarmonyX para detouring e patching em tempo de execução.
  • O jogo usa Unity (a versão específica do Unity está indicada na documentação) e uma modding API (ShapezShifter) para simplificar a integração; nenhum carregador de mods externo é necessário.
  • Referências de assemblies e classes estão disponíveis para desenvolvimento e depuração mais aprofundados.

Criando e exportando dados do jogo para usar em mods

  • O jogo pode exportar seus dados internos (conteúdo base como entidades, cenários, presets) para reutilização ou referência:
    • No jogo, abra o console de depuração (F1) e execute debug.export-game-data.
    • Isso cria uma pasta chamada basedata- dentro da Pasta de Dados do Jogo. Use os arquivos lá como modelos para conteúdo JSON personalizado.

Cenários personalizados, presets e dificuldades

  • Cenários Personalizados:
    • Coloque arquivos JSON de cenário na pasta custom-scenarios dentro da Pasta de Dados do Jogo para que o jogo os carregue.
    • Os arquivos de cenário exportados no jogo aparecem na pasta scenarios de uma pasta basedata exportada.
  • Presets de Cenário Personalizados:
    • Coloque arquivos JSON de presets de parâmetros de cenário em custom-scenario-parameter-presets na Pasta de Dados do Jogo.
    • Presets de cenário no jogo ficam dentro de scenario-parameter-presets nas pastas basedata exportadas.
    • Ao selecionar um Scenario, o primeiro Scenario Preset na lista interna que aponta para aquele Scenario é selecionado como padrão.
  • Presets de Dificuldade Personalizados:
    • O jogo atualmente não suporta carregar presets de dificuldade personalizados diretamente como arquivos JSON. Você ainda pode inspecionar os presets de dificuldade internos na pasta difficulty-presets de uma pasta basedata exportada.

Traduções personalizadas

  • Para carregar traduções personalizadas, crie um arquivo translations-override.json com o mesmo formato de translations-en-US.json e coloque-o onde o jogo espera.
  • Inicie o jogo com o argumento de linha de comando --custom-translations para que ele carregue o arquivo de override.
  • O LanguageTitle dentro do arquivo é ignorado; a língua aparecerá como "Custom" na configuração de idioma. Chaves faltantes têm fallback para o inglês.

Fluxo de trabalho de desenvolvimento e depuração

  • Fluxo típico:
    • Exporte os dados base do jogo para usar os JSON existentes como modelos.
    • Crie uma subpasta de mod com seus assets, código e definições JSON seguindo a documentação e as diretrizes de arte.
    • Use a modding API (ShapezShifter) ou bibliotecas de patching em tempo de execução se precisar alterar o comportamento do código.
    • Teste localmente colocando a pasta do mod dentro do diretório mods e iniciando o jogo.
  • O console de depuração está disponível no jogo para comandos e solução de problemas.
  • Documentação sobre depuração e patching em tempo de execução e exemplos da comunidade (mods de exemplo) são referências recomendadas.

Publicação e compartilhamento de mods

  • Steam Workshop:
    • Mods podem ser publicados no Steam Workshop para distribuição automática.
  • Compartilhamento na comunidade:
    • Compartilhamento de blueprints e conteúdo também acontece via site Community Vortex e no Discord oficial (#🛠blueprints).
  • Siga as diretrizes de publicação e assets do jogo ao publicar para evitar conflitos ou assets quebrados.

Tópicos e considerações avançadas

  • Tópicos relevantes de modding cobertos na documentação:
    • Modding Overview, Development Environment, Mod Loading, Debugging, Mod Publishing, Command Line Arguments, Game Files, Custom Game Modes, Debug Console.
  • Use os mods de exemplo e referências da API fornecidas para aprender padrões e boas práticas.
  • Ao modificar ou adicionar conteúdo em JSON (cenários, presets, traduções), garanta que a nomeação e a colocação dos arquivos correspondam às pastas esperadas descritas acima para que o jogo os reconheça.

Lista rápida para começar

  • Exporte os dados base: abra o console de depuração → debug.export-game-data.
  • Crie a pasta do mod dentro de Game Data Folder/mods/ e adicione seu conteúdo.
  • Para cenários ou presets personalizados, coloque os JSONs em custom-scenarios ou custom-scenario-parameter-presets respectivamente.
  • Para traduções, crie translations-override.json e inicie o jogo com --custom-translations.
  • Inscreva-se/publique no Steam Workshop para compartilhar ou receber mods.
  • Consulte a documentação oficial de modding, mods de exemplo e ShapezShifter para exemplos de código e uso da API.

Pages featured in this guide