Teste de Script de Combate Moderno

Traduzido do inglês

Modern Combat Script Test

66

446

Campo de Testes para Script de Combate Moderno estilo RPG

Nota: Esta é uma demonstração de script e não um bot de RP legítimo. Link do código na última seção.

Teste as probabilidades de explosivos, projéteis e corpo a corpo em roleplay.


É uma guerra total em algum país devastado pela guerra e de merda!

Nosso soldado, Bob, sobreviverá à rolagem dos dados?


Peguei uma imagem aleatória qualquer para a thumbnail

Fonte da Arte: Drunken-Lord


Nota: Este script provavelmente será muito dependente do tipo de LLM que você usa e de como ele interpreta distâncias.

Usei o DeepSeek V3 0324, sua experiência pode variar com outras LLMs.


Como funciona?

TLDR: O bot rola dados várias vezes e o sucesso (sobrevivência) é baseado em atributos de combate estilo RPG

Até agora, tenho três categorias de efeitos que podem acontecer com {{char}}.

  • Explosivo

  • Projétil

  • Corpo a corpo

Também falaremos sobre o conceito de "atributos de combate moderno" que influenciarão esses efeitos.


Explosivos

Explosivos têm um efeito de área com a chance de ser afetado diminuindo à medida que a distância aumenta.

Duas coisas devem ser preocupantes em relação a explosivos: estilhaços (ou projéteis) e força concussiva.

Então, podemos definir nosso prompt injetado assim (exemplo, pode não ser exatamente o produto final):

# {{char}} deve reagir a uma explosão desta forma:

- Curta distância: ["recuar", "concussionado", "incapacitado"] pela explosão, e estilhaços (projétil) ["são", "não são"] direcionados a ele.

- Média distância: ["imperturbável", "recuar", "concussionado"] pela explosão, e estilhaços (projétil) ["são", "não são"] direcionados a ele.

- Longa distância: ["imperturbável", "recuar"] pela explosão.

Os valores entre colchetes aqui são determinados por rolagens de dados feitas pelo bot.

Os atributos do bot aqui não fazem muito além de verificar se ele sobrevive, já que explosivos fazem o que bem entendem.


Projéteis

Este provavelmente será o caso comum em termos de combate em roleplay, então acho que a abordagem precisará ser bem detalhada.

Há praticamente três resultados que consigo imaginar ao ser baleado: sair ileso, ferido e morto de vez.

Mas, derivando desses resultados, o que mais pode acontecer?

- ileso; você pode estar imperturbável ou suprimido

- ferido; você pode estar entorpecido, suprimido ou em choque. O ferimento pode ser leve, grave ou mortal. "Mortal" permitiria ao bot pelo menos revidar uma última vez antes de morrer.

- morto; tipo um tiro na cabeça ou algo assim? sim, acabou.

Então, precisaremos ver se o bot revidará efetivamente contra o agressor, com base na habilidade do bot e em seu status. (assumindo que o bot não foi morto.)

Então podemos ter nosso prompt assim:

# {{char}} deve reagir a ser baleado, ou a um projétil direcionado a ele, desta forma:

E então, cada distância (curta, média, longa) receberá o seguinte (Algumas frases não estarão lá dependendo do que acontecer. Por exemplo: "ileso" não gerará a linha "O ferimento é..."):

Será ["ileso", "ferido", "morto"] pelo projétil. O ferimento é ["leve", "grave", "mortal"]. {{char}} está ["imperturbável", "entorpecido", "suprimido", "em choque"]. Se fizer sentido revidar, ele o fará ["efetivamente", "inefetivamente"].

Os atributos do bot entram nisso um pouco mais, considerando seus atributos "físicos" (ele morrerá/sairá do caminho?), seus atributos "mentais" (ele ficará imobilizado?) e atributos de "combate" (ele reagirá efetivamente?)


Corpo a corpo

E, é claro, você sempre pode entrar numa briga com alguém em vez de abri-lo com um round 7.62 ou 5.56.

Este será o mais simples dos prompts e mais simples de derivar do que o script de combate corpo a corpo em meus outros bots.

# Em combate corpo a corpo, {{char}} deve lutar ["efetivamente", "inefetivamente"].

Como isso provavelmente não acontecerá tanto quanto eu penso, isso permanecerá bem simples.


Atributos de Combate Moderno

Vou me inspirar em Escape from Tarkov e usar algumas das estatísticas de lá. Acho que todas são bem autoexplicativas.

Físico

- Vitalidade - saúde, basicamente

- Agilidade - quão rápido/bem ele se move

- Resiliência - resistência a dano

- Força - quão forte ele é

Mental

- Percepção - habilidade de perceber coisas no campo de batalha

- Controle de Estresse - habilidade de manter a calma sob pressão

Combate

- Manuseio - habilidade de mirar e disparar uma arma

- CQC - habilidade de combate em espaços confinados

- Corpo a corpo - quão bem ele pode lutar com as mãos

Esses valores devem ser definidos de 0 a 100 e devem ser adaptados para refletir a personalidade do bot. Como diretriz, acho que podemos escalar as coisas assim:

(0 - 40: ruim), (40-60: médio), (60-80: bom), (80-100: excelente)

Então um personagem sniper provavelmente deveria ter "Manuseio: 85" mas "CQC: 50" ou algo assim.

Esses valores são ponderados de forma diferente por distância de engajamento: Por exemplo, CQC pesando mais em "curta distância" mas pesando muito menos (ou nem sendo considerado) em "longa distância".

Quais atributos contribuem e seus pesos (todos os pesos devem somar 1):

Estes são honestamente meio aleatórios, então sim, feedback é bem-vindo sobre o balanceamento destes.

Sobrevivência a explosão:

- todas as distâncias: resiliência (0.7), controle de estresse (0.3)

Acerto de projétil:

- curta: percepção (0.2), agilidade (0.4), cqc (0.4)

- média: percepção (0.5), agilidade (0.5)

- longa: percepção (0.7), agilidade (0.3)

Gravidade do ferimento:

- curta: vitalidade (0.3), resiliência (0.4), cqc (0.3)

- média: vitalidade (0.5), resiliência (0.5)

- longa: vitalidade (0.3), resiliência (0.7)

Efeito mental:

- curta: percepção (0.1), controle de estresse (0.4), cqc (0.5)

- média: percepção (0.3), controle de estresse (0.7)

- longa: percepção (0.1), controle de estresse (0.9)

Efetividade da retaliação:

- curta: percepção (0.1), manuseio (0.4), cqc (0.5)

- média: percepção (0.3), manuseio (0.7)

- longa: percepção (0.5), manuseio (0.5)

Sucesso em corpo a corpo:

- força (0.4), corpo a corpo (0.6)


Código

Fico feliz em compartilhar o código, que você pode encontrar aqui no meu GitHub.

Licença MIT aplicada, o que apenas garante que seja o mais permissível possível!

Agradeceria os créditos se você decidir usar o script a sério. :)

Criado 13 de set. de 2025

Atualizado 21 de nov. de 2025

Publicado 13 de set. de 2025

proxy permitido

Chats publicados