Bem -vindo ao recurso oficial de modificação para o capitão do jogo da indústria.
A AI está atualmente disponível no Steam e está em fase de acesso antecipada. Embora o modding seja possível, ainda não é oficialmente apoiado. Estamos trabalhando continuamente para melhorar o suporte e a documentação da modificação.
Observe que o suporte ao MOD é experimental e as APIs podem ter mudanças de quebra. Se você estiver com problemas, sempre examine os logs no %APPDATA%/Captain of Industry/Logs
, eles contêm muitas informações úteis. Se você quiser discutir tópicos de modificação com a comunidade e os desenvolvedores, visite nosso canal Discord #Modding-dev-general (você precisará se atribuir uma função Mod creation
no canal #pick-your-roles-here
). Você também pode registrar problemas aqui no Github, mas o tempo de resposta de nossa equipe pode ser adiado.
Para começar a Modding COI, você precisará:
Properties...
-> Local Files
-> Browse
.C:/Steam/steamapps/common/Captain of Industry
).COI_ROOT
e defina seu valor no caminho da raiz do jogo copiado acima. No Windows, use a útil ferramenta Edit environmental variables
, basta abrir o menu Iniciar e digitar Edit env
e você deve vê -lo.ExampleMod
na configuração Release
localizada em src/ExampleMod/ExampleMod.sln
. Recomendamos usar o Visual Studio, mas sinta -se à vontade para usar outras ferramentas, como o comando dotnet build
Console. No Visual Studio, você deve ver todos os conjuntos dependentes vinculados corretamente. Caso contrário, e você está vendo muitos erros, verifique sua variável ambiental COI_ROOT
, tente reiniciar.ExampleMod.dll
resultante em /bin/Release/net471
.%APPDATA%/Captain of Industry
.Mods
de diretório. Dentro dele, crie um novo diretório que tenha o mesmo nome que o seu mod dll, no nosso caso, é ExampleMod
. Copie o ExampleMod.dll
compilado, para que esteja no %APPDATA%/Captain of Industry/Mods/ExampleMod/ExampleMod.dll
. Observe que o nome do diretório e o nome da DLL devem corresponder.Miscellaneous
, ative o suporte ao mod e reinicie o jogo para que a configuração entre em vigor.ExampleMod
é carregado localizando um novo nó na árvore de pesquisa (aberto usando a chave G
). Em caso de erros, examine os registros no %APPDATA%/Captain of Industry/Logs
.Ativos como ícones ou modelos 3D podem ser criados usando o editor de unidade. Atualmente, usamos o Unity 2022.3.5F1 e é recomendável usar a mesma versão para evitar incompatibilidades.
Configuração única de unidade necessária para que as ferramentas MAFI funcionem corretamente.
src/ExampleMod.Unity
. Não abra ainda.UnityRootSymlink
na srcExampleMod.UnityLibrary
que aponta para a pasta de instalação da unidade (por exemplo, C:Program FilesUnityHubEditor2022.3.5f1
). Isso pode ser feito invocando o comando mklink /D <target> <srouce>
na janela do console com privilégios de administrador. Por exemplo: mklink /D "C:CaptainOfIndustryModdingsrcExampleMod.UnityLibraryUnityRootSymlink" "C:Program FilesUnity"
. Ao navegar até o UnityRootSymlink
você verá um único diretório Editor
nele.src/ExampleMod.Unity/Assets/DLLs/create_dll_hardlinks.bat
. Você precisará executá-lo em privilégios de administrador (clique com o botão direito do mouse, execute como administrador).src/ExampleMod.Unity/Assets/ExampleModScene.unity
in the Unity Editor. Isso pode ser feito via Unity Hub selecionando Open project from disk
na guia Projects
. Certifique -se de selecionar a versão correta da unidade se tiver várias instalações.MaFi
no menu superior do editor de unidades. Caso contrário, as DLLs vinculadas não foram carregadas adequadamente e você não poderá criar ativos.ExampleModScene
clicando duas vezes no painel Proejct
(está no diretório Assets
).Edit
-> Preferences
).External tools
-> External script editor
-> Open by file extension
. Isso parará de regenerar os arquivos do projeto e colocar caminhos absolutos em vez de parente.General
-> Disable Editor Analytics
(se você puder e deseja).As etapas a seguir descrevem como empacotar ícones, por exemplo, para novos produtos.
Assets
, crie o diretório <mod name>/<icons categor>
, no nosso caso, que é ExampleMod/ProductIcons
.Sprite (2D and UI)
e aplique a alteração.asdf
ou escolher qualquer um existente.Copy Path
. Esse caminho pode ser usado para carregar seu pré -fabricação no jogo. NOTA: Ao contrário dos modelos 3D, as texturas não precisam criar um prefab
.
As etapas seguintes descrevem como criar um modelo de modelo 3D que é muito benefício na criação de modelos 3D de edifícios.
ExampleMachineData.cs
)."TODO"
já que ainda não temos um pré -fabricador.generate_layout_entity_mesh_template
seguido pelo seu ID da entidade. Isso gerará um arquivo OBJ em %APPDATA%/Captain of Industry/Misc/GeneratedMeshTemplates
, que representa uma caixa limite 3D de layout de sua nova entidade com locais exatos da porta.As etapas seguintes descrevem como empacotar um modelo 3D.
Assets
, crie <mod name>/<model name>
diretório, no nosso caso, que é ExampleMod/ExampleModel
..prefab
. Em nosso exemplo, criamos o prefab no diretório <mod name>
.asdf
ou escolher qualquer um existente.Copy Path
. Esse caminho pode ser usado para carregar seu pré -fabricação no jogo. Quando seus ativos estiverem prontos, siga estas etapas para empacotá -las com seu mod. Os mods são publicados em um diretório com o mesmo nome que o seu mod dll; no nosso caso, temos ExampleMod/ExampleMod.dll
. Agora podemos adicionar pacotes de ativos ao mesmo diretório.
Ctrl+S
).[MaFi] Build asset bundles
. Após o processamento da unidade, os arquivos de pacote de ativos podem ser encontrados no diretório src/ExampleMod.Unity/AssetBundles
.src/ExampleMod.Unity/AssetBundles
para a pasta AssetBundles
ao lado da DLL MOD, por exemplo %APPDATA%/Captain of Industry/Mods/ExampleMod/AssetBundles
.YourPrefabName_xxxx
, sem extensão) e o arquivo mafi_bundles.manifest
. Todos os outros arquivos .manifest
podem ser removidos, bem como o arquivo AssetBundles
. Se você fizer alguma alteração nos seus pré -fabricados, basta reconstruir os pacotes de ativos e a cópia, use os novos arquivos do diretório AssetBundles
.