<?xml version="1.0" encoding="UTF-8"?>
<OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd">
  <responseDate>2026-07-22T07:15:40Z</responseDate>
  <request identifier="13017" metadataPrefix="oai_dc" verb="GetRecord">https://drops.dagstuhl.de/oai</request>
  <GetRecord>
    <record>
      <header>
        <identifier>oai:drops-oai.dagstuhl.de:13017</identifier>
        <datestamp>2024-03-06T10:31:02Z</datestamp>
        <setSpec>ddc:004</setSpec>
        <setSpec>open_access</setSpec>
      </header>
      <metadata>
        <oai_dc:dc xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd">
          <dc:title>BhTSL, Behavior Trees Specification and Processing</dc:title>
          <dc:creator>Oliveira, Miguel</dc:creator>
          <dc:creator>Silva, Pedro Mimoso</dc:creator>
          <dc:creator>Moura, Pedro</dc:creator>
          <dc:creator>Almeida, José João</dc:creator>
          <dc:creator>Henriques, Pedro Rangel</dc:creator>
          <dc:subject>Game development</dc:subject>
          <dc:subject>Behavior trees (BT)</dc:subject>
          <dc:subject>NPC</dc:subject>
          <dc:subject>DSL</dc:subject>
          <dc:subject>Code generation</dc:subject>
          <dc: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.</dc:description>
          <dc:publisher>Schloss Dagstuhl – Leibniz-Zentrum für Informatik</dc:publisher>
          <dc:contributor>Miguel Oliveira and Pedro Mimoso Silva and Pedro Moura and José João Almeida and Pedro Rangel Henriques</dc:contributor>
          <dc:date>2020</dc:date>
          <dc:relation>Is Part Of OASIcs, Volume 83, 9th Symposium on Languages, Applications and Technologies (SLATE 2020)</dc:relation>
          <dc:type>InProceedings</dc:type>
          <dc:type>Text</dc:type>
          <dc:type>doc-type:ResearchArticle</dc:type>
          <dc:type>publishedVersion</dc:type>
          <dc:format>application/pdf</dc:format>
          <dc:identifier>doi:10.4230/OASIcs.SLATE.2020.4</dc:identifier>
          <dc:identifier>urn:nbn:de:0030-drops-130174</dc:identifier>
          <dc:identifier>https://drops.dagstuhl.de/entities/document/10.4230/OASIcs.SLATE.2020.4</dc:identifier>
          <dc:language>eng</dc:language>
          <dc:rights>https://creativecommons.org/licenses/by/3.0/legalcode</dc:rights>
        </oai_dc:dc>
      </metadata>
    </record>
  </GetRecord>
</OAI-PMH>
