Index: java/FramclipsePlugin/src/main/resources/framscript.xml
===================================================================
--- java/FramclipsePlugin/src/main/resources/framscript.xml	(revision 56)
+++ java/FramclipsePlugin/src/main/resources/framscript.xml	(revision 63)
@@ -512,7 +512,7 @@
 	</type>
 	<type name="Dictionary" context="Global context">
-<description><![CDATA[Dictionary associates stored values with string keys ("key" is the first argument in get/set/remove functions). Integer "key" can be used to enumerate all elements.
+<description><![CDATA[Dictionary associates stored values with string keys ("key" is the first argument in get/set/remove functions). Integer "key" can be used to enumerate all elements. The sequence of elements is not preserved.
 Example: var d=Dictionary.new(); d.set("name","John"); d.set("age",44);
-var i,element; for(i=0;i<d.size;i++) element=d.get(i);]]></description>
+var i,element; for(i=0;i<d.size;i++) CLI.println(d.getKey(i)+" is "+d.get(i));]]></description>
 		<element name="size" type="integer"/>
 		<element name="toString" type="string"/>
@@ -527,4 +527,9 @@
 			<arguments>
 				<argument name="key" type="untyped"/>
+			</arguments>
+		</element>
+		<element name="getKey" function="true" type="string">
+			<arguments>
+				<argument name="index"/>
 			</arguments>
 		</element>
@@ -2336,4 +2341,5 @@
 		</element>
 		<element name="odecol2softcfm" type="float" min="0" max="1" default="0"/>
+		<element name="odecol2softerp" type="float" min="0" max="1" default="0"/>
 		<element name="odecolbounce" type="float" min="0" max="1" default="0.1"/>
 		<element name="odecolbouncevel" type="float" min="0" max="1" default="0.01"/>
@@ -2345,4 +2351,5 @@
 		</element>
 		<element name="odecolsoftcfm" type="float" min="0" max="1" default="0"/>
+		<element name="odecolsofterp" type="float" min="0" max="1" default="0"/>
 		<element name="odemusclemax" type="float" min="0" max="100" default="10">
 			<description><![CDATA[i.e. "MMMMM" if f1]]></description>
@@ -2361,8 +2368,17 @@
 ]]></description>
 		</element>
+		<element name="odesepsticks" type="integer" min="0" max="1" default="0">
+			<description><![CDATA[Each stick gets a separate ODE body (like in MechaStick)]]></description>
+		</element>
 		<element name="odeshape" type="integer" min="0" max="1"/>
 		<element name="odestep" type="float" min="0.001" max="1" default="0.05"/>
 		<element name="odewaterbuoy" type="float" min="0" max="2" default="1"/>
 		<element name="odewaterdrag" type="float" min="0.001" max="1" default="0.5"/>
+		<element name="odeworldcfm" type="float" min="0" max="1" default="1e-05">
+			<description><![CDATA[World CFM (constraint force mixing)]]></description>
+		</element>
+		<element name="odeworlderp" type="float" min="0" max="1" default="0.2">
+			<description><![CDATA[World ERP (error reduction parameter)]]></description>
+		</element>
 		<element name="rayIntersection" function="true" type="float">
 			<arguments>
@@ -2418,11 +2434,5 @@
 			</arguments>
 		</element>
-		<element name="new" function="true" type="Orient">
-			<arguments>
-				<argument name="x" type="float"/>
-				<argument name="y" type="float"/>
-				<argument name="z" type="float"/>
-			</arguments>
-		</element>
+		<element name="new" function="true" type="Orient"><arguments/></element>
 		<element name="normalize" function="true" type="void"><arguments/></element>
 		<element name="reset" function="true" type="void"><arguments/></element>
@@ -3551,4 +3561,5 @@
 		</element>
 		<element name="odecol2softcfm" type="float" min="0" max="1" default="0"/>
+		<element name="odecol2softerp" type="float" min="0" max="1" default="0"/>
 		<element name="odecolbounce" type="float" min="0" max="1" default="0.1"/>
 		<element name="odecolbouncevel" type="float" min="0" max="1" default="0.01"/>
@@ -3560,4 +3571,5 @@
 		</element>
 		<element name="odecolsoftcfm" type="float" min="0" max="1" default="0"/>
+		<element name="odecolsofterp" type="float" min="0" max="1" default="0"/>
 		<element name="odemusclemax" type="float" min="0" max="100" default="10">
 			<description><![CDATA[i.e. "MMMMM" if f1]]></description>
@@ -3576,8 +3588,17 @@
 ]]></description>
 		</element>
+		<element name="odesepsticks" type="integer" min="0" max="1" default="0">
+			<description><![CDATA[Each stick gets a separate ODE body (like in MechaStick)]]></description>
+		</element>
 		<element name="odeshape" type="integer" min="0" max="1"/>
 		<element name="odestep" type="float" min="0.001" max="1" default="0.05"/>
 		<element name="odewaterbuoy" type="float" min="0" max="2" default="1"/>
 		<element name="odewaterdrag" type="float" min="0.001" max="1" default="0.5"/>
+		<element name="odeworldcfm" type="float" min="0" max="1" default="1e-05">
+			<description><![CDATA[World CFM (constraint force mixing)]]></description>
+		</element>
+		<element name="odeworlderp" type="float" min="0" max="1" default="0.2">
+			<description><![CDATA[World ERP (error reduction parameter)]]></description>
+		</element>
 		<element name="overwrite" type="integer" min="0" max="1">
 			<description><![CDATA[Overwite existing files or create their backups]]></description>
@@ -3633,5 +3654,4 @@
 			<description><![CDATA[This script overrides the experiment definition]]></description>
 		</element>
-		<element name="vmdebug" type="integer" min="0" max="1"/>
 		<element name="world" type="World"/>
 		<element name="wrldbnd" type="integer" min="0" max="2" default="1"/>
@@ -3654,5 +3674,5 @@
 		</element>
 		<element name="wrldtyp" type="integer" min="0" max="2" default="0"/>
-		<element name="wrldwat" type="float" min="-20" max="30" default="-1"/>
+		<element name="wrldwat" type="float" min="-20" max="50" default="-1"/>
 		<element name="add" function="true"/>
 		<element name="addGroup" function="true"/>
@@ -3752,4 +3772,10 @@
 			</arguments>
 		</element>
+		<element name="import" function="true" type="void">
+			<description><![CDATA[Equivalent to import(filename,2+4+8+6) - imports genotypes, parameters, genepool and population settings]]></description>
+			<arguments>
+				<argument name="filename" type="string"/>
+			</arguments>
+		</element>
 		<element name="init" function="true" type="void">
 			<description><![CDATA[Performs initialization procedures, like resetting counters, states, gene pools, etc.]]></description>
@@ -3923,5 +3949,4 @@
 			<description><![CDATA[This script overrides the experiment definition]]></description>
 		</element>
-		<element name="vmdebug" type="integer" min="0" max="1"/>
 		<element name="world" type="World"/>
 		<element name="beep" function="true" type="void">
@@ -3970,4 +3995,10 @@
 				<argument name="filename" type="string"/>
 				<argument name="options" type="integer"/>
+			</arguments>
+		</element>
+		<element name="import" function="true" type="void">
+			<description><![CDATA[Equivalent to import(filename,2+4+8+6) - imports genotypes, parameters, genepool and population settings]]></description>
+			<arguments>
+				<argument name="filename" type="string"/>
 			</arguments>
 		</element>
@@ -4239,4 +4270,5 @@
 			<description><![CDATA[String.replace("abcdef","cd","X") -> "abXef"]]></description>
 			<arguments>
+				<argument name="input_string" type="string"/>
 				<argument name="search" type="string"/>
 				<argument name="substitute" type="string"/>
@@ -4272,4 +4304,11 @@
 				<argument name="first character" type="integer"/>
 				<argument name="number of characters" type="integer"/>
+			</arguments>
+		</element>
+		<element name="substr" function="true" type="string">
+			<description><![CDATA[String.substr("abcdef",3) -> ="def"]]></description>
+			<arguments>
+				<argument type="string"/>
+				<argument name="first character" type="integer"/>
 			</arguments>
 		</element>
@@ -4408,5 +4447,5 @@
 		</element>
 		<element name="wrldtyp" type="integer" min="0" max="2" default="0"/>
-		<element name="wrldwat" type="float" min="-20" max="30" default="-1"/>
+		<element name="wrldwat" type="float" min="-20" max="50" default="-1"/>
 		<element name="wrldchg" function="true" type="void"><arguments/></element>
 	</type>
@@ -4443,4 +4482,11 @@
 				<argument name="3d direction" type="Vector"/>
 				<argument name="range" type="float"/>
+			</arguments>
+		</element>
+		<element name="intersect" function="true" type="Vector">
+			<description><![CDATA[Works like intersect(3d point,3d direction,range) for inifinite range, that is without limiting the intersection distance]]></description>
+			<arguments>
+				<argument name="3d point" type="Vector"/>
+				<argument name="3d direction" type="Vector"/>
 			</arguments>
 		</element>
@@ -5374,5 +5420,5 @@
 		</element>
 		<element name="wrldtyp" type="integer" min="0" max="2" default="0"/>
-		<element name="wrldwat" type="float" min="-20" max="30" default="-1"/>
+		<element name="wrldwat" type="float" min="-20" max="50" default="-1"/>
 		<element name="wrldchg" function="true" type="void"><arguments/></element>
 	</type>
@@ -5409,4 +5455,11 @@
 				<argument name="3d direction" type="Vector"/>
 				<argument name="range" type="float"/>
+			</arguments>
+		</element>
+		<element name="intersect" function="true" type="Vector">
+			<description><![CDATA[Works like intersect(3d point,3d direction,range) for inifinite range, that is without limiting the intersection distance]]></description>
+			<arguments>
+				<argument name="3d point" type="Vector"/>
+				<argument name="3d direction" type="Vector"/>
 			</arguments>
 		</element>
@@ -5533,8 +5586,20 @@
 	<type name="CreatureSelection" context="Command line interface">
 		<element name="count" type="integer"/>
-		<element name="add" function="true"/>
-		<element name="clear" function="true"/>
-		<element name="get" function="true"/>
-		<element name="remove" function="true"/>
+		<element name="add" function="true" type="void">
+			<arguments>
+				<argument type="Creature"/>
+			</arguments>
+		</element>
+		<element name="clear" function="true" type="void"><arguments/></element>
+		<element name="get" function="true" type="Creature">
+			<arguments>
+				<argument name="index" type="integer"/>
+			</arguments>
+		</element>
+		<element name="remove" function="true" type="void">
+			<arguments>
+				<argument type="Creature"/>
+			</arguments>
+		</element>
 	</type>
 	<type name="DynaChart" context="Command line interface">
