A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Movimentação Tática em Jogos de Guerra

Apresentações semelhantes


Apresentação em tema: "Movimentação Tática em Jogos de Guerra"— Transcrição da apresentação:

1 Movimentação Tática em Jogos de Guerra
Equipe: Cláudio Sasaki Ivo Frazão Lucas Loureiro Luiz Nunes Mauro Vieira Tiago Barros

2

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,


Carregar ppt "Movimentação Tática em Jogos de Guerra"

Apresentações semelhantes


Anúncios Google