Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Movimentação Tática em Jogos de Guerra
Equipe: Cláudio Sasaki Ivo Frazão Lucas Loureiro Luiz Nunes Mauro Vieira Tiago Barros
3
Roteiro Introdução Raciocínio Tático e Estratégico Usando Waypoints
Mapas de Influência Táticas de Esquadrão: Manobras Emergentes Táticas de Esquadrão: Manobras Ensaiadas Hierarquia de Decisão Formações
4
Organizações estratégias e táticas utilizando waypoints
Introdução Características controladas por computador cada vez mais sofisticadas. Jogos de primeira pessoa ou jogos de aventura.
5
Node-graph O que é? Para que serve?
Como influencia no desempenho de um jogo? Waypoints
6
Um exemplo de Node-graph
7
Qual a utilidade da visualização?
Determinar qual das localidades serão seguras e quais não serão. Fundamental na hora do ataque e da defesa. Determinar que caminho deverá ser seguido considerando a posição do inimigo e não a menor distância (Safe Pathfinding).
8
Utilizando a visualização...
1 2 3 4 5 6 v1 v2 v3 v4 v5 v6
9
Continuando... Danger Nodes Va <OR> Vb = 1 0 0 1 1 1
Safe Nodes Inverso V =
10
Intelligent Attack Positioning
Atacar o inimigo sem ser visto pelos outros. Determinar a visão do inimigo. Vini = Determinar os nós que são vistos pelos outros inimigos; Vini2 = <OR> Vini3 = ViniR = Determinar o(s) nó(s) que deveremos nos colocar. Inverso ViniR = <AND> Vini = = (posição 4 ou 6)
11
Indo ainda mais longe... Caso fosse necessário se esconder do inimigo? Desviar de uma bala? Flanking
12
Posicionamento inteligente de ataque
Se colocando em uma posição melhor de ataque... Ca <AND> Inverso V = 0 Visão dos inimigos: V2= <OR> V3= <OR> V6= VINI= Inverso Vini= (Nó 7) C4= 1, 5, 7 e C6= 5
13
Análise estática de Waypoints
NPC deve colocar-se em posições estratégicas antes do inimigo chegar. Lugares de alta visibilidade são perigosos. Lugares de baixa visibilidade são ruins para atacar. O ideal seria um nó de alta visibilidade perto de um nó de baixa visibilidade. (Sniper Locations) Poderemos caracterizar cada nó com um peso associado a sua visibilidade no node-graphic.
14
Pinch Points Para cada nó N que possua somente 2 vizinhos...
Temporariamente elimine o nó N, chame seus vizinhos de A e B. Se A e B estão conectados a regiões grandes, N não é o pinch point. Tente achar caminhos entre A e B, se existir, N não é o pinch point. Chame I de inside e O para outside Para montarmos uma emboscada temos que achar um waypoint que consiga visualizar O e não consiga N. A = Vo <AND> inverso Vn
15
Pinch Points Em situações onde existem corredores...
Se O só tiver um único vizinho fora N: Mova N para O Mova O para seu vizinho Até quando O tiver mais de um vizinho.
16
Squad Tactics Mesmo procedimento que o utilizado no pinch point sendo repetido para cada uma das saídas. A1= Vo1 <AND> inverso Vn1 A2= Vo2 <AND> inverso Vn2
17
Mapas de Influência
18
O que é… Generalização da influência de cada unidade no globo
No man’s land Identifica o nível de controle de cada região 1 2 -1 5 -2 10 -3 -5 -4
19
value = (attack - defense) / (distance * gradient)
Criando as Regras value = (attack - defense) / (distance * gradient) Front: a unidade que possui o maior gradiente Flank: unidades que possuem gradientes menores Rear: retaguarda inimiga
20
Pontos de Contato Aumentar os pontos de contato com os front e os flanks inimigos Na defesa diminuir os pontos de contato com os flanks inimigos Boa estratégia para jogos “one-on-one” Pobre ao especificar as personalidades dos jogadores
21
Diferentes Personalidades
Rússia: Expansionistas Roma: Militaristas EUA: Industrias França: Comerciais Egípcios: Religiosos
22
“Big Questions” Os algoritmos são únicos para cada problema?
Qual o limite entre ser fiel a personalidade e ser natural? Devo gerar um mapa de influência em relação a que referencias?
23
Conclusão Positivais Negativas
Pode avaliar superioridades locais e globais Une considerações incompatíveis Uma boa forma de gerar conflitos Negativas Complexos mapas de influência tendem a descartar informações úteis ou destacar dados de menor importância
24
Táticas de Esquadrão: Manobras Emergentes
25
Agentes Cooperativos Ausência de agente líder Vantajoso porque:
É uma extensão da IA individual Trata várias situações com robustez Funciona bem com agentes com habilidades variadas Pode ser combinado com agentes baseados em scripts
26
Mas... de onde vem a coerência?
Comportamento emergente (ou comportamento auto-organizável) Exemplo: Comportamento de atirar-e-mover
27
IA Individual Atacar Mover Procurar alvo e atirar
Ir para a nova posição Sem ameaças Time out Chegou na nova posição Nova ameaça após movimento mínimo Nova ameaça após perda da atual
28
IA de Esquadrão Atacar Mover Procurar alvo e atirar
Ir para a nova posição Sem ameaças Time out Poucos colega movendo-se Chegou na nova posição Nova ameaça após movimento mínimo Poucos colegas atacando Nova ameaça após perda da atual
29
Avanços Táticos Uma boa tática é mais do que simplesmente atirar e mover: Proximidade de proteção Linha de fogo Capacidade da arma Coesão Separação Movimentação do inimigo A escolha da nova posição leva em conta todos estes fatores Pesos diferentes para cada fator em cada agente Pesos diferentes num mesmo agente, de acordo com a situação
30
Parece bom, mas... Caminho conflitantes
Caminhos desprotegidos para locais taticamente mais vantajosos que o atual Falta de espaço para movimentação O problema da emboscada Esperar o inimigo se aproximar Retirada após ataque Revidar quando surpreendido
31
Táticas de Esquadrão: Manobras Ensaiadas
32
Táticas de Esquadrão: Manobras Ensaiadas
Os militares confiam em 2 coisas para saírem-se vitoriosos de situações de combate perigosas e caóticas: Líderes Manobras extensivamente ensaiadas Sem um Líder, os soldados perderiam muito tempo explorando as possibilidades e resolvendo conflitos
33
Táticas de Esquadrão: Manobras Ensaiadas
Isto nos leva a construir uma IA centralizada, onde um comandante recebe as observações e resultado de ações de seus agentes e ordena as novas ações Podemos ainda utilizar uma IA distribuída para que os agentes possam receber uma ordem simples e saber como desenvolve-lá da melhor forma possível Isto facilita o trabalho de cada IA e permite uma maior especialização das mesmas
34
Táticas de Esquadrão: Manobras Ensaiadas
Estilos de Comando Autoritário: os agentes obedecem cegamente e exatamente o que o comandante ordena Possibilita o sacrifício de um para ajudar os outros Mas pode menosprezar ameaças para determinados agentes Treinador: os agentes recebem tarefas para executar, mas tem a liberdade de escolher como agir Permite que o agente resolva ameaças mais urgentes para ele Mas pode levar ao agente ficar perdendo tempo com ações irrelevantes para a missão
35
Táticas de Esquadrão: Manobras Ensaiadas
Como obter informações sobre a situação? Não é tão fácil como identificar uma formação no futebol Jogos com Muitas unidades: mapas de influências Para jogos mais simples, podemos usar outras características como razão entre aliados e inimigos, entre linhas de tiro presentes, posicionamento favorável
36
Táticas de Esquadrão: Manobras Ensaiadas
Sabendo da situação, como escolher a manobra a fazer? Representação das situações para cada manobra A cada momento, o comando deve saber as manobras possíveis e as manobras admissíveis As manobras admissíveis são aquelas que podem ser realmente escolhidas, levando em consideração observações anteriores e conhecimentos prévios
37
Táticas de Esquadrão: Manobras Ensaiadas
Como coordenar as Manobras? O Comandante baseado na situação, escolhe uma Manobra de um conjunto de Manobras Conhecidas Cada Manobra tem conhecimento dos Agentes e coordena suas ações através do Comandante As observações dos Agentes são repassadas para a Manobra pelo Comandante Ao iniciar uma Manobra, existe uma preparação da Manobra Quando a Manobra falhar ou o Comandante escolher por outra Manobra, a Manobra corrente deve ser abortada, permitindo que os Agentes não se percam no meio de uma Manobra
38
Táticas de Esquadrão: Manobras Ensaiadas
Conclusões Uma IA Centralizada permite a escolha e execução de manobras estilo-SWAT de forma autônoma, mesmo em cenários complexos O auxílio de IA Descentralizadas permite a execução destas manobras com maior realismo Mas a construção destes times exigem muito trabalho e tempo gasto para construir as manobras Outros elementos podem ainda ser acrescentados para situações mais complexas, como as especialidades de cada agente
39
Hierarquia de Decisão
40
Hierarquia de Decisão “Team-based AI” está cada vez mais sendo usada em jogos de 1ª e 3ª pessoa; É limitada a seqüências pré-definidas ou simples requisições de backup; A hierarquia de decisões permite a criação de algumas equipes muito convincentes que tomam decisões em tempo real;
41
Hierarquia de Decisão Toda equipe efetiva necessita de um bom comando hierárquico; Decisões devem ser feitas no nível mais alto e executadas pelos níveis inferiores; Os níveis inferiores são subordinados aos níveis superiores; Os níveis de comando devem ter comunicação efetiva;
42
Suporte a Decisão Um bom conjunto de rotinas de suporte a decisão é um elemento essencial para a criação de IA’s convincentes; Suporte a decisão é necessário em todos os níveis; Todos os níveis de comando precisam ter uma grande quantidade de informações a respeito do ambiente onde seus soldados e adversários estão;
43
Implementação As rotinas de suporte a decisão são os tijolos da implementação da IA; Como usar estes tijolos? - Escolha de uma estratégia; - Troca de mensagens; - Compartilhamento de informações; - Debugação; - etc...
44
Implementação - Escolhendo uma Estratégia -
O comandante terá uma certa quantidade de opções sempre que novas informações forem recebidas; As estratégias serão escolhidas de acordo com suas efetividades; Adicionando-se um elemento randômico de escolha de estratégias pode-se reduzir a possibilidade de previsões a medida que o jogador se familiariza com o jogo; A escolha randômica de estratégias também tem impacto no nível de dificuldade do jogo;
45
Implementação - Troca de Mensagens -
Trocas de mensagens são muito efetivas na implementação de “team-based AI”; O uso de mensagens na comunicação entre os diferentes níveis da hierarquia é uma maneira muito natural de passagem de ordens e informações; Os níveis superiores só precisam processar as informações quando alguma nova for recebida;
46
Implementação - Compartilhamento de Informações -
As ordens devem conter a quantidade de informações necessárias para que os níveis subordinados executem suas tarefas de forma efetiva; No caso em que a informação for de interesse para todos os níveis, o conteúdo desta pode ser compartilhada usando-se informações acessíveis globalmente; Informações globais não devem substituir as mensagens;
47
Implementação - Debugação -
Esta implementação permite que o programador armazene a troca de mensagens entre os níveis de comando; Todas as informações e decisões tomadas estão descritas no log; Permite descobrir de onde veio uma informação falsa ou que decisão foi um erro;
48
Exemplo - Manobra de Flanqueamento -
Situação: Suspeita-se que um adversário está numa sala que tem mais de uma porta, então o comandante dá a ordem para flanquear o adversário. Isto significa o capitão enviar uma tropa de soldados para diferentes portas e, quando todos estiverem prontos, dar a ordem de ataque. Processo de Decisão Estratégica: O trabalho do processo de decisão estratégica é checar se a manobra é possível e apropriada. Deve-se ter, pelo menos, duas portas e um soldado em cada porta. Caso contrário, a manobra de ser abortada. Organização da Manobra: O capitão organiza a manobra que já foi aprovada pelo nível estratégico (comandante) enviando soldados em tropas para as diferentes portas. Assim que cada soldado chega na sua porta, este envia uma mensagem ao capitão informando sua situação. Quando todos estiverem a postos, a ordem de ataque pode ser dada e a manobra estará completa.
49
Formações
50
Introdução O que é? Posicionamento conjunto
Sempre que houver um grupo movimentando-se ou agindo juntos, é necessário fazê-lo de forma inteligente. Um exército movimentando-se em uma determinada formação possui uma visualização interessante, mas não é só isso :-) 1 – Falar o conceito de formação: Fazer com que as unidades posicionem-se uma em relação as outras para formar um conjunto maior (exército) este exército tem o objetivo de aumentar a eficiência da realização da sua tarefa. 2 – Este posicionamento deve levar em conta a função de cada unidade (deve ser uma formação inteligente) 3 – portanto não deve ser apenas um efeito decorativo, a formação deve ter uma utilidade prática e interferir no gameplay.
51
Tipos de Formações Linha Coluna Cunha V
1 – As figuras mostram os tipos mais comuns de formações, herdados das operações militares 2 – A aviação contribuiu para que as formações passassem de 2D para 3D 3 – A direção da face das unidades também é importante: * Em algumas formações, como linha e coluna, todas as unidades estão voltadas para a mesma direção * Na formação de caixa ou círculo, as unidades podem estar voltadas para fora (defesa) ou para dentro (ataque) * nas formações de flanco, cunha ou V, ganha-se muito mais poder de ataque intercalando os campos de visão das unidades Caixa Flanco Esquerdo Flanco Direito
52
Quem vai primeiro? Misturar os tipos das unidades
Unidades mais fracas e com poder de fogo de longo alcance devem ficar atrás Unidades rápidas devem ir pelos flancos As unidades com maior poder defensivo devem ir na frente. Etc... Uma vez definido o tipo de formação, é necessário definir que tipo de unidade é ideal para ocupar cada posição.
53
Quem vai primeiro? Age of Empires II
54
Posicionando-se Que posição da formação cada unidade deve ocupar? 1 2
3 4 1 2 3 4 Depende do equilibrio: - unidades lentas deveriam apenas virar - determinadas unidades devem manter suas posições relativas perante o grupo Calcular a melhor posição para cada unidade baseado na menor distância é caro, O(N!). Solução: 1 – Ordene as unidades baseado na menor distância à posição mais próxima 2 – Percorra a lista atribuindo cada unidade à posição mais próxima que ainda não foi usada 1 2 3 4 4 3 2 1
55
Posicionando-se Ao mover as unidades para uma determinada formação, faz-se necessário evitar a colisão entre elas 1 – Traça-se um vetor, do centro das posições iniciais até o centro das posições finais, que é o vetor de movimentação 2 – Ordena-se as unidades pela distância ao vetor de movimentação 3 – Atribui cada posição da formação a unidade correspondente
56
No caminho... ...Havia uma pedra :-)
As unidades podem chegar fora de ordem na formação, e a sua posição já estar ocupada.
57
No caminho... ...Havia uma pedra :-) A unidade tem que contorná-la
As unidades podem chegar fora de ordem na formação, e a sua posição já estar ocupada.
58
No caminho... ...Havia uma pedra :-) As unidades tem que contorná-las
E perdem tempo... As unidades podem chegar fora de ordem na formação, e a sua posição já estar ocupada.
59
No caminho... ...Havia uma pedra :-) As unidades tem que contorná-las
E perdem tempo... ...mudando de posição na formação ? As unidades podem chegar fora de ordem na formação, e a sua posição já estar ocupada.
60
No caminho... ...Havia uma pedra :-) Solução:
Todas as unidades traçam caminhos para o centro da formação Quem chegar primeiro, ocupa a posição central As outras unidades que forem chegando, ocupam as próximas posições (isto depende da estratégia e do tipo das unidades também)
61
Espaçamento, níveis e... ...otras cositas más
A distância entre as posições da formação pode variar Uma formação em linha não pode crescer lateralmente sem limites... Determinadas formações exigem unidades em posições específicas 1 – A distância entre as unidades pode ser baseada no tamanho da maior unidade ou variar de acordo com cada uma 2 – Devem existir pontos de quebra da formação e criação de níveis (hierarquia) 3 – Algumas formações podem exigir que hajam dois arqueiros em cada lateral e tres cavaleiros na frente. Se uma destas unidades estiver faltando, sua posição poderá ser deixada vazia.
62
Movendo em formação E se as unidades precisarem mover-se já em formação para o seu destino? Tracejado 1: formação centralizada Tracejado 2: formação “linha frontal” Tracejado 3: formação na posição final
63
Movendo em formação Como calcular o caminho da formação?
Calcular o caminho para cada unidade é caro! Diferentes velocidades podem quebrar a integridade da formação 1 – Podemos calcular o caminho da unidade mais próxima do destino e aplicar à posição de cada unidade na formação para determinar o seu caminho. 2 – A solução é mover-se na velocidade da unidade mais lenta.
64
Mais duas pedras no caminho
Duas abordagens: 1 – Dividir a formação em partes menores e tentar contornar 2 – “Bagunçar” a formação, para que ela passe pelo obstáculo
65
Mais duas pedras no caminho
66
Mais duas pedras no caminho
67
Mais duas pedras no caminho
68
Mais duas pedras no caminho
69
Mais duas pedras no caminho
70
Conclusões Formações adicionam bastante a jogos de guerra (ou que exijam coordenação de movimentos) As formações interferem bastante no gameplay (principalmente se o jogador puder customizá-las :-) Podem ser bastante complexas, dependendo dos atributos das unidades, etc.
71
Referências AI Game Programming Wisdom, Steve Rabin et al, Charler River Media, Inc., seção 5 Influence Mapping Demo, Balancing automated behavior and human control in multi-agent systems: a case study in Roboflag,
Apresentações semelhantes
© 2025 SlidePlayer.com.br Inc.
All rights reserved.