banner
Avaliação
Votado0

Mob Ilib

0
Versão do mod:1
Versão do jogo:all
O mod foi testado com sucesso e está livre de vírus
721.46K107.14K

Denunciar mod

  • image
modalImage

Sobre este Mod

## RagnarsRökare MobAILib ##

MobAILib é uma biblioteca usada para substituir os caracteres de AI embutidos em Valheim.

O objetivo é fornecer um conjunto de tipos e comportamentos de IA que os modeladores podem usar para criar um mundo mais brilhante.

RagnarsRökare MobAILib

MobAILib é uma biblioteca para substituir personagens de AI construídos em Valheim.

O objetivo é fornecer vários tipos diferentes de IA e comportamentos que os modeladores podem usar para criar mundos mais brilhantes.


Como usar.

Primeiro, adicione uma referência ao MobAILib ao seu projeto mod.


RagnarsRokare.MobAI.MobManager é usado para registrar e monitorar grupos gerenciados.

Ele contém uma lista de MobAI que pode ser usada como o "cérebro" da multidão e controlar seu comportamento. 

Cada MobAI tem seu próprio arquivo de configuração contendo suas configurações: WorkerAIConfig e FixerAIConfig.

Eles herdam de MobAIBaseConfig, que contém atributos básicos:  

Sensibilização - sensibilização geral. Usado para calcular o intervalo de pesquisa e a capacidade de detectar inimigos. 

Agressividade - A agressividade determina o comportamento em combate e quando se render e escapar. 

Mobilidade - A mobilidade é usada para determinar com que frequência e até que ponto uma multidão se move. 

Inteligência - a inteligência geral determina o quanto uma multidão é capaz de memorizar.


-LabourerAI.

Permite que o personagem se mova e preencha fundições, fornos, lareiras e tochas. Ele está procurando objetos no chão e no peito.

Lutando quando ferido, mas facilmente se rende (nível de ataque baixo) A configuração FeedDuration só é válida se o componente Tameable estiver anexado ao objeto do jogador. 


ConfiguraçãoAICdoTrabalhador.

  public int FeedDuration = 1000;  

  public string[] IncludedContainers = new string[] { "pedaço_tórax_madeira" }  

  public int TimeBeforeAssignmentCanBeRepeated = 120;  

  público int TimeLimitOnAssignment = 60;  


- Reparação de inteligência artificial.  

Se você encontrar uma estrutura danificada, envie-a para reparo. Equipe um item 0 em seu inventário ou martelo, se disponível, e use a animação de ataque ao reparar novamente. Se estiver ferido, lutará agressivamente (maior força de ataque). 

A opção FeedDuration só é válida se o componente Tameable estiver anexado ao objeto de jogo. 


FixarAIConfig.

Esses são os valores padrão. 

  public int PostTameFeedDuration = 1000;  

  público int TimeLimitOnAssignment = 30;  

  public string[] IncludedContainers = new string[] { 'piece_peito_wood' }  


RegisterMobAI(Type mobAIType) Usado para registrar um MobAI personalizado. 

MobAIType deve herdar de MobAIBase e ser uma classe que implemente IMobAIType. 

Um exemplo de implementação do mobAI pode ser encontrado em [GitHub](https://github.com/di98feja/RagnarsRokare/wiki))のwikiを参照。). 


RegisterMob(Caractere caractere, sequência uniqueId, sequência mobAIName, sequência configAsJson)Usado para registrar uma multidão com MobAI.

- personagem - componente do Character mob.

- uniqueId - uma string usada para identificar exclusivamente a multidão entre todos os outros grupos.

- mobAIName é o tipo de MobAI a ser usado. Os tipos disponíveis podem ser encontrados em **'MobManager.GetRegisteredMobAIs()'**.

- configAsJson - configuração específica do MobAI serializada como JSON.


RegisterMob(Caractere, string uniqueId, string mobAIName, config de objeto) é usado para registrar a multidão com MobAI.

- o personagem é um componente da máfia de Personagens.

- uniqueId - uma string usada para identificar exclusivamente a multidão entre todos os outros grupos.

- mobAIName é o tipo de MobAI a ser usado. Os tipos disponíveis podem ser encontrados em **'MobManager.GetRegisteredMobAIs()'**.

- config - configuração específica do MobAI.


UnregisterMob( IDexclusiva da cadeia de caracteres)

Usado para desativar o controle da multidão.


IsRegisteredMob(string uniqueId)Verifica se o grupo com o identificador exclusivo especificado está registrado.


IsAliveMob(string uniqueId)Verifica se o mob está ativo de acordo com o identificador exclusivo especificado.

Mob torna-se ativo quando sua MobAI é instanciada e atribuída.


Dictionary<string, MobAIBase> AliveMobTodos os live mobs são armazenados em um dicionário onde UniqueId é a chave. O valor é a classe base do MobAI e tem acesso a CurrentAIState.


O código está disponível no GitHub.

Este repositório também tem um modo SlaveGreylings que usa esta biblioteca.

Sob o capô, ele usa (ou pode estar usando indevidamente) Stateless State Machine (também no GitHub).  

Obrigado, Equipe apátrida.


MobAILib está em desenvolvimento e, como qualquer hobby, há um limite para a quantidade de tempo que você pode gastar neste projeto, não importa o quanto você se divirta.

Por conseguinte, mesmo com o feedback, não conseguiremos satisfazer os desejos de todos. 

// Berg e Morg.


Planos para o futuro.

- Adicione um comportamento de combate mais específico que todas as classes MobAI podem usar.

- Adicione modelos de interface e estratégias que permitem escolher o comportamento de combate em tempo de execução.

- Mais aulas MobAI embutidas.

- Comportamentos mais gerais.


Log de alterações.

- Versão 0.3.9.  

 Mudou que as multidões controlam apenas a distância 2D quando se movem para o alvo.  

 Se um contêiner não estiver disponível, as classificadoras alteraram seu comportamento para liberar os itens que retêm.


- Versão 0.3.8

 Erros corrigidos.


- Versão 0.3.7

 Correções de erros.


- Versão 0.3.6.

 Adicionar comportamento BasicFarmingBehavior


- Versão 0.3.5

 Reprojetado para Valheim v0.206.5


- Versão 0.3.4

Atualizado para Hearth&Home


-versão 0.3.3

Correções de erros.


- Versão 0.3.1

Compatibilidade com versões anteriores da versão 0.2  


- Versão 0.3.0  

Adicionados marcadores para multidões no mapa  

Várias correções e melhorias de estabilidade  

O roaming de IA está desabilitado por padrão. Funciona bem em jogos de um jogador e um jogador em servidores privados. Configuração de multijogadores necessária.


- Versão 0.2.1.

[BepInProcess ("valheim.exe")] removido para torná-lo compatível com servidores privados.


- Versão 0.2.0.  

Adicionado um atributo base mob para controlar o comportamento. 

Requer visibilidade direta para contêineres e trabalhos. 

FeedingBehavior adicionado e removida a necessidade do componente Tameable. 

Reconstruímos os mecanismos de árvore. 

Alguns valores de configuração não são mais válidos.


- Versão 0.1.3.  

Adicionada função FightingBehavior básica para FixerAI e WorkerAI.  

Corrigido um erro ao adicionar combustível à lareira sem turbas.


- Versão 0.1.2.  

Capacidade adicionada para salvar classes MobAI personalizadas


- Versão 0.1.1.  

Sobrecarga adicionada em RegisterMob para aceitar configurações como objetos


- Versão 0.1.0  

Versão inicial

Mods/Addons semelhantes

Versão do Jogo *

all (MobAILib.v0310.zip-1188-0-3-10-1650306292.zip)