<!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>Isofict: Toward Continuous Interactive Fiction</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Kaylah Facey</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Seth Cooper</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Northeastern University</institution>
          ,
          <addr-line>Boston, MA</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>It is common for interactive fiction to use parser-based interfaces, where users enter commands as free text, with discrete movement and actions. This can both limit the spatial possibilities of a game's world and be an intimidating interface for new players. Thus, we are developing Isofict, a system for interactive fiction that allows the player to move continuously through an updating textual world using a WASD- and mouse-based interface. We present our current progress implementing Isofict as a web-based Inform 7 extension and describe our experience porting two simple games. In the future we hope to compare to more standard parser-based systems.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;interactive fiction</kwd>
        <kwd>video games</kwd>
        <kwd>Inform 7</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Interactive fiction (IF) is an umbrella term for interactive
experiences expressed primarily through the use of text,
as opposed to graphics. There are many forms of
interactive fiction, but parser-based IF, which has an underlying
world model afected by typed commands, is the focus of
this work [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Though parser-based IF has an underlying
world model representing a physical space, that model is
still generally discrete; that is, there is no coordinate system
representing relative locations of objects. When a player
enters an area, regardless of its conceptual size, they generally
have full access to all objects it contains and are
unconstrained by distance or occluded visibility. In addition, they
immediately lose access to everything in the area they were
previously in. This is especially noticeable in games with
wide open spaces, where the author must choose between
either representing the space as one giant area where the
player can access objects that are described as far from each
other, or splitting the space into smaller areas where the
player loses access to objects that are very nearby.
Achieving a more realistic spatial representation requires the game
author to write special rules to override the default discrete
behaviour [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        Additionally, parser-based IF is based on a “command line”
interface (CLI) where players must figure out what to type,
in the way the parser understands, with minimal guidance.
While experienced players may be familiar with standard
verbs and synonyms used, such an interface can have a high
learning curve [
        <xref ref-type="bibr" rid="ref3 ref4 ref5 ref6">3, 4, 5, 6</xref>
        ], which may limit IF’s usability for
newcomers and reduce the number of players who get to
experience IF. Some parser-based IF has eliminated
“guessthe-verb” problems by providing a restricted list of verbs [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
Similarly, text-graphics hybrid games like those created for
SCUMM display static images of the game world, which is
interacted with by “constructing verbal commands” from a
provided list of verbs [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>
        Some works have explored ways to represent a discrete
world so that it feels more continuous. Seltani [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], an online
environment designed as a hypertext multi-user dungeon
(MUD) continually updates the description of its discrete
world as it changes. Text-based Multiplayer Shooter [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
is a command line MUD where players can in real-time
move around a standard discrete parser-based game map
and type “FIRE” to shoot at anyone in the same room as them.
Other existing works have experimented with combining a
fully rendered 3D world with text. 3DTextAdventure [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]
controls a fully rendered 3D world with WASD and parser
commands. The unreleased thesis project Text Quest [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]
appears to have a similar interaction style but renders its
3D world using the names of objects as their textures. The
academic game Façade [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] also renders a 3D world that
players interact with through arrow keys, mouse clicks, and
typed text. None of these has an available authoring system,
and their 3D worlds have to be precise enough for rendering,
a not-insignificant authoring burden.
      </p>
      <p>
        To attempt to expand the spatial possibilities of IF without
requiring full 3D rendering, we are developing an authoring
system for continuous interactive fiction , where the
underlying world model is represented on a 2D coordinate plane
with simple polygons. We are adapting Inform 7 to take
advantage of its popularity and detailed underlying world
model. We have developed the Isofict Inform 7 extension
and JavaScript library. The name was chosen for the term
“isovist”, which describes the visible region from a point in
space [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. We describe some of our progress on our
technical approach to developing the system and its interface,
and our experience “porting” two simple Inform 7 games to
Isofict . We find that for these two games, very little
modification is required to the Inform 7 source code to support the
new spatial model. In the future, we hope to have user
studies of both the playing and authoring interfaces of Isofict . We
aim to release Isofict to the Inform 7 community, along with
an original game designed from scratch to best showcase
Isofict ’s capabilities.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. System Overview</title>
      <p>
        The Isofict system uses an underlying 2D spatial model,
which allows the player to move continuously throughout
the world (currently using WASD to walk and turn). As the
player moves, the description of the world is continually
updated, based on where the player is looking and what
they can see (similarly to Seltani [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]). Players interact with
objects by clicking on hyperlinks. In addition to the text
output, a simple 2D top-down map, including the player
and their fields of vision, is included.
      </p>
      <p>Isofict is composed of an Inform 7 extension paired with a
JavaScript (JS) library. To integrate Inform 7 and JS, we use
Vorple [15], an Inform 7 interpreter that provides a
translation layer API between Inform 7 and JS. Vorple also provides</p>
      <p>HTML for rendering the game text and does not permit
accessing the game text directly. To change the display of the
game, it is necessary to interact with the rendered HTML
rather than with Vorple directly. The Isofict library and
extension are designed to work well with a primarily
mouseand WASD-based interface, and we have created one such
JS front-end.</p>
      <p>To update an Inform 7 game to use Isofict , the game author
must provide a JS file containing a JSON object that defines
the starting coordinates, polygon shapes, and heights of
game objects. It must also have the starting coordinates of
the player (“POV”) and the directions they can look in. In
addition, the Inform 7 code must be annotated with Isofict
keywords (see code with the case study Cloak of Darkness).</p>
      <sec id="sec-2-1">
        <title>2.1. JavaScript Library</title>
        <p>The JS library for Isofict provides functions for calculating
the visibility of 2D polygons plus height. Visibility is
calculated using the 2D raycasting algorithm described and
implemented in Haxe 3 by Red Blob Games [16]. We have
modified the code of the GitHub repository “2d-visibility”
by David Neilsen [17], which is a TypeScript fork of
“2dvisibility” by Cyril Silverman [18], itself a JS port of the
original Haxe 3. Our main changes are to support custom
view ranges (rather than 360° vision), and to add the 3D
visibility heuristic that objects may be occluded by anything
of equal height or taller. We chose to modify a 2D algorithm
over using true 3D visibility for simplicity of
implementation. The POV is a 2D point in space (without height),
with an angle of orientation and configurable fields of
vision relative to the orientation. For example, the “forward”
ifeld of vision may be a 90° wedge centered on the angle of
orientation. Objects that are visible in multiple directions
are only marked visible in the direction that includes the
greatest percentage of their edges. Each time the POV or
orientation changes, the visibility is recalculated.</p>
      </sec>
      <sec id="sec-2-2">
        <title>2.2. Inform 7 Extension</title>
        <p>The Isofict extension provides helper functions that interface
with the JS. In addition, the extension overrides the Inform 7
default world model to use the JS coordinate model instead.
Inform 7 authors can use the functions provided by the
Isofict extension rather than invoking JavaScript commands
directly.</p>
        <p>The Inform 7 extension is designed to work with a mouse.
For example, descriptions of game objects include clickable
links to commands like “EXAMINE” and “TAKE”.</p>
      </sec>
      <sec id="sec-2-3">
        <title>2.3. JavaScript Front-End</title>
        <p>We have implemented a simple JS front-end for Isofict using
the Svelte framework [19]. The front-end hides Vorple’s
mandatory text input box, requiring interaction through
WASD and mouse only. Hyperlinks are natively supported
by Vorple, and WASD is enabled by passing Isofict commands
to Inform 7 via Vorple.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Case Studies in Developing with</title>
    </sec>
    <sec id="sec-4">
      <title>Isofict</title>
      <p>To further refine Isofict and evaluate its usability, we have
modified two existing Inform 7 documentation games. Both
games use viewing angles for “forward”, “left”, and “right”
that each take up 90°.</p>
      <sec id="sec-4-1">
        <title>3.1. Stately Gardens</title>
        <p>
          As a proof-of-concept for Isofict , we re-implemented the
Inform 7 documentation example game Stately Gardens [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ],
a game about exploring a garden. Stately Gardens was
originally designed to demonstrate Inform 7 workarounds for
handling wide open spaces.
        </p>
        <p>In Stately Gardens, the player is free to explore an outdoor
garden divided into multiple Inform 7 “rooms”. A system of
custom Inform 7 rules makes large objects viewable from
outside the room they are in. The player can walk around
and look at things, but there is no objective or win condition.</p>
        <p>We have rewritten Stately Gardens from the ground up to
use Isofict . Using Isofict , we were able to exclude the special
code for viewing objects outside of the current room. For
simplicity, we omitted the few inventory objects. In the
resulting game, the player can move around the Stately
Gardens map, and visibility information is provided by Isofict ’s
JavaScript calculation instead of a system of Inform 7 rules
around sizes and distances. See Figure 1 for the beginning
of the game.</p>
      </sec>
      <sec id="sec-4-2">
        <title>3.2. Cloak of Darkness</title>
        <p>For our second case study, we wanted to evaluate how many
changes are needed to existing Inform 7 code to make it
compatible with Isofict . The game we chose to adapt is Cloak
of Darkness [20] (CoD), which is historically a game that has
been implemented in most new IF programming languages
and tools as the IF “Hello World” [21].</p>
        <p>In CoD, the player is able to walk around an opera house
consisting of three rooms. The “Bar” is initially dark, and
if the player stays too long in it, they damage a message
on the floor. When the black cloak the player is wearing is
left in the “Cloakroom”, the Bar becomes lit, and the player
can see the message. The game is won if the message is not
damaged.</p>
        <p>To adapt CoD, we again used the version from the Inform
7 documentation [22], but in this case rather than rewriting
the game from the ground up, we modified the existing code
as little as possible. We found that very little game-specific
modification was required, and the result is a fully playable
implementation of CoD using a coordinate system. While
modifying CoD, we further refined Isofict , as CoD makes use
of some Inform 7 default features that were not previously
implemented (namely, visibility in dark rooms and the use
of portable objects). We took advantage of the new world
model by changing the logic of the message in the Bar such
that the player must actually walk over it (using WASD) to
damage it. See Figure 2 for the key moments in a losing
game.</p>
        <p>The following code illustrates typical code changes
required to port CoD to Isofict . Code removals are tagged with
‘-’, and additions are tagged with ‘+’. Unchanged code is</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>4. Discussion</title>
      <p>
        We are encouraged by the relatively little game-specific code
required to port an existing game to Isofict . After defining
game objects in the JavaScript coordinate system, an author
mainly only needs to do basic tagging of their Inform 7
code to allow it to use the extension. In the future, we will
remove the requirement to define game objects in JavaScript
by providing Inform 7 commands to create objects in the
coordinate system. In addition, we intend to refine Isofict
parser commands to facilitate including the option to toggle
between mouse-based input and command line input to
support users’ preferences or accessibility needs [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>The current version of Isofict does not yet support all
features of Inform 7. We are continuing to improve the
handling of portable items, as well as support for supporters,
containers, and objects that form a part of other objects.</p>
      <p>There are also some particularly notable limitations to
the coordinate system. Most obviously, it doesn’t support
true 3D visibility, which is the most disruptive in situations
involving small objects. For instance, if multiple small
objects of the same height are in a row along the player’s
orientation angle, only the front-most will be visible, even
when the game author might expect the player to be able
to see all of them. Similarly, there is not currently a good
way to represent objects on top of other objects or objects
that “float”, such as tabletops. Objects with a height occlude
the entire area under them. To handle these cases, Isofict ’s
visibility system could be improved with more sophisticated
height handling heuristics, or it could transition to true 3D
raycasting for simple 3D objects.</p>
      <p>Another limitation of Isofict is the field of view system,
where objects are only marked visible in one direction. In
practice, this can cause confusion when objects are placed
into non-intuitive directions. For example, when facing an
object that is very close, its front view contains a much
smaller part of the visible object than is visible in the
periphery. Though a player would expect it to be placed in the
“forward” view, it is instead added to the “right” or “left”. To
handle this, Isofict could incorporate information on how
close objects are when making visibility calculations.</p>
      <p>Development of Isofict has often been hindered by the
need to override the default behaviours of Inform 7 and the
Vorple interpreter. Inform 7’s rules for when objects are
and are not available (“scoping” and “reachability” rules) are
not easily surfaced or replaced. Vorple, on the other hand,
directly updates HTML, making it challenging to replace
the front-end.</p>
      <p>Although we initially intended to make the player
interface text-only, during development we found that it could be
dificult to play the game without the 2D map. However, we
would like to improve Isofict such that the text description
of the world would be enough for the player to navigate.</p>
      <p>We would like to investigate the efect of Isofict on the
player experience. We hope that players will find the
changed visibility system more immersive without being
frustrating. We would also like to explore the impact of
including the 2D overhead map, or not, on the player
experience.</p>
      <p>We also intend to investigate Isofict ’s efect on game
authoring. We hope to see entirely new spatial mechanics
that form the basis of games with fine-grained coordinate
models, but we also hypothesize that for most games, it
does not make sense to create a coordinate model for every
object. We look forward to seeing Isofict used in a hybrid
manner to create spatial sections of games or to address
movement or visibility needs in a coarse-grained fashion.
For example, most objects could be part of discrete rooms as
usual, while the visibility of landmarks could be addressed
via the visibility system.</p>
    </sec>
    <sec id="sec-6">
      <title>5. Conclusion</title>
      <p>Some interactive fiction is designed to represent an
underlying 3D world; however, existing tools like Inform 7 support
a more discrete than continuous spatial representation. To
enable more realistic visibility where there are wide open
spaces or objects that can be interacted with from other
rooms, game authors must write ad-hoc rules to handle
their use cases.</p>
      <p>To address the desire for more continuous spaces and
realistic visibility in parser-based IF, we have developed
an Inform 7 extension and JavaScript library, Isofict , that
provides a coordinate-based world model and visibility
system that allows Inform 7 games to request the visibility of
objects in the coordinate system based on the location and
orientation of the player. After using Isofict to modify two
existing Inform 7 example games as case studies, we find
that little game-specific code is needed.</p>
      <p>We plan to conduct a user study to get feedback on the
experience of playing an Inform 7 game that uses Isofict . In
addition, we intend to refine the Isofict extension to even
more easily integrate into existing Inform 7 games. We also
plan to improve the visibility heuristics and 3D processing.
To showcase the capabilities of Isofict , in addition to the
case studies described here, we will release an original game
using it. We will then release Isofict as a public extension and
solicit feedback from game authors on how well it serves
their needs.</p>
    </sec>
    <sec id="sec-7">
      <title>Acknowledgements</title>
      <p>We would like to thank Chris Martens for their contribution
to the ideation of the design of this system.
analysis of architectural space, Environment and
Planning B: Planning and design 28 (2001) 103–121.
[15] J. Leinonen, Vorple, https://vorple-if .com, 2012.
Accessed: 2024-08-30.
[16] R. B. Games, 2d visibility, https://
www.redblobgames.com/articles/visibility/, 2020.</p>
      <p>Accessed: 2024-08-30.
[17] D. Neilsen, Petah/2d-visibility, https://github.com/</p>
      <p>Petah/2d-visibility, 2019. Accessed: 2024-08-30.
[18] C. Silverman, Silverwolf90/2d-visibility,
https://github.com/Silverwolf90/2d-visibility,
2016. Accessed: 2024-08-30.
[19] R. Harris, Svelte, https://svelte.dev/, 2016. Accessed:
2024-08-30.
[20] R. Firth, The “Cloak of Darkness” specification,
https://web.archive.org/web/20190916101552/http:
//www.firthworks .com/roger/cloak/, 2002. Accessed:
2024-08-30.
[21] IFWiki, Cloak of Darkness, https://www.ifwiki.org/</p>
      <p>Cloak_of _Darkness, 2022. Accessed: 2024-08-30.
[22] G. Nelson, Cloak of Darkness, Game [Inform 7], 2022.</p>
      <p>URL: https://github.com/ganelson/inform-website/
blob/main/docs/book/WI_17_2.html, accessed:
202408-30.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <article-title>[1] IFWiki, Parser-based interactive fiction</article-title>
          , https: //www.ifwiki.org/Parser-based_interactive_fiction,
          <year>2022</year>
          . Accessed:
          <fpage>2024</fpage>
          -08-30.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>G.</given-names>
            <surname>Nelson</surname>
          </string-name>
          , Stately Gardens,
          <source>Game [Inform 7]</source>
          ,
          <year>2022</year>
          . URL: https://ganelson.github.io/inform-website/book/ WI_18_
          <fpage>29</fpage>
          .html, accessed:
          <fpage>2024</fpage>
          -08-30.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Heron</surname>
          </string-name>
          ,
          <article-title>A case study into the accessibility of textparser based interaction</article-title>
          ,
          <source>in: Proceedings of the 7th ACM SIGCHI symposium on engineering interactive computing systems</source>
          ,
          <year>2015</year>
          , pp.
          <fpage>74</fpage>
          -
          <lpage>83</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Feizi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. Y.</given-names>
            <surname>Wong</surname>
          </string-name>
          ,
          <article-title>Usability of user interface styles for learning a graphical software application</article-title>
          ,
          <source>in: 2012 International Conference on Computer Information Science (ICCIS)</source>
          , volume
          <volume>2</volume>
          ,
          <year>2012</year>
          , pp.
          <fpage>1089</fpage>
          -
          <lpage>1094</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>T.</given-names>
            <surname>Fellmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Kavakli</surname>
          </string-name>
          , et al.,
          <article-title>A command line interface versus a graphical user interface in coding vr systems</article-title>
          ,
          <source>in: Proceedings of Second IASTED International Conference on Human Computer Interaction</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>E.</given-names>
            <surname>Dillon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Anderson-Herzog</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Brown, Studying the novice's perception of visual vs. command line programming tools in cs1</article-title>
          ,
          <source>in: Proceedings of the Human Factors and Ergonomics Society Annual Meeting</source>
          , volume
          <volume>56</volume>
          ,
          <string-name>
            <given-names>SAGE</given-names>
            <surname>Publications Sage</surname>
          </string-name>
          <string-name>
            <surname>CA</surname>
          </string-name>
          : Los Angeles, CA,
          <year>2012</year>
          , pp.
          <fpage>605</fpage>
          -
          <lpage>609</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>E.</given-names>
            <surname>Short</surname>
          </string-name>
          ,
          <article-title>If only: Text adventures for people who hate guessing the verb</article-title>
          ,
          <source>Rock Paper Shotgun</source>
          (
          <year>2016</year>
          ). URL: https://www.rockpapershotgun.
          <article-title>com/if-only-textadventures-for-people-who-hate-guessing-the-verb</article-title>
          , accessed:
          <fpage>2024</fpage>
          -08-30.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M. L.</given-names>
            <surname>Black</surname>
          </string-name>
          ,
          <article-title>Narrative and spatial form in digital media: A platform study of the scumm engine and ron gilbert's the secret of monkey island</article-title>
          ,
          <source>Games and Culture</source>
          <volume>7</volume>
          (
          <year>2012</year>
          )
          <fpage>209</fpage>
          -
          <lpage>237</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A.</given-names>
            <surname>Plotkin</surname>
          </string-name>
          , Seltani, Game [Web],
          <year>2015</year>
          . URL: https:// seltani.net, accessed:
          <fpage>2024</fpage>
          -08-30.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>E.</given-names>
            <surname>Lenk</surname>
          </string-name>
          ,
          <article-title>Text-based Multiplayer Shooter</article-title>
          , Game [Web],
          <year>2012</year>
          . URL: http://eigen.pri.ee/shooter/, accessed:
          <fpage>2024</fpage>
          - 08-30.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11] auspaco, 3DTextAdventure, Game [PC],
          <year>2014</year>
          . URL: https://www.indiedb.com/games/3dtextadventure, accessed:
          <fpage>2024</fpage>
          -08-30.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>S.</given-names>
            <surname>Robinson</surname>
          </string-name>
          ,
          <article-title>Grad student's thesis, text quest, headed to steam, The Media School (</article-title>
          <year>2015</year>
          ). URL: https://mediaschool.indiana.edu/news-events/ news/item.html
          <article-title>?n=grad-students-thesis-text-questheaded-to-steam</article-title>
          , accessed:
          <fpage>2024</fpage>
          -08-30.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M.</given-names>
            <surname>Mateas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Stern</surname>
          </string-name>
          ,
          <string-name>
            <surname>Façade:</surname>
          </string-name>
          <article-title>An experiment in building a fully-realized interactive drama</article-title>
          , in: Game developers conference, volume
          <volume>2</volume>
          ,
          <string-name>
            <surname>Citeseer</surname>
          </string-name>
          ,
          <year>2003</year>
          , pp.
          <fpage>4</fpage>
          -
          <lpage>8</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>A.</given-names>
            <surname>Turner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Doxa</surname>
          </string-name>
          ,
          <string-name>
            <surname>D. O'Sullivan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Penn</surname>
          </string-name>
          ,
          <article-title>From isovists to visibility graphs: a methodology for the</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>