![Page 1: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/1.jpg)
Commander Assembler
Uma Fábrica de Jogos de RPG Táticos Utilizando Linguagens de Domínio Específico
Por: Eduardo Wagner
![Page 2: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/2.jpg)
Commander Assembler
Roteiro
• Introdução• Técnicas de Análise de Domínio• O Domínio dos Jogos RPGT• Commander Assembler Language• Commander Assembler Engine• Demo• Considerações Finais e Trabalhos Futuros
![Page 3: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/3.jpg)
Commander Assembler
Introdução
• Industria de jogos– Uma da mais lucrativas do mundo– Grandes Desafios– “Industrialização” do processo de
desenvolvimento– Migração do processo artesanal para o fabril
![Page 4: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/4.jpg)
Commander Assembler
Processo Artesanal
• Trabalho intensivamente “manual”• Ferramentas (linguagens) genéricas• Processos genéricos• Um tipo de aplicação por vez• Feito a mão do zero• Pouco ou nenhum reuso
![Page 5: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/5.jpg)
Commander Assembler
Processo Fabril
• Objetiva aumentar o nível de abstração do desenvolvimento
• Linhas de Produção• Automação• Reuso
![Page 6: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/6.jpg)
Commander Assembler
Técnicas de Análise de Domínio
• A Atividade de identificar objetos e operações de uma classe de sistemas similares em um domínio particular de problemas
• Reuso da análise e design, não do código• Tornar a informação acessível• Identificar características comuns e variáveis
![Page 7: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/7.jpg)
Commander Assembler
Feature-Oriented Domain Analysis - FODA
• Baseado nas funcionalidades• Feature-Model• Abstração, generalização e parametrização
![Page 8: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/8.jpg)
Commander Assembler
O Domínio dos Jogos de RPG Táticos
RPG Estratégia RPGT
![Page 9: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/9.jpg)
Commander Assembler
Jogos Analisados
• UFO: Enemy Unknown™• Final Fantasy Tactics™• Front Mission 3™• Vandal Hearts 2™• Vanguard Bandist™• Suikoden Tactics ™ (validação)
![Page 10: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/10.jpg)
Commander Assembler
Feature ModelX
![Page 11: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/11.jpg)
Commander Assembler
Feature Model
![Page 12: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/12.jpg)
Commander Assembler
Feature Model
![Page 13: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/13.jpg)
Commander Assembler
Modelo E-R
RPGT Game
Has Screen
MiscellaneousIn-GameMenuSquad Deployment
Has
Map Has Tile
Has
Team PlayerItem
Unit
HasHas
Has
Skill
![Page 14: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/14.jpg)
Commander Assembler
Criação da Fábrica
• Criação da Linguagem Visual
• Criação/Reutilização de um framework
• Criação do gerador de código
![Page 15: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/15.jpg)
Commander Assembler
Criação da Linguagem
• Microsoft Tools for Domain-Specific Languages – DSL Tools– Modelo do Domínio– Notação– Integração– Geração– Serialização
Diagrama
Toolbox
Property Editor
Model Explorer
Validação
![Page 16: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/16.jpg)
Commander Assembler
Criação do Framework
• XNA 3.0• Renderização 2.5D (isométrica)– Gerenciador de Estados– Gerenciador de Entidades– Mapa Isométrico– Gerenciador de Batalhas
• Gerenciador de Movimentação• Gerenciador de Ações
– Biblioteca de Componentes Gráficos
![Page 17: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/17.jpg)
Commander Assembler
Demo
![Page 18: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/18.jpg)
Commander Assembler
Considerações Finais
• Fábricas de software– Custo de construção muito alto– Aumento da performance– Diminuição dos erros– Nivelamento do conhecimento
![Page 19: Introdução Técnicas de Análise de Domínio O Domínio dos Jogos RPGT Commander Assembler Language Commander Assembler Engine Demo Considerações Finais e](https://reader036.vdocuments.mx/reader036/viewer/2022062303/552fc134497959413d8d8247/html5/thumbnails/19.jpg)
Commander Assembler
Trabalhos Futuros
• IA• Comunicação• Gráficos 3D• Itens e Eventos• Experiência e lvls• Integração com o Content Pipeline• Suportar novas funcionalidades