BhTSL, behavior trees specification and processing
| Autor(a) principal: | |
|---|---|
| Data de Publicação: | 2020 |
| Outros Autores: | , , , |
| Idioma: | eng |
| Título da fonte: | Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| Texto Completo: | http://hdl.handle.net/1822/71247 |
Resumo: | In the context of game development, there is always the need for describing behaviors for various entities, whether NPCs or even the world itself. That need requires a formalism to describe properly such behaviors. As the gaming industry has been growing, many approaches were proposed. First, finite state machines were used and evolved to hierarchical state machines. As that formalism was not enough, a more powerful concept appeared. Instead of using states for describing behaviors, people started to use tasks. This concept was incorporated in behavior trees. This paper focuses in the specification and processing of Behavior Trees. A DSL designed for that purpose will be introduced. It will also be discussed a generator that produces LATEX diagrams to document the trees, and a Python module to implement the behavior described. Additionally, a simulator will be presented. These achievements will be illustrated using a concrete game as a case study. |
| id |
RCAP_9005a60a82873a7a1b24fa2391b2599b |
|---|---|
| oai_identifier_str |
oai:repositorium.sdum.uminho.pt:1822/71247 |
| network_acronym_str |
RCAP |
| network_name_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository_id_str |
https://opendoar.ac.uk/repository/7160 |
| spelling |
BhTSL, behavior trees specification and processingBehavior trees (BT)Code generationDSLGame developmentNPCCiências Naturais::Ciências da Computação e da InformaçãoIn the context of game development, there is always the need for describing behaviors for various entities, whether NPCs or even the world itself. That need requires a formalism to describe properly such behaviors. As the gaming industry has been growing, many approaches were proposed. First, finite state machines were used and evolved to hierarchical state machines. As that formalism was not enough, a more powerful concept appeared. Instead of using states for describing behaviors, people started to use tasks. This concept was incorporated in behavior trees. This paper focuses in the specification and processing of Behavior Trees. A DSL designed for that purpose will be introduced. It will also be discussed a generator that produces LATEX diagrams to document the trees, and a Python module to implement the behavior described. Additionally, a simulator will be presented. These achievements will be illustrated using a concrete game as a case study.This work has been supported by FCT–Fundação para a Ciência e Tecnologia within the R&D Units Project Scope: UIDB/00319/2020.Schloss Dagstuhl – Leibniz-Zentrum für Informatik GmbHUniversidade do MinhoOliveira, MiguelSilva, Pedro MimosoMoura, PedroAlmeida, J. J.Henriques, Pedro Rangel20202020-01-01T00:00:00Zconference paperinfo:eu-repo/semantics/publishedVersionapplication/pdfhttp://hdl.handle.net/1822/71247eng97839597716582190-680710.4230/OASIcs.SLATE.2020.4https://drops.dagstuhl.de/opus/volltexte/2020/13017info:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2024-05-11T05:18:49Zoai:repositorium.sdum.uminho.pt:1822/71247Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-28T15:14:25.804334Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse |
| dc.title.none.fl_str_mv |
BhTSL, behavior trees specification and processing |
| title |
BhTSL, behavior trees specification and processing |
| spellingShingle |
BhTSL, behavior trees specification and processing Oliveira, Miguel Behavior trees (BT) Code generation DSL Game development NPC Ciências Naturais::Ciências da Computação e da Informação |
| title_short |
BhTSL, behavior trees specification and processing |
| title_full |
BhTSL, behavior trees specification and processing |
| title_fullStr |
BhTSL, behavior trees specification and processing |
| title_full_unstemmed |
BhTSL, behavior trees specification and processing |
| title_sort |
BhTSL, behavior trees specification and processing |
| author |
Oliveira, Miguel |
| author_facet |
Oliveira, Miguel Silva, Pedro Mimoso Moura, Pedro Almeida, J. J. Henriques, Pedro Rangel |
| author_role |
author |
| author2 |
Silva, Pedro Mimoso Moura, Pedro Almeida, J. J. Henriques, Pedro Rangel |
| author2_role |
author author author author |
| dc.contributor.none.fl_str_mv |
Universidade do Minho |
| dc.contributor.author.fl_str_mv |
Oliveira, Miguel Silva, Pedro Mimoso Moura, Pedro Almeida, J. J. Henriques, Pedro Rangel |
| dc.subject.por.fl_str_mv |
Behavior trees (BT) Code generation DSL Game development NPC Ciências Naturais::Ciências da Computação e da Informação |
| topic |
Behavior trees (BT) Code generation DSL Game development NPC Ciências Naturais::Ciências da Computação e da Informação |
| description |
In the context of game development, there is always the need for describing behaviors for various entities, whether NPCs or even the world itself. That need requires a formalism to describe properly such behaviors. As the gaming industry has been growing, many approaches were proposed. First, finite state machines were used and evolved to hierarchical state machines. As that formalism was not enough, a more powerful concept appeared. Instead of using states for describing behaviors, people started to use tasks. This concept was incorporated in behavior trees. This paper focuses in the specification and processing of Behavior Trees. A DSL designed for that purpose will be introduced. It will also be discussed a generator that produces LATEX diagrams to document the trees, and a Python module to implement the behavior described. Additionally, a simulator will be presented. These achievements will be illustrated using a concrete game as a case study. |
| publishDate |
2020 |
| dc.date.none.fl_str_mv |
2020 2020-01-01T00:00:00Z |
| dc.type.driver.fl_str_mv |
conference paper |
| dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
| status_str |
publishedVersion |
| dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/1822/71247 |
| url |
http://hdl.handle.net/1822/71247 |
| dc.language.iso.fl_str_mv |
eng |
| language |
eng |
| dc.relation.none.fl_str_mv |
9783959771658 2190-6807 10.4230/OASIcs.SLATE.2020.4 https://drops.dagstuhl.de/opus/volltexte/2020/13017 |
| dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
| eu_rights_str_mv |
openAccess |
| dc.format.none.fl_str_mv |
application/pdf |
| dc.publisher.none.fl_str_mv |
Schloss Dagstuhl – Leibniz-Zentrum für Informatik GmbH |
| publisher.none.fl_str_mv |
Schloss Dagstuhl – Leibniz-Zentrum für Informatik GmbH |
| dc.source.none.fl_str_mv |
reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia instacron:RCAAP |
| instname_str |
FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| instacron_str |
RCAAP |
| institution |
RCAAP |
| reponame_str |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| collection |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) |
| repository.name.fl_str_mv |
Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia |
| repository.mail.fl_str_mv |
info@rcaap.pt |
| _version_ |
1833595187747618816 |