<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>VISAB - a visualization tool for CBR agent behavior in games</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Moritz Fr¨ohlich</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Leon R¨omer</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Vanessa Schriefer</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Tim Kunold</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marcel Gaal</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Pascal Reuss</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Klaus-Dieter Althoff</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>German Research Center for Artificial Intelligence Kaiserslautern</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Institute of Computer Science, Intelligent Information Systems Lab University of Hildesheim</institution>
          ,
          <addr-line>Hildesheim</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>VISAB (VISualizing Agent Behavior) is an open-source program that is capable of receiving, analyzing and visualizing game and agent specific data of video games.12 The first version was developed last year [1]. The new version of VISAB provides a generalized communication interface in form of a HTTP-Protocol based Web API. This API acts as a server, to which games communicate their data. To achieve scalability, incoming data is delegated in an event-based manner to the processing modules. Unity games [5] may use the VISABConnector library which provides a C# interface to the API. VISABs HTTP-API is theoretically capable of receiving requests from K different machines each running mkn instances of one of the N games supported by VISAB. For each of these visualizer instances views may be opened concurrently. To provide a meaningful overview of the transmission sessions handled by the HTTP-API, a session overview displays general as well as session-specific information in separated UI elements. Each of these session elements provides the functionality to cancel it directly from VISAB side or to open the visualizers that are dynamically filled with live data from the active session. VISABs core feature is directly accessible from the home view through a file-explorer-style control which lists the available game data files. Upon button click, the game-specific visualizer views of the selected file are loaded. VISAB currently supports ”CBRShooter” [4][3] which is a real-time game and ”Settlers of Catan” [2] as a round-based game.. Despite their different categories regarding their previously elaborated nature of communication frequency, both games feature the same set of visualizers to provide information to the user. We believe that the views for these games may 1 Source code: https://github.com/VISAB-ORG/VISAB 2 Video: https://www.youtube.com/watch?v=znG2ZtcAfqA</p>
      </abstract>
      <kwd-group>
        <kwd>Case-based Reasoning</kwd>
        <kwd>Software Agents</kwd>
        <kwd>Computer Games</kwd>
        <kwd>Visualization</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>The VISAB tool
serve as an extendable blueprint for other games as well. Each of the
gamespecific views relies on the same data source, either from a saved file or from an
active transmission session.</p>
      <p>Having multiple views on the same data ensures sophisticated interpretation,
each of which can highlight information differently. To achieve a highly useful
illustration of the underlying data, VISAB currently contains three different
visualizers with their respective that are adapted for both games: a metadata
view, a statistics view, and a replay view. The first view type shows overall
metadata related to the currently processed file or transmission session such as
a list of players or the available items. The second view type displays important
information both aggregated over the entire file as well as for game-specific logical
steps. And the last view makes use of real asset visuals of the respective games
and allows the user to re-watch the game flow and help to understand decisions
made by the participating agents.</p>
      <p>A dedicated workspace serves as the central point of persistence for data
that is used and produced by VISAB. This includes the game data files that
are generated by the transmission sessions of games sending their information
to VISAB, a settings file as well as the applications log files.</p>
      <p>Furthermore, VISAB also allows users to define their own settings. These
settings determine the UI theme or modify allowed games for initiating
transmission sessions with the HTTP-API. VISAB is designed to be easily extensible
for new games according to a developer’s needs. By making use of a
reflectionbased approach that creates instances of game-specific implementations for the
relevant types at runtime based on a JSON config file. This assures that existing
code does not need to be modified when the necessity of another visualizer arises.
After the implementation of a new visualizer is accomplished, it only has to be
added to the above-mentioned config file to be integrated for visualization.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Bartels</surname>
            ,
            <given-names>J.J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Viefhaus</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yasrebi-Soppa</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Reuß</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Althoff</surname>
          </string-name>
          , K.D.:
          <article-title>Visualizing the behaviour of cbr agents in a fps scenario</article-title>
          . In: Trabold,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Welke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Piatkowski</surname>
          </string-name>
          , N. (eds.) Lernen, Wissen, Daten, Analysen. GI-Workshop-Tage ”Lernen, Wissen, Daten, Analysen” (LWDA-
          <year>2020</year>
          ), September 9-11, Online. pp.
          <fpage>130</fpage>
          -
          <lpage>141</lpage>
          . CEUR (
          <year>2020</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2. CatanGmbH:
          <article-title>Settlers of catan overview (</article-title>
          <year>2021</year>
          ), https://www.catan.com/game/ catan
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Kolbe</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Reuss</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schoenborn</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , Althoff, K.D.:
          <article-title>Conceptualization and implementation of a reinforcement learning approach using a case-based reasoning agent in a fps scenario</article-title>
          .
          <source>In: CEUR LWDA 2019 Workshop Proceedings 2454. CEUR</source>
          (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Reuss</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hillmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Viefhaus</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Althoff</surname>
          </string-name>
          , K.D.:
          <article-title>Case-based action planning in a first person scenario game</article-title>
          . In: Gemulla,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Ponzetto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Bizer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Keuper</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Stuckenschmidt</surname>
          </string-name>
          , H. (eds.) LWDA 2018 - Lernen, Wissen, Daten, Analysen - Workshop
          <string-name>
            <surname>Proceedings</surname>
          </string-name>
          . GI-Workshop-Tage ”Lernen, Wissen, Daten, Analysen” (
          <issue>LWDA2018</issue>
          ),
          <year>August</year>
          22-24, Mannheim, Germany. Universit¨at Mannheim (8
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. UnityTechnologies:
          <article-title>Unity 3d overview (</article-title>
          <year>2021</year>
          ), https://unity.com
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>