Starcraft Brood War e a BWAPI

Slides:



Advertisements
Apresentações semelhantes
Projeto do jogo: Worms of Rome.
Advertisements

Tecnologia de Banco de Dados Grupo 3: Diógenes LíbanoElton S. Vianna Euglen AssisLisa Hayashida Marcelo da Cruz SalvadorRicardo Takemura Gerenciador de.
Rational Unified Process
Natanael (njsj) Thiago (tan2) Rodrigo (rml2)
Engenharia de Software
Iniciando na plataforma Eclipse
Criação de Páginas Web Criação de Páginas Web – KompoZer
Rational Unified Process(RUP)
Inteligência Artificial
Prof. José Minuncio Neto 1 FACULDADE DE ENGENHARIA INTRODUÇÃO À COMPUTAÇÃO Prof. José Minuncio Neto.
Implementação de Sistemas
TIPOS DE TESTES APLICÁVEIS E NÃO APLICÁVEIS AO PROJETO
Modelos de Processos de Software
UNIVERSIDADE ESTADUAL PAULISTA Júlio de Mesquita Filho Faculdade de Filosofia e Ciências – Campus de Marília Universidade Aberta à Terceira Idade Curso.
Aula 10: RSS. UNIVERSIDADE ESTADUAL PAULISTA “Júlio de Mesquita Filho”
Análise e Desenvolvimento de Sistemas
Liane Tarouco CINTED/UFRGS
Sistema de Informação Gerencial (SIG)
JAVA: Conceitos Iniciais
Engenharia de Software
Visão Geral PRO.NET.
Projeto de Sistemas de Informação
Gerenciamento de Configuração
Terceiro Seminário REDEPRO Evoluindo no modelo Fábrica de Software Dezembro 2005.
A Coordenação de Portais da STIC/UFRJ "Eu não me envergonho de corrigir os meus erros e mudar as minhas opiniões, porque não me envergonho de raciocinar.
Metolodogia de Desenvolvimento de Data Warehouse
O impacto dos MMORPGs na sociedade
1 © The Spider Team – PMI R.E.P. Global Nº ° Projeto com o Spider CPM - versão2 - Slides por Peter Mello, SpS Contribuições de Marcus Possi,
MVP Virtual Conference 2013
DEBIAN.
Gerência de Configuração - GC
Uso das Redes Sociais na Gestão
Análise e Projeto de Software CSTDS Profº. Henrique Vila Nova 1.
XIV Jornada de Cursos .NET com C# Antônio Júnior Bruno Inojosa.
Técnicas e Projeto de Sistemas
Agentes em Jogos. Equipe Renato Ferreira Renato Ferreira Saulo Pessoa Saulo Pessoa Jobson Ronan Jobson Ronan Guilherme Oliveira Guilherme Oliveira Henrique.
Professor: Márcio Amador
PSBD II Projeto de Sistemas de Banco de Dados II
Etapas do Projeto DC.IC.15 Data Revisão: 07/04/2017 Início Fim
AQUI ESTÁ SUA NOVA CONQUISTA
Evolução das Normas série ISO 9000
Teste de Software Conceitos iniciais.
S ISTEMA DE C ONTROLE DE V ERSÃO : B AZAAR Carolina Ramalho Priscilla Gonçalves.
Testes de Software AULA 02 Eduardo Silvestri
Como funciona a tabela? Bem, em relação à tabela do nosso bolão. Ela é bem simples e praticamente toda automática. Então vamos a alguns detalhes: PRINCIPAL.
Gestão de defeitos.
OMNeT++.
Fernando Rocha  Um jogo de estratégia pode ser visto como um simulador de guerra  Porém, jogos que são simuladores de guerra podem.
Técnicas e Projeto de Sistemas
UMA ESTRATÉGIA DE REDE NEURAL APLICADA À GAME ESTILO BEAT’EM UP Mendes,T.M. e Almeida, A.G. RESUMO O projeto consiste no desenvolvimento de um jogo 2D.
Integração de Ferramentas CASE
PROCESSO DE DESENVOLVIMENTO DE SOFTWARE AULA 5
O que são, quais existem e suas características.
Mini Curso.
Sistemas de Informação – mais que tecnologia Profa. Reane Franco Goulart.
Distribuição de Software Alexandre Vasconcelos © Centro de Informática Universidade Federal de Pernambuco.
Módulo III Analisando e Apresentando os Resultados.
Luiz Felipe Oliveira – SUNMP/MPACL
Agência Brazil com Z Agência Brazil com Z WEB 2.0 A Personalização da Internet.
FLUXO DE CAIXA PROGRAMADO EM MACRO
Gerenciamento de Configuração de Software
Equipe: Kéren Glaucya Marco Aurélio. INTRODUÇÃO  JCreator é um IDE, ou seja, é um Ambiente de Desenvolvimento Integrado, criado pela empresa Xinox Software.
APSI II Análise e Projeto de Sistemas de Banco de Dados II.
Gerenciamento de Escopo
XOOPS Samuel Redekop Thiago Meger de Mello. O que é XOOPS? XOOPS ou eXtensible Object Oriented Portal System é um gerenciador de conteúdo que tem a licença.
Desenvolvimento de Software I
1 Projeto Piloto Conclusão em Agenda Projeto Piloto –Descrição –Execução da aplicação –Implementação de requisitos funcionais e não- funcionais.
Faculdade de Tecnologia SENAC Pelotas/RS Curso Superior de Tecnologia em Redes de Computadores Projeto Integrador I Seminário Final Ferramenta Nessus e.
Prof. Hemerson Calabreze 1.  Dentro de uma garrafa, cheia de um líquido nutritivo, cai um micróbio. O micróbio se alimenta, cresce e se divide em dois.
Transcrição da apresentação:

Starcraft Brood War e a BWAPI Fernando Rocha

Jogos de Estratégia Um jogo de estratégia pode ser visto como um simulador de guerra Porém, jogos que são simuladores de guerra podem ser visto como: Jogos de primeira pessoa Jogos de estratégia

Jogos de Estratégia Podemos classificar os jogos de estratégia em três grupos Por turnos Civilization Em tempo real Starcraft Hibrido Rome Total War

Jogos de Estratégia em Tempo Real Ou em inglês Real Time Strategy – RTS Em um jogo RTS você assume o papel de um comandante Preocupações: Captação de recursos Construção de edificações Produção de novas unidades Defesa da própria base Atacar o inimigo Alianças

RTS

RTS A principal: Tudo acontece ao mesmo tempo!!!

RTS O que encontramos no jogo? Mapa Suas edificações e suas unidades Edificações e unidades inimigas Recursos Fog of war

RTS Estruturas Recursos Unidades Mini-Mapa

RTS Fog of War

RTS Qual a dificuldade do jogo? Como dito antes, tudo ocorre ao mesmo tempo! Durante um ataque é necessário continuar recolhendo recursos, verificando a necessidade de construir novas edificações, produzir novas unidades, existe o risco de ser atacado ao mesmo tempo,....

RTS Como vencer? Simples, aniquilação do inimigo! Basta matar todos os inimigos e destruir suas edificações

RTS

Estruturas Básicas de um RTS Centro de comando Principal edificação, constrói a unidade básica e recolhe recursos Barracas Produção de novas unidades Fábrica Produção de novas unidades blindadas Alojamento Disponibiliza mais espaço para a produção de unidades

Unidades Básicas de um RTS Operário Unidade básica capaz de recolher recursos e construir novas edificações Infantaria Unidades mais simples para ataque/defesa Artilharia Unidades com longo alcance de ataque Cavalaria/Blindados Unidades mais poderosas

Starcraft O jogo Produzido pela Blizzard Lançado para PC em 1998 A expansão Brood War foi lançada em 2000 Em 31 de março de 2013 a franquia completou 15 anos de sucesso Jogadores da Coréia do Sul chegam a ganhar patrocínio em campeonatos de disputa online

Personagens Raças Zergs Terrans Protoss

Zergs

Zergs Possui as unidades menos avançadas São as unidades mais baratas

Terrans

Terrans Raça mais balanceada Maior variedade de estratégias existentes Custo e tecnologia Maior variedade de estratégias existentes Algumas estruturas podem ser movidas

Protoss

Protoss A raça mais evoluída Alto custo na produção das unidades Necessita muito de Gás Vespene

Brood War Application Programming Interface API para interação com o jogo Permite o desenvolvimento de módulos de IA para o jogo com novos micro e macros algoritmos Por desativar a GUI, o usuário passa a ser um mero espectador do jogo A API foi desenvolvida com o intuito de evitar cheats Ao ativar alguma flag de cheat, todos os jogadores da partida são notificados Atualmente foi lançada a versão 4.0.0 beta, mas utilizaremos a versão anterior por ser mais estável (3.7.4)

A Importancia da BWAPI Permite a desenvolvedores, estudantes e pesquisadores testarem novas técnicas de IA em um ambiente altamente comercial Existem diversos estudos sobre diversas técnicas e áreas de pesquisa utilizando a BWAPI e StarCraft como ferramenta de validação Existem competições de módulos de IA, geralmente ocorrem em dezembro Em 2012, os organizadores conseguiram patrocinadores e com isso, prêmios em dinheiro foram distribuídos para os vencedores

BWAPI Documentação Não é difícil encontrar documentação e informações na web sobre como programar e instalar a BWAPI No próprio site da API encontramos documentação e alguns tutoriais de como proceder http://code.google.com/p/bwapi/ http://code.google.com/p/bwapi/wiki/BWAPIManual

Instalação Para realizar a instalação é necessário o Starcraft e sua expansão (Brood War) instalados na última versão disponível 1.16.1 Um compilador C/C++ (para versões mais novas do Visual Studio 2008, será necessário recompilar o código da BWAPI) Baixar a versão 3.7.4 e seguir os procedimentos do readme Basicamente é um instalador

Programação Olhando a documentação e os exemplos encontramos diversos detalhes da programação de um módulo de IA utilizando a BWAPI O módulo basicamente é baseado em eventos Então encontramos eventos para diversas situações Ex.: Quando um inimigo é encontrado Quando um jogo é iniciado A execução em cada frame Quando uma unidade é criada Etc.

Utilização A compilação de um módulo deverá gerar uma DLL que será copiada para o diretório bwapi-data/AI no diretório do Starcraft Deverá editar o arquivo bwapi.ini e configurar a IA para o módulo desenvolvido Executar o Chaoslaucher com o BWAPI Injector marcado Então deverá ser iniciada uma nova partida

Ideias de implementação Antes de começarem a desenvolver, pensem primeiro no que a sua IA deverá fazer Coloque no papel (entrega dia 12/07) Por exemplo: Como deverá ser realizado o ataque? Como deverá ser realizado a defesa? Como gerenciar/coletar os recursos?

Competição - Regras Primeira competição será utilizando a BWAPI em um mapa mais simples A segunda competição também será utilizando o BWAPI, porém usando um mapa mais completo

Datas Primeira entrega - 15/07 Segunda entrega - 02/08 Ideias da IA Segunda entrega - 02/08 Primeira competição Terceira entrega - 30/08 Segunda rodada de decisões da IA Competição final