Documentação do servidor
WorldPulse
AtivoHytale • Version 0.3.0
Ecologia regional com reprodução, crescimento, procura de alimento por predadores e avisos por espécie. Inclui fauna natural elegível do jogo e de outros mods.
Visão geral
Cace na mesma área todos os dias e a fauna fica escassa. Deixe a região descansar e as populações se recuperam, com ajuda de regiões vizinhas adequadas. Animais saudáveis podem se reproduzir, e os filhotes crescem até a fase adulta.
O WorldPulse funciona automaticamente em mundos single-player, mundos com amigos e servidores dedicados. Instale e jogue. Os comandos servem para administração e diagnóstico.
Instalação
- Requer Hytale 0.7.0+.
- Baixe WorldPulse-0.3.0.jar na aba Files do CurseForge.
- Feche o mundo ou servidor. Substitua o JAR anterior do WorldPulse em
UserData/Mods/ou na pastamods/do servidor, mantendo apenas uma cópia. - Inicie o mundo. Nenhum comando é necessário para jogar. A configuração é criada em
mods/durkz_WorldPulse/WorldPulse.json.
Regiões, caça e recuperação
Saúde populacional é um índice regional, não a contagem de todos os animais vivos. A região padrão mede 8 x 8 chunks, ou 256 x 256 blocos. Cada mundo mantém populações independentes por espécie. Uma morte de fauna natural elegível causada por jogador desconta killImpact do índice local, até minHealth. Golpes diretos e projéteis atribuídos ao jogador contam.
A recuperação usa o calendário do mundo. O padrão de recoveryDays é 4 dias para ir de 10% a 90%; demografia, habitat, pressão de caça e migração alteram o ritmo real. Regiões vizinhas adequadas podem ajudar na recolonização. Isso não move animais existentes fisicamente. Dormir e avançar o tempo podem acelerar a recuperação; com o calendário parado, o tempo real não envelhece os animais.
A escassez reduz metas dos próximos spawns naturais e respeita tamanhos de grupo, cotas regionais/globais e spawns pendentes. Animais existentes não são abatidos. A fauna natural elegível de marcadores e beacons usa limites próprios da origem. Animais criados por comando, pets, monstros e encontros roteirizados ou de facções permanecem excluídos pela política padrão.
Detecção de fauna e compatibilidade
O WorldPulse lê papéis registrados, categorias resolvidas, recursos dos modelos e chaves de nome do jogo, incluindo os fornecidos por outros mods. Regras por pasta continuam disponíveis, e a detecção por categoria amplia a cobertura sem uma lista fixa de espécies. A fauna nativa inclui papéis terrestres, aquáticos e de aves adequados; monstros, humanoides e animais domesticados ficam de fora pela política padrão.
extraRoles e excludedRoles são ajustes administrativos opcionais. Consulte /wp inspect <role> para ver a razão real de inclusão ou exclusão, limitações do modelo ou ciclo de vida, evidências alimentares e cotas nativas ativas. Um papel elegível pode ter acompanhamento populacional sem possuir os dados de modelo necessários à reprodução. A compatibilidade não cobre automaticamente todo pacote de assets nem todo NPC registrado.
A compatibilidade usa dados registrados, sem cópias embutidas ou patches específicos de pacotes. O WildTale 5.2 foi verificado junto ao WorldPulse, incluindo fauna elegível e transições de captura e domesticação. Papéis e spawners de itens defeituosos de terceiros continuam sob responsabilidade do mod de origem. O suporte à procura de alimento é mais restrito que o rastreamento populacional; um animal pode participar da ecologia sem receber uma nova IA de procura.
Reprodução e crescimento
A reprodução precisa de pais adultos elegíveis, habitat adequado, saúde populacional de pelo menos 60%, pressão de caça de no máximo 50%, intervalos dos pais e espaço nas cotas nativas. O ciclo padrão é derivado do volume do modelo, limitado a 1 a 4 dias de jogo. Nascimentos também respeitam espaço de colisão e limites de reservas.
Um papel juvenil nativo só é escolhido quando a relação com o adulto é inequívoca. Caso contrário, o modelo original começa em 60% da escala. Filhotes começam com 50% da vida e do dano nativos e crescem gradualmente mantendo a IA nativa. Se a caixa de colisão adulta não couber, o crescimento fica na fase juvenil até haver espaço. Identidade e proporção de vida são preservadas durante o crescimento.
O ciclo de vida é salvo com o animal. Voltar a um chunk descarregado pode avançar o crescimento conforme o calendário do mundo em execução, mas não há fila de nascimentos enquanto o chunk fica descarregado. A domesticação retira efeitos de idade identificáveis do WorldPulse e preserva alterações independentes de modelo ou atributos.
Um nascimento cancelado ou malsucedido devolve a cota diária reservada e os intervalos dos pais. Um filhote criado mantém a reserva mesmo se uma etapa posterior falhar. Uma queda abrupta com resultado de spawn desconhecido preserva a reserva durável para evitar duplicações; a recuperação dos registros nunca cria animais.
Mensagens ecológicas
Jogadores na região afetada recebem avisos com a espécie correspondente: declínio pela caça, escassez, recuperação, pressão que dificulta o retorno, nascimento concluído ou chegada à fase adulta. Os avisos vêm de mudanças reais de estado ou eventos de ciclo de vida concluídos. Eles não anunciam migração física.
Há um limite compartilhado de uma mensagem por jogador a cada 10 segundos e um intervalo de dois minutos por espécie/evento e contexto, com exceção para declínio crítico. Isso evita que verificações repetidas encham o chat. Nomes usam os registros e traduções disponíveis do jogo; as frases estão em inglês. Defina enableEcologyMessages como false para desativar.
Buscas por fome, concentrações de predadores famintos e caçadas concluídas também podem gerar avisos locais. O aviso relata atividade observada; não garante um ataque nem identifica uma casa como alvo.
Fome e procura de alimento dos predadores
Predadores adultos elegíveis acumulam fome apenas enquanto estão carregados. Com oferta normal de presas, o padrão é 40 minutos carregados para passar de alimentado a totalmente faminto; a escassez de presas conhecidas pode dobrar esse ritmo. A procura começa com 50% de fome, usa passos de 24 blocos e permite até oito buscas simultâneas por mundo por padrão. Caçadas elegíveis concluídas reduzem a fome.
Os predadores usam navegação e combate nativos. Procuram no terreno carregado próximo e em áreas vizinhas adequadas, com trabalho limitado e novas tentativas controladas para rotas bloqueadas. O WorldPulse não localiza camas, casas ou jogadores distantes e não cria nem teleporta predadores para gerar encontros. A agressividade nativa continua funcionando independentemente da fome.
A lista padrão contém 20 papéis nativos. Adicionar um animal de outro mod em foragingRoles não garante compatibilidade: ele também precisa de template nativo suportado, movimento e metadados utilizáveis. Animais domesticados saem desse sistema. A fome por tempo carregado e o ciclo de vida são salvos com o animal; o tempo offline não acumula uma fila de caçadas ou nascimentos.
Cadeia alimentar
Uma relação predador/presa é ativada após três UUIDs distintos de presas serem mortos pelo mesmo papel de predador naquele mundo. Somente interações letais atribuídas a predadores naturais elegíveis geram evidência; medo ou hostilidade isolados não definem dieta. Depois que a relação é conhecida, a disponibilidade local de presas pode reduzir os próximos spawns do predador, com limite em predatorMinFactor.
Isso representa interações letais repetidas, não animações de alimentação nem uma dieta biológica completa. Dietas desconhecidas ficam neutras. As evidências são persistidas por mundo e aparecem em /wp inspect <role>.
Funcionalidades
- Populações regionais: cada espécie tem sua própria saúde populacional em cada região, de 8 x 8 chunks por padrão. A caça por jogadores reduz os próximos spawns naturais ali.
- Recuperação e pressão de caça: as populações se recuperam ao longo dos dias de jogo. Habitat e pressão alteram a recuperação, e regiões vizinhas saudáveis podem ajudar na recolonização.
- Reprodução física: animais naturais elegíveis podem gerar filhotes quando pais, saúde populacional, habitat e limites nativos de spawn permitem.
- Crescimento dos filhotes: eles começam menores e mais fracos e crescem gradualmente. Papéis juvenis nativos são usados quando existe uma relação confiável; caso contrário, o modelo original é reduzido.
- Avisos para cada espécie afetada: jogadores na região recebem mensagens sobre declínio, escassez, recuperação, pressão de caça, nascimentos reais e fase adulta, com intervalos entre avisos.
- Fauna nativa e de outros mods: os metadados dos papéis registrados fornecem classificação, modelos e nomes. O jogador não precisa configurar nem cadastrar os animais de cada mod.
- Relações de predação aprendidas: mortes repetidas causadas por predadores estabelecem relações com presas. A escassez dessas presas pode reduzir os próximos spawns dos predadores; dietas desconhecidas ficam neutras.
- Mundos persistentes: populações, pressão, intervalos de reprodução, estado dos filhotes e relações alimentares aprendidas sobrevivem a salvamentos e reinícios.
- Predadores com fome: 20 papéis nativos configurados podem procurar alimento no terreno carregado próximo usando navegação nativa. A escassez de presas acelera a fome, enquanto a agressividade nativa continua independente.
- Fauna de marcadores e beacons: animais naturais elegíveis desses pontos participam da ecologia e reprodução dentro dos limites nativos da própria origem. Pets, monstros e encontros roteirizados mantêm suas exclusões.
Comandos
Comando de administração: /wp. Jogadores comuns recebem avisos ecológicos sem permissão de comando.
| Comando | Descrição |
|---|---|
/wp here | Mostra a saúde populacional da fauna na região atual. |
/wp set <species> <percent> | Define saúde populacional local de 0 a 100 para um papel de spawn registrado. |
/wp tick <days> | Avança a recuperação populacional deste mundo pelos dias de jogo pedidos; não é um avanço completo do tempo do mundo. |
/wp reset | Limpa populações regionais, habitat, pressão e reservas/intervalos de reprodução deste mundo. Não apaga o arquivo alimentar separado. |
/wp stats | Mostra contadores de caça, spawn, catálogo e recursos disponíveis. |
/wp inspect <role> | Explica elegibilidade, suporte de modelo/ciclo de vida, evidências de presas e cotas nativas ativas. |
Permissões
durkz.worldpulse.command.wp: acesso aos comandos /wp e avisos de atualização. Operadores possuem acesso por padrão.
Configuração
Arquivo: mods/durkz_WorldPulse/WorldPulse.json. Os padrões abaixo valem para uma configuração nova. Escolhas válidas existentes são mantidas, então um mundo antigo pode manter a recuperação anterior. Reinicie após editar. configVersion é gerenciado pelo mod.
| Campo | Padrão | Descrição |
|---|---|---|
configVersion | 3 | Formato interno da configuração. |
enabled | true | Ativa o WorldPulse. |
regionSizeChunks | 8 | Lado da região em chunks, de 1 a 64. |
killImpact | 0.1 | Saúde populacional perdida por morte atribuída ao jogador. |
killImpactByRole | {} | Ajustes opcionais de impacto por papel. |
minHealth | 0.02 | Menor saúde populacional permitida. |
recoveryDays | 4.0 | Dias de jogo de 10% a 90%, modificados pela ecologia. |
enableDemography | true | Usa modificadores demográficos na recuperação. |
enableHuntingPressure | true | Registra e aplica pressão de caça. |
enableBreeding | true | Permite nascimentos e crescimento da fauna elegível. |
enableEcologyMessages | true | Envia avisos automáticos por espécie no chat. |
autoDetectWildlife | true | Detecta fauna por categorias nativas resolvidas. |
enableMigration | true | Permite recolonização regional estatística. |
enableHabitat | true | Aplica adequação de habitat observada. |
enableFoodWeb | true | Aplica disponibilidade das relações predador/presa aprendidas. |
migrationPerDay | 0.04 | Ganho máximo de migração regional por dia de jogo. |
predatorMinFactor | 0.4 | Fator mínimo de spawn de predadores por disponibilidade alimentar. |
faunaFolders | ["Creature", "Aquatic", "Avian"] | Pastas aceitas como fauna. |
excludedFolders | ["Creature/Mythic", "Creature/Hunt"] | Subpastas de fauna excluídas. |
excludedRoles | [] | Exclusões opcionais por papel. |
extraRoles | [] | Inclusões explícitas opcionais por papel. |
checkForUpdates | true | Consulta o site e avisa sobre atualizações aos jogadores com acesso ao comando. |
debugLog | false | Decisões detalhadas de spawn para diagnóstico. |
enableForaging | true | Ativa buscas por fome para predadores elegíveis da lista configurada. |
foragingRoles | 20 papéis nativos | Lista explícita de papéis; veja o padrão abaixo. |
forageHungerMinutes | 40.0 | Minutos reais carregados de alimentado a totalmente faminto com presas normais. |
forageStartHunger | 0.5 | Fração de fome que permite iniciar a procura. |
forageStepBlocks | 24 | Comprimento de cada passo de busca em blocos. |
maxForagers | 8 | Máximo de buscas simultâneas por mundo; 0 desativa as buscas. |
Papéis padrão para procura de alimento
["Wolf_Black", "Wolf_White", "Fox", "Hyena", "Bear_Grizzly", "Bear_Polar", "Leopard_Snow", "Tiger_Sabertooth", "Raptor_Cave", "Crocodile", "Rex_Cave", "Toad_Rhino", "Toad_Rhino_Magma", "Snake_Cobra", "Snake_Marsh", "Snake_Rattle", "Spider", "Molerat", "Spider_Cave", "Spider_Cave_Ambush"]
Arquivos de dados e recuperação
| Caminho | Finalidade |
|---|---|
populations.json | Populações, habitat, pressão e controle de reprodução. |
populations.journal | Atualizações incrementais confirmadas de população. |
food-relations.json | Checkpoint de evidências de predador/presa aprendidas. |
food-relations.json.journal | Evidências alimentares incrementais confirmadas. |
Os arquivos ficam em <world save>/WorldPulse/. Componentes de ciclo de vida dos filhotes são salvos com as entidades nativas. Preserve entidades e arquivos do WorldPulse juntos nos backups.
Checkpoints usam substituição atômica e journals reaplicam registros confirmados. Uma última linha incompleta é ignorada. Registros confirmados inválidos ou formatos futuros não suportados preservam os originais e suspendem o recurso afetado em vez de recomeçar silenciosamente. Uma falha alimentar fica isolada dos checkpoints populacionais. Logs e /wp inspect informam falhas alimentares. Um crash antes da confirmação de uma escrita assíncrona ainda pode perder aquela observação pendente.
Em caso de erro de persistência, pare o servidor e faça backup antes de restaurar uma cópia válida. Não apague dados como etapa normal de atualização.
Recomendações
- Comece com os padrões e dê vários dias de jogo para as populações reagirem.
- Alterne as áreas de caça. Aumente
recoveryDaysou diminuakillImpactpara ajustar o ritmo. - Use
/wp inspect <role>antes de adicionar ajustes de compatibilidade. A maioria dos animais classificados corretamente dispensa cadastro manual. - Faça backup dos dados antes de mudar
regionSizeChunks; uma grade regional diferente muda como as coordenadas salvas correspondem ao terreno.
Como verificar o funcionamento
- Confira
WorldPulseeenabled=truenos logs de inicialização; comandos não são necessários para jogar. - Use
/wp statspara consultar o catálogo. Use/wp inspect <role>com um papel real do jogo ou pacote instalado. - Cace fauna natural elegível e consulte
/wp herepara observar a redução local. Animais criados manualmente não substituem esse teste. - Deixe o mundo rodar por vários dias de jogo. Observe recuperação e, quando houver condições, nascimentos e crescimento. Avisos no chat têm intervalos.
- Salve, feche e reinicie o mundo. Confira uma região reduzida e filhotes para verificar que o estado foi mantido.
Status e limitações conhecidas
Projeto ativo. A detecção automática depende de metadados utilizáveis e modelos válidos. Assets defeituosos de terceiros podem excluir papéis individuais. A migração regional altera a saúde populacional; predadores famintos compatíveis podem se deslocar separadamente pelo terreno carregado usando navegação nativa. As buscas dependem do terreno, das presas e do comportamento nativo e não garantem encontros. Animais existentes não são abatidos. As frases dos avisos ecológicos estão em inglês; os nomes das espécies usam traduções disponíveis do jogo com uma alternativa legível.
Licença
All Rights Reserved