Index: java/FramclipsePlugin/src/main/resources/framscript.xml
===================================================================
--- java/FramclipsePlugin/src/main/resources/framscript.xml	(revision 313)
+++ java/FramclipsePlugin/src/main/resources/framscript.xml	(revision 327)
@@ -393,4 +393,5 @@
 	<type name="CreatureSnapshot" context="Global context">
 <description><![CDATA[A data object consisting of the same fields as the serialized Creature. Typically used for reading a Creature back from a file, then Population.add(snapshot_object) creates the Creature object from the snapshot.]]></description>
+		<element name="new" function="true" type="Creature"><arguments/></element>
 		<element name="name" type="string"/>
 		<element name="genotype" type="string"/>
@@ -1980,4 +1981,71 @@
 <arguments/></element>
 	</type>
+	<type name="ModelSimilarity" context="Global context">
+<description><![CDATA[Evaluates morphological dissimilarity. More information:
+http://www.framsticks.com/node/795
+http://www.framsticks.com/node/890]]></description>
+		<element name="simil_method" type="integer" min="0" max="1" default="0">
+			<description><![CDATA[]]></description>
+		</element>
+		<element name="simil_parts" type="float" min="0" max="100" default="0.0">
+			<description><![CDATA[Differing number of parts is also handled by the 'part degree' similarity component.]]></description>
+		</element>
+		<element name="simil_partdeg" type="float" min="0" max="100" default="1.0">
+			<description><![CDATA[]]></description>
+		</element>
+		<element name="simil_neuro" type="float" min="0" max="100" default="0.5">
+			<description><![CDATA[]]></description>
+		</element>
+		<element name="evaluateDistance" function="true" type="float" flags="34">
+			<description><![CDATA[Calculates dissimilarity between two models created from Geno objects.]]></description>
+			<arguments>
+				<argument type="Geno"/>
+				<argument type="Geno"/>
+			</arguments>
+		</element>
+	</type>
+	<type name="ModelSymmetry" context="Global context">
+<description><![CDATA[Calculates bilateral symmetry. Details are described in http://www.framsticks.com/node/808]]></description>
+		<element name="calculateSymmetry" function="true" type="float" flags="32">
+			<description><![CDATA[Returns bilateral symmetry (0.0 .. 1.0) for a given Model using default precision parameters (symPosSteps,symAlphaSteps,symBetaSteps). Returns the symmetry plane, too (sets symResultA,B,C,D).
+Note: may take a long time for large creatures.]]></description>
+			<arguments>
+				<argument name="model" type="Model"/>
+			</arguments>
+		</element>
+		<element name="calculateSymmetry2" function="true" type="float" flags="32">
+			<description><![CDATA[Returns bilateral symmetry (0.0 .. 1.0) for a given Model using specified precision parameters. Returns the symmetry plane, too (sets symResultA,B,C,D).
+Note: may take a long time for large creatures.]]></description>
+			<arguments>
+				<argument name="model" type="Model"/>
+				<argument name="posSteps" type="integer"/>
+				<argument name="alphaSteps" type="integer"/>
+				<argument name="betaSteps" type="integer"/>
+			</arguments>
+		</element>
+		<element name="calculateSymmetryForPlane" function="true" type="float" flags="32">
+			<description><![CDATA[Returns bilateral symmetry (0.0 .. 1.0) for a given Model and given a specific plane defined by coefficients A, B, C, D.]]></description>
+			<arguments>
+				<argument name="model" type="Model"/>
+				<argument name="A" type="float"/>
+				<argument name="B" type="float"/>
+				<argument name="C" type="float"/>
+				<argument name="D" type="float"/>
+			</arguments>
+		</element>
+		<element name="symPosSteps" type="integer" min="2" max="50" default="10">
+			<description><![CDATA[Default number of samples per stick length]]></description>
+		</element>
+		<element name="symAlphaSteps" type="integer" min="2" max="50" default="20">
+			<description><![CDATA[Default number of samples per full angle (#1)]]></description>
+		</element>
+		<element name="symBetaSteps" type="integer" min="2" max="50" default="20">
+			<description><![CDATA[Default number of samples per full angle (#2)]]></description>
+		</element>
+		<element name="symResultA" type="float" flags="35"/>
+		<element name="symResultB" type="float" flags="35"/>
+		<element name="symResultC" type="float" flags="35"/>
+		<element name="symResultD" type="float" flags="35"/>
+	</type>
 	<type name="Neuro" context="Global context">
 <description><![CDATA[Live Neuron object.]]></description>
@@ -4194,28 +4262,4 @@
 		<element name="minjoint" type="float" min="0" max="100" default="0.0"/>
 		<element name="maxjoint" type="float" min="0" max="100" default="2.0"/>
-	</type>
-	<type name="Similarity" context="Global context">
-<description><![CDATA[Evaluates morphological dissimilarity. Read about details:
-http://www.framsticks.com/node/795
-http://www.framsticks.com/node/890]]></description>
-		<element name="simil_method" type="integer" min="0" max="1" default="0">
-			<description><![CDATA[]]></description>
-		</element>
-		<element name="simil_parts" type="float" min="0" max="100" default="0.0">
-			<description><![CDATA[Differing number of parts is also handled by the 'part degree' similarity component.]]></description>
-		</element>
-		<element name="simil_partdeg" type="float" min="0" max="100" default="1.0">
-			<description><![CDATA[]]></description>
-		</element>
-		<element name="simil_neuro" type="float" min="0" max="100" default="0.5">
-			<description><![CDATA[]]></description>
-		</element>
-		<element name="evaluateDistance" function="true" type="float" flags="34">
-			<description><![CDATA[Calculates dissimilarity between two models created from Geno objects.]]></description>
-			<arguments>
-				<argument type="Geno"/>
-				<argument type="Geno"/>
-			</arguments>
-		</element>
 	</type>
 	<type name="Simulator" context="Global context">
@@ -4708,6 +4752,5 @@
  String.format("%t",Math.time) -> ="Sun Apr 29 19:22:02 2007"
  String.format("%T",Math.time) -> ="2007-05-29 19:22:02"
- String.format("x=%d%%",100) -> ="100%"
-]]></description>
+ String.format("x=%d%%",100) -> ="100%"]]></description>
 			<arguments>
 				<argument name="format_string" type="string"/>
@@ -4716,4 +4759,5 @@
 		</element>
 		<element name="parseInt" function="true" type="integer">
+			<description><![CDATA[If the supplied string is not an integer, returns 0 and posts an error message.]]></description>
 			<arguments>
 				<argument type="string"/>
@@ -4721,4 +4765,15 @@
 		</element>
 		<element name="parseFloat" function="true" type="float">
+			<description><![CDATA[If the supplied string is not a number, returns 0.0 and posts an error message.]]></description>
+			<arguments>
+				<argument type="string"/>
+			</arguments>
+		</element>
+		<element name="parseNumber" function="true" type="untyped">
+			<description><![CDATA[Returns an integer, a floating point, or null if the string cannot be parsed as a number.
+The 'typeof' operator can be used to distinguish between an integer and a floating point value:
+typeof String.parseNumber("qwerty") is 0
+typeof String.parseNumber("1234") is 1
+typeof String.parseNumber("3.14") is 2.]]></description>
 			<arguments>
 				<argument type="string"/>
@@ -4773,47 +4828,4 @@
 			</arguments>
 		</element>
-	</type>
-	<type name="Symmetry" context="Global context">
-<description><![CDATA[Calculates bilateral symmetry. Details are described in http://www.framsticks.com/node/808]]></description>
-		<element name="calculateSymmetry" function="true" type="float" flags="32">
-			<description><![CDATA[Returns bilateral symmetry (0.0 .. 1.0) for a given Model using default precision parameters (symPosSteps,symAlphaSteps,symBetaSteps). Returns the symmetry plane, too (sets symResultA,B,C,D).
-Note: may take a long time for large creatures.]]></description>
-			<arguments>
-				<argument name="model" type="Model"/>
-			</arguments>
-		</element>
-		<element name="calculateSymmetry2" function="true" type="float" flags="32">
-			<description><![CDATA[Returns bilateral symmetry (0.0 .. 1.0) for a given Model using specified precision parameters. Returns the symmetry plane, too (sets symResultA,B,C,D).
-Note: may take a long time for large creatures.]]></description>
-			<arguments>
-				<argument name="model" type="Model"/>
-				<argument name="posSteps" type="integer"/>
-				<argument name="alphaSteps" type="integer"/>
-				<argument name="betaSteps" type="integer"/>
-			</arguments>
-		</element>
-		<element name="calculateSymmetryForPlane" function="true" type="float" flags="32">
-			<description><![CDATA[Returns bilateral symmetry (0.0 .. 1.0) for a given Model and given a specific plane defined by coefficients A, B, C, D.]]></description>
-			<arguments>
-				<argument name="model" type="Model"/>
-				<argument name="A" type="float"/>
-				<argument name="B" type="float"/>
-				<argument name="C" type="float"/>
-				<argument name="D" type="float"/>
-			</arguments>
-		</element>
-		<element name="symPosSteps" type="integer" min="2" max="50" default="10">
-			<description><![CDATA[Default number of samples per stick length]]></description>
-		</element>
-		<element name="symAlphaSteps" type="integer" min="2" max="50" default="20">
-			<description><![CDATA[Default number of samples per full angle (#1)]]></description>
-		</element>
-		<element name="symBetaSteps" type="integer" min="2" max="50" default="20">
-			<description><![CDATA[Default number of samples per full angle (#2)]]></description>
-		</element>
-		<element name="symResultA" type="float" flags="35"/>
-		<element name="symResultB" type="float" flags="35"/>
-		<element name="symResultC" type="float" flags="35"/>
-		<element name="symResultD" type="float" flags="35"/>
 	</type>
 	<type name="UserScripts" context="Global context">
@@ -5905,5 +5917,6 @@
 		<element name="symmetryplane" type="integer" min="0" max="1" default="0" flags="192">
 			<description><![CDATA[Displays a guess of the symmetry plane (may take a long time to compue for complex bodies).
-Use scripting and the Symmetry class to compute symmetry accurately.]]></description>
+Use scripting and the ModelSymmetry class to compute symmetry accurately.
+Details of the symmetry estimation procedure are described in http://www.framsticks.com/node/808]]></description>
 		</element>
 	</type>
@@ -5974,5 +5987,6 @@
 		<element name="symmetryplane" type="integer" min="0" max="1" default="0" flags="192">
 			<description><![CDATA[Displays a guess of the symmetry plane (may take a long time to compue for complex bodies).
-Use scripting and the Symmetry class to compute symmetry accurately.]]></description>
+Use scripting and the ModelSymmetry class to compute symmetry accurately.
+Details of the symmetry estimation procedure are described in http://www.framsticks.com/node/808]]></description>
 		</element>
 	</type>
@@ -6498,5 +6512,6 @@
 		<element name="symmetryplane" type="integer" min="0" max="1" default="0" flags="192">
 			<description><![CDATA[Displays a guess of the symmetry plane (may take a long time to compue for complex bodies).
-Use scripting and the Symmetry class to compute symmetry accurately.]]></description>
+Use scripting and the ModelSymmetry class to compute symmetry accurately.
+Details of the symmetry estimation procedure are described in http://www.framsticks.com/node/808]]></description>
 		</element>
 	</type>
