Difference between revisions of "SCI/FreeSCI/Pathfinding/Semantics"

Jump to navigation Jump to search
m
Fixed broken link, the SVN no longer exists. Replaced by equivalent darcsweb link
(Linkify and formatting fixes)
m (Fixed broken link, the SVN no longer exists. Replaced by equivalent darcsweb link)
Line 1: Line 1:
=Semantics=
=Semantics=
As the patent is not very precise when it comes to semantics, we performed a series of tests to get a more accurate picture of Sierra's implementation. The AvoidPath stub <ref>L. Skovlund, C. Reichenbach. FreeSCI source code file kpathing.c, revision 1505, http://svn.a-eskwadraat.nl/wsvn/FreeSCI/freesci/branches/glutton/src/engine/kpathing.c?op=file&rev=1505&sc=0, 2002.</ref> mentions an additional containment test sub-function and a fourth polygon type that the patent does not mention. We had to determine the semantics of those as well. It was also unclear how AvoidPath is used for the SCI0-style keyboard support still present in SCI1 games.
As the patent is not very precise when it comes to semantics, we performed a series of tests to get a more accurate picture of Sierra's implementation. The AvoidPath stub <ref>L. Skovlund, C. Reichenbach. [http://void.cs.colorado.edu/cgi-bin/darcsweb.cgi?r=glutton;a=annotate_shade;f=src/engine/kpathing.c;h=20060112110944-1d31d-bd1fe26096a4d42bb370ce141858acff61d5949a.gz FreeSCI source code file kpathing.c, revision 1505], 2002.</ref> mentions an additional containment test sub-function and a fourth polygon type that the patent does not mention. We had to determine the semantics of those as well. It was also unclear how AvoidPath is used for the SCI0-style keyboard support still present in SCI1 games.


We performed most of the tests with the <tt>experimentator</tt> tool, developed by Christoph Reichenbach. This tool takes a polygon set description in text format, and transforms it into an SCI program that can be run both with Sierra SCI and with FreeSCI. The program draws the polygon set on the display and allows the user to select a start and destination point. It then calls AvoidPath and draws the returned path on the display. This has proven to be invaluable for discovering the semantics of AvoidPath. We used slightly modified versions of this tool for experimenting with the containment test sub-function and keyboard support.
We performed most of the tests with the <tt>experimentator</tt> tool, developed by Christoph Reichenbach. This tool takes a polygon set description in text format, and transforms it into an SCI program that can be run both with Sierra SCI and with FreeSCI. The program draws the polygon set on the display and allows the user to select a start and destination point. It then calls AvoidPath and draws the returned path on the display. This has proven to be invaluable for discovering the semantics of AvoidPath. We used slightly modified versions of this tool for experimenting with the containment test sub-function and keyboard support.
236

edits

Navigation menu