Changeset 309 for java/FramclipsePlugin/src/main/resources
- Timestamp:
- 01/26/15 06:22:27 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
java/FramclipsePlugin/src/main/resources/framscript.xml
r266 r309 4 4 <framscript> 5 5 <type name="expdef" context="expdef file"> 6 <element name="name" type="string"/> 7 <element name="info" type="string"/> 6 8 <element name="code" type="string"/> 7 <element name="info" type="string"/>8 <element name="name" type="string"/>9 9 <element name="neurons" type="string"/> 10 10 </type> 11 11 <type name="prop" context="properties file"> 12 <element name="flags" type="integer"/>13 <element name="group" type="string"/>14 <element name="help" type="string"/>15 12 <element name="id" type="string"/> 16 13 <element name="name" type="string"/> 17 14 <element name="type" type="string"/> 15 <element name="flags" type="integer"/> 16 <element name="help" type="string"/> 17 <element name="group" type="string"/> 18 18 </type> 19 19 <type name="stat" context="state file"> 20 <element name="flags" type="integer"/>21 <element name="group" type="string"/>22 <element name="help" type="string"/>23 20 <element name="id" type="string"/> 24 21 <element name="name" type="string"/> 25 22 <element name="type" type="string"/> 23 <element name="flags" type="integer"/> 24 <element name="help" type="string"/> 25 <element name="group" type="string"/> 26 26 </type> 27 27 <type name="style" context="style file"> 28 28 <description><![CDATA[General visual style properties.]]></description> 29 <element name="style" type="string"/> 30 <element name="name" type="string"/> 31 <element name="info" type="string"/> 29 32 <element name="code" type="string"/> 30 <element name="info" type="string"/> 31 <element name="name" type="string"/> 33 <element name="streload" function="true"/> 34 <element name="rebuild" function="true"/> 35 <element name="tex" type="integer" min="0" max="2" default="1"/> 36 <element name="smooth" type="integer" min="0" max="1" default="1"/> 32 37 <element name="neurons" type="integer" min="0" max="1" default="1"/> 33 <element name="smooth" type="integer" min="0" max="1" default="1"/>34 <element name="style" type="string"/>35 <element name="tex" type="integer" min="0" max="2" default="1"/>36 <element name="rebuild" function="true"/>37 <element name="streload" function="true"/>38 38 </type> 39 39 <type name="show" context="show file"> 40 40 <description><![CDATA[Properties of a show for the Framsticks Theater (from the *.show file).]]></description> 41 <element name="show" type="string"/> 42 <element name="name" type="string"/> 43 <element name="info" type="string"/> 44 <element name="dispinfo" type="integer" min="0" max="2"/> 45 <element name="userspeed" type="integer" min="0" max="5" default="3"/> 46 <element name="showlog" type="integer" min="0" max="1"/> 41 47 <element name="code" type="string"/> 42 <element name="dispinfo" type="integer" min="0" max="2"/> 48 <element name="expdef" type="string"/> 49 <element name="reload" function="true"/> 50 <element name="dummy" function="true"> 51 <description><![CDATA[This is the empty item in the Theater's menu]]></description> 52 </element> 53 <element name="about" function="true"/> 54 <element name="regname" type="string"/> 55 <element name="prev_show" type="string"/> 56 <element name="mode" type="integer" min="0" max="2"/> 57 <element name="switchmode" type="integer" min="0" max="3"/> 58 <element name="switchtime" type="integer" min="0" max="9999"> 59 <description><![CDATA[time between switching (seconds)]]></description> 60 </element> 61 <element name="switchshows" type="string"> 62 <description><![CDATA[names of the shows participating in automatic switching (comma separated). Use * as a wildcard.]]></description> 63 </element> 64 <element name="includeshows" type="string"> 65 <description><![CDATA[names of shows included in the show menu. Use * as a wildcard.]]></description> 66 </element> 43 67 <element name="excludeshows" type="string"> 44 68 <description><![CDATA[names of shows excluded from the show menu. Use * as a wildcard.]]></description> 45 69 </element> 46 <element name="expdef" type="string"/> 47 <element name="includeshows" type="string"> 48 <description><![CDATA[names of shows included in the show menu. Use * as a wildcard.]]></description> 49 </element> 50 <element name="info" type="string"/> 51 <element name="mode" type="integer" min="0" max="2"/> 70 </type> 71 <type name="class" context="neuro file"> 52 72 <element name="name" type="string"/> 53 <element name="prev_show" type="string"/> 54 <element name="regname" type="string"/> 55 <element name="show" type="string"/> 56 <element name="showlog" type="integer" min="0" max="1"/> 57 <element name="switchmode" type="integer" min="0" max="3"/> 58 <element name="switchshows" type="string"> 59 <description><![CDATA[names of the shows participating in automatic switching (comma separated). Use * as a wildcard.]]></description> 60 </element> 61 <element name="switchtime" type="integer" min="0" max="9999"> 62 <description><![CDATA[time between switching (seconds)]]></description> 63 </element> 64 <element name="userspeed" type="integer" min="0" max="5" default="3"/> 65 <element name="about" function="true"/> 66 <element name="dummy" function="true"> 67 <description><![CDATA[This is the empty item in the Theater's menu]]></description> 68 </element> 69 <element name="reload" function="true"/> 70 </type> 71 <type name="class" context="neuro file"> 73 <element name="longname" type="string"/> 74 <element name="description" type="string"/> 72 75 <element name="code" type="string"/> 73 <element name="description" type="string"/> 76 <element name="prefinputs" type="integer"/> 77 <element name="prefoutput" type="integer" min="0" max="1"/> 78 <element name="preflocation" type="integer" min="0" max="2"/> 74 79 <element name="icon" type="string"/> 75 <element name="longname" type="string"/> 80 <element name="vhints" type="integer"/> 81 </type> 82 <type name="script" context="script file"> 76 83 <element name="name" type="string"/> 77 <element name="prefinputs" type="integer"/>78 <element name="preflocation" type="integer" min="0" max="2"/>79 <element name="prefoutput" type="integer" min="0" max="1"/>80 <element name="vhints" type="integer"/>81 </type>82 <type name="script" context="script file">83 84 <element name="code" type="string"/> 85 <element name="help" type="string"/> 84 86 <element name="group" type="string"/> 85 <element name="help" type="string"/>86 <element name="name" type="string"/>87 87 </type> 88 88 <type name="CheckpointEvent" context="Global context"> 89 89 <description><![CDATA[CheckpointEvent]]></description> 90 <element name="data" type="untyped"/>91 90 <element name="index" type="integer"/> 92 91 <element name="slave" type="Simulator"/> 93 92 <element name="ticks" type="integer"/> 93 <element name="data" type="untyped"/> 94 94 </type> 95 95 <type name="Collision" context="Global context"> 96 96 <description><![CDATA[Used in collision handlers (On___Collision). Contains the detailed information about the colliding parts (Part1,Part2 and their associated MechParts and Creatures). See the onFoodCollision() function in standard.expdef]]></description> 97 <element name="Part1" type="Object"/> 98 <element name="Part2" type="Object"/> 99 <element name="MechPart1" type="Object"/> 100 <element name="MechPart2" type="Object"/> 97 101 <element name="Creature1" type="Object"/> 98 102 <element name="Creature2" type="Object"/> 99 <element name="MechPart1" type="Object"/>100 <element name="MechPart2" type="Object"/>101 <element name="Part1" type="Object"/>102 <element name="Part2" type="Object"/>103 103 </type> 104 104 <type name="CrCollision" context="Global context"> … … 112 112 function onDied(cr) {Simulator.print("Creature "+cr.name+" has died");} 113 113 See also: Population.]]></description> 114 <element name="name" type="string"/> 115 <element name="genotype" type="string"/> 116 <element name="info" type="string"> 117 <description><![CDATA[Additional info or comments]]></description> 118 </element> 119 <element name="group" type="untyped" deprecated="true"> 120 <description><![CDATA[Deprecated. Use population instead.]]></description> 121 </element> 122 <element name="population" type="untyped"/> 123 <element name="index" type="integer"> 124 <description><![CDATA[Note that the index changes depending on the current creature position in the population. Use Creature.uid if you need a permanent identifier that persists through the entire object lifetime.]]></description> 125 </element> 126 <element name="gnum" type="integer"/> 127 <element name="buildproblems" type="integer"/> 128 <element name="energ0" type="float"/> 129 <element name="idleen" type="float"/> 130 <element name="energy" type="float"/> 131 <element name="energy_p" type="float"/> 132 <element name="energy_m" type="float"/> 133 <element name="energy_b" type="float"/> 134 <element name="perf" type="integer" min="0" max="2"> 135 <description><![CDATA[Initial value of this property is taken from Population.enableperf]]></description> 136 </element> 137 <element name="nnenabled" type="integer" min="0" max="1"/> 114 138 <element name="bodysim" type="integer" min="0" max="1" default="1"> 115 139 <description><![CDATA[(Physical) body simulation can be disabled for individual objects which makes them immovable. Disabled objects can still participate in collisions depending on their collisions masks. … … 117 141 Bugs: the standard collision handler does not work for disabled objects when ODE simulation is used. It means that these objects won't physically interact with other objects. The custom (scripting) handlers work as expected.]]></description> 118 142 </element> 119 <element name="buildproblems" type="integer"/> 143 <element name="selfcol" type="integer" min="0" max="1"> 144 <description><![CDATA[Enable/disable detection of self-collisions (within a creature body). They can only occur when using the ODE simulation engine. If enabled, the creature will have its sticks collide during lifespan.]]></description> 145 </element> 146 <element name="selfcolstate" function="true" type="integer"> 147 <description><![CDATA[Current self-collision state. In old versions this was a field, not a function.]]></description> 148 <arguments/></element> 149 <element name="lifespan" type="integer"/> 150 <element name="distance" type="float"/> 120 151 <element name="c_velocity" type="float"/> 152 <element name="c_vertvelocity" type="float"/> 121 153 <element name="c_vertpos" type="float"/> 122 <element name="c_vertvelocity" type="float"/> 154 <element name="velocity" type="float"/> 155 <element name="vertpos" type="float"/> 156 <element name="vertvel" type="float"/> 157 <element name="pos_x" type="float"> 158 <description><![CDATA[(pos_x,pos_y,pos_z) is the point of minimal coordinates ("bottom left corner") of the creature, including imaginary Part sizes (Part.s, usually 1.0). See also: Creature.moveAbs]]></description> 159 </element> 160 <element name="pos_y" type="float"> 161 <description><![CDATA[See Creature.pos_x]]></description> 162 </element> 163 <element name="pos_z" type="float"> 164 <description><![CDATA[See Creature.pos_x]]></description> 165 </element> 166 <element name="size_x" type="float"> 167 <description><![CDATA[(size_x,size_y,size_z) are dimensions of the axis-aligned bounding box of the creature, including the imaginary part sizes (Part.s, usually 1.0). A creature consisting of a single default Part has the size of (2.0,2.0,2.0) - twice the Part.s value (like a sphere diameter is twice its radius). 168 See also: Creature.moveAbs]]></description> 169 </element> 170 <element name="size_y" type="float"> 171 <description><![CDATA[See Creature.size_x]]></description> 172 </element> 173 <element name="size_z" type="float"> 174 <description><![CDATA[See Creature.size_x]]></description> 175 </element> 123 176 <element name="center_x" type="float"> 124 177 <description><![CDATA[Center of gravity]]></description> … … 130 183 <description><![CDATA[Center of gravity]]></description> 131 184 </element> 132 <element name="distance" type="float"/> 185 <element name="numparts" type="integer"/> 186 <element name="numjoints" type="integer"/> 187 <element name="numneurons" type="integer"/> 188 <element name="user1" type="untyped"/> 189 <element name="user2" type="untyped"/> 190 <element name="user3" type="untyped"/> 191 <element name="move" function="true" type="void"> 192 <description><![CDATA[Shift the creature by a given vector.]]></description> 193 <arguments> 194 <argument name="x" type="float"/> 195 <argument name="y" type="float"/> 196 <argument name="z" type="float"/> 197 </arguments> 198 </element> 199 <element name="moveAbs" function="true" type="void"> 200 <description><![CDATA[Moves the creature so that its origin (pos_x,pos_y,pos_z) is placed at the given location. The origin is the point of minimal coordinates ("bottom left corner"), including imaginary part sizes (Part.s, usually 1.0). 201 Assuming a simple single-stick creature "X" having parts at (0,0,0) and (1,0,0), 202 203 origin (pos_x,pos_y,pos_z) = (-1,-1,-1) 204 size (size_x,size_y,size_z) = (3,2,2) 205 206 The following example places the bottom of a creature at a given location (x,y,z): 207 Creature.moveAbs(x-(Creature.size_x/2),y-(Creature.size_y/2),z-1.0) 208 (assuming that the part size is 1.0)]]></description> 209 <arguments> 210 <argument name="x" type="float"/> 211 <argument name="y" type="float"/> 212 <argument name="z" type="float"/> 213 </arguments> 214 </element> 215 <element name="moveLocal" function="true" type="void"> 216 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description> 217 <arguments> 218 <argument name="x" type="float"/> 219 <argument name="y" type="float"/> 220 <argument name="z" type="float"/> 221 </arguments> 222 </element> 223 <element name="localToWorld" function="true" type="XYZ"> 224 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description> 225 <arguments> 226 <argument name="x" type="float"/> 227 <argument name="y" type="float"/> 228 <argument name="z" type="float"/> 229 </arguments> 230 </element> 231 <element name="worldToLocal" function="true" type="XYZ"> 232 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description> 233 <arguments> 234 <argument name="x" type="float"/> 235 <argument name="y" type="float"/> 236 <argument name="z" type="float"/> 237 </arguments> 238 </element> 239 <element name="orient" type="Orient"> 240 <description><![CDATA[By convention, the orientation of the creature is equal to the orientation of its first Part]]></description> 241 </element> 242 <element name="rotate" function="true" type="void"> 243 <description><![CDATA[Rotate the creature around X, Y and Z axes. Should only be used immediately after creating a new creature (before the first simulation step is performed for this creature), otherwise further simulation can be disturbed.]]></description> 244 <arguments> 245 <argument name="x" type="float"/> 246 <argument name="y" type="float"/> 247 <argument name="z" type="float"/> 248 </arguments> 249 </element> 250 <element name="rotateLocal" function="true" type="void"> 251 <description><![CDATA[Rotate the creature around (local) X, Y and Z axes. Should only be used immediately after creating a new creature (before the first simulation step is performed for this creature), otherwise further simulation can be disturbed.]]></description> 252 <arguments> 253 <argument name="x" type="float"/> 254 <argument name="y" type="float"/> 255 <argument name="z" type="float"/> 256 </arguments> 257 </element> 133 258 <element name="drive" type="XYZ"> 134 259 <description><![CDATA[Measured in global coordinates]]></description> 135 </element>136 <element name="energ0" type="float"/>137 <element name="energy" type="float"/>138 <element name="energy_b" type="float"/>139 <element name="energy_m" type="float"/>140 <element name="energy_p" type="float"/>141 <element name="geno" type="Geno">142 <description><![CDATA[Source genotype for this creature]]></description>143 </element>144 <element name="genotype" type="string"/>145 <element name="gnum" type="integer"/>146 <element name="group" type="untyped" deprecated="true">147 <description><![CDATA[Deprecated. Use population instead.]]></description>148 </element>149 <element name="idleen" type="float"/>150 <element name="index" type="integer">151 <description><![CDATA[Note that the index changes depending on the current creature position in the population. Use Creature.uid if you need a permanent identifier that persists through the entire object lifetime.]]></description>152 </element>153 <element name="info" type="string">154 <description><![CDATA[Additional info or comments]]></description>155 </element>156 <element name="lifespan" type="integer"/>157 <element name="liveModel" type="Model">158 <description><![CDATA[A Model object that is a copy of the current (temporary) geometry of this creature]]></description>159 260 </element> 160 261 <element name="localDrive" type="XYZ"> … … 162 263 See also: Creature.orient]]></description> 163 264 </element> 265 <element name="getPart" function="true" type="Part"> 266 <arguments> 267 <argument name="index" type="integer"/> 268 </arguments> 269 </element> 270 <element name="getJoint" function="true" type="Joint"> 271 <arguments> 272 <argument name="index" type="integer"/> 273 </arguments> 274 </element> 275 <element name="getNeuroDef" function="true" type="NeuroDef"> 276 <arguments> 277 <argument name="index" type="integer"/> 278 </arguments> 279 </element> 280 <element name="getMechPart" function="true" type="MechPart"> 281 <arguments> 282 <argument name="index" type="integer"/> 283 </arguments> 284 </element> 285 <element name="getMechJoint" function="true" type="MechJoint"> 286 <arguments> 287 <argument name="index" type="integer"/> 288 </arguments> 289 </element> 290 <element name="getNeuro" function="true" type="Neuro"> 291 <arguments> 292 <argument name="index" type="integer"/> 293 </arguments> 294 </element> 295 <element name="selfmask" type="integer" min="0" max="2147483647" default="0"/> 296 <element name="othermask" type="integer" min="0" max="2147483647" default="0"/> 297 <element name="currentGeometryAsF0" function="true" type="string"><arguments/></element> 298 <element name="geno" type="Geno"> 299 <description><![CDATA[Source genotype for this creature]]></description> 300 </element> 164 301 <element name="model" type="Model"> 165 302 <description><![CDATA[Source Model for this creature]]></description> 166 303 </element> 167 <element name="name" type="string"/> 168 <element name="nnenabled" type="integer" min="0" max="1"/> 169 <element name="numjoints" type="integer"/> 170 <element name="numneurons" type="integer"/> 171 <element name="numparts" type="integer"/> 172 <element name="orient" type="Orient"> 173 <description><![CDATA[By convention, the orientation of the creature is equal to the orientation of its first Part]]></description> 174 </element> 175 <element name="othermask" type="integer" min="0" max="2147483647" default="0"/> 176 <element name="perf" type="integer" min="0" max="2"> 177 <description><![CDATA[Initial value of this property is taken from Population.enableperf]]></description> 178 </element> 179 <element name="population" type="untyped"/> 180 <element name="pos_x" type="float"> 181 <description><![CDATA[(pos_x,pos_y,pos_z) is the point of minimal coordinates ("bottom left corner") of the creature, including imaginary Part sizes (Part.s, usually 1.0). See also: Creature.moveAbs]]></description> 182 </element> 183 <element name="pos_y" type="float"> 184 <description><![CDATA[See Creature.pos_x]]></description> 185 </element> 186 <element name="pos_z" type="float"> 187 <description><![CDATA[See Creature.pos_x]]></description> 188 </element> 189 <element name="selfcol" type="integer" min="0" max="1"> 190 <description><![CDATA[Enable/disable detection of self-collisions (within a creature body). They can only occur when using the ODE simulation engine. If enabled, the creature will have its sticks collide during lifespan.]]></description> 191 </element> 192 <element name="selfmask" type="integer" min="0" max="2147483647" default="0"/> 304 <element name="liveModel" type="Model"> 305 <description><![CDATA[A Model object that is a copy of the current (temporary) geometry of this creature]]></description> 306 </element> 307 <element name="uid" type="string"/> 193 308 <element name="signals" type="CreatureSignals"/> 194 <element name="size_x" type="float">195 <description><![CDATA[(size_x,size_y,size_z) are dimensions of the axis-aligned bounding box of the creature, including the imaginary part sizes (Part.s, usually 1.0). A creature consisting of a single default Part has the size of (2.0,2.0,2.0) - twice the Part.s value (like a sphere diameter is twice its radius).196 See also: Creature.moveAbs]]></description>197 </element>198 <element name="size_y" type="float">199 <description><![CDATA[See Creature.size_x]]></description>200 </element>201 <element name="size_z" type="float">202 <description><![CDATA[See Creature.size_x]]></description>203 </element>204 <element name="uid" type="string"/>205 <element name="user1" type="untyped"/>206 <element name="user2" type="untyped"/>207 <element name="user3" type="untyped"/>208 <element name="velocity" type="float"/>209 <element name="vertpos" type="float"/>210 <element name="vertvel" type="float"/>211 309 <element name="boundingBoxCollisions" function="true" type="integer"> 212 310 <description><![CDATA[Checks approximate collisions for the selected creature. … … 217 315 </arguments> 218 316 </element> 219 <element name="currentGeometryAsF0" function="true" type="string"><arguments/></element>220 <element name="getJoint" function="true" type="Joint">221 <arguments>222 <argument name="index" type="integer"/>223 </arguments>224 </element>225 <element name="getMechJoint" function="true" type="MechJoint">226 <arguments>227 <argument name="index" type="integer"/>228 </arguments>229 </element>230 <element name="getMechPart" function="true" type="MechPart">231 <arguments>232 <argument name="index" type="integer"/>233 </arguments>234 </element>235 <element name="getNeuro" function="true" type="Neuro">236 <arguments>237 <argument name="index" type="integer"/>238 </arguments>239 </element>240 <element name="getNeuroDef" function="true" type="NeuroDef">241 <arguments>242 <argument name="index" type="integer"/>243 </arguments>244 </element>245 <element name="getPart" function="true" type="Part">246 <arguments>247 <argument name="index" type="integer"/>248 </arguments>249 </element>250 <element name="localToWorld" function="true" type="XYZ">251 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description>252 <arguments>253 <argument name="x" type="float"/>254 <argument name="y" type="float"/>255 <argument name="z" type="float"/>256 </arguments>257 </element>258 <element name="move" function="true" type="void">259 <description><![CDATA[Shift the creature by a given vector.]]></description>260 <arguments>261 <argument name="x" type="float"/>262 <argument name="y" type="float"/>263 <argument name="z" type="float"/>264 </arguments>265 </element>266 <element name="moveAbs" function="true" type="void">267 <description><![CDATA[Moves the creature so that its origin (pos_x,pos_y,pos_z) is placed at the given location. The origin is the point of minimal coordinates ("bottom left corner"), including imaginary part sizes (Part.s, usually 1.0).268 Assuming a simple single-stick creature "X" having parts at (0,0,0) and (1,0,0),269 270 origin (pos_x,pos_y,pos_z) = (-1,-1,-1)271 size (size_x,size_y,size_z) = (3,2,2)272 273 The following example places the bottom of a creature at a given location (x,y,z):274 Creature.moveAbs(x-(Creature.size_x/2),y-(Creature.size_y/2),z-1.0)275 (assuming that the part size is 1.0)]]></description>276 <arguments>277 <argument name="x" type="float"/>278 <argument name="y" type="float"/>279 <argument name="z" type="float"/>280 </arguments>281 </element>282 <element name="moveLocal" function="true" type="void">283 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description>284 <arguments>285 <argument name="x" type="float"/>286 <argument name="y" type="float"/>287 <argument name="z" type="float"/>288 </arguments>289 </element>290 <element name="rotate" function="true" type="void">291 <description><![CDATA[Rotate the creature around X, Y and Z axes. Should only be used immediately after creating a new creature (before the first simulation step is performed for this creature), otherwise further simulation can be disturbed.]]></description>292 <arguments>293 <argument name="x" type="float"/>294 <argument name="y" type="float"/>295 <argument name="z" type="float"/>296 </arguments>297 </element>298 <element name="rotateLocal" function="true" type="void">299 <description><![CDATA[Rotate the creature around (local) X, Y and Z axes. Should only be used immediately after creating a new creature (before the first simulation step is performed for this creature), otherwise further simulation can be disturbed.]]></description>300 <arguments>301 <argument name="x" type="float"/>302 <argument name="y" type="float"/>303 <argument name="z" type="float"/>304 </arguments>305 </element>306 <element name="selfcolstate" function="true" type="integer">307 <description><![CDATA[Current self-collision state. In old versions this was a field, not a function.]]></description>308 <arguments/></element>309 <element name="worldToLocal" function="true" type="XYZ">310 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description>311 <arguments>312 <argument name="x" type="float"/>313 <argument name="y" type="float"/>314 <argument name="z" type="float"/>315 </arguments>316 </element>317 317 </type> 318 318 <type name="CreatureSettings" context="Global context"> 319 319 <description><![CDATA[Creature building parameters]]></description> 320 <element name="minjoint" type="float" min="0" max="100" default="0.0"/> 321 <element name="maxjoint" type="float" min="0" max="100" default="2.0"/> 322 <element name="randinit" type="float" min="0" max="10" default="0.01"> 323 <description><![CDATA[Allowed range for initializing all neuron states with uniform distribution random numbers and zero mean. Set to 0 for deterministic initialization.]]></description> 324 </element> 325 <element name="nnoise" type="float" min="0" max="1" default="0.0"> 326 <description><![CDATA[Gaussian neural noise: a random value is added to each neural output in each simulation step. Set standard deviation here to add random noise, or 0 for deterministic simulation.]]></description> 327 </element> 328 <element name="touchrange" type="float" min="0" max="100" default="1.0"/> 320 329 <element name="bnoise_struct" type="float" min="0" max="10" default="0.0"> 321 330 <description><![CDATA[When >0, body constructs of creatures (position of Parts) will be randomly disturbed when they are created.]]></description> … … 324 333 <description><![CDATA[Random velocities will be applied to all body Parts (in MechaStick) or rigid segments (in ODE) of newly created creatures.]]></description> 325 334 </element> 326 <element name="maxjoint" type="float" min="0" max="100" default="2.0"/>327 <element name="minjoint" type="float" min="0" max="100" default="0.0"/>328 <element name="nnoise" type="float" min="0" max="1" default="0.0">329 <description><![CDATA[Gaussian neural noise: a random value is added to each neural output in each simulation step. Set standard deviation here to add random noise, or 0 for deterministic simulation.]]></description>330 </element>331 <element name="randinit" type="float" min="0" max="10" default="0.01">332 <description><![CDATA[Allowed range for initializing all neuron states with uniform distribution random numbers and zero mean. Set to 0 for deterministic initialization.]]></description>333 </element>334 <element name="touchrange" type="float" min="0" max="100" default="1.0"/>335 335 </type> 336 336 <type name="CreatureSignals" context="Global context"> 337 337 <description><![CDATA[Signal sources associated with a creature. See also: Signal, WorldSignals, NeuroSignals.]]></description> 338 <element name="size" type="integer"/>339 338 <element name="add" function="true" type="Signal"> 340 339 <arguments> … … 351 350 </arguments> 352 351 </element> 353 <element name="clear" function="true" type="void"><arguments/></element>354 <element name="get" function="true" type="Signal">355 <arguments>356 <argument name="index" type="integer"/>357 </arguments>358 </element>359 352 <element name="receive" function="true" type="float"> 360 353 <description><![CDATA[Receive the aggregated signal power in a given channel.]]></description> 361 354 <arguments> 362 355 <argument name="channel" type="string"/> 356 </arguments> 357 </element> 358 <element name="receiveSet" function="true" type="Vector"> 359 <description><![CDATA[Get all signals in the specified range. Returns a read-only vector object containing Signal objects - individual signals can be accessed as result[0], .., result[result.size-1].]]></description> 360 <arguments> 361 <argument name="channel" type="string"/> 362 <argument name="max distance" type="float"/> 363 363 </arguments> 364 364 </element> … … 376 376 </arguments> 377 377 </element> 378 <element name="receiveS et" function="true" type="Vector">379 <description><![CDATA[ Get all signals in the specified range. Returns a read-only vector object containing Signal objects - individual signals can be accessed as result[0], .., result[result.size-1].]]></description>378 <element name="receiveSingle" function="true" type="Signal"> 379 <description><![CDATA[Find the signal source that has the highest signal power (taking into account distance).]]></description> 380 380 <arguments> 381 381 <argument name="channel" type="string"/> … … 383 383 </arguments> 384 384 </element> 385 <element name="receiveSingle" function="true" type="Signal"> 386 <description><![CDATA[Find the signal source that has the highest signal power (taking into account distance).]]></description> 387 <arguments> 388 <argument name="channel" type="string"/> 389 <argument name="max distance" type="float"/> 390 </arguments> 391 </element> 385 <element name="get" function="true" type="Signal"> 386 <arguments> 387 <argument name="index" type="integer"/> 388 </arguments> 389 </element> 390 <element name="size" type="integer"/> 391 <element name="clear" function="true" type="void"><arguments/></element> 392 </type> 393 <type name="CreatureSnapshot" context="Global context"> 394 <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> 395 <element name="name" type="string"/> 396 <element name="genotype" type="string"/> 397 <element name="info" type="string"> 398 <description><![CDATA[Additional info or comments]]></description> 399 </element> 400 <element name="gnum" type="integer"/> 401 <element name="energ0" type="float"/> 402 <element name="idleen" type="float"/> 403 <element name="energy" type="float"/> 404 <element name="energy_p" type="float"/> 405 <element name="energy_m" type="float"/> 406 <element name="energy_b" type="float"/> 407 <element name="perf" type="integer" min="0" max="2"> 408 <description><![CDATA[Initial value of this property is taken from Population.enableperf]]></description> 409 </element> 410 <element name="nnenabled" type="integer" min="0" max="1"/> 411 <element name="bodysim" type="integer" min="0" max="1" default="1"> 412 <description><![CDATA[(Physical) body simulation can be disabled for individual objects which makes them immovable. Disabled objects can still participate in collisions depending on their collisions masks. 413 414 Bugs: the standard collision handler does not work for disabled objects when ODE simulation is used. It means that these objects won't physically interact with other objects. The custom (scripting) handlers work as expected.]]></description> 415 </element> 416 <element name="selfcol" type="integer" min="0" max="1"> 417 <description><![CDATA[Enable/disable detection of self-collisions (within a creature body). They can only occur when using the ODE simulation engine. If enabled, the creature will have its sticks collide during lifespan.]]></description> 418 </element> 419 <element name="lifespan" type="integer"/> 420 <element name="distance" type="float"/> 421 <element name="c_velocity" type="float"/> 422 <element name="c_vertvelocity" type="float"/> 423 <element name="c_vertpos" type="float"/> 424 <element name="velocity" type="float"/> 425 <element name="vertpos" type="float"/> 426 <element name="vertvel" type="float"/> 427 <element name="center_x" type="float"> 428 <description><![CDATA[Center of gravity]]></description> 429 </element> 430 <element name="center_y" type="float"> 431 <description><![CDATA[Center of gravity]]></description> 432 </element> 433 <element name="center_z" type="float"> 434 <description><![CDATA[Center of gravity]]></description> 435 </element> 436 <element name="user1" type="untyped"/> 437 <element name="user2" type="untyped"/> 438 <element name="user3" type="untyped"/> 439 <element name="orient" type="Orient"> 440 <description><![CDATA[By convention, the orientation of the creature is equal to the orientation of its first Part]]></description> 441 </element> 442 <element name="selfmask" type="integer" min="0" max="2147483647" default="0"/> 443 <element name="othermask" type="integer" min="0" max="2147483647" default="0"/> 444 <element name="uid" type="string"/> 392 445 </type> 393 446 <type name="Dictionary" context="Global context"> … … 397 450 var i; 398 451 for(i=0;i<d.size;i++) Simulator.print(d.getKey(i)+" is "+d.get(i));]]></description> 452 <element name="clear" function="true" type="void"><arguments/></element> 399 453 <element name="size" type="integer"/> 400 <element name="toString" type="string"/> 401 <element name="clear" function="true" type="void"><arguments/></element> 454 <element name="remove" function="true" type="void"> 455 <arguments> 456 <argument name="key" type="untyped"/> 457 </arguments> 458 </element> 459 <element name="get" function="true" type="untyped"> 460 <arguments> 461 <argument name="key" type="untyped"/> 462 </arguments> 463 </element> 464 <element name="getKey" function="true" type="string"> 465 <arguments> 466 <argument name="index" type="integer"/> 467 </arguments> 468 </element> 469 <element name="set" function="true" type="void"> 470 <arguments> 471 <argument name="key" type="untyped"/> 472 <argument name="value" type="untyped"/> 473 </arguments> 474 </element> 402 475 <element name="find" function="true" type="string"> 403 476 <description><![CDATA[returns the element key or null if not found]]></description> … … 406 479 </arguments> 407 480 </element> 408 <element name="get" function="true" type="untyped">409 <arguments>410 <argument name="key" type="untyped"/>411 </arguments>412 </element>413 <element name="getKey" function="true" type="string">414 <arguments>415 <argument name="index" type="integer"/>416 </arguments>417 </element>418 481 <element name="new" function="true" type="Dictionary"><arguments/></element> 419 <element name="remove" function="true" type="void"> 420 <arguments> 421 <argument name="key" type="untyped"/> 422 </arguments> 423 </element> 424 <element name="set" function="true" type="void"> 425 <arguments> 426 <argument name="key" type="untyped"/> 427 <argument name="value" type="untyped"/> 428 </arguments> 429 </element> 482 <element name="toString" type="string"/> 430 483 </type> 431 484 <type name="File" context="Global context"> 432 <description><![CDATA[Provides read/write access to the filesystem. Can be used in the experiment definition to save the experiment state (onExpSave). Files are created in the "scripts_output" subdirectory of the directory where the Framsticks executable is located.]]></description> 433 <element name="EOF" type="integer" min="0" max="1"/> 434 <element name="info" type="string"/> 485 <description><![CDATA[Provides read/write access to the filesystem. Can be used in the experiment definition to save the experiment state (onExpSave) or any other information. Files are created in the "data/scripts_output" subdirectory, which is either near the Framsticks executable (if this subdirectory is writable) or in your user Documents directory.]]></description> 435 486 <element name="name" type="string"/> 436 487 <element name="path" type="string"/> 437 <element name="pathseparator" type="string"/> 438 <element name="append" function="true" type="File "> 488 <element name="info" type="string"/> 489 <element name="writeNameObject" function="true" type="void"> 490 <arguments> 491 <argument name="name" type="string"/> 492 <argument type="Object"/> 493 </arguments> 494 </element> 495 <element name="writeObject" function="true" type="void"> 496 <arguments> 497 <argument type="Object"/> 498 </arguments> 499 </element> 500 <element name="writeObjectBegin" function="true" type="void"> 501 <arguments> 502 <argument type="Object"/> 503 </arguments> 504 </element> 505 <element name="writeObjectField" function="true" type="void"> 506 <arguments> 507 <argument type="Object"/> 508 <argument name="field index or name" type="untyped"/> 509 </arguments> 510 </element> 511 <element name="writeObjectFields" function="true" type="void"> 512 <arguments> 513 <argument type="Object"/> 514 </arguments> 515 </element> 516 <element name="writeObjectFieldForce" function="true" type="void"> 517 <arguments> 518 <argument type="Object"/> 519 <argument name="field index or name" type="untyped"/> 520 </arguments> 521 </element> 522 <element name="writeObjectFieldsForce" function="true" type="void"> 523 <arguments> 524 <argument type="Object"/> 525 </arguments> 526 </element> 527 <element name="writeObjectEnd" function="true" type="void"><arguments/></element> 528 <element name="writeString" function="true" type="void"> 529 <arguments> 530 <argument name="anything" type="untyped"/> 531 </arguments> 532 </element> 533 <element name="writeComment" function="true" type="void"> 534 <arguments> 535 <argument name="anything" type="string"/> 536 </arguments> 537 </element> 538 <element name="readLine" function="true" type="string"><arguments/></element> 539 <element name="readObject" function="true" type="void"> 540 <arguments> 541 <argument type="Object"/> 542 </arguments> 543 </element> 544 <element name="EOF" type="integer" min="0" max="1"/> 545 <element name="readUntilEOF" function="true" type="string"><arguments/></element> 546 <element name="getContents" function="true" type="string"> 547 <description><![CDATA[Shortcut to: var f=File.open(filename); c=f.readUntilEOF(); f.close(); return c;]]></description> 548 <arguments> 549 <argument name="filename" type="string"/> 550 </arguments> 551 </element> 552 <element name="create" function="true" type="File"> 439 553 <arguments> 440 554 <argument name="filename" type="string"/> … … 442 556 </arguments> 443 557 </element> 444 <element name=" appendDirect" function="true" type="File">558 <element name="createDirect" function="true" type="File"> 445 559 <arguments> 446 560 <argument name="filename" type="string"/> 447 561 <argument name="description" type="string"/> 562 </arguments> 563 </element> 564 <element name="append" function="true" type="File "> 565 <arguments> 566 <argument name="filename" type="string"/> 567 <argument name="description" type="string"/> 568 </arguments> 569 </element> 570 <element name="appendDirect" function="true" type="File "> 571 <arguments> 572 <argument name="filename" type="string"/> 573 <argument name="description" type="string"/> 574 </arguments> 575 </element> 576 <element name="flush" function="true" type="void"> 577 <description><![CDATA[Useful for unbuffered disk files only (openDirect, appendDirect)]]></description> 578 <arguments/></element> 579 <element name="open" function="true" type="File "> 580 <arguments> 581 <argument name="filename" type="string"/> 582 </arguments> 583 </element> 584 <element name="new" function="true" type="File "><arguments/></element> 585 <element name="newFromString" function="true" type="File "> 586 <arguments> 587 <argument name="text" type="string"/> 448 588 </arguments> 449 589 </element> … … 451 591 <description><![CDATA[returns file contents if it has been buffered]]></description> 452 592 <arguments/></element> 453 <element name="create" function="true" type="File">454 <arguments>455 <argument name="filename" type="string"/>456 <argument name="description" type="string"/>457 </arguments>458 </element>459 <element name="createDirect" function="true" type="File">460 <arguments>461 <argument name="filename" type="string"/>462 <argument name="description" type="string"/>463 </arguments>464 </element>465 593 <element name="exists" function="true" type="integer" min="0" max="1"> 466 594 <description><![CDATA[Sample: 467 595 File.exists("default.sim") -> return 0 or 1]]></description> 468 596 <arguments/></element> 469 <element name="flush" function="true" type="void"> 470 <description><![CDATA[Useful for unbuffered disk files only (openDirect, appendDirect)]]></description> 471 <arguments/></element> 472 <element name="getContents" function="true" type="string"> 473 <description><![CDATA[Shortcut to: var f=File.open(filename); c=f.readUntilEOF(); f.close(); return c;]]></description> 474 <arguments> 475 <argument name="filename" type="string"/> 476 </arguments> 477 </element> 478 <element name="new" function="true" type="File "><arguments/></element> 479 <element name="newFromString" function="true" type="File "> 480 <arguments> 481 <argument name="text" type="string"/> 482 </arguments> 483 </element> 484 <element name="open" function="true" type="File "> 485 <arguments> 486 <argument name="filename" type="string"/> 487 </arguments> 488 </element> 489 <element name="readLine" function="true" type="string"><arguments/></element> 490 <element name="readObject" function="true" type="void"> 491 <arguments> 492 <argument type="Object"/> 493 </arguments> 494 </element> 495 <element name="readUntilEOF" function="true" type="string"><arguments/></element> 597 <element name="pathseparator" type="string"/> 496 598 <element name="system" function="true" type="integer"> 497 599 <description><![CDATA[Invokes a system command and returns its exit code (0 usually means the command was completed successfully). … … 504 606 </arguments> 505 607 </element> 506 <element name="writeComment" function="true" type="void">507 <arguments>508 <argument name="anything" type="string"/>509 </arguments>510 </element>511 <element name="writeNameObject" function="true" type="void">512 <arguments>513 <argument name="name" type="string"/>514 <argument type="Object"/>515 </arguments>516 </element>517 <element name="writeObject" function="true" type="void">518 <arguments>519 <argument type="Object"/>520 </arguments>521 </element>522 <element name="writeObjectBegin" function="true" type="void">523 <arguments>524 <argument type="Object"/>525 </arguments>526 </element>527 <element name="writeObjectEnd" function="true" type="void"><arguments/></element>528 <element name="writeObjectField" function="true" type="void">529 <arguments>530 <argument type="Object"/>531 <argument name="field index or name" type="untyped"/>532 </arguments>533 </element>534 <element name="writeObjectFieldForce" function="true" type="void">535 <arguments>536 <argument type="Object"/>537 <argument name="field index or name" type="untyped"/>538 </arguments>539 </element>540 <element name="writeObjectFields" function="true" type="void">541 <arguments>542 <argument type="Object"/>543 </arguments>544 </element>545 <element name="writeObjectFieldsForce" function="true" type="void">546 <arguments>547 <argument type="Object"/>548 </arguments>549 </element>550 <element name="writeString" function="true" type="void">551 <arguments>552 <argument name="anything" type="untyped"/>553 </arguments>554 </element>555 608 </type> 556 609 <type name="GenePool" context="Global context"> 557 610 <description><![CDATA[GenePool objects are accessed by GenePools[index], or Genotype.genepool and created by GenePools.addGroup(). Usage of the static GenePool object is no longer recommended. See also: GenePools]]></description> 611 <element name="name" type="string"/> 612 <element name="index" type="integer"/> 613 <element name="size" type="integer"> 614 <description><![CDATA[In standard.expdef, this is equivalent to the number of unique genotypes. Standard experiment definition uses the Genotype.instances field to indicate that some genotypes exist in multiple instances despite having only one item in the group. Other experiment definitions may create multiple copies of the same genotype.]]></description> 615 </element> 616 <element name="totalpop" type="integer"> 617 <description><![CDATA[Takes into account the Genotype.instances field (which may give the total number of instances depending on the experiment definition).]]></description> 618 </element> 619 <element name="fitness" type="string"> 620 <description><![CDATA[(intended for advanced users)]]></description> 621 </element> 558 622 <element name="fitfun" type="integer" min="0" max="1" default="0"> 559 623 <description><![CDATA[Enables fitness scaling.]]></description> … … 567 631 better than the average one.]]></description> 568 632 </element> 569 <element name="fitness" type="string"> 570 <description><![CDATA[(intended for advanced users)]]></description> 571 </element> 572 <element name="index" type="integer"/> 573 <element name="iterator" type="Object"/> 574 <element name="name" type="string"/> 575 <element name="size" type="integer"> 576 <description><![CDATA[In standard.expdef, this is equivalent to the number of unique genotypes. Standard experiment definition uses the Genotype.instances field to indicate that some genotypes exist in multiple instances despite having only one item in the group. Other experiment definitions may create multiple copies of the same genotype.]]></description> 577 </element> 578 <element name="totalpop" type="integer"> 579 <description><![CDATA[Takes into account the Genotype.instances field (which may give the total number of instances depending on the experiment definition).]]></description> 580 </element> 581 <element name="add" function="true" type="Genotype"> 582 <description><![CDATA[Creates a new Genotype from the supplied Genotype, Geno or string. 583 Returns the created Genotype.]]></description> 633 <element name="get" function="true" type="Genotype"> 634 <arguments> 635 <argument name="index" type="integer"/> 636 </arguments> 637 </element> 638 <element name="findGeno" function="true" type="integer" deprecated="true"> 639 <description><![CDATA[Finds the Genotype matching the supplied Geno object. 640 returns genotype index or -1 if not found. 641 Deprecated. Use the more versatile find() instead of this function.]]></description> 642 <arguments> 643 <argument type="Geno"/> 644 </arguments> 645 </element> 646 <element name="findGenotype" function="true" type="Genotype"> 647 <description><![CDATA[Finds the Genotype matching the supplied Genotype object, Geno object, or genotype string. 648 returns genotype object or null if not found.]]></description> 584 649 <arguments> 585 650 <argument name="genotype object or geno object or string genotype" type="untyped"/> 651 </arguments> 652 </element> 653 <element name="findUID" function="true" type="integer"> 654 <arguments> 655 <argument name="uid" type="string"/> 586 656 </arguments> 587 657 </element> … … 594 664 </arguments> 595 665 </element> 596 <element name="best" function="true" type="Genotype">597 <description><![CDATA[Returns the genotype object having the highest fitness. Unrated genotypes (instances==0) are ranked lower than those having at least one instance.]]></description>598 <arguments/></element>599 <element name="clear" function="true" type="void">600 <description><![CDATA[Delete all genotypes. GenePools[group].clear() is equivalent to GenePools.clearGroup(group)]]></description>601 <arguments/></element>602 666 <element name="createFromGeno" function="true" type="Genotype" deprecated="true"> 603 667 <description><![CDATA[same as addGeno (to comply with createFrom... convention) … … 614 678 </arguments> 615 679 </element> 616 <element name="delete" function="true" type="void"> 617 <description><![CDATA[Deletes a genotype.]]></description> 618 <arguments> 619 <argument name="genotype object or index" type="untyped"/> 620 </arguments> 621 </element> 622 <element name="deleteOne" function="true" type="void"> 623 <description><![CDATA[Deletes one individual, i.e. decreases its 'instances' and deletes the genotype if the 'instances' goes to 0.]]></description> 624 <arguments> 625 <argument name="genotype object or index" type="untyped"/> 626 </arguments> 627 </element> 628 <element name="findGeno" function="true" type="integer" deprecated="true"> 629 <description><![CDATA[Finds the Genotype matching the supplied Geno object. 630 returns genotype index or -1 if not found. 631 Deprecated. Use the more versatile find() instead of this function.]]></description> 632 <arguments> 633 <argument type="Geno"/> 634 </arguments> 635 </element> 636 <element name="findGenotype" function="true" type="Genotype"> 637 <description><![CDATA[Finds the Genotype matching the supplied Genotype object, Geno object, or genotype string. 638 returns genotype object or null if not found.]]></description> 680 <element name="add" function="true" type="Genotype"> 681 <description><![CDATA[Creates a new Genotype from the supplied Genotype, Geno or string. 682 Returns the created Genotype.]]></description> 639 683 <arguments> 640 684 <argument name="genotype object or geno object or string genotype" type="untyped"/> 641 685 </arguments> 642 686 </element> 643 <element name="findUID" function="true" type="integer"> 644 <arguments> 645 <argument name="uid" type="string"/> 646 </arguments> 647 </element> 648 <element name="get" function="true" type="Genotype"> 649 <arguments> 650 <argument name="index" type="integer"/> 651 </arguments> 652 </element> 653 <element name="getStatsAvg" function="true" type="float"> 654 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Genotype fields).]]></description> 655 <arguments> 656 <argument name="field name" type="string"/> 657 </arguments> 658 </element> 659 <element name="getStatsMax" function="true" type="float"> 660 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Genotype fields).]]></description> 661 <arguments> 662 <argument name="field name" type="string"/> 663 </arguments> 664 </element> 665 <element name="getStatsMin" function="true" type="float"> 666 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Genotype fields).]]></description> 667 <arguments> 668 <argument name="field name" type="string"/> 669 </arguments> 670 </element> 671 <element name="mergeInstances" function="true" type="void"> 672 <description><![CDATA[Merge instances of the same genotype]]></description> 687 <element name="worst" function="true" type="Genotype"> 688 <description><![CDATA[Returns the genotype object having the lowest fitness. Unrated genotypes (instances==0) are ranked lower than those having at least one instance.]]></description> 689 <arguments/></element> 690 <element name="best" function="true" type="Genotype"> 691 <description><![CDATA[Returns the genotype object having the highest fitness. Unrated genotypes (instances==0) are ranked lower than those having at least one instance.]]></description> 673 692 <arguments/></element> 674 693 <element name="random" function="true" type="Genotype"> 675 694 <description><![CDATA[Returns a random genotype object]]></description> 676 695 <arguments/></element> 677 <element name="randomLikeGeno" function="true" type="Genotype"> 678 <description><![CDATA[Returns a random genotype index similar to the target genotype.]]></description> 679 <arguments> 680 <argument name="minimum similarity" type="float"/> 681 <argument name="target geno" type="Geno"/> 682 </arguments> 683 </element> 696 <element name="roulette" function="true" type="Genotype"> 697 <description><![CDATA[Returns a fitness-proportional genotype object]]></description> 698 <arguments/></element> 684 699 <element name="revroulette" function="true" type="Genotype"> 685 700 <description><![CDATA[Returns a reverse fitness-proportional genotype object]]></description> 686 701 <arguments/></element> 687 <element name="roulette" function="true" type="Genotype"> 688 <description><![CDATA[Returns a fitness-proportional genotype object]]></description> 689 <arguments/></element> 690 <element name="rouletteLikeGeno" function="true" type="Genotype"> 691 <description><![CDATA[Returns a random genotype similar to the target genotype, fitness-proportional.]]></description> 702 <element name="tournament" function="true" type="Genotype"> 703 <description><![CDATA[Returns a tournament winner genotype object]]></description> 704 <arguments> 705 <argument name="genotypes in tournament" type="integer"/> 706 </arguments> 707 </element> 708 <element name="randomLikeGeno" function="true" type="Genotype"> 709 <description><![CDATA[Returns a random genotype index similar to the target genotype. Read about details: 710 http://www.framsticks.com/node/795 711 http://www.framsticks.com/node/890]]></description> 692 712 <arguments> 693 713 <argument name="minimum similarity" type="float"/> … … 695 715 </arguments> 696 716 </element> 717 <element name="rouletteLikeGeno" function="true" type="Genotype"> 718 <description><![CDATA[Returns a random genotype similar to the target genotype, fitness-proportional. Read about details: 719 http://www.framsticks.com/node/795 720 http://www.framsticks.com/node/890]]></description> 721 <arguments> 722 <argument name="minimum similarity" type="float"/> 723 <argument name="target geno" type="Geno"/> 724 </arguments> 725 </element> 726 <element name="delete" function="true" type="void"> 727 <description><![CDATA[Deletes a genotype.]]></description> 728 <arguments> 729 <argument name="genotype object or index" type="untyped"/> 730 </arguments> 731 </element> 732 <element name="deleteOne" function="true" type="void"> 733 <description><![CDATA[Deletes one individual, i.e. decreases its 'instances' and deletes the genotype if the 'instances' goes to 0.]]></description> 734 <arguments> 735 <argument name="genotype object or index" type="untyped"/> 736 </arguments> 737 </element> 738 <element name="clear" function="true" type="void"> 739 <description><![CDATA[Delete all genotypes. GenePools[group].clear() is equivalent to GenePools.clearGroup(group)]]></description> 740 <arguments/></element> 741 <element name="mergeInstances" function="true" type="void"> 742 <description><![CDATA[Merge instances of the same genotype]]></description> 743 <arguments/></element> 697 744 <element name="splitInstances" function="true" type="void"> 698 745 <description><![CDATA[Split genotype instances]]></description> 699 746 <arguments/></element> 700 <element name="tournament" function="true" type="Genotype"> 701 <description><![CDATA[Returns a tournament winner genotype object]]></description> 702 <arguments> 703 <argument name="genotypes in tournament" type="integer"/> 704 </arguments> 705 </element> 706 <element name="worst" function="true" type="Genotype"> 707 <description><![CDATA[Returns the genotype object having the lowest fitness. Unrated genotypes (instances==0) are ranked lower than those having at least one instance.]]></description> 708 <arguments/></element> 747 <element name="iterator" type="Object"/> 748 <element name="getStatsMin" function="true" type="float"> 749 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Genotype fields).]]></description> 750 <arguments> 751 <argument name="field name" type="string"/> 752 </arguments> 753 </element> 754 <element name="getStatsAvg" function="true" type="float"> 755 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Genotype fields).]]></description> 756 <arguments> 757 <argument name="field name" type="string"/> 758 </arguments> 759 </element> 760 <element name="getStatsMax" function="true" type="float"> 761 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Genotype fields).]]></description> 762 <arguments> 763 <argument name="field name" type="string"/> 764 </arguments> 765 </element> 709 766 </type> 710 767 <type name="GenePools" context="Global context"> … … 722 779 g.info="my favorite genotype"; 723 780 g.moveTo(GenePools[0]);]]></description> 781 <element name="group" type="integer" deprecated="true"> 782 <description><![CDATA[Index of the currently selected group (GenePool).]]></description> 783 </element> 784 <element name="size" type="integer"/> 724 785 <element name="genotype" type="integer" deprecated="true"> 725 786 <description><![CDATA[Index of the currently selected genotype or -1 if no genotype is selected.]]></description> 726 787 </element> 727 <element name="group" type="integer" deprecated="true"> 728 <description><![CDATA[Index of the currently selected group (GenePool).]]></description> 729 </element> 730 <element name="iterator" type="Object"/> 731 <element name="size" type="integer"/> 732 <element name="addGroup" function="true" type="GenePool"> 733 <description><![CDATA[Adds a new gene pool.]]></description> 734 <arguments> 735 <argument name="name" type="string"/> 788 <element name="newGenotype" function="true" type="void" deprecated="true"> 789 <description><![CDATA[Makes a new genotype from the supplied string and select the genotype. The resulting genotype is stored in the static Genotype object detached from the genotype group. After calling this function GenePools.genotype is -1 indicating that no genotype from the group is selected. (call "copySelected" if you want to add this gentype to the genotype group).]]></description> 790 <arguments> 791 <argument name="genotype" type="string"/> 792 </arguments> 793 </element> 794 <element name="deleteSelected" function="true" type="void" deprecated="true"> 795 <description><![CDATA[Deletes selected genotype from the gene pool (uses the selected genotype object).]]></description> 796 <arguments/></element> 797 <element name="deleteOne" function="true" type="void" deprecated="true"> 798 <description><![CDATA[Deletes one individual from the gene pool = decreases 'instances' and deletes the genotype if the 'instances' goes to 0.]]></description> 799 <arguments> 800 <argument name="genotype index" type="integer"/> 801 </arguments> 802 </element> 803 <element name="copySelected" function="true" type="void" deprecated="true"> 804 <description><![CDATA[Copies the selected genotype to another group.]]></description> 805 <arguments> 806 <argument name="groupindex" type="integer"/> 807 </arguments> 808 </element> 809 <element name="getFromCreature" function="true" type="void" deprecated="true"> 810 <description><![CDATA[Copies a genotype from the selected creature. The resulting genotype is stored in the static Genotype object detached from the genotype group.]]></description> 811 <arguments/></element> 812 <element name="getFromCreatureObject" function="true" type="void" deprecated="true"> 813 <description><![CDATA[Copies a genotype from the creature object passed in argument. The resulting genotype is stored in the static Genotype object detached from the genotype group.]]></description> 814 <arguments> 815 <argument type="Creature"/> 736 816 </arguments> 737 817 </element> … … 739 819 <description><![CDATA[Updates the current Genotype's performance values merging them with the current Creture's performance. It assumes the Genotype.instances has a reasonable value and performs the proper weighting. Use your own function instead if these conditions are not met in your experiment.]]></description> 740 820 <arguments/></element> 741 <element name=" clear" function="true" type="void">742 <description><![CDATA[ Removes all gene pools except the first one.]]></description>821 <element name="mutateSelected" function="true" type="void" deprecated="true"> 822 <description><![CDATA[Mutates the selected genotype. The resulting genotype is stored in the static Genotype object detached from the genotype group. After calling this function GenePools.genotype is -1 indicating that no genotype from the group is selected.]]></description> 743 823 <arguments/></element> 744 <element name="clearGroup" function="true" type="void" deprecated="true">745 <description><![CDATA[GenePools[group].clear() is more "object oriented" than GenePools.clearGroup(group)]]></description>746 <arguments>747 <argument name="index" type="integer"/>748 </arguments>749 </element>750 <element name="copySelected" function="true" type="void" deprecated="true">751 <description><![CDATA[Copies the selected genotype to another group.]]></description>752 <arguments>753 <argument name="groupindex" type="integer"/>754 </arguments>755 </element>756 824 <element name="crossoverSelected" function="true" type="void" deprecated="true"> 757 825 <description><![CDATA[Crossovers the selected genotype with another one (from the genotype group). The resulting genotype is stored in the static Genotype object detached from the genotype group. After calling this function GenePools.genotype is -1 indicating that no genotype from the group is selected.]]></description> … … 760 828 </arguments> 761 829 </element> 762 <element name="deleteGroup" function="true" type="void"> 763 <description><![CDATA[Removes a gene pool.]]></description> 764 <arguments> 765 <argument name="index" type="integer"/> 766 </arguments> 767 </element> 768 <element name="deleteOne" function="true" type="void" deprecated="true"> 769 <description><![CDATA[Deletes one individual from the gene pool = decreases 'instances' and deletes the genotype if the 'instances' goes to 0.]]></description> 770 <arguments> 771 <argument name="genotype index" type="integer"/> 772 </arguments> 773 </element> 774 <element name="deleteSelected" function="true" type="void" deprecated="true"> 775 <description><![CDATA[Deletes selected genotype from the gene pool (uses the selected genotype object).]]></description> 830 <element name="worst" function="true" type="integer" deprecated="true"> 831 <description><![CDATA[Gets worst genotype index.]]></description> 776 832 <arguments/></element> 833 <element name="random" function="true" type="integer" deprecated="true"> 834 <description><![CDATA[Gets random genotype index.]]></description> 835 <arguments/></element> 836 <element name="roulette" function="true" type="integer" deprecated="true"> 837 <description><![CDATA[Gets fitness-proportional genotype index.]]></description> 838 <arguments/></element> 839 <element name="revroulette" function="true" type="integer" deprecated="true"> 840 <description><![CDATA[Get reverse fitness-proportional genotype index.]]></description> 841 <arguments/></element> 842 <element name="tournament" function="true" type="integer" deprecated="true"> 843 <description><![CDATA[Gets tournament winner genotype.]]></description> 844 <arguments> 845 <argument name="genotypes in tournament" type="integer"/> 846 </arguments> 847 </element> 848 <element name="randomLikeThis" function="true" type="integer" deprecated="true"> 849 <description><![CDATA[Gets a random genotype index similar to the selected one.]]></description> 850 <arguments> 851 <argument name="minimum similarity" type="float"/> 852 </arguments> 853 </element> 854 <element name="likeThisRoulette" function="true" type="integer" deprecated="true"> 855 <description><![CDATA[Gets a random genotype similar to the selected one, fitness-proportional.]]></description> 856 <arguments> 857 <argument name="minimum similarity" type="float"/> 858 </arguments> 859 </element> 777 860 <element name="findGenotype" function="true" type="integer" deprecated="true"> 778 861 <description><![CDATA[Finds a genotype matching the current genotype. It only makes sense when the current genotype is a result of the genetic operator.]]></description> … … 781 864 <description><![CDATA[Finds a genotype matching the selected creature.]]></description> 782 865 <arguments/></element> 866 <element name="addGroup" function="true" type="GenePool"> 867 <description><![CDATA[Adds a new gene pool.]]></description> 868 <arguments> 869 <argument name="name" type="string"/> 870 </arguments> 871 </element> 872 <element name="deleteGroup" function="true" type="void"> 873 <description><![CDATA[Removes a gene pool.]]></description> 874 <arguments> 875 <argument name="index" type="integer"/> 876 </arguments> 877 </element> 878 <element name="clear" function="true" type="void"> 879 <description><![CDATA[Removes all gene pools except the first one.]]></description> 880 <arguments/></element> 881 <element name="clearGroup" function="true" type="void" deprecated="true"> 882 <description><![CDATA[GenePools[group].clear() is more "object oriented" than GenePools.clearGroup(group)]]></description> 883 <arguments> 884 <argument name="index" type="integer"/> 885 </arguments> 886 </element> 783 887 <element name="get" function="true" type="GenePool"> 784 888 <arguments> … … 786 890 </arguments> 787 891 </element> 788 <element name="getFromCreature" function="true" type="void" deprecated="true"> 789 <description><![CDATA[Copies a genotype from the selected creature. The resulting genotype is stored in the static Genotype object detached from the genotype group.]]></description> 790 <arguments/></element> 791 <element name="getFromCreatureObject" function="true" type="void" deprecated="true"> 792 <description><![CDATA[Copies a genotype from the creature object passed in argument. The resulting genotype is stored in the static Genotype object detached from the genotype group.]]></description> 793 <arguments> 794 <argument type="Creature"/> 795 </arguments> 796 </element> 797 <element name="likeThisRoulette" function="true" type="integer" deprecated="true"> 798 <description><![CDATA[Gets a random genotype similar to the selected one, fitness-proportional.]]></description> 799 <arguments> 800 <argument name="minimum similarity" type="float"/> 801 </arguments> 802 </element> 803 <element name="mutateSelected" function="true" type="void" deprecated="true"> 804 <description><![CDATA[Mutates the selected genotype. The resulting genotype is stored in the static Genotype object detached from the genotype group. After calling this function GenePools.genotype is -1 indicating that no genotype from the group is selected.]]></description> 805 <arguments/></element> 806 <element name="newGenotype" function="true" type="void" deprecated="true"> 807 <description><![CDATA[Makes a new genotype from the supplied string and select the genotype. The resulting genotype is stored in the static Genotype object detached from the genotype group. After calling this function GenePools.genotype is -1 indicating that no genotype from the group is selected. (call "copySelected" if you want to add this gentype to the genotype group).]]></description> 808 <arguments> 809 <argument name="genotype" type="string"/> 810 </arguments> 811 </element> 812 <element name="random" function="true" type="integer" deprecated="true"> 813 <description><![CDATA[Gets random genotype index.]]></description> 814 <arguments/></element> 815 <element name="randomLikeThis" function="true" type="integer" deprecated="true"> 816 <description><![CDATA[Gets a random genotype index similar to the selected one.]]></description> 817 <arguments> 818 <argument name="minimum similarity" type="float"/> 819 </arguments> 820 </element> 821 <element name="revroulette" function="true" type="integer" deprecated="true"> 822 <description><![CDATA[Get reverse fitness-proportional genotype index.]]></description> 823 <arguments/></element> 824 <element name="roulette" function="true" type="integer" deprecated="true"> 825 <description><![CDATA[Gets fitness-proportional genotype index.]]></description> 826 <arguments/></element> 827 <element name="tournament" function="true" type="integer" deprecated="true"> 828 <description><![CDATA[Gets tournament winner genotype.]]></description> 829 <arguments> 830 <argument name="genotypes in tournament" type="integer"/> 831 </arguments> 832 </element> 833 <element name="worst" function="true" type="integer" deprecated="true"> 834 <description><![CDATA[Gets worst genotype index.]]></description> 835 <arguments/></element> 892 <element name="iterator" type="Object"/> 836 893 </type> 837 894 <type name="GenMan" context="Global context"> 838 895 <description><![CDATA[Manages various genetic operations, using appropriate operators for the argument genotype format.]]></description> 839 <element name="changedProperty" type="integer"/> 840 <element name="changedPropertyId" type="string"/> 841 <element name="f0_c_del" type="float" min="0" max="100" default="5.0"> 842 <description><![CDATA[]]></description> 843 </element> 844 <element name="f0_c_new" type="float" min="0" max="100" default="5.0"> 845 <description><![CDATA[]]></description> 846 </element> 847 <element name="f0_c_wei" type="float" min="0" max="100" default="10.0"> 848 <description><![CDATA[]]></description> 849 </element> 850 <element name="f0_j_del" type="float" min="0" max="100" default="5.0"> 851 <description><![CDATA[]]></description> 852 </element> 853 <element name="f0_j_new" type="float" min="0" max="100" default="5.0"> 854 <description><![CDATA[]]></description> 855 </element> 856 <element name="f0_j_rsf" type="float" min="0" max="100" default="10.0"> 857 <description><![CDATA[]]></description> 858 </element> 859 <element name="f0_j_stf" type="float" min="0" max="100" default="10.0"> 860 <description><![CDATA[]]></description> 861 </element> 862 <element name="f0_j_stm" type="float" min="0" max="100" default="10.0"> 863 <description><![CDATA[]]></description> 864 </element> 865 <element name="f0_j_vblu" type="float" min="0" max="100" default="0.0"> 866 <description><![CDATA[]]></description> 867 </element> 868 <element name="f0_j_vgrn" type="float" min="0" max="100" default="0.0"> 869 <description><![CDATA[]]></description> 870 </element> 871 <element name="f0_j_vred" type="float" min="0" max="100" default="0.0"> 872 <description><![CDATA[]]></description> 873 </element> 874 <element name="f0_n_del" type="float" min="0" max="100" default="5.0"> 875 <description><![CDATA[]]></description> 876 </element> 877 <element name="f0_n_new" type="float" min="0" max="100" default="5.0"> 878 <description><![CDATA[]]></description> 879 </element> 880 <element name="f0_n_prp" type="float" min="0" max="100" default="10.0"> 881 <description><![CDATA[]]></description> 882 </element> 883 <element name="f0_nodel_tag" type="integer" min="0" max="1" default="1"> 884 <description><![CDATA[You can tag elements using their 'i' field and the i="mi=d" tag. 885 Mutations will not delete such elements. 886 The i="mi=dm" combination is allowed.]]></description> 887 </element> 888 <element name="f0_nomod_tag" type="integer" min="0" max="1" default="1"> 889 <description><![CDATA[You can tag elements using their 'i' field and the i="mi=m" tag. 890 Mutations will not modify properties of such elements. 891 The i="mi=md" combination is allowed.]]></description> 892 </element> 893 <element name="f0_p_asm" type="float" min="0" max="100" default="10.0"> 894 <description><![CDATA[]]></description> 895 </element> 896 <element name="f0_p_del" type="float" min="0" max="100" default="5.0"> 897 <description><![CDATA[]]></description> 898 </element> 899 <element name="f0_p_frc" type="float" min="0" max="100" default="10.0"> 900 <description><![CDATA[]]></description> 901 </element> 902 <element name="f0_p_ing" type="float" min="0" max="100" default="10.0"> 903 <description><![CDATA[]]></description> 904 </element> 905 <element name="f0_p_mas" type="float" min="0" max="100" default="10.0"> 906 <description><![CDATA[]]></description> 907 </element> 908 <element name="f0_p_new" type="float" min="0" max="100" default="5.0"> 909 <description><![CDATA[]]></description> 910 </element> 911 <element name="f0_p_pos" type="float" min="0" max="100" default="10.0"> 912 <description><![CDATA[]]></description> 913 </element> 914 <element name="f0_p_swp" type="float" min="0" max="100" default="10.0"> 915 <description><![CDATA[]]></description> 916 </element> 917 <element name="f0_p_vsiz" type="float" min="0" max="100" default="0.0"> 918 <description><![CDATA[]]></description> 919 </element> 920 <element name="f1_mut_exmod" type="string"> 921 <description><![CDATA[Modifiers that will not be added nor deleted during mutation 922 (all: LlRrCcQqFfMmIiWwEeAaSsDdGgBbHh)]]></description> 923 </element> 924 <element name="f1_nmConn" type="float" min="0" max="100" default="0.1"> 925 <description><![CDATA[]]></description> 926 </element> 927 <element name="f1_nmNeu" type="float" min="0" max="100" default="0.05"> 928 <description><![CDATA[Adds a (connected) neuron or removes a neuron]]></description> 929 </element> 930 <element name="f1_nmProp" type="float" min="0" max="100" default="0.1"> 931 <description><![CDATA[]]></description> 932 </element> 933 <element name="f1_nmVal" type="float" min="0" max="100" default="0.05"/> 934 <element name="f1_nmWei" type="float" min="0" max="100" default="1.0"/> 935 <element name="f1_smComma" type="float" min="0" max="100" default="0.02"/> 936 <element name="f1_smJunct" type="float" min="0" max="100" default="0.02"/> 937 <element name="f1_smModif" type="float" min="0" max="100" default="0.1"> 938 <description><![CDATA[Modifiers: LlRrCcQqFfMmIiWwEeAaSsDdGgBbHh]]></description> 939 </element> 940 <element name="f1_smX" type="float" min="0" max="100" default="0.05"/> 941 <element name="f1_xo_propor" type="integer" min="0" max="1" default="1"> 942 <description><![CDATA[Cross over (exchange) corresponding segments of the two parent genotypes? 943 944 f1 uses a two-point crossing over. 945 If this option is turned on, cut points will be selected proportionally to neural genes. 946 Thus, if both parents have the same number of neurons, then this will be preserved in their children.]]></description> 947 </element> 948 <element name="f2_mutAddOper" type="float" min="0" max="1" default="0.4"> 949 <description><![CDATA[]]></description> 950 </element> 951 <element name="f2_mutConnElem" type="float" min="0" max="1" default="0.33"> 952 <description><![CDATA[]]></description> 953 </element> 954 <element name="f2_mutDelOper" type="float" min="0" max="1" default="0.1"> 955 <description><![CDATA[]]></description> 956 </element> 957 <element name="f2_mutHandleOper" type="float" min="0" max="1" default="0.3"> 958 <description><![CDATA[]]></description> 959 </element> 960 <element name="f2_mutJointElem" type="float" min="0" max="1" default="0.33"> 961 <description><![CDATA[]]></description> 962 </element> 963 <element name="f2_mutNeuroElem" type="float" min="0" max="1" default="0.33"> 964 <description><![CDATA[]]></description> 965 </element> 966 <element name="f2_mutPropOper" type="float" min="0" max="1" default="0.2"> 967 <description><![CDATA[]]></description> 968 </element> 969 <element name="f3_mutDelIns" type="float" min="0" max="1" default="0.1"> 970 <description><![CDATA[]]></description> 971 </element> 972 <element name="f3_mutDelInsLength" type="integer" min="1" max="100" default="5"> 973 <description><![CDATA[]]></description> 974 </element> 975 <element name="f3_mutDelInsPerChar" type="float" min="0" max="1" default="0.05"> 976 <description><![CDATA[]]></description> 977 </element> 978 <element name="f3_mutDuplication" type="float" min="0" max="1" default="0.05"> 979 <description><![CDATA[]]></description> 980 </element> 981 <element name="f3_mutSubstitution" type="float" min="0" max="1" default="0.6"> 982 <description><![CDATA[]]></description> 983 </element> 984 <element name="f3_mutSubstPerChar" type="float" min="0" max="1" default="0.1"> 985 <description><![CDATA[]]></description> 986 </element> 987 <element name="f3_mutTranslocation" type="float" min="0" max="1" default="0.15"> 988 <description><![CDATA[]]></description> 989 </element> 990 <element name="f3_xovCrossingOver" type="float" min="0" max="1" default="0.2"> 991 <description><![CDATA[]]></description> 992 </element> 993 <element name="f3_xovGeneTransfer" type="float" min="0" max="1" default="0.8"> 994 <description><![CDATA[]]></description> 995 </element> 996 <element name="f4_mut_add" type="float" min="0" max="100" default="50.0"> 997 <description><![CDATA[mutation: probability of adding a node]]></description> 998 </element> 999 <element name="f4_mut_add_conn" type="float" min="0" max="100" default="15.0"> 1000 <description><![CDATA[add node mutation: probability of adding a neural connection]]></description> 1001 </element> 1002 <element name="f4_mut_add_div" type="float" min="0" max="100" default="20.0"> 1003 <description><![CDATA[add node mutation: probability of adding a division]]></description> 1004 </element> 1005 <element name="f4_mut_add_neupar" type="float" min="0" max="100" default="5.0"> 1006 <description><![CDATA[add node mutation: probability of adding a neuron property/modifier]]></description> 1007 </element> 1008 <element name="f4_mut_add_rep" type="float" min="0" max="100" default="10.0"> 1009 <description><![CDATA[add node mutation: probability of adding a repetition]]></description> 1010 </element> 1011 <element name="f4_mut_add_simp" type="float" min="0" max="100" default="50.0"> 1012 <description><![CDATA[add node mutation: probability of adding a random, simple gene]]></description> 1013 </element> 1014 <element name="f4_mut_del" type="float" min="0" max="100" default="20.0"> 1015 <description><![CDATA[mutation: probability of deleting a node]]></description> 1016 </element> 1017 <element name="f4_mut_mod" type="float" min="0" max="100" default="30.0"> 1018 <description><![CDATA[mutation: probability of changing a node]]></description> 1019 </element> 1020 <element name="f9_mut" type="float" min="0" max="1" default="0.1"> 1021 <description><![CDATA[How many genes should be mutated during single mutation (1=all genes, 0.1=ten percent)]]></description> 1022 </element> 1023 <element name="fF_xover" type="float" min="0" max="0.5" default="0.5"> 1024 <description><![CDATA[0.5 => children are averaged parents. 1025 0.2 => children are only 20% different from parents. 1026 0 => each child is identical to one parent (no crossover).]]></description> 1027 </element> 1028 <element name="gen_extmutinfo" type="integer" min="0" max="2" default="0"> 1029 <description><![CDATA[If active, information about employed mutation method will be stored in the 'info' field of each mutated genotype.]]></description> 896 <element name="gen_hist" type="integer" min="0" max="1" default="0"> 897 <description><![CDATA[Required for phylogenetic analysis]]></description> 1030 898 </element> 1031 899 <element name="gen_hilite" type="integer" min="0" max="1" default="1"> … … 1033 901 (slows down viewing/editing of huge genotypes)]]></description> 1034 902 </element> 1035 <element name="gen_hist" type="integer" min="0" max="1" default="0"> 1036 <description><![CDATA[Required for phylogenetic analysis]]></description> 1037 </element> 903 <element name="gen_extmutinfo" type="integer" min="0" max="2" default="0"> 904 <description><![CDATA[If active, information about employed mutation method will be stored in the 'info' field of each mutated genotype.]]></description> 905 </element> 906 <element name="operReport" function="true" type="void"> 907 <description><![CDATA[Show available genetic operators]]></description> 908 <arguments/></element> 909 <element name="toHTML" function="true" type="string"> 910 <description><![CDATA[returns genotype expressed as colored HTML]]></description> 911 <arguments> 912 <argument type="string"/> 913 </arguments> 914 </element> 915 <element name="toHTMLshort" function="true" type="string"> 916 <description><![CDATA[returns genotype (abbreviated if needed) expressed as colored HTML]]></description> 917 <arguments> 918 <argument type="string"/> 919 </arguments> 920 </element> 921 <element name="validate" function="true" type="Geno"> 922 <description><![CDATA[returns validated (if possible) Geno object from supplied Geno]]></description> 923 <arguments> 924 <argument type="Geno"/> 925 </arguments> 926 </element> 927 <element name="mutate" function="true" type="Geno"> 928 <description><![CDATA[returns mutated Geno object from supplied Geno]]></description> 929 <arguments> 930 <argument type="Geno"/> 931 </arguments> 932 </element> 933 <element name="crossOver" function="true" type="Geno"> 934 <description><![CDATA[returns crossed over genotype]]></description> 935 <arguments> 936 <argument type="Geno"/> 937 <argument type="Geno"/> 938 </arguments> 939 </element> 940 <element name="getSimplest" function="true" type="Geno"> 941 <description><![CDATA[returns the simplest genotype for a given encoding (format). 0 means f0, 4 means f4, etc.]]></description> 942 <arguments> 943 <argument name="format" type="integer"/> 944 </arguments> 945 </element> 946 <element name="clear" function="true"/> 947 <element name="add" function="true"/> 948 <element name="remove" function="true"/> 949 <element name="addGroup" function="true"/> 950 <element name="removeGroup" function="true"/> 951 <element name="changedProperty" type="integer"/> 952 <element name="changedPropertyId" type="string"/> 1038 953 <element name="genoper_f0" type="integer" min="0" max="0"> 1039 954 <description><![CDATA[]]></description> … … 1303 1218 time (t) float 0..6.28319]]></description> 1304 1219 </element> 1305 <element name="add" function="true"/> 1306 <element name="addGroup" function="true"/> 1307 <element name="clear" function="true"/> 1308 <element name="crossOver" function="true" type="Geno"> 1309 <description><![CDATA[returns crossed over genotype]]></description> 1310 <arguments> 1311 <argument type="Geno"/> 1312 <argument type="Geno"/> 1313 </arguments> 1314 </element> 1315 <element name="getSimplest" function="true" type="Geno"> 1316 <description><![CDATA[returns the simplest genotype for a given encoding (format). 0 means f0, 4 means f4, etc.]]></description> 1317 <arguments> 1318 <argument name="format" type="integer"/> 1319 </arguments> 1320 </element> 1321 <element name="mutate" function="true" type="Geno"> 1322 <description><![CDATA[returns mutated Geno object from supplied Geno]]></description> 1323 <arguments> 1324 <argument type="Geno"/> 1325 </arguments> 1326 </element> 1327 <element name="operReport" function="true" type="void"> 1328 <description><![CDATA[Show available genetic operators]]></description> 1329 <arguments/></element> 1330 <element name="remove" function="true"/> 1331 <element name="removeGroup" function="true"/> 1332 <element name="toHTML" function="true" type="string"> 1333 <description><![CDATA[returns genotype expressed as colored HTML]]></description> 1334 <arguments> 1335 <argument type="string"/> 1336 </arguments> 1337 </element> 1338 <element name="toHTMLshort" function="true" type="string"> 1339 <description><![CDATA[returns genotype (abbreviated if needed) expressed as colored HTML]]></description> 1340 <arguments> 1341 <argument type="string"/> 1342 </arguments> 1343 </element> 1344 <element name="validate" function="true" type="Geno"> 1345 <description><![CDATA[returns validated (if possible) Geno object from supplied Geno]]></description> 1346 <arguments> 1347 <argument type="Geno"/> 1348 </arguments> 1220 <element name="f0_nodel_tag" type="integer" min="0" max="1" default="1"> 1221 <description><![CDATA[You can tag elements using their 'i' field and the i="mi=d" tag. 1222 Mutations will not delete such elements. 1223 The i="mi=dm" combination is allowed.]]></description> 1224 </element> 1225 <element name="f0_nomod_tag" type="integer" min="0" max="1" default="1"> 1226 <description><![CDATA[You can tag elements using their 'i' field and the i="mi=m" tag. 1227 Mutations will not modify properties of such elements. 1228 The i="mi=md" combination is allowed.]]></description> 1229 </element> 1230 <element name="f0_p_new" type="float" min="0" max="100" default="5.0"> 1231 <description><![CDATA[]]></description> 1232 </element> 1233 <element name="f0_p_del" type="float" min="0" max="100" default="5.0"> 1234 <description><![CDATA[]]></description> 1235 </element> 1236 <element name="f0_p_swp" type="float" min="0" max="100" default="10.0"> 1237 <description><![CDATA[]]></description> 1238 </element> 1239 <element name="f0_p_pos" type="float" min="0" max="100" default="10.0"> 1240 <description><![CDATA[]]></description> 1241 </element> 1242 <element name="f0_p_mas" type="float" min="0" max="100" default="10.0"> 1243 <description><![CDATA[]]></description> 1244 </element> 1245 <element name="f0_p_frc" type="float" min="0" max="100" default="10.0"> 1246 <description><![CDATA[]]></description> 1247 </element> 1248 <element name="f0_p_ing" type="float" min="0" max="100" default="10.0"> 1249 <description><![CDATA[]]></description> 1250 </element> 1251 <element name="f0_p_asm" type="float" min="0" max="100" default="10.0"> 1252 <description><![CDATA[]]></description> 1253 </element> 1254 <element name="f0_p_vsiz" type="float" min="0" max="100" default="0.0"> 1255 <description><![CDATA[]]></description> 1256 </element> 1257 <element name="f0_j_new" type="float" min="0" max="100" default="5.0"> 1258 <description><![CDATA[]]></description> 1259 </element> 1260 <element name="f0_j_del" type="float" min="0" max="100" default="5.0"> 1261 <description><![CDATA[]]></description> 1262 </element> 1263 <element name="f0_j_stm" type="float" min="0" max="100" default="10.0"> 1264 <description><![CDATA[]]></description> 1265 </element> 1266 <element name="f0_j_stf" type="float" min="0" max="100" default="10.0"> 1267 <description><![CDATA[]]></description> 1268 </element> 1269 <element name="f0_j_rsf" type="float" min="0" max="100" default="10.0"> 1270 <description><![CDATA[]]></description> 1271 </element> 1272 <element name="f0_j_vred" type="float" min="0" max="100" default="0.0"> 1273 <description><![CDATA[]]></description> 1274 </element> 1275 <element name="f0_j_vgrn" type="float" min="0" max="100" default="0.0"> 1276 <description><![CDATA[]]></description> 1277 </element> 1278 <element name="f0_j_vblu" type="float" min="0" max="100" default="0.0"> 1279 <description><![CDATA[]]></description> 1280 </element> 1281 <element name="f0_n_new" type="float" min="0" max="100" default="5.0"> 1282 <description><![CDATA[]]></description> 1283 </element> 1284 <element name="f0_n_del" type="float" min="0" max="100" default="5.0"> 1285 <description><![CDATA[]]></description> 1286 </element> 1287 <element name="f0_n_prp" type="float" min="0" max="100" default="10.0"> 1288 <description><![CDATA[]]></description> 1289 </element> 1290 <element name="f0_c_new" type="float" min="0" max="100" default="5.0"> 1291 <description><![CDATA[]]></description> 1292 </element> 1293 <element name="f0_c_del" type="float" min="0" max="100" default="5.0"> 1294 <description><![CDATA[]]></description> 1295 </element> 1296 <element name="f0_c_wei" type="float" min="0" max="100" default="10.0"> 1297 <description><![CDATA[]]></description> 1298 </element> 1299 <element name="f1_xo_propor" type="integer" min="0" max="1" default="1"> 1300 <description><![CDATA[Cross over (exchange) corresponding segments of the two parent genotypes? 1301 1302 f1 uses a two-point crossing over. 1303 If this option is turned on, cut points will be selected proportionally to neural genes. 1304 Thus, if both parents have the same number of neurons, then this will be preserved in their children.]]></description> 1305 </element> 1306 <element name="f1_smX" type="float" min="0" max="100" default="0.05"/> 1307 <element name="f1_smJunct" type="float" min="0" max="100" default="0.02"/> 1308 <element name="f1_smComma" type="float" min="0" max="100" default="0.02"/> 1309 <element name="f1_smModif" type="float" min="0" max="100" default="0.1"> 1310 <description><![CDATA[Modifiers: LlRrCcQqFfMmIiWwEeAaSsDdGgBbHh]]></description> 1311 </element> 1312 <element name="f1_mut_exmod" type="string"> 1313 <description><![CDATA[Modifiers that will not be added nor deleted during mutation 1314 (all: LlRrCcQqFfMmIiWwEeAaSsDdGgBbHh)]]></description> 1315 </element> 1316 <element name="f1_nmNeu" type="float" min="0" max="100" default="0.05"> 1317 <description><![CDATA[Adds a (connected) neuron or removes a neuron]]></description> 1318 </element> 1319 <element name="f1_nmConn" type="float" min="0" max="100" default="0.1"> 1320 <description><![CDATA[]]></description> 1321 </element> 1322 <element name="f1_nmProp" type="float" min="0" max="100" default="0.1"> 1323 <description><![CDATA[]]></description> 1324 </element> 1325 <element name="f1_nmWei" type="float" min="0" max="100" default="1.0"/> 1326 <element name="f1_nmVal" type="float" min="0" max="100" default="0.05"/> 1327 <element name="f2_mutAddOper" type="float" min="0" max="1" default="0.4"> 1328 <description><![CDATA[]]></description> 1329 </element> 1330 <element name="f2_mutJointElem" type="float" min="0" max="1" default="0.33"> 1331 <description><![CDATA[]]></description> 1332 </element> 1333 <element name="f2_mutNeuroElem" type="float" min="0" max="1" default="0.33"> 1334 <description><![CDATA[]]></description> 1335 </element> 1336 <element name="f2_mutConnElem" type="float" min="0" max="1" default="0.33"> 1337 <description><![CDATA[]]></description> 1338 </element> 1339 <element name="f2_mutDelOper" type="float" min="0" max="1" default="0.1"> 1340 <description><![CDATA[]]></description> 1341 </element> 1342 <element name="f2_mutHandleOper" type="float" min="0" max="1" default="0.3"> 1343 <description><![CDATA[]]></description> 1344 </element> 1345 <element name="f2_mutPropOper" type="float" min="0" max="1" default="0.2"> 1346 <description><![CDATA[]]></description> 1347 </element> 1348 <element name="f3_mutSubstitution" type="float" min="0" max="1" default="0.6"> 1349 <description><![CDATA[]]></description> 1350 </element> 1351 <element name="f3_mutSubstPerChar" type="float" min="0" max="1" default="0.1"> 1352 <description><![CDATA[]]></description> 1353 </element> 1354 <element name="f3_mutDelIns" type="float" min="0" max="1" default="0.1"> 1355 <description><![CDATA[]]></description> 1356 </element> 1357 <element name="f3_mutDelInsPerChar" type="float" min="0" max="1" default="0.05"> 1358 <description><![CDATA[]]></description> 1359 </element> 1360 <element name="f3_mutDelInsLength" type="integer" min="1" max="100" default="5"> 1361 <description><![CDATA[]]></description> 1362 </element> 1363 <element name="f3_mutDuplication" type="float" min="0" max="1" default="0.05"> 1364 <description><![CDATA[]]></description> 1365 </element> 1366 <element name="f3_mutTranslocation" type="float" min="0" max="1" default="0.15"> 1367 <description><![CDATA[]]></description> 1368 </element> 1369 <element name="f3_xovGeneTransfer" type="float" min="0" max="1" default="0.8"> 1370 <description><![CDATA[]]></description> 1371 </element> 1372 <element name="f3_xovCrossingOver" type="float" min="0" max="1" default="0.2"> 1373 <description><![CDATA[]]></description> 1374 </element> 1375 <element name="f4_mut_add" type="float" min="0" max="100" default="50.0"> 1376 <description><![CDATA[mutation: probability of adding a node]]></description> 1377 </element> 1378 <element name="f4_mut_add_div" type="float" min="0" max="100" default="20.0"> 1379 <description><![CDATA[add node mutation: probability of adding a division]]></description> 1380 </element> 1381 <element name="f4_mut_add_conn" type="float" min="0" max="100" default="15.0"> 1382 <description><![CDATA[add node mutation: probability of adding a neural connection]]></description> 1383 </element> 1384 <element name="f4_mut_add_neupar" type="float" min="0" max="100" default="5.0"> 1385 <description><![CDATA[add node mutation: probability of adding a neuron property/modifier]]></description> 1386 </element> 1387 <element name="f4_mut_add_rep" type="float" min="0" max="100" default="10.0"> 1388 <description><![CDATA[add node mutation: probability of adding a repetition]]></description> 1389 </element> 1390 <element name="f4_mut_add_simp" type="float" min="0" max="100" default="50.0"> 1391 <description><![CDATA[add node mutation: probability of adding a random, simple gene]]></description> 1392 </element> 1393 <element name="f4_mut_del" type="float" min="0" max="100" default="20.0"> 1394 <description><![CDATA[mutation: probability of deleting a node]]></description> 1395 </element> 1396 <element name="f4_mut_mod" type="float" min="0" max="100" default="30.0"> 1397 <description><![CDATA[mutation: probability of changing a node]]></description> 1398 </element> 1399 <element name="f9_mut" type="float" min="0" max="1" default="0.1"> 1400 <description><![CDATA[How many genes should be mutated during single mutation (1=all genes, 0.1=ten percent)]]></description> 1401 </element> 1402 <element name="fF_xover" type="float" min="0" max="0.5" default="0.5"> 1403 <description><![CDATA[0.5 => children are averaged parents. 1404 0.2 => children are only 20% different from parents. 1405 0 => each child is identical to one parent (no crossover).]]></description> 1349 1406 </element> 1350 1407 </type> … … 1354 1411 <description><![CDATA[]]></description> 1355 1412 </element> 1413 <element name="gen_mvalid" type="integer"> 1414 <description><![CDATA[]]></description> 1415 </element> 1416 <element name="gen_mvalidated" type="integer"> 1417 <description><![CDATA[]]></description> 1418 </element> 1419 <element name="gen_minvalid" type="integer"> 1420 <description><![CDATA[couldn't be repaired]]></description> 1421 </element> 1356 1422 <element name="gen_mfailed" type="integer"> 1357 1423 <description><![CDATA[couldn't be performed]]></description> 1358 1424 </element> 1359 <element name="gen_minvalid" type="integer"> 1425 <element name="gen_xovalid" type="integer"> 1426 <description><![CDATA[]]></description> 1427 </element> 1428 <element name="gen_xovalidated" type="integer"> 1429 <description><![CDATA[]]></description> 1430 </element> 1431 <element name="gen_xoinvalid" type="integer"> 1360 1432 <description><![CDATA[couldn't be repaired]]></description> 1433 </element> 1434 <element name="gen_xofailed" type="integer"> 1435 <description><![CDATA[couldn't be performed]]></description> 1361 1436 </element> 1362 1437 <element name="gen_mutimpr" type="float"> 1363 1438 <description><![CDATA[total cumulative mutation change]]></description> 1364 1439 </element> 1365 <element name="gen_mvalid" type="integer">1366 <description><![CDATA[]]></description>1367 </element>1368 <element name="gen_mvalidated" type="integer">1369 <description><![CDATA[]]></description>1370 </element>1371 <element name="gen_xofailed" type="integer">1372 <description><![CDATA[couldn't be performed]]></description>1373 </element>1374 1440 <element name="gen_xoimpr" type="float"> 1375 1441 <description><![CDATA[total cumulative crossover change]]></description> 1376 </element>1377 <element name="gen_xoinvalid" type="integer">1378 <description><![CDATA[couldn't be repaired]]></description>1379 </element>1380 <element name="gen_xovalid" type="integer">1381 <description><![CDATA[]]></description>1382 </element>1383 <element name="gen_xovalidated" type="integer">1384 <description><![CDATA[]]></description>1385 1442 </element> 1386 1443 <element name="clrstats" function="true" type="void"> … … 1391 1448 <description><![CDATA[All information about a single genotype. 1392 1449 This is a genetics-only object which does not contain any performance data. See also: Genotype class]]></description> 1393 <element name="autoname" type="string"/>1394 <element name="f0genotype" type="string">1395 <description><![CDATA[converted to f0 genotype]]></description>1396 </element>1397 <element name="format" type="integer">1398 <description><![CDATA[Genotype format]]></description>1399 </element>1400 <element name="genotype" type="string"/>1401 <element name="info" type="string">1402 <description><![CDATA[Additional information or comments]]></description>1403 </element>1404 <element name="isValid" type="integer" min="0" max="1"/>1405 1450 <element name="name" type="string"/> 1406 1451 <element name="rawgenotype" type="string"> 1407 1452 <description><![CDATA[Genotype, excluding the format specifier]]></description> 1408 1453 </element> 1409 <element name="toVector" type="Vector"/> 1454 <element name="info" type="string"> 1455 <description><![CDATA[Additional information or comments]]></description> 1456 </element> 1457 <element name="format" type="integer"> 1458 <description><![CDATA[Genotype format]]></description> 1459 </element> 1460 <element name="genotype" type="string"/> 1461 <element name="isValid" type="integer" min="0" max="1"/> 1410 1462 <element name="getConverted" function="true" type="Geno"> 1411 1463 <arguments> … … 1413 1465 </arguments> 1414 1466 </element> 1467 <element name="f0genotype" type="string"> 1468 <description><![CDATA[converted to f0 genotype]]></description> 1469 </element> 1415 1470 <element name="new" function="true" type="Geno"><arguments/></element> 1471 <element name="newFromString" function="true" type="Geno"> 1472 <arguments> 1473 <argument name="genotype" type="string"/> 1474 </arguments> 1475 </element> 1416 1476 <element name="newFrom" function="true" type="Geno"> 1417 1477 <arguments> … … 1422 1482 </arguments> 1423 1483 </element> 1424 <element name="newFromString" function="true" type="Geno"> 1425 <arguments> 1426 <argument name="genotype" type="string"/> 1427 </arguments> 1428 </element> 1484 <element name="autoname" type="string"/> 1485 <element name="toVector" type="Vector"/> 1429 1486 <element name="newFromVector" function="true" type="Geno"> 1430 1487 <arguments> … … 1436 1493 <description><![CDATA[A Genotype with the associated performance information. Adding genotypes to GenePool makes them accessible in Framsticks GUI and enables the use of GenePool selection methods. 1437 1494 Before version 4.0rc4 the static Genotype object was used in functions operating on the "selected" genotype. This is now deprecated as all operations can be performed using the more convenient direct access (see GenePools).]]></description> 1438 <element name="convtrace1" type="string"/> 1495 <element name="name" type="string"/> 1496 <element name="genotype" type="string"/> 1497 <element name="info" type="string"> 1498 <description><![CDATA[Additional information or comments]]></description> 1499 </element> 1500 <element name="simi" type="float"> 1501 <description><![CDATA[Read about details: 1502 http://www.framsticks.com/node/795 1503 http://www.framsticks.com/node/890]]></description> 1504 </element> 1505 <element name="energ0" type="float"/> 1506 <element name="strsiz" type="float"/> 1507 <element name="strjoints" type="float"/> 1508 <element name="nnsiz" type="float"/> 1509 <element name="nncon" type="float"/> 1510 <element name="numparts" type="float"/> 1511 <element name="numjoints" type="float"/> 1512 <element name="numneurons" type="float"/> 1513 <element name="numconnections" type="float"/> 1514 <element name="num" type="integer"/> 1515 <element name="gnum" type="integer"/> 1516 <element name="popsiz" type="integer"/> 1517 <element name="instances" type="integer"> 1518 <description><![CDATA[Copies of this genotype]]></description> 1519 </element> 1520 <element name="lifespan" type="float"> 1521 <description><![CDATA[Average life span]]></description> 1522 </element> 1523 <element name="velocity" type="float"> 1524 <description><![CDATA[Average velocity]]></description> 1525 </element> 1439 1526 <element name="distance" type="float"/> 1440 <element name="energ0" type="float"/> 1441 <element name="f0genotype" type="string"> 1442 <description><![CDATA[converted to f0 genotype]]></description> 1443 </element> 1527 <element name="vertvel" type="float"/> 1528 <element name="vertpos" type="float"/> 1444 1529 <element name="fit" type="float"/> 1445 1530 <element name="fit2" type="float"> 1446 1531 <description><![CDATA[Fitness shifted by (avg-n*stddev)]]></description> 1447 1532 </element> 1533 <element name="f0genotype" type="string"> 1534 <description><![CDATA[converted to f0 genotype]]></description> 1535 </element> 1536 <element name="convtrace1" type="string"/> 1537 <element name="user1" type="untyped"/> 1538 <element name="user2" type="untyped"/> 1539 <element name="user3" type="untyped"/> 1540 <element name="mutate" function="true" type="void"><arguments/></element> 1541 <element name="isValid" type="integer" min="0" max="1"/> 1542 <element name="getNormalized" function="true" type="float"> 1543 <arguments> 1544 <argument name="property name or index" type="untyped"/> 1545 </arguments> 1546 </element> 1547 <element name="geno" type="Geno"> 1548 <description><![CDATA[Geno object for this Genotype]]></description> 1549 </element> 1550 <element name="uid" type="string"> 1551 <description><![CDATA[Unique identifier]]></description> 1552 </element> 1553 <element name="getModel" function="true" type="Model"><arguments/></element> 1554 <element name="splitInstances" function="true" type="void"><arguments/></element> 1555 <element name="newFromString" function="true" type="Genotype"> 1556 <arguments> 1557 <argument name="genotype" type="string"/> 1558 </arguments> 1559 </element> 1560 <element name="newFromGeno" function="true" type="Genotype"> 1561 <arguments> 1562 <argument name="geno" type="Geno"/> 1563 </arguments> 1564 </element> 1565 <element name="newFromCreature" function="true" type="Genotype"> 1566 <arguments> 1567 <argument name="creature" type="Creature"/> 1568 </arguments> 1569 </element> 1570 <element name="addPerformanceFromCreature" function="true" type="void"> 1571 <description><![CDATA[Updates the Genotype's performance values merging them with the supplied Creture's performance. It assumes the Genotype.instances has a reasonable value and performs the proper weighting. Use your own function instead if these conditions are not met in your experiment.]]></description> 1572 <arguments> 1573 <argument type="Creature"/> 1574 </arguments> 1575 </element> 1576 <element name="moveTo" function="true" type="void"> 1577 <description><![CDATA[the genotype is removed from its current pool when pool=null]]></description> 1578 <arguments> 1579 <argument name="pool" type="GenePool"/> 1580 </arguments> 1581 </element> 1582 <element name="copyTo" function="true" type="Genotype"> 1583 <description><![CDATA[returns the duplicate genotype, created in the target pool]]></description> 1584 <arguments> 1585 <argument name="pool" type="GenePool"/> 1586 </arguments> 1587 </element> 1588 <element name="delete" function="true" type="void"><arguments/></element> 1589 <element name="deleteOne" function="true" type="void"> 1590 <description><![CDATA[]]></description> 1591 <arguments/></element> 1448 1592 <element name="genepool" type="untyped"> 1449 1593 <description><![CDATA[GenePool object or null when not in pool]]></description> 1450 1594 </element> 1451 <element name="geno" type="Geno">1452 <description><![CDATA[Geno object for this Genotype]]></description>1453 </element>1454 <element name="genotype" type="string"/>1455 <element name="gnum" type="integer"/>1456 1595 <element name="index" type="integer"> 1457 1596 <description><![CDATA[-1 when not in pool. 1458 1597 Note that the index changes depending on the current genotype position in the pool. Use Genotype.uid if you need a permanent identifier that persists through the entire object lifetime.]]></description> 1459 1598 </element> 1460 <element name="info" type="string">1461 <description><![CDATA[Additional information or comments]]></description>1462 </element>1463 <element name="instances" type="integer">1464 <description><![CDATA[Copies of this genotype]]></description>1465 </element>1466 <element name="isValid" type="integer" min="0" max="1"/>1467 <element name="lifespan" type="float">1468 <description><![CDATA[Average life span]]></description>1469 </element>1470 <element name="name" type="string"/>1471 <element name="nncon" type="float"/>1472 <element name="nnsiz" type="float"/>1473 <element name="num" type="integer"/>1474 <element name="numconnections" type="float"/>1475 <element name="numjoints" type="float"/>1476 <element name="numneurons" type="float"/>1477 <element name="numparts" type="float"/>1478 <element name="popsiz" type="integer"/>1479 <element name="simi" type="float"/>1480 <element name="strjoints" type="float"/>1481 <element name="strsiz" type="float"/>1482 <element name="uid" type="string">1483 <description><![CDATA[Unique identifier]]></description>1484 </element>1485 <element name="user1" type="untyped"/>1486 <element name="user2" type="untyped"/>1487 <element name="user3" type="untyped"/>1488 <element name="velocity" type="float">1489 <description><![CDATA[Average velocity]]></description>1490 </element>1491 <element name="vertpos" type="float"/>1492 <element name="vertvel" type="float"/>1493 <element name="addPerformanceFromCreature" function="true" type="void">1494 <description><![CDATA[Updates the Genotype's performance values merging them with the supplied Creture's performance. It assumes the Genotype.instances has a reasonable value and performs the proper weighting. Use your own function instead if these conditions are not met in your experiment.]]></description>1495 <arguments>1496 <argument type="Creature"/>1497 </arguments>1498 </element>1499 <element name="copyTo" function="true" type="Genotype">1500 <description><![CDATA[returns the duplicate genotype, created in the target pool]]></description>1501 <arguments>1502 <argument name="pool" type="GenePool"/>1503 </arguments>1504 </element>1505 <element name="delete" function="true" type="void"><arguments/></element>1506 <element name="deleteOne" function="true" type="void">1507 <description><![CDATA[]]></description>1508 <arguments/></element>1509 <element name="getModel" function="true" type="Model"><arguments/></element>1510 <element name="getNormalized" function="true" type="float">1511 <arguments>1512 <argument name="property name or index" type="untyped"/>1513 </arguments>1514 </element>1515 <element name="moveTo" function="true" type="void">1516 <description><![CDATA[the genotype is removed from its current pool when pool=null]]></description>1517 <arguments>1518 <argument name="pool" type="GenePool"/>1519 </arguments>1520 </element>1521 <element name="mutate" function="true" type="void"><arguments/></element>1522 <element name="newFromCreature" function="true" type="Genotype">1523 <arguments>1524 <argument name="creature" type="Creature"/>1525 </arguments>1526 </element>1527 <element name="newFromGeno" function="true" type="Genotype">1528 <arguments>1529 <argument name="geno" type="Geno"/>1530 </arguments>1531 </element>1532 <element name="newFromString" function="true" type="Genotype">1533 <arguments>1534 <argument name="genotype" type="string"/>1535 </arguments>1536 </element>1537 <element name="splitInstances" function="true" type="void"><arguments/></element>1538 1599 </type> 1539 1600 <type name="Interface" context="Global context"> 1540 1601 <description><![CDATA[Used to query for object member descriptions. Example: 1541 1602 var iface=Interface.makeFrom(someobject); var description="this object has "+iface.properties+" properties, first property is "+iface.getId(0);]]></description> 1542 <element name="groups" type="integer"/>1543 1603 <element name="name" type="string"/> 1544 1604 <element name="properties" type="integer"/> 1605 <element name="groups" type="integer"/> 1606 <element name="get" function="true" type="untyped"> 1607 <arguments> 1608 <argument name="index" type="integer"/> 1609 </arguments> 1610 </element> 1611 <element name="getId" function="true" type="string"> 1612 <arguments> 1613 <argument name="index" type="integer"/> 1614 </arguments> 1615 </element> 1616 <element name="getName" function="true" type="string"> 1617 <arguments> 1618 <argument name="index" type="integer"/> 1619 </arguments> 1620 </element> 1621 <element name="getGroup" function="true" type="integer"> 1622 <arguments> 1623 <argument name="index" type="integer"/> 1624 </arguments> 1625 </element> 1626 <element name="getGroupName" function="true" type="string"> 1627 <arguments> 1628 <argument name="index" type="integer"/> 1629 </arguments> 1630 </element> 1631 <element name="getType" function="true" type="string"> 1632 <arguments> 1633 <argument name="index" type="integer"/> 1634 </arguments> 1635 </element> 1636 <element name="getFlags" function="true" type="integer"> 1637 <arguments> 1638 <argument name="index" type="integer"/> 1639 </arguments> 1640 </element> 1641 <element name="getHelp" function="true" type="string"> 1642 <arguments> 1643 <argument name="index" type="integer"/> 1644 </arguments> 1645 </element> 1646 <element name="findId" function="true" type="integer"> 1647 <arguments> 1648 <argument name="name" type="string"/> 1649 </arguments> 1650 </element> 1545 1651 <element name="findGroupId" function="true" type="integer"> 1546 <arguments>1547 <argument name="name" type="string"/>1548 </arguments>1549 </element>1550 <element name="findId" function="true" type="integer">1551 1652 <arguments> 1552 1653 <argument name="name" type="string"/> … … 1559 1660 </arguments> 1560 1661 </element> 1561 <element name="get" function="true" type="untyped"> 1662 <element name="makeFrom" function="true" type="Interface"> 1663 <arguments> 1664 <argument type="Object"/> 1665 </arguments> 1666 </element> 1667 <element name="set" function="true" type="void"> 1562 1668 <arguments> 1563 1669 <argument name="index" type="integer"/> 1564 </arguments> 1565 </element> 1566 <element name="getFlags" function="true" type="integer"> 1670 <argument name="value" type="untyped"/> 1671 </arguments> 1672 </element> 1673 <element name="setDefault" function="true" type="void"> 1567 1674 <arguments> 1568 1675 <argument name="index" type="integer"/> 1569 1676 </arguments> 1570 1677 </element> 1571 <element name="getGroup" function="true" type="integer"> 1572 <arguments> 1573 <argument name="index" type="integer"/> 1574 </arguments> 1575 </element> 1576 <element name="getGroupName" function="true" type="string"> 1577 <arguments> 1578 <argument name="index" type="integer"/> 1579 </arguments> 1580 </element> 1581 <element name="getHelp" function="true" type="string"> 1582 <arguments> 1583 <argument name="index" type="integer"/> 1584 </arguments> 1585 </element> 1586 <element name="getId" function="true" type="string"> 1587 <arguments> 1588 <argument name="index" type="integer"/> 1589 </arguments> 1590 </element> 1591 <element name="getName" function="true" type="string"> 1592 <arguments> 1593 <argument name="index" type="integer"/> 1594 </arguments> 1595 </element> 1596 <element name="getType" function="true" type="string"> 1597 <arguments> 1598 <argument name="index" type="integer"/> 1599 </arguments> 1600 </element> 1678 <element name="setAllDefault" function="true" type="void"><arguments/></element> 1601 1679 <element name="invoke" function="true" type="void"> 1602 1680 <arguments> … … 1605 1683 </arguments> 1606 1684 </element> 1607 <element name="makeFrom" function="true" type="Interface">1608 <arguments>1609 <argument type="Object"/>1610 </arguments>1611 </element>1612 <element name="set" function="true" type="void">1613 <arguments>1614 <argument name="index" type="integer"/>1615 <argument name="value" type="untyped"/>1616 </arguments>1617 </element>1618 <element name="setAllDefault" function="true" type="void"><arguments/></element>1619 <element name="setDefault" function="true" type="void">1620 <arguments>1621 <argument name="index" type="integer"/>1622 </arguments>1623 </element>1624 1685 </type> 1625 1686 <type name="Joint" context="Global context"> 1687 <element name="p1" type="integer" min="-1" max="999999" default="-1"/> 1688 <element name="p2" type="integer" min="-1" max="999999" default="-1"/> 1689 <element name="rx" type="float"/> 1690 <element name="ry" type="float"/> 1691 <element name="rz" type="float"/> 1626 1692 <element name="dx" type="float" min="-2" max="2" default="0.0"/> 1627 1693 <element name="dy" type="float" min="-2" max="2" default="0.0"/> 1628 1694 <element name="dz" type="float" min="-2" max="2" default="0.0"/> 1695 <element name="sh" type="integer" min="0" max="1" default="0"/> 1696 <element name="stif" type="float" min="0" max="1" default="1.0"/> 1697 <element name="rotstif" type="float" min="0" max="1" default="1.0"/> 1698 <element name="stam" type="float" min="0" max="1" default="0.25"/> 1629 1699 <element name="i" type="string"/> 1630 <element name="p1" type="integer" min="-1" max="999999" default="-1"/> 1631 <element name="p2" type="integer" min="-1" max="999999" default="-1"/> 1632 <element name="rotstif" type="float" min="0" max="1" default="1.0"/> 1633 <element name="rx" type="float"/> 1634 <element name="ry" type="float"/> 1635 <element name="rz" type="float"/> 1636 <element name="sh" type="integer" min="0" max="1" default="0"/> 1637 <element name="stam" type="float" min="0" max="1" default="0.25"/> 1638 <element name="stif" type="float" min="0" max="1" default="1.0"/> 1700 <element name="Vstyle" type="string"/> 1701 <element name="vr" type="float" min="0" max="1" default="0.5"/> 1702 <element name="vg" type="float" min="0" max="1" default="0.5"/> 1639 1703 <element name="vb" type="float" min="0" max="1" default="0.5"/> 1640 <element name="vg" type="float" min="0" max="1" default="0.5"/>1641 <element name="vr" type="float" min="0" max="1" default="0.5"/>1642 <element name="Vstyle" type="string"/>1643 1704 </type> 1644 1705 <type name="Loader" context="Global context"> 1645 1706 <description><![CDATA[Support for loading files in the Framsticks format. Used in the experiment definition to retrieve experiment state (see OnExpLoad function in standard.expdef). Registered objects (addClass) are handled automaticaly. Loader can call user functions defined by setBreakLabel.]]></description> 1707 <element name="addClass" function="true" type="void"> 1708 <arguments> 1709 <argument type="Object"/> 1710 </arguments> 1711 </element> 1712 <element name="removeClass" function="true" type="void"> 1713 <arguments> 1714 <argument type="Object"/> 1715 </arguments> 1716 </element> 1717 <element name="clearClasses" function="true" type="void"><arguments/></element> 1718 <element name="go" function="true" type="integer"><arguments/></element> 1719 <element name="run" function="true" type="integer"><arguments/></element> 1720 <element name="status" type="integer"/> 1721 <element name="comment" type="string"/> 1722 <element name="setBreak" function="true" type="void"> 1723 <arguments> 1724 <argument name="break conditions" type="integer"/> 1725 </arguments> 1726 </element> 1727 <element name="setBreakLabel" function="true" type="void"> 1728 <arguments> 1729 <argument name="break condition" type="integer"/> 1730 <argument name="label" type="string"/> 1731 </arguments> 1732 </element> 1733 <element name="abort" function="true" type="void"><arguments/></element> 1734 <element name="currentObject" type="Object"/> 1735 <element name="objectName" type="string"/> 1736 <element name="loadObject" function="true" type="void"><arguments/></element> 1737 <element name="skipObject" function="true" type="void"><arguments/></element> 1738 <element name="firstComment" type="integer" min="0" max="1"/> 1739 <element name="BeforeObject" type="integer"/> 1646 1740 <element name="AfterObject" type="integer"/> 1647 <element name="BeforeObject" type="integer"/>1648 1741 <element name="BeforeUnknown" type="integer"/> 1649 <element name="comment" type="string"/>1650 <element name="currentObject" type="Object"/>1651 <element name="firstComment" type="integer" min="0" max="1"/>1652 <element name="objectName" type="string"/>1653 1742 <element name="OnComment" type="integer"/> 1654 1743 <element name="OnError" type="integer"/> 1655 <element name="status" type="integer"/>1656 <element name="abort" function="true" type="void"><arguments/></element>1657 <element name="addClass" function="true" type="void">1658 <arguments>1659 <argument type="Object"/>1660 </arguments>1661 </element>1662 <element name="clearClasses" function="true" type="void"><arguments/></element>1663 <element name="go" function="true" type="integer"><arguments/></element>1664 <element name="loadObject" function="true" type="void"><arguments/></element>1665 <element name="removeClass" function="true" type="void">1666 <arguments>1667 <argument type="Object"/>1668 </arguments>1669 </element>1670 <element name="run" function="true" type="integer"><arguments/></element>1671 <element name="setBreak" function="true" type="void">1672 <arguments>1673 <argument name="break conditions" type="integer"/>1674 </arguments>1675 </element>1676 <element name="setBreakLabel" function="true" type="void">1677 <arguments>1678 <argument name="break condition" type="integer"/>1679 <argument name="label" type="string"/>1680 </arguments>1681 </element>1682 <element name="skipObject" function="true" type="void"><arguments/></element>1683 1744 </type> 1684 1745 <type name="Math" context="Global context"> 1685 1746 <description><![CDATA[Mathematical functions library.]]></description> 1686 1747 <element name="pi" type="float"/> 1748 <element name="twopi" type="float"/> 1687 1749 <element name="pi2" type="float"/> 1688 1750 <element name="pi4" type="float"/> 1751 <element name="random" function="true" type="integer"> 1752 <description><![CDATA[0..num-1]]></description> 1753 <arguments> 1754 <argument name="num" type="integer"/> 1755 </arguments> 1756 </element> 1689 1757 <element name="rnd01" type="float"/> 1758 <element name="rndUni" function="true" type="float"> 1759 <description><![CDATA[[begin..end)]]></description> 1760 <arguments> 1761 <argument name="begin" type="float"/> 1762 <argument name="end" type="float"/> 1763 </arguments> 1764 </element> 1690 1765 <element name="rndGaussStd" type="float"/> 1766 <element name="rndGauss" function="true" type="float"> 1767 <description><![CDATA[rndGaussStd is rndGauss(0,1)]]></description> 1768 <arguments> 1769 <argument name="mean" type="float"/> 1770 <argument name="standard deviation" type="float"/> 1771 </arguments> 1772 </element> 1773 <element name="rndCustom" function="true" type="float"> 1774 <description><![CDATA[the parameter describes the desired random distribution, being a sum of uniform distributions, eg. rndCustom([-10,-1, -1,1, 1,10]) defines 3 uniform distribution intervals [-1,10) [-1,1), [1,10)]]></description> 1775 <arguments> 1776 <argument type="Vector"/> 1777 </arguments> 1778 </element> 1691 1779 <element name="seed" type="integer"> 1692 1780 <description><![CDATA[Random number generator seed. … … 1694 1782 Note #2: When read, the value behaves just like a regular variable that stores the previously assigned value. It does NOT reflect the internal random generator seed that changes every time a random number has been generated.]]></description> 1695 1783 </element> 1784 <element name="randomize" function="true"> 1785 <description><![CDATA[Set random seed for the random number generator.]]></description> 1786 </element> 1696 1787 <element name="time" type="float"> 1697 1788 <description><![CDATA[Number of seconds since the Epoch (00:00:00 UTC/GMT, January 1, 1970)]]></description> 1698 1789 </element> 1699 <element name="twopi" type="float"/>1700 1790 <element name="abs" function="true" type="float"> 1701 1791 <arguments> … … 1703 1793 </arguments> 1704 1794 </element> 1795 <element name="sign" function="true" type="integer"> 1796 <arguments> 1797 <argument type="float"/> 1798 </arguments> 1799 </element> 1800 <element name="sin" function="true" type="float"> 1801 <arguments> 1802 <argument type="float"/> 1803 </arguments> 1804 </element> 1805 <element name="cos" function="true" type="float"> 1806 <arguments> 1807 <argument type="float"/> 1808 </arguments> 1809 </element> 1810 <element name="asin" function="true" type="float"> 1811 <arguments> 1812 <argument type="float"/> 1813 </arguments> 1814 </element> 1705 1815 <element name="acos" function="true" type="float"> 1706 <arguments>1707 <argument type="float"/>1708 </arguments>1709 </element>1710 <element name="asin" function="true" type="float">1711 1816 <arguments> 1712 1817 <argument type="float"/> … … 1724 1829 </arguments> 1725 1830 </element> 1726 <element name="cos" function="true" type="float"> 1831 <element name="pow" function="true" type="float"> 1832 <arguments> 1833 <argument name="a" type="float"/> 1834 <argument name="b" type="float"/> 1835 </arguments> 1836 </element> 1837 <element name="exp" function="true" type="float"> 1727 1838 <arguments> 1728 1839 <argument type="float"/> 1729 1840 </arguments> 1730 1841 </element> 1731 <element name=" exp" function="true" type="float">1842 <element name="log" function="true" type="float"> 1732 1843 <arguments> 1733 1844 <argument type="float"/> 1734 1845 </arguments> 1735 1846 </element> 1736 <element name=" log" function="true" type="float">1847 <element name="sqrt" function="true" type="float"> 1737 1848 <arguments> 1738 1849 <argument type="float"/> 1739 1850 </arguments> 1740 1851 </element> 1741 <element name="max" function="true" type="untyped"> 1852 <element name="sigmoid" function="true" type="float"> 1853 <arguments> 1854 <argument type="float"/> 1855 </arguments> 1856 </element> 1857 <element name="min" function="true" type="untyped"> 1742 1858 <arguments> 1743 1859 <argument type="untyped"/> … … 1745 1861 </arguments> 1746 1862 </element> 1747 <element name="m in" function="true" type="untyped">1863 <element name="max" function="true" type="untyped"> 1748 1864 <arguments> 1749 1865 <argument type="untyped"/> … … 1751 1867 </arguments> 1752 1868 </element> 1753 <element name="pow" function="true" type="float">1754 <arguments>1755 <argument name="a" type="float"/>1756 <argument name="b" type="float"/>1757 </arguments>1758 </element>1759 <element name="random" function="true" type="integer">1760 <description><![CDATA[0..num-1]]></description>1761 <arguments>1762 <argument name="num" type="integer"/>1763 </arguments>1764 </element>1765 <element name="randomize" function="true">1766 <description><![CDATA[Set random seed for the random number generator.]]></description>1767 </element>1768 <element name="rndCustom" function="true" type="float">1769 <description><![CDATA[the parameter describes the desired random distribution, being a sum of uniform distributions, eg. rndCustom([-10,-1, -1,1, 1,10]) defines 3 uniform distribution intervals [-1,10) [-1,1), [1,10)]]></description>1770 <arguments>1771 <argument type="Vector"/>1772 </arguments>1773 </element>1774 <element name="rndGauss" function="true" type="float">1775 <description><![CDATA[rndGaussStd is rndGauss(0,1)]]></description>1776 <arguments>1777 <argument name="mean" type="float"/>1778 <argument name="standard deviation" type="float"/>1779 </arguments>1780 </element>1781 <element name="rndUni" function="true" type="float">1782 <description><![CDATA[[begin..end)]]></description>1783 <arguments>1784 <argument name="begin" type="float"/>1785 <argument name="end" type="float"/>1786 </arguments>1787 </element>1788 <element name="sigmoid" function="true" type="float">1789 <arguments>1790 <argument type="float"/>1791 </arguments>1792 </element>1793 <element name="sign" function="true" type="integer">1794 <arguments>1795 <argument type="float"/>1796 </arguments>1797 </element>1798 <element name="sin" function="true" type="float">1799 <arguments>1800 <argument type="float"/>1801 </arguments>1802 </element>1803 <element name="sqrt" function="true" type="float">1804 <arguments>1805 <argument type="float"/>1806 </arguments>1807 </element>1808 1869 </type> 1809 1870 <type name="MechJoint" context="Global context"> 1871 <element name="rx" type="float"/> 1872 <element name="ry" type="float"/> 1873 <element name="rz" type="float"/> 1810 1874 <element name="dx" type="float"/> 1811 1875 <element name="dy" type="float"/> 1812 1876 <element name="dz" type="float"/> 1877 <element name="stif" type="float"/> 1878 <element name="rotstif" type="float"/> 1813 1879 <element name="part1" type="MechPart"/> 1814 1880 <element name="part2" type="MechPart"/> 1815 <element name=" rotstif" type="float"/>1881 <element name="stress" type="float"/> 1816 1882 <element name="rotstress" type="float"/> 1817 <element name="rx" type="float"/>1818 <element name="ry" type="float"/>1819 <element name="rz" type="float"/>1820 <element name="stif" type="float"/>1821 <element name="stress" type="float"/>1822 1883 </type> 1823 1884 <type name="MechPart" context="Global context"> 1885 <element name="x" type="float"/> 1886 <element name="y" type="float"/> 1887 <element name="z" type="float"/> 1888 <element name="pos" type="XYZ"/> 1889 <element name="m" type="float"/> 1890 <element name="s" type="float"/> 1891 <element name="vol" type="float"/> 1824 1892 <element name="fr" type="float"/> 1825 <element name="m" type="float"/> 1893 <element name="vx" type="float"/> 1894 <element name="vy" type="float"/> 1895 <element name="vz" type="float"/> 1896 <element name="v" type="XYZ"/> 1826 1897 <element name="orient" type="Orient"/> 1827 1898 <element name="oxx" type="float"/> … … 1834 1905 <element name="ozy" type="float"/> 1835 1906 <element name="ozz" type="float"/> 1836 <element name="pos" type="XYZ"/>1837 <element name="s" type="float"/>1838 <element name="v" type="XYZ"/>1839 <element name="vol" type="float"/>1840 <element name="vx" type="float"/>1841 <element name="vy" type="float"/>1842 <element name="vz" type="float"/>1843 <element name="x" type="float"/>1844 <element name="y" type="float"/>1845 <element name="z" type="float"/>1846 1907 <element name="applyForce" function="true" type="void"> 1847 1908 <arguments> … … 1853 1914 </type> 1854 1915 <type name="Model" context="Global context"> 1916 <element name="se" type="float"/> 1917 <element name="Vstyle" type="string"/> 1855 1918 <element name="geno" type="Geno"/> 1856 <element name="numconnections" type="integer"/> 1919 <element name="newFromString" function="true" type="Model"> 1920 <arguments> 1921 <argument name="genotype" type="string"/> 1922 </arguments> 1923 </element> 1924 <element name="newFromGeno" function="true" type="Model"> 1925 <arguments> 1926 <argument type="Geno"/> 1927 </arguments> 1928 </element> 1929 <element name="numparts" type="integer"/> 1857 1930 <element name="numjoints" type="integer"/> 1858 1931 <element name="numneurons" type="integer"/> 1859 <element name="numparts" type="integer"/> 1860 <element name="se" type="float"/> 1932 <element name="numconnections" type="integer"/> 1933 <element name="getPart" function="true" type="Part"> 1934 <arguments> 1935 <argument name="index" type="integer"/> 1936 </arguments> 1937 </element> 1938 <element name="getJoint" function="true" type="Joint"> 1939 <arguments> 1940 <argument name="index" type="integer"/> 1941 </arguments> 1942 </element> 1943 <element name="getNeuroDef" function="true" type="NeuroDef"> 1944 <arguments> 1945 <argument name="index" type="integer"/> 1946 </arguments> 1947 </element> 1861 1948 <element name="size_x" type="float"> 1862 1949 <description><![CDATA[(size_x,size_y,size_z) are dimensions of the axis-aligned bounding box of the creature, including imaginary Part sizes (Part.s, usually 1.0). A creature consisting of a single default part has the size of (2.0,2.0,2.0) - twice the Part.s value (like a sphere diameter is twice its radius). … … 1868 1955 <element name="size_z" type="float"> 1869 1956 <description><![CDATA[See Model.size_x]]></description> 1870 </element>1871 <element name="Vstyle" type="string"/>1872 <element name="getJoint" function="true" type="Joint">1873 <arguments>1874 <argument name="index" type="integer"/>1875 </arguments>1876 </element>1877 <element name="getNeuroDef" function="true" type="NeuroDef">1878 <arguments>1879 <argument name="index" type="integer"/>1880 </arguments>1881 </element>1882 <element name="getPart" function="true" type="Part">1883 <arguments>1884 <argument name="index" type="integer"/>1885 </arguments>1886 </element>1887 <element name="newFromGeno" function="true" type="Model">1888 <arguments>1889 <argument type="Geno"/>1890 </arguments>1891 </element>1892 <element name="newFromString" function="true" type="Model">1893 <arguments>1894 <argument name="genotype" type="string"/>1895 </arguments>1896 1957 </element> 1897 1958 </type> … … 1907 1968 <description><![CDATA[Affects the geometry calculation precision]]></description> 1908 1969 </element> 1909 <element name="area" function="true" type="float"><arguments/></element>1910 1970 <element name="forModel" function="true" type="ModelGeometry"> 1911 1971 <description><![CDATA[The returned ModelGeometry object can be used to calculate geometric properties (volume, area, sizes) of the associated model. The density is copied from the current global ModelGeometry.geom_density on object creation.]]></description> … … 1914 1974 </arguments> 1915 1975 </element> 1976 <element name="volume" function="true" type="float"><arguments/></element> 1977 <element name="area" function="true" type="float"><arguments/></element> 1916 1978 <element name="sizesAndAxes" function="true" type="Vector"> 1917 1979 <description><![CDATA[The returned vector contains XYZ (sizes) and Orient (axes) objects.]]></description> 1918 1980 <arguments/></element> 1919 <element name="volume" function="true" type="float"><arguments/></element>1920 1981 </type> 1921 1982 <type name="Neuro" context="Global context"> 1922 1983 <description><![CDATA[Live Neuron object.]]></description> 1984 <element name="getInputState" function="true" type="float"> 1985 <arguments> 1986 <argument name="input" type="integer"/> 1987 </arguments> 1988 </element> 1989 <element name="getInputWeight" function="true" type="float"> 1990 <arguments> 1991 <argument name="input" type="integer"/> 1992 </arguments> 1993 </element> 1994 <element name="getWeightedInputState" function="true" type="float"> 1995 <arguments> 1996 <argument name="input" type="integer"/> 1997 </arguments> 1998 </element> 1999 <element name="getInputSum" function="true" type="float"> 2000 <arguments> 2001 <argument name="input" type="integer"/> 2002 </arguments> 2003 </element> 2004 <element name="getWeightedInputSum" function="true" type="float"> 2005 <description><![CDATA[Uses any number of inputs starting with the specified input. getWeightedInputSum(0)=weightedInputSum]]></description> 2006 <arguments> 2007 <argument name="input" type="integer"/> 2008 </arguments> 2009 </element> 2010 <element name="getInputCount" type="integer"/> 2011 <element name="inputSum" type="float"/> 2012 <element name="weightedInputSum" type="float"/> 2013 <element name="getInputChannelCount" function="true" type="integer"> 2014 <arguments> 2015 <argument name="input" type="integer"/> 2016 </arguments> 2017 </element> 2018 <element name="getInputStateChannel" function="true" type="float"> 2019 <arguments> 2020 <argument name="input" type="integer"/> 2021 <argument name="channel" type="integer"/> 2022 </arguments> 2023 </element> 2024 <element name="getWeightedInputStateChannel" function="true" type="float"> 2025 <arguments> 2026 <argument name="input" type="integer"/> 2027 <argument name="channel" type="integer"/> 2028 </arguments> 2029 </element> 2030 <element name="state" type="float"> 2031 <description><![CDATA[When read, returns the current neuron state. 2032 When written, sets the 'internal' neuron state that will become current in the next step. 2033 Typically you should use this field, and not currState.]]></description> 2034 </element> 1923 2035 <element name="channelCount" type="integer"/> 1924 <element name="classObject" type="NeuroClass"/> 1925 <element name="creature" type="Creature"/> 2036 <element name="getStateChannel" function="true" type="float"> 2037 <arguments> 2038 <argument name="channel" type="integer"/> 2039 </arguments> 2040 </element> 2041 <element name="setStateChannel" function="true" type="void"> 2042 <arguments> 2043 <argument name="channel" type="integer"/> 2044 <argument name="value" type="float"/> 2045 </arguments> 2046 </element> 2047 <element name="hold" type="integer" min="0" max="1"> 2048 <description><![CDATA["Holding" means keeping the neuron state as is, blocking the regular neuron operation. This is useful when your script needs to inject some control signals into the NN. Without "holding", live neurons would be constantly overwriting your changes, and the rest of the NN could see inconsistent states, depending on the connections. Setting hold=1 ensures the neuron state will be only set by you, and not by the neuron. The enforced signal value can be set using Neuro.currState before or after setting hold=1. Set hold=0 to resume normal operation.]]></description> 2049 </element> 1926 2050 <element name="currState" type="float"> 1927 2051 <description><![CDATA[When read, it behaves just like the 'state' field. … … 1929 2053 This feature should only be used while controlling the neuron 'from outside' (like a neuro probe) and not in the neuron definition. See also: Neuro.hold]]></description> 1930 2054 </element> 1931 <element name="def" type="NeuroDef"/> 2055 <element name="setCurrStateChannel" function="true" type="void"> 2056 <description><![CDATA[Analogous to "currState".]]></description> 2057 <arguments> 2058 <argument name="channel" type="integer"/> 2059 <argument name="value" type="float"/> 2060 </arguments> 2061 </element> 2062 <element name="position_x" type="float"/> 2063 <element name="position_y" type="float"/> 2064 <element name="position_z" type="float"/> 2065 <element name="creature" type="Creature"/> 2066 <element name="part" type="MechPart"/> 2067 <element name="joint" type="MechJoint"/> 1932 2068 <element name="fields" type="Fields"> 1933 2069 <description><![CDATA[Neurons can have different fields depending on their class. Script neurons have their fields defined using the "prop:" syntax. If you develop a custom neuron script you should use the Fields object for accessing your own neuron fields. The Neuro.fields property is meant for accessing the neuron fields from the outside script. … … 1945 2081 Simulator.print(iobj.getId(i)+" ("+iobj.getName(i)+")");]]></description> 1946 2082 </element> 1947 <element name="getInputCount" type="integer"/> 1948 <element name="hold" type="integer" min="0" max="1"> 1949 <description><![CDATA["Holding" means keeping the neuron state as is, blocking the regular neuron operation. This is useful when your script needs to inject some control signals into the NN. Without "holding", live neurons would be constantly overwriting your changes, and the rest of the NN could see inconsistent states, depending on the connections. Setting hold=1 ensures the neuron state will be only set by you, and not by the neuron. The enforced signal value can be set using Neuro.currState before or after setting hold=1. Set hold=0 to resume normal operation.]]></description> 1950 </element> 1951 <element name="inputSum" type="float"/> 1952 <element name="joint" type="MechJoint"/> 1953 <element name="part" type="MechPart"/> 1954 <element name="position_x" type="float"/> 1955 <element name="position_y" type="float"/> 1956 <element name="position_z" type="float"/> 2083 <element name="def" type="NeuroDef"/> 2084 <element name="classObject" type="NeuroClass"/> 1957 2085 <element name="signals" type="NeuroSignals"/> 1958 <element name="state" type="float">1959 <description><![CDATA[When read, returns the current neuron state.1960 When written, sets the 'internal' neuron state that will become current in the next step.1961 Typically you should use this field, and not currState.]]></description>1962 </element>1963 <element name="weightedInputSum" type="float"/>1964 <element name="getInputChannelCount" function="true" type="integer">1965 <arguments>1966 <argument name="input" type="integer"/>1967 </arguments>1968 </element>1969 <element name="getInputState" function="true" type="float">1970 <arguments>1971 <argument name="input" type="integer"/>1972 </arguments>1973 </element>1974 <element name="getInputStateChannel" function="true" type="float">1975 <arguments>1976 <argument name="input" type="integer"/>1977 <argument name="channel" type="integer"/>1978 </arguments>1979 </element>1980 <element name="getInputSum" function="true" type="float">1981 <arguments>1982 <argument name="input" type="integer"/>1983 </arguments>1984 </element>1985 <element name="getInputWeight" function="true" type="float">1986 <arguments>1987 <argument name="input" type="integer"/>1988 </arguments>1989 </element>1990 <element name="getStateChannel" function="true" type="float">1991 <arguments>1992 <argument name="channel" type="integer"/>1993 </arguments>1994 </element>1995 <element name="getWeightedInputState" function="true" type="float">1996 <arguments>1997 <argument name="input" type="integer"/>1998 </arguments>1999 </element>2000 <element name="getWeightedInputStateChannel" function="true" type="float">2001 <arguments>2002 <argument name="input" type="integer"/>2003 <argument name="channel" type="integer"/>2004 </arguments>2005 </element>2006 <element name="getWeightedInputSum" function="true" type="float">2007 <description><![CDATA[Uses any number of inputs starting with the specified input. getWeightedInputSum(0)=weightedInputSum]]></description>2008 <arguments>2009 <argument name="input" type="integer"/>2010 </arguments>2011 </element>2012 <element name="setCurrStateChannel" function="true" type="void">2013 <description><![CDATA[Analogous to "currState".]]></description>2014 <arguments>2015 <argument name="channel" type="integer"/>2016 <argument name="value" type="float"/>2017 </arguments>2018 </element>2019 <element name="setStateChannel" function="true" type="void">2020 <arguments>2021 <argument name="channel" type="integer"/>2022 <argument name="value" type="float"/>2023 </arguments>2024 </element>2025 2086 </type> 2026 2087 <type name="NeuroClass" context="Global context"> 2027 2088 <description><![CDATA[The static NeuroClass object refers to the class selected in the NeuroClassLibrary. Most, but not all, properties have direct counterparts in *.neuro files that define custom neuron classes.]]></description> 2089 <element name="name" type="string"> 2090 <description><![CDATA[Used in genotypes]]></description> 2091 </element> 2092 <element name="longname" type="string"> 2093 <description><![CDATA[Used in hints]]></description> 2094 </element> 2028 2095 <element name="description" type="string"/> 2096 <element name="prefinputs" type="integer"> 2097 <description><![CDATA[-1 means "any number of inputs is OK"]]></description> 2098 </element> 2099 <element name="prefoutput" type="integer" min="0" max="1"> 2100 <description><![CDATA[Should be 1 if the neuron provides meaningful output value, 0 otherwise]]></description> 2101 </element> 2102 <element name="preflocation" type="integer" min="0" max="2"/> 2103 <element name="visualhints" type="integer"> 2104 <description><![CDATA[This is a bitfield. Compute the value by adding the following bits: 2105 1 = Invisible - don't draw neurons of this class 2106 2 = No label - don't draw classname label (below the neuron symbol) for this neuron class 2107 4 = First Part - draw the neuron at the first part when attached to a joint (default is in the middle) 2108 8 = Second Part - draw the neuron at the second part when attached to a joint (default is in the middle) 2109 16 = Effector - use muscle color when drawing this neuron 2110 32 = Sensor - use receptor color when drawing this neuron 2111 Compatiblity: visualhints is called "vhints" in *.neuro files.]]></description> 2112 </element> 2029 2113 <element name="glyph" type="string"> 2030 2114 <description><![CDATA[<html>The neuron icon for use in NN diagrams, encoded as a coma-separated sequence of integer numbers.<ul> … … 2045 2129 Compatibility: this field is called "icon" in *.neuro files.]]></description> 2046 2130 </element> 2047 <element name="longname" type="string">2048 <description><![CDATA[Used in hints]]></description>2049 </element>2050 <element name="name" type="string">2051 <description><![CDATA[Used in genotypes]]></description>2052 </element>2053 <element name="prefinputs" type="integer">2054 <description><![CDATA[-1 means "any number of inputs is OK"]]></description>2055 </element>2056 <element name="preflocation" type="integer" min="0" max="2"/>2057 <element name="prefoutput" type="integer" min="0" max="1">2058 <description><![CDATA[Should be 1 if the neuron provides meaningful output value, 0 otherwise]]></description>2059 </element>2060 2131 <element name="properties" type="Interface"> 2061 2132 <description><![CDATA[Compatibility: not preset in *.neuro files.]]></description> … … 2065 2136 Compatibility: not preset in *.neuro files.]]></description> 2066 2137 </element> 2067 <element name="visualhints" type="integer">2068 <description><![CDATA[This is a bitfield. Compute the value by adding the following bits:2069 1 = Invisible - don't draw neurons of this class2070 2 = No label - don't draw classname label (below the neuron symbol) for this neuron class2071 4 = First Part - draw the neuron at the first part when attached to a joint (default is in the middle)2072 8 = Second Part - draw the neuron at the second part when attached to a joint (default is in the middle)2073 16 = Effector - use muscle color when drawing this neuron2074 32 = Sensor - use receptor color when drawing this neuron2075 Compatiblity: visualhints is called "vhints" in *.neuro files.]]></description>2076 </element>2077 2138 </type> 2078 2139 <type name="NeuroClassLibrary" context="Global context"> 2079 2140 <description><![CDATA[Set of Neuron classes. You can access the selected class in the static NeuroClass object.]]></description> 2141 <element name="count" type="integer"/> 2080 2142 <element name="class" type="integer"> 2081 2143 <description><![CDATA[0 ... count-1]]></description> 2082 2144 </element> 2083 <element name="count" type="integer"/>2084 2145 <element name="findClass" function="true" type="void"> 2085 2146 <arguments> … … 2094 2155 </type> 2095 2156 <type name="NeuroDef" context="Global context"> 2157 <element name="p" type="integer" min="-1" max="999999" default="-1"/> 2158 <element name="j" type="integer" min="-1" max="999999" default="-1"/> 2159 <element name="d" type="string"/> 2160 <element name="i" type="string"/> 2161 <element name="Vstyle" type="string"/> 2162 <element name="getInputCount" type="integer"/> 2163 <element name="getInputNeuroDef" function="true" type="NeuroDef"> 2164 <arguments> 2165 <argument type="integer"/> 2166 </arguments> 2167 </element> 2168 <element name="getInputNeuroIndex" function="true" type="integer"> 2169 <arguments> 2170 <argument type="integer"/> 2171 </arguments> 2172 </element> 2173 <element name="getInputWeight" function="true" type="float"> 2174 <arguments> 2175 <argument type="integer"/> 2176 </arguments> 2177 </element> 2096 2178 <element name="classObject" type="NeuroClass"/> 2097 <element name="d" type="string"/>2098 <element name="getInputCount" type="integer"/>2099 <element name="i" type="string"/>2100 <element name="j" type="integer" min="-1" max="999999" default="-1"/>2101 <element name="p" type="integer" min="-1" max="999999" default="-1"/>2102 <element name="Vstyle" type="string"/>2103 <element name="getInputNeuroDef" function="true" type="NeuroDef">2104 <arguments>2105 <argument type="integer"/>2106 </arguments>2107 </element>2108 <element name="getInputNeuroIndex" function="true" type="integer">2109 <arguments>2110 <argument type="integer"/>2111 </arguments>2112 </element>2113 <element name="getInputWeight" function="true" type="float">2114 <arguments>2115 <argument type="integer"/>2116 </arguments>2117 </element>2118 2179 </type> 2119 2180 <type name="NeuronsSimEnabled" context="Global context"> … … 2369 2430 See also: Signal, WorldSignals, CreatureSignals. 2370 2431 scripts/light.neuro and scripts/seelight.neuro are simple custom neuron examples demonstrating how to send/receive signals between creatures.]]></description> 2371 <element name="size" type="integer"/>2372 2432 <element name="add" function="true" type="Signal"> 2373 2433 <arguments> 2374 2434 <argument name="channel" type="string"/> 2375 </arguments>2376 </element>2377 <element name="clear" function="true" type="void"><arguments/></element>2378 <element name="get" function="true" type="Signal">2379 <arguments>2380 <argument name="index" type="integer"/>2381 2435 </arguments> 2382 2436 </element> … … 2385 2439 <arguments> 2386 2440 <argument name="channel" type="string"/> 2441 </arguments> 2442 </element> 2443 <element name="receiveSet" function="true" type="Vector"> 2444 <description><![CDATA[Get all signals in the specified range. Returns a read-only vector object containing Signal objects - individual signals can be accessed as result[0], .., result[result.size-1].]]></description> 2445 <arguments> 2446 <argument name="channel" type="string"/> 2447 <argument name="max distance" type="float"/> 2387 2448 </arguments> 2388 2449 </element> … … 2400 2461 </arguments> 2401 2462 </element> 2402 <element name="receiveS et" function="true" type="Vector">2403 <description><![CDATA[ Get all signals in the specified range. Returns a read-only vector object containing Signal objects - individual signals can be accessed as result[0], .., result[result.size-1].]]></description>2463 <element name="receiveSingle" function="true" type="Signal"> 2464 <description><![CDATA[Find the signal source that has the highest signal power (taking into account distance).]]></description> 2404 2465 <arguments> 2405 2466 <argument name="channel" type="string"/> … … 2407 2468 </arguments> 2408 2469 </element> 2409 <element name=" receiveSingle" function="true" type="Signal">2410 < description><![CDATA[Find the signal source that has the highest signal power (taking into account distance).]]></description>2411 <arguments>2412 <argument name="channel" type="string"/>2413 <argument name="max distance" type="float"/>2414 </arguments>2415 < /element>2470 <element name="get" function="true" type="Signal"> 2471 <arguments> 2472 <argument name="index" type="integer"/> 2473 </arguments> 2474 </element> 2475 <element name="size" type="integer"/> 2476 <element name="clear" function="true" type="void"><arguments/></element> 2416 2477 </type> 2417 2478 <type name="ODE" context="Global context"> 2418 2479 <description><![CDATA[ODE Parameters.]]></description> 2480 <element name="odeshape" type="integer" min="0" max="1"/> 2481 <element name="odestep" type="float" min="0.001" max="1" default="0.05"/> 2482 <element name="odemusclemin" type="float" min="0" max="100" default="0.0"> 2483 <description><![CDATA[i.e. "mmmmm" in f1]]></description> 2484 </element> 2485 <element name="odemusclemax" type="float" min="0" max="100" default="10.0"> 2486 <description><![CDATA[i.e. "MMMMM" if f1]]></description> 2487 </element> 2488 <element name="odemusclespeed" type="float" min="0" max="10" default="1.0"> 2489 <description><![CDATA[Muscle state cannot change faster than the supplied value]]></description> 2490 </element> 2419 2491 <element name="odeairdrag" type="float" min="0" max="0.5" default="0.01"> 2420 2492 <description><![CDATA[A drag force ("air drag") proportional to the velocity of mass centers of moving parts]]></description> 2421 2493 </element> 2422 <element name="odecol2bounce" type="float" min="0" max="1" default="0.1"/> 2423 <element name="odecol2bouncevel" type="float" min="0" max="1" default="0.01"/> 2424 <element name="odecol2mumax" type="float" min="0" max="10" default="1.0"> 2425 <description><![CDATA[Mu coefficient for Parts with maximal friction (i.e. "FFFFF" in f1)]]></description> 2426 </element> 2427 <element name="odecol2mumin" type="float" min="0" max="10" default="0.1"> 2428 <description><![CDATA[Mu coefficient for Parts with minimal friction (i.e. "fffff" in f1)]]></description> 2429 </element> 2430 <element name="odecol2softcfm" type="float" min="0" max="1" default="0.0"/> 2431 <element name="odecol2softerp" type="float" min="0" max="1" default="0.0"/> 2432 <element name="odecolbounce" type="float" min="0" max="1" default="0.1"/> 2433 <element name="odecolbouncevel" type="float" min="0" max="1" default="0.01"/> 2434 <element name="odecolmumax" type="float" min="0" max="10" default="5.0"> 2435 <description><![CDATA[Mu coefficient for Parts with maximal friction (i.e. "FFFFF" in f1)]]></description> 2436 </element> 2437 <element name="odecolmumin" type="float" min="0" max="10" default="0.1"> 2438 <description><![CDATA[Mu coefficient for Parts with minimal friction (i.e. "fffff" in f1)]]></description> 2439 </element> 2440 <element name="odecolsoftcfm" type="float" min="0" max="1" default="0.0"/> 2441 <element name="odecolsofterp" type="float" min="0" max="1" default="0.0"/> 2442 <element name="odemusclemax" type="float" min="0" max="100" default="10.0"> 2443 <description><![CDATA[i.e. "MMMMM" if f1]]></description> 2444 </element> 2445 <element name="odemusclemin" type="float" min="0" max="100" default="0.0"> 2446 <description><![CDATA[i.e. "mmmmm" in f1]]></description> 2447 </element> 2448 <element name="odemusclespeed" type="float" min="0" max="10" default="1.0"> 2449 <description><![CDATA[Muscle state cannot change faster than the supplied value]]></description> 2450 </element> 2494 <element name="odewaterdrag" type="float" min="0.001" max="1" default="0.5"/> 2495 <element name="odewaterbuoy" type="float" min="0" max="2" default="1.0"/> 2451 2496 <element name="odeseed" type="integer" min="0" max="2"> 2452 2497 <description><![CDATA[Affects collisions. … … 2459 2504 <description><![CDATA[Each stick gets a separate ODE body (like in MechaStick)]]></description> 2460 2505 </element> 2461 <element name="odeshape" type="integer" min="0" max="1"/> 2462 <element name="odestep" type="float" min="0.001" max="1" default="0.05"/> 2463 <element name="odewaterbuoy" type="float" min="0" max="2" default="1.0"/> 2464 <element name="odewaterdrag" type="float" min="0.001" max="1" default="0.5"/> 2506 <element name="odeworlderp" type="float" min="0" max="1" default="0.2"> 2507 <description><![CDATA[World ERP (error reduction parameter)]]></description> 2508 </element> 2465 2509 <element name="odeworldcfm" type="float" min="0" max="1" default="1e-05"> 2466 2510 <description><![CDATA[World CFM (constraint force mixing)]]></description> 2467 2511 </element> 2468 <element name="odeworlderp" type="float" min="0" max="1" default="0.2"> 2469 <description><![CDATA[World ERP (error reduction parameter)]]></description> 2470 </element> 2512 <element name="odecolmumin" type="float" min="0" max="10" default="0.1"> 2513 <description><![CDATA[Mu coefficient for Parts with minimal friction (i.e. "fffff" in f1)]]></description> 2514 </element> 2515 <element name="odecolmumax" type="float" min="0" max="10" default="5.0"> 2516 <description><![CDATA[Mu coefficient for Parts with maximal friction (i.e. "FFFFF" in f1)]]></description> 2517 </element> 2518 <element name="odecolbounce" type="float" min="0" max="1" default="0.1"/> 2519 <element name="odecolbouncevel" type="float" min="0" max="1" default="0.01"/> 2520 <element name="odecolsoftcfm" type="float" min="0" max="1" default="0.0"/> 2521 <element name="odecolsofterp" type="float" min="0" max="1" default="0.0"/> 2522 <element name="odecol2mumin" type="float" min="0" max="10" default="0.1"> 2523 <description><![CDATA[Mu coefficient for Parts with minimal friction (i.e. "fffff" in f1)]]></description> 2524 </element> 2525 <element name="odecol2mumax" type="float" min="0" max="10" default="1.0"> 2526 <description><![CDATA[Mu coefficient for Parts with maximal friction (i.e. "FFFFF" in f1)]]></description> 2527 </element> 2528 <element name="odecol2bounce" type="float" min="0" max="1" default="0.1"/> 2529 <element name="odecol2bouncevel" type="float" min="0" max="1" default="0.01"/> 2530 <element name="odecol2softcfm" type="float" min="0" max="1" default="0.0"/> 2531 <element name="odecol2softerp" type="float" min="0" max="1" default="0.0"/> 2471 2532 <element name="rayIntersection" function="true" type="float"> 2472 2533 <arguments> … … 2483 2544 <type name="Orient" context="Global context"> 2484 2545 <description><![CDATA[3D orientation, stored as 3x3 matrix.]]></description> 2485 <element name="angles" type="XYZ"/>2486 <element name="toString" type="string"/>2487 <element name="toVector" type="Vector">2488 <description><![CDATA[for serialization]]></description>2489 </element>2490 <element name="x" type="XYZ"/>2491 2546 <element name="xx" type="float"/> 2492 2547 <element name="xy" type="float"/> 2493 2548 <element name="xz" type="float"/> 2494 <element name="y" type="XYZ"/>2495 2549 <element name="yx" type="float"/> 2496 2550 <element name="yy" type="float"/> 2497 2551 <element name="yz" type="float"/> 2498 <element name="z" type="XYZ"/>2499 2552 <element name="zx" type="float"/> 2500 2553 <element name="zy" type="float"/> 2501 2554 <element name="zz" type="float"/> 2555 <element name="x" type="XYZ"/> 2556 <element name="y" type="XYZ"/> 2557 <element name="z" type="XYZ"/> 2558 <element name="new" function="true" type="Orient"><arguments/></element> 2559 <element name="newFromVector" function="true" type="Orient"> 2560 <arguments> 2561 <argument type="Vector"/> 2562 </arguments> 2563 </element> 2564 <element name="toVector" type="Vector"> 2565 <description><![CDATA[for serialization]]></description> 2566 </element> 2567 <element name="clone" function="true" type="Orient"><arguments/></element> 2568 <element name="set" function="true" type="void"> 2569 <arguments> 2570 <argument type="Orient"/> 2571 </arguments> 2572 </element> 2573 <element name="reset" function="true" type="void"><arguments/></element> 2574 <element name="rotate3" function="true" type="void"> 2575 <arguments> 2576 <argument name="x" type="float"/> 2577 <argument name="y" type="float"/> 2578 <argument name="z" type="float"/> 2579 </arguments> 2580 </element> 2581 <element name="rotate" function="true" type="void"> 2582 <arguments> 2583 <argument type="Orient"/> 2584 </arguments> 2585 </element> 2586 <element name="revRotate" function="true" type="void"> 2587 <arguments> 2588 <argument type="Orient"/> 2589 </arguments> 2590 </element> 2591 <element name="lookAt" function="true" type="void"> 2592 <arguments> 2593 <argument name="direction" type="XYZ"/> 2594 <argument name="up" type="XYZ"/> 2595 </arguments> 2596 </element> 2597 <element name="normalize" function="true" type="void"><arguments/></element> 2502 2598 <element name="between2" function="true" type="void"> 2503 2599 <description><![CDATA[The calling Orient receives the orientation interpolated from 2 input orientations. … … 2529 2625 </arguments> 2530 2626 </element> 2531 <element name="clone" function="true" type="Orient"><arguments/></element>2532 2627 <element name="localToWorld" function="true" type="XYZ"> 2533 2628 <arguments> … … 2536 2631 </arguments> 2537 2632 </element> 2538 <element name="lookAt" function="true" type="void">2539 <arguments>2540 <argument name="direction" type="XYZ"/>2541 <argument name="up" type="XYZ"/>2542 </arguments>2543 </element>2544 <element name="new" function="true" type="Orient"><arguments/></element>2545 <element name="newFromVector" function="true" type="Orient">2546 <arguments>2547 <argument type="Vector"/>2548 </arguments>2549 </element>2550 <element name="normalize" function="true" type="void"><arguments/></element>2551 <element name="reset" function="true" type="void"><arguments/></element>2552 <element name="revRotate" function="true" type="void">2553 <arguments>2554 <argument type="Orient"/>2555 </arguments>2556 </element>2557 <element name="rotate" function="true" type="void">2558 <arguments>2559 <argument type="Orient"/>2560 </arguments>2561 </element>2562 <element name="rotate3" function="true" type="void">2563 <arguments>2564 <argument name="x" type="float"/>2565 <argument name="y" type="float"/>2566 <argument name="z" type="float"/>2567 </arguments>2568 </element>2569 <element name="set" function="true" type="void">2570 <arguments>2571 <argument type="Orient"/>2572 </arguments>2573 </element>2574 2633 <element name="worldToLocal" function="true" type="XYZ"> 2575 2634 <arguments> … … 2578 2637 </arguments> 2579 2638 </element> 2639 <element name="angles" type="XYZ"/> 2640 <element name="toString" type="string"/> 2580 2641 </type> 2581 2642 <type name="Part" context="Global context"> 2582 <element name="as" type="float" min="0" max="1" default="0.25"/> 2643 <element name="x" type="float"/> 2644 <element name="y" type="float"/> 2645 <element name="z" type="float"/> 2646 <element name="m" type="float" min="0.1" max="999" default="1.0"/> 2647 <element name="sh" type="integer" min="0" max="3" default="0"/> 2648 <element name="s" type="float" min="0.1" max="10" default="1.0"/> 2649 <element name="sx" type="float" min="0.001" max="1000" default="1.0"/> 2650 <element name="sy" type="float" min="0.001" max="1000" default="1.0"/> 2651 <element name="sz" type="float" min="0.001" max="1000" default="1.0"/> 2652 <element name="h" type="float" min="0" max="1" default="0.0"/> 2583 2653 <element name="dn" type="float" min="0.2" max="5" default="1.0"/> 2584 2654 <element name="fr" type="float" min="0" max="4" default="0.4"/> 2585 <element name="h" type="float" min="0" max="1" default="0.0"/>2586 <element name="i" type="string"/>2587 2655 <element name="ing" type="float" min="0" max="1" default="0.25"/> 2588 <element name=" m" type="float" min="0.1" max="999" default="1.0"/>2656 <element name="as" type="float" min="0" max="1" default="0.25"/> 2589 2657 <element name="rx" type="float"/> 2590 2658 <element name="ry" type="float"/> 2591 2659 <element name="rz" type="float"/> 2592 <element name=" s" type="float" min="0.1" max="10" default="1.0"/>2593 <element name=" sh" type="integer" min="0" max="3" default="0"/>2594 <element name=" sx" type="float" min="0.001" max="1000" default="1.0"/>2595 <element name=" sy" type="float" min="0.001" max="1000" default="1.0"/>2596 <element name=" sz" type="float" min="0.001" max="1000" default="1.0"/>2660 <element name="i" type="string"/> 2661 <element name="Vstyle" type="string"/> 2662 <element name="vs" type="float" min="0.05" max="0.7" default="0.2"/> 2663 <element name="vr" type="float" min="0" max="1" default="0.5"/> 2664 <element name="vg" type="float" min="0" max="1" default="0.5"/> 2597 2665 <element name="vb" type="float" min="0" max="1" default="0.5"/> 2598 <element name="vg" type="float" min="0" max="1" default="0.5"/>2599 <element name="vr" type="float" min="0" max="1" default="0.5"/>2600 <element name="vs" type="float" min="0.05" max="0.7" default="0.2"/>2601 <element name="Vstyle" type="string"/>2602 <element name="x" type="float"/>2603 <element name="y" type="float"/>2604 <element name="z" type="float"/>2605 2666 </type> 2606 2667 <type name="Population" context="Global context"> 2607 2668 <description><![CDATA[A set of Creature objects, sharing some high level simulation properties (performance calculation, NN simulation, collision detection, event handling). The groups usually have different roles in the experiment (Creatures groups and Food group in standard.expdef).]]></description> 2608 <element name="bodysim" type="integer" min="0" max="1" default="1"> 2609 <description><![CDATA[Enable/disable physical body simulation. This is the initial value of Creature.bodysim for all objects created in this group. For details, see the documentation of Creature.bodysim.]]></description> 2669 <element name="index" type="integer"/> 2670 <element name="name" type="string"/> 2671 <element name="size" type="integer"/> 2672 <element name="energy" type="integer" min="0" max="1" default="1"> 2673 <description><![CDATA[If turned off, creature's energy will be constant.]]></description> 2674 </element> 2675 <element name="death" type="integer" min="0" max="1" default="1"> 2676 <description><![CDATA[Do creatures die when no energy?]]></description> 2677 </element> 2678 <element name="nnsim" type="integer" min="0" max="2" default="1"> 2679 <description><![CDATA[Stabilization means no significant movement during a specified period of time.]]></description> 2680 </element> 2681 <element name="perfperiod" type="integer" min="0" max="1000000" default="100"> 2682 <description><![CDATA[Defines how often onUpdate() events are called. Also used to compute partial performance of creatures (distance, speed, etc.) and to determine stabilization.]]></description> 2683 </element> 2684 <element name="stabilperiod" type="integer" min="0" max="1000000" default="100"> 2685 <description><![CDATA["Performance sampling period" for the stabilization phase.]]></description> 2686 </element> 2687 <element name="killnostable" type="integer" min="0" max="10000000" default="1000000"> 2688 <description><![CDATA[Creatures that fail to stabilize after the specified waiting period (e.g. because they are continuously rolling) will be killed. 0 disables this feature.]]></description> 2689 </element> 2690 <element name="stabledist" type="float" min="0" max="1" default="0.01"> 2691 <description><![CDATA[A creature is considered stabilized when its center of gravity stays within the specified distance after the "Sampling period while waiting" has elapsed.]]></description> 2692 </element> 2693 <element name="enableperf" type="integer" min="0" max="2" default="1"> 2694 <description><![CDATA[Stabilization means no significant movement during a specified period of time.]]></description> 2610 2695 </element> 2611 2696 <element name="colmask" type="integer" min="0" max="65535" default="0"> 2612 2697 <description><![CDATA[DEPRECATED. You should use selfmask and othermask (these masks are also much easier to understand than the old colmask field).]]></description> 2613 </element>2614 <element name="death" type="integer" min="0" max="1" default="1">2615 <description><![CDATA[Do creatures die when no energy?]]></description>2616 </element>2617 <element name="em_dyn" type="float" min="0" max="1" default="0.0">2618 <description><![CDATA[Energy requirements for a muscle2619 moving a stick]]></description>2620 </element>2621 <element name="em_stat" type="float" min="0" max="1" default="0.0">2622 <description><![CDATA[Energy requirements for a muscle2623 resisting an external force]]></description>2624 </element>2625 <element name="en_assim" type="float" min="0" max="1" default="0.0">2626 <description><![CDATA[Maximal energy gain produced by a vertical specialized stick.2627 Horizontal specialized sticks get half of this value.]]></description>2628 </element>2629 <element name="enableperf" type="integer" min="0" max="2" default="1">2630 <description><![CDATA[Stabilization means no significant movement during a specified period of time.]]></description>2631 </element>2632 <element name="energy" type="integer" min="0" max="1" default="1">2633 <description><![CDATA[If turned off, creature's energy will be constant.]]></description>2634 </element>2635 <element name="index" type="integer"/>2636 <element name="iterator" type="Object"/>2637 <element name="killnostable" type="integer" min="0" max="10000000" default="1000000">2638 <description><![CDATA[Creatures that fail to stabilize after the specified waiting period (e.g. because they are continuously rolling) will be killed. 0 disables this feature.]]></description>2639 </element>2640 <element name="name" type="string"/>2641 <element name="nnsim" type="integer" min="0" max="2" default="1">2642 <description><![CDATA[Stabilization means no significant movement during a specified period of time.]]></description>2643 </element>2644 <element name="othermask" type="integer" min="0" max="2147483647" default="0">2645 <description><![CDATA[See selfmask.]]></description>2646 </element>2647 <element name="perfperiod" type="integer" min="0" max="1000000" default="100">2648 <description><![CDATA[Defines how often onUpdate() events are called. Also used to compute partial performance of creatures (distance, speed, etc.) and to determine stabilization.]]></description>2649 </element>2650 <element name="selfcol" type="integer" min="0" max="1" default="0">2651 <description><![CDATA[Detect collisions within creature bodies (only applicable for the ODE simulation engine). This is the initial value of Creature.selfcol for all objects created in this group. If enabled, creatures with self-colliding genotypes are not born, and others will have their sticks collide during lifespan.]]></description>2652 2698 </element> 2653 2699 <element name="selfmask" type="integer" min="0" max="2147483647" default="0"> … … 2681 2727 ]]></description> 2682 2728 </element> 2683 <element name="size" type="integer"/> 2684 <element name="stabilperiod" type="integer" min="0" max="1000000" default="100"> 2685 <description><![CDATA["Performance sampling period" for the stabilization phase.]]></description> 2686 </element> 2687 <element name="stabledist" type="float" min="0" max="1" default="0.01"> 2688 <description><![CDATA[A creature is considered stabilized when its center of gravity stays within the specified distance after the "Sampling period while waiting" has elapsed.]]></description> 2689 </element> 2690 <element name="add" function="true" type="Creature"> 2691 <arguments> 2692 <argument name="genotype object or geno object or string genotype" type="untyped"/> 2693 </arguments> 2694 </element> 2695 <element name="clear" function="true" type="void"> 2696 <description><![CDATA[Delete all creatures]]></description> 2697 <arguments/></element> 2698 <element name="createFromGeno" function="true" type="Creature" deprecated="true"> 2699 <description><![CDATA[Uses the supplied Geno object. 2700 Deprecated. Use the more universal add() function.]]></description> 2701 <arguments> 2702 <argument type="Geno"/> 2703 </arguments> 2729 <element name="othermask" type="integer" min="0" max="2147483647" default="0"> 2730 <description><![CDATA[See selfmask.]]></description> 2731 </element> 2732 <element name="bodysim" type="integer" min="0" max="1" default="1"> 2733 <description><![CDATA[Enable/disable physical body simulation. This is the initial value of Creature.bodysim for all objects created in this group. For details, see the documentation of Creature.bodysim.]]></description> 2734 </element> 2735 <element name="selfcol" type="integer" min="0" max="1" default="0"> 2736 <description><![CDATA[Detect collisions within creature bodies (only applicable for the ODE simulation engine). This is the initial value of Creature.selfcol for all objects created in this group. If enabled, creatures with self-colliding genotypes are not born, and others will have their sticks collide during lifespan.]]></description> 2737 </element> 2738 <element name="em_stat" type="float" min="0" max="1" default="0.0"> 2739 <description><![CDATA[Energy requirements for a muscle 2740 resisting an external force]]></description> 2741 </element> 2742 <element name="em_dyn" type="float" min="0" max="1" default="0.0"> 2743 <description><![CDATA[Energy requirements for a muscle 2744 moving a stick]]></description> 2745 </element> 2746 <element name="en_assim" type="float" min="0" max="1" default="0.0"> 2747 <description><![CDATA[Maximal energy gain produced by a vertical specialized stick. 2748 Horizontal specialized sticks get half of this value.]]></description> 2704 2749 </element> 2705 2750 <element name="createFromGenotype" function="true" type="Creature" deprecated="true"> … … 2714 2759 </arguments> 2715 2760 </element> 2716 <element name=" delete" function="true" type="void">2717 <description><![CDATA[ Delete the creature (remove it without executing the onKill event). Removing creatures inside some event handlers (e.g. onCollision) might be unsafe.]]></description>2718 <arguments>2719 <argument name="creature object or index" type="untyped"/>2720 </arguments>2721 </element>2722 < element name="findCreatureAt" function="true" type="Creature">2723 <arguments>2724 <argument name="point" type="Vector"/>2725 <argument name=" vector" type="Vector"/>2761 <element name="createFromGeno" function="true" type="Creature" deprecated="true"> 2762 <description><![CDATA[Uses the supplied Geno object. 2763 Deprecated. Use the more universal add() function.]]></description> 2764 <arguments> 2765 <argument type="Geno"/> 2766 </arguments> 2767 </element> 2768 <element name="add" function="true" type="Creature"> 2769 <arguments> 2770 <argument name="genotype object or geno object or string genotype" type="untyped"/> 2726 2771 </arguments> 2727 2772 </element> … … 2734 2779 <arguments> 2735 2780 <argument name="index" type="integer"/> 2736 </arguments>2737 </element>2738 <element name="getStatsAvg" function="true" type="float">2739 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Creature fields).]]></description>2740 <arguments>2741 <argument name="field name" type="string"/>2742 </arguments>2743 </element>2744 <element name="getStatsMax" function="true" type="float">2745 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Creature fields).]]></description>2746 <arguments>2747 <argument name="field name" type="string"/>2748 </arguments>2749 </element>2750 <element name="getStatsMin" function="true" type="float">2751 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Creature fields).]]></description>2752 <arguments>2753 <argument name="field name" type="string"/>2754 </arguments>2755 </element>2756 <element name="kill" function="true" type="void">2757 <description><![CDATA[Kill the creature (remove it and execute its onKill handler). Killing creatures inside some event handlers (e.g. onCollision) might be unsafe. The recommended and safe way of killing a creature is by setting its energy to 0.]]></description>2758 <arguments>2759 <argument name="creature object or index" type="integer"/>2760 2781 </arguments> 2761 2782 </element> … … 2781 2802 </arguments> 2782 2803 </element> 2804 <element name="findCreatureAt" function="true" type="Creature"> 2805 <arguments> 2806 <argument name="point" type="Vector"/> 2807 <argument name="vector" type="Vector"/> 2808 </arguments> 2809 </element> 2810 <element name="delete" function="true" type="void"> 2811 <description><![CDATA[Delete the creature (remove it without executing the onKill event). Removing creatures inside some event handlers (e.g. onCollision) might be unsafe.]]></description> 2812 <arguments> 2813 <argument name="creature object or index" type="untyped"/> 2814 </arguments> 2815 </element> 2816 <element name="kill" function="true" type="void"> 2817 <description><![CDATA[Kill the creature (remove it and execute its onKill handler). Killing creatures inside some event handlers (e.g. onCollision) might be unsafe. The recommended and safe way of killing a creature is by setting its energy to 0.]]></description> 2818 <arguments> 2819 <argument name="creature object or index" type="integer"/> 2820 </arguments> 2821 </element> 2822 <element name="clear" function="true" type="void"> 2823 <description><![CDATA[Delete all creatures]]></description> 2824 <arguments/></element> 2825 <element name="iterator" type="Object"/> 2826 <element name="getStatsMin" function="true" type="float"> 2827 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Creature fields).]]></description> 2828 <arguments> 2829 <argument name="field name" type="string"/> 2830 </arguments> 2831 </element> 2832 <element name="getStatsAvg" function="true" type="float"> 2833 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Creature fields).]]></description> 2834 <arguments> 2835 <argument name="field name" type="string"/> 2836 </arguments> 2837 </element> 2838 <element name="getStatsMax" function="true" type="float"> 2839 <description><![CDATA[Retrieves data from stats.* object. Can only be used for fields covered by stats.* (subset of Creature fields).]]></description> 2840 <arguments> 2841 <argument name="field name" type="string"/> 2842 </arguments> 2843 </element> 2783 2844 </type> 2784 2845 <type name="Populations" context="Global context"> … … 2796 2857 2797 2858 See also: Creature, Population.]]></description> 2798 <element name="creature" type="integer" deprecated="true">2799 <description><![CDATA[Deprecated. Pass creature object to functions needing it, instead of the old "first select, then call" approach.]]></description>2800 </element>2801 2859 <element name="group" type="integer" deprecated="true"> 2802 2860 <description><![CDATA[Index of the currently selected group (Population). 2803 2861 Deprecated. Pass creature object to functions needing it, instead of the old "first select, then call" approach.]]></description> 2804 2862 </element> 2805 <element name="iterator" type="Object"/>2806 2863 <element name="size" type="integer"/> 2864 <element name="creature" type="integer" deprecated="true"> 2865 <description><![CDATA[Deprecated. Pass creature object to functions needing it, instead of the old "first select, then call" approach.]]></description> 2866 </element> 2867 <element name="createFromGenotype" function="true" type="Creature" deprecated="true"> 2868 <description><![CDATA[Uses the selected Genotype object.]]></description> 2869 <arguments/></element> 2870 <element name="createFromString" function="true" type="Creature" deprecated="true"> 2871 <description><![CDATA[Uses the supplied string argument.]]></description> 2872 <arguments> 2873 <argument name="genotype" type="string"/> 2874 </arguments> 2875 </element> 2876 <element name="killSelected" function="true" type="void" deprecated="true"> 2877 <description><![CDATA[Applies to the selected Creature.]]></description> 2878 <arguments/></element> 2879 <element name="deleteSelected" function="true" type="void" deprecated="true"> 2880 <description><![CDATA[Applies to the selected Creature.]]></description> 2881 <arguments/></element> 2807 2882 <element name="addGroup" function="true" type="Population"> 2808 2883 <description><![CDATA[Adds a new population.]]></description> 2809 2884 <arguments> 2810 2885 <argument name="name" type="string"/> 2886 </arguments> 2887 </element> 2888 <element name="deleteGroup" function="true" type="void"> 2889 <description><![CDATA[Removes a population.]]></description> 2890 <arguments> 2891 <argument name="index" type="integer"/> 2811 2892 </arguments> 2812 2893 </element> … … 2831 2912 </arguments> 2832 2913 </element> 2833 <element name="createFromGenotype" function="true" type="Creature" deprecated="true"> 2834 <description><![CDATA[Uses the selected Genotype object.]]></description> 2835 <arguments/></element> 2836 <element name="createFromString" function="true" type="Creature" deprecated="true"> 2837 <description><![CDATA[Uses the supplied string argument.]]></description> 2838 <arguments> 2839 <argument name="genotype" type="string"/> 2840 </arguments> 2841 </element> 2842 <element name="deleteGroup" function="true" type="void"> 2843 <description><![CDATA[Removes a population.]]></description> 2914 <element name="get" function="true" type="Population"> 2844 2915 <arguments> 2845 2916 <argument name="index" type="integer"/> 2846 2917 </arguments> 2847 2918 </element> 2848 <element name="deleteSelected" function="true" type="void" deprecated="true">2849 <description><![CDATA[Applies to the selected Creature.]]></description>2850 <arguments/></element>2851 2919 <element name="findCreatureAt" function="true" type="Creature"> 2852 2920 <arguments> … … 2855 2923 </arguments> 2856 2924 </element> 2857 <element name="get" function="true" type="Population"> 2858 <arguments> 2859 <argument name="index" type="integer"/> 2860 </arguments> 2861 </element> 2862 <element name="killSelected" function="true" type="void" deprecated="true"> 2863 <description><![CDATA[Applies to the selected Creature.]]></description> 2864 <arguments/></element> 2925 <element name="iterator" type="Object"/> 2865 2926 </type> 2866 2927 <type name="Ref" context="Global context"> … … 2874 2935 function square(r) 2875 2936 {r.value=r.value*r.value;} 2876 //square receives the Reference objects and changes its 'value' field]]></description> 2877 <element name="toString" type="string"/> 2937 //square receives the Reference object and changes its 'value' field]]></description> 2878 2938 <element name="value" type="untyped"/> 2939 <element name="newO" function="true"> 2940 <description><![CDATA[(for internal use only) use &variablename to create Ref objects.]]></description> 2941 </element> 2879 2942 <element name="copyFrom" function="true" type="void"> 2880 2943 <description><![CDATA[make the reference point to the same target,]]></description> … … 2883 2946 </arguments> 2884 2947 </element> 2885 <element name="newO" function="true"> 2886 <description><![CDATA[(for internal use only) use &variablename to create Ref objects.]]></description> 2887 </element> 2948 <element name="toString" type="string"/> 2888 2949 </type> 2889 2950 <type name="Shapes" context="Global context"> 2890 2951 <description><![CDATA[This object defines appearance of the elements of creatures (applies to the 'wireframe' display mode). Default shape definitions make food's "p:" look like a sphere, and manipulator's "p:" look like a robot hand. The model's Vstyle property is the name of the shape. Developers of experiment definitions can introduce new Vstyle(s) for their expdef and provide appropriate shape definitions by calling Shapes.set(...) in the onExpDefLoad() function.]]></description> 2891 <element name="clear" function="true" type="void"><arguments/></element>2892 2952 <element name="set" function="true" type="void"> 2893 2953 <description><![CDATA[Arguments: … … 2913 2973 </arguments> 2914 2974 </element> 2975 <element name="clear" function="true" type="void"><arguments/></element> 2915 2976 </type> 2916 2977 <type name="Signal" context="Global context"> … … 2923 2984 2924 2985 Creating: Use "add" in Creature.signals, Neuro.signals, or World.signals.]]></description> 2986 <element name="value" type="untyped"> 2987 <description><![CDATA[Signal value can be any type. On the receiver side it is only available by accessing the individual Signal objects, i.e. after calling receiveSet() or receiveSingle(). The aggregating functions receive() and receiveFilter() ignore this attribute.]]></description> 2988 </element> 2989 <element name="power" type="float"> 2990 <description><![CDATA[Signal power affects the aggregated signal value returned from receive() and receiveFilter().]]></description> 2991 </element> 2992 <element name="flavor" type="float"> 2993 <description><![CDATA[Signal flavor can be used to differentiate between signals in a single channel.]]></description> 2994 </element> 2925 2995 <element name="channel" type="string"> 2926 2996 <description><![CDATA[Channel name, read-only.]]></description> 2927 2997 </element> 2928 <element name="flavor" type="float">2929 <description><![CDATA[Signal flavor can be used to differentiate between signals in a single channel.]]></description>2930 </element>2931 2998 <element name="pos" type="XYZ"> 2932 2999 <description><![CDATA[Signal position, read-only.]]></description> 2933 3000 </element> 2934 <element name="power" type="float">2935 <description><![CDATA[Signal power affects the aggregated signal value returned from receive() and receiveFilter().]]></description>2936 </element>2937 <element name="value" type="untyped">2938 <description><![CDATA[Signal value can be any type. On the receiver side it is only available by accessing the individual Signal objects, i.e. after calling receiveSet() or receiveSingle(). The aggregating functions receive() and receiveFilter() ignore this attribute.]]></description>2939 </element>2940 3001 <element name="remove" function="true"> 2941 3002 <description><![CDATA[Deletes the signal.]]></description> … … 2943 3004 </type> 2944 3005 <type name="SignalView" context="Global context"> 3006 <element name="clear" function="true"> 3007 <description><![CDATA[Removes custom display settings that might have been defined by various scripts (expdef or show).]]></description> 3008 </element> 3009 <element name="mode" type="integer" min="0" max="2"> 3010 <description><![CDATA["Automatic" labels all signal sources in all channels and shows the intensity map of the first channel. This is sufficient for many simple setups, but as the number of signals and channels grows, the display becomes cluttered. In such cases, the experiment definition can define "Custom" signal visualization tailored for the particular experiment.]]></description> 3011 </element> 2945 3012 <element name="labels" type="string"> 2946 3013 <description><![CDATA[The label formula should return text to be displayed over the signal source, presumably by reading some values from the supplied Signal object. It is especially useful for more sophisticated signal usage scenarios, when Signal.value keeps a reference to an object (the default signal label only shows <XXX Object at xxxxx> in such cases). … … 2951 3018 return "val="+Signal.value; 2952 3019 return "power="+Signal.power;]]></description> 2953 </element>2954 <element name="mode" type="integer" min="0" max="2">2955 <description><![CDATA["Automatic" labels all signal sources in all channels and shows the intensity map of the first channel. This is sufficient for many simple setups, but as the number of signals and channels grows, the display becomes cluttered. In such cases, the experiment definition can define "Custom" signal visualization tailored for the particular experiment.]]></description>2956 3020 </element> 2957 3021 <element name="addMap" function="true" type="void"> … … 2981 3045 </arguments> 2982 3046 </element> 2983 <element name="clear" function="true">2984 <description><![CDATA[Removes custom display settings that might have been defined by various scripts (expdef or show).]]></description>2985 </element>2986 3047 </type> 2987 3048 <type name="sim_params" context="Global context"> 2988 3049 <description><![CDATA[This object groups all simulator parameters so they can be loaded or saved with a single call (see scripts/standard_loadsave.inc). For other purposes please use specific objects, like Simulator, World, Populations, etc.]]></description> 2989 <element name="autosaveperiod" type="integer" min="0" max="100000"> 2990 <description><![CDATA[Save simulation state once every n-th event 2991 (events are defined by the script. For 'standard.expdef' it is after each death). 2992 Save EXPT file first to initialize name for autosave files. 2993 Slave simulators (in multithreaded experiments) ignore this setting and never create autosave files.]]></description> 2994 </element> 2995 <element name="bnoise_struct" type="float" min="0" max="10" default="0.0"> 2996 <description><![CDATA[When >0, body constructs of creatures (position of Parts) will be randomly disturbed when they are created.]]></description> 2997 </element> 2998 <element name="bnoise_vel" type="float" min="0" max="10" default="0.0"> 2999 <description><![CDATA[Random velocities will be applied to all body Parts (in MechaStick) or rigid segments (in ODE) of newly created creatures.]]></description> 3000 </element> 3001 <element name="changedProperty" type="integer"/> 3002 <element name="changedPropertyId" type="string"/> 3003 <element name="cpus" type="integer"/> 3004 <element name="createrr" type="integer" min="0" max="2" default="1"/> 3005 <element name="creatwarnfail" type="integer" min="0" max="1"> 3006 <description><![CDATA[Creatures grown with warnings will not be simulated.]]></description> 3007 </element> 3008 <element name="expdef" type="string"> 3009 <description><![CDATA[Choose the experiment framework 3010 (in Windows GUI, confirm by pressing 'Apply') 3011 3012 Stop the simulation before selecting another experiment definition. 3013 It is a good practice to initialize the experiment before running the simulation.]]></description> 3014 </element> 3015 <element name="expdef_info" type="string"/> 3016 <element name="expdef_title" type="string"/> 3017 <element name="expparams" type="ExpParams"/> 3018 <element name="expstate" type="ExpState"/> 3019 <element name="f0_c_del" type="float" min="0" max="100" default="5.0"> 3020 <description><![CDATA[]]></description> 3021 </element> 3022 <element name="f0_c_new" type="float" min="0" max="100" default="5.0"> 3023 <description><![CDATA[]]></description> 3024 </element> 3025 <element name="f0_c_wei" type="float" min="0" max="100" default="10.0"> 3026 <description><![CDATA[]]></description> 3027 </element> 3028 <element name="f0_j_del" type="float" min="0" max="100" default="5.0"> 3029 <description><![CDATA[]]></description> 3030 </element> 3031 <element name="f0_j_new" type="float" min="0" max="100" default="5.0"> 3032 <description><![CDATA[]]></description> 3033 </element> 3034 <element name="f0_j_rsf" type="float" min="0" max="100" default="10.0"> 3035 <description><![CDATA[]]></description> 3036 </element> 3037 <element name="f0_j_stf" type="float" min="0" max="100" default="10.0"> 3038 <description><![CDATA[]]></description> 3039 </element> 3040 <element name="f0_j_stm" type="float" min="0" max="100" default="10.0"> 3041 <description><![CDATA[]]></description> 3042 </element> 3043 <element name="f0_j_vblu" type="float" min="0" max="100" default="0.0"> 3044 <description><![CDATA[]]></description> 3045 </element> 3046 <element name="f0_j_vgrn" type="float" min="0" max="100" default="0.0"> 3047 <description><![CDATA[]]></description> 3048 </element> 3049 <element name="f0_j_vred" type="float" min="0" max="100" default="0.0"> 3050 <description><![CDATA[]]></description> 3051 </element> 3052 <element name="f0_n_del" type="float" min="0" max="100" default="5.0"> 3053 <description><![CDATA[]]></description> 3054 </element> 3055 <element name="f0_n_new" type="float" min="0" max="100" default="5.0"> 3056 <description><![CDATA[]]></description> 3057 </element> 3058 <element name="f0_n_prp" type="float" min="0" max="100" default="10.0"> 3059 <description><![CDATA[]]></description> 3060 </element> 3061 <element name="f0_nodel_tag" type="integer" min="0" max="1" default="1"> 3062 <description><![CDATA[You can tag elements using their 'i' field and the i="mi=d" tag. 3063 Mutations will not delete such elements. 3064 The i="mi=dm" combination is allowed.]]></description> 3065 </element> 3066 <element name="f0_nomod_tag" type="integer" min="0" max="1" default="1"> 3067 <description><![CDATA[You can tag elements using their 'i' field and the i="mi=m" tag. 3068 Mutations will not modify properties of such elements. 3069 The i="mi=md" combination is allowed.]]></description> 3070 </element> 3071 <element name="f0_p_asm" type="float" min="0" max="100" default="10.0"> 3072 <description><![CDATA[]]></description> 3073 </element> 3074 <element name="f0_p_del" type="float" min="0" max="100" default="5.0"> 3075 <description><![CDATA[]]></description> 3076 </element> 3077 <element name="f0_p_frc" type="float" min="0" max="100" default="10.0"> 3078 <description><![CDATA[]]></description> 3079 </element> 3080 <element name="f0_p_ing" type="float" min="0" max="100" default="10.0"> 3081 <description><![CDATA[]]></description> 3082 </element> 3083 <element name="f0_p_mas" type="float" min="0" max="100" default="10.0"> 3084 <description><![CDATA[]]></description> 3085 </element> 3086 <element name="f0_p_new" type="float" min="0" max="100" default="5.0"> 3087 <description><![CDATA[]]></description> 3088 </element> 3089 <element name="f0_p_pos" type="float" min="0" max="100" default="10.0"> 3090 <description><![CDATA[]]></description> 3091 </element> 3092 <element name="f0_p_swp" type="float" min="0" max="100" default="10.0"> 3093 <description><![CDATA[]]></description> 3094 </element> 3095 <element name="f0_p_vsiz" type="float" min="0" max="100" default="0.0"> 3096 <description><![CDATA[]]></description> 3097 </element> 3098 <element name="f1_mut_exmod" type="string"> 3099 <description><![CDATA[Modifiers that will not be added nor deleted during mutation 3100 (all: LlRrCcQqFfMmIiWwEeAaSsDdGgBbHh)]]></description> 3101 </element> 3102 <element name="f1_nmConn" type="float" min="0" max="100" default="0.1"> 3103 <description><![CDATA[]]></description> 3104 </element> 3105 <element name="f1_nmNeu" type="float" min="0" max="100" default="0.05"> 3106 <description><![CDATA[Adds a (connected) neuron or removes a neuron]]></description> 3107 </element> 3108 <element name="f1_nmProp" type="float" min="0" max="100" default="0.1"> 3109 <description><![CDATA[]]></description> 3110 </element> 3111 <element name="f1_nmVal" type="float" min="0" max="100" default="0.05"/> 3112 <element name="f1_nmWei" type="float" min="0" max="100" default="1.0"/> 3113 <element name="f1_smComma" type="float" min="0" max="100" default="0.02"/> 3114 <element name="f1_smJunct" type="float" min="0" max="100" default="0.02"/> 3115 <element name="f1_smModif" type="float" min="0" max="100" default="0.1"> 3116 <description><![CDATA[Modifiers: LlRrCcQqFfMmIiWwEeAaSsDdGgBbHh]]></description> 3117 </element> 3118 <element name="f1_smX" type="float" min="0" max="100" default="0.05"/> 3119 <element name="f1_xo_propor" type="integer" min="0" max="1" default="1"> 3120 <description><![CDATA[Cross over (exchange) corresponding segments of the two parent genotypes? 3121 3122 f1 uses a two-point crossing over. 3123 If this option is turned on, cut points will be selected proportionally to neural genes. 3124 Thus, if both parents have the same number of neurons, then this will be preserved in their children.]]></description> 3125 </element> 3126 <element name="f2_mutAddOper" type="float" min="0" max="1" default="0.4"> 3127 <description><![CDATA[]]></description> 3128 </element> 3129 <element name="f2_mutConnElem" type="float" min="0" max="1" default="0.33"> 3130 <description><![CDATA[]]></description> 3131 </element> 3132 <element name="f2_mutDelOper" type="float" min="0" max="1" default="0.1"> 3133 <description><![CDATA[]]></description> 3134 </element> 3135 <element name="f2_mutHandleOper" type="float" min="0" max="1" default="0.3"> 3136 <description><![CDATA[]]></description> 3137 </element> 3138 <element name="f2_mutJointElem" type="float" min="0" max="1" default="0.33"> 3139 <description><![CDATA[]]></description> 3140 </element> 3141 <element name="f2_mutNeuroElem" type="float" min="0" max="1" default="0.33"> 3142 <description><![CDATA[]]></description> 3143 </element> 3144 <element name="f2_mutPropOper" type="float" min="0" max="1" default="0.2"> 3145 <description><![CDATA[]]></description> 3146 </element> 3147 <element name="f3_mutDelIns" type="float" min="0" max="1" default="0.1"> 3148 <description><![CDATA[]]></description> 3149 </element> 3150 <element name="f3_mutDelInsLength" type="integer" min="1" max="100" default="5"> 3151 <description><![CDATA[]]></description> 3152 </element> 3153 <element name="f3_mutDelInsPerChar" type="float" min="0" max="1" default="0.05"> 3154 <description><![CDATA[]]></description> 3155 </element> 3156 <element name="f3_mutDuplication" type="float" min="0" max="1" default="0.05"> 3157 <description><![CDATA[]]></description> 3158 </element> 3159 <element name="f3_mutSubstitution" type="float" min="0" max="1" default="0.6"> 3160 <description><![CDATA[]]></description> 3161 </element> 3162 <element name="f3_mutSubstPerChar" type="float" min="0" max="1" default="0.1"> 3163 <description><![CDATA[]]></description> 3164 </element> 3165 <element name="f3_mutTranslocation" type="float" min="0" max="1" default="0.15"> 3166 <description><![CDATA[]]></description> 3167 </element> 3168 <element name="f3_xovCrossingOver" type="float" min="0" max="1" default="0.2"> 3169 <description><![CDATA[]]></description> 3170 </element> 3171 <element name="f3_xovGeneTransfer" type="float" min="0" max="1" default="0.8"> 3172 <description><![CDATA[]]></description> 3173 </element> 3174 <element name="f4_mut_add" type="float" min="0" max="100" default="50.0"> 3175 <description><![CDATA[mutation: probability of adding a node]]></description> 3176 </element> 3177 <element name="f4_mut_add_conn" type="float" min="0" max="100" default="15.0"> 3178 <description><![CDATA[add node mutation: probability of adding a neural connection]]></description> 3179 </element> 3180 <element name="f4_mut_add_div" type="float" min="0" max="100" default="20.0"> 3181 <description><![CDATA[add node mutation: probability of adding a division]]></description> 3182 </element> 3183 <element name="f4_mut_add_neupar" type="float" min="0" max="100" default="5.0"> 3184 <description><![CDATA[add node mutation: probability of adding a neuron property/modifier]]></description> 3185 </element> 3186 <element name="f4_mut_add_rep" type="float" min="0" max="100" default="10.0"> 3187 <description><![CDATA[add node mutation: probability of adding a repetition]]></description> 3188 </element> 3189 <element name="f4_mut_add_simp" type="float" min="0" max="100" default="50.0"> 3190 <description><![CDATA[add node mutation: probability of adding a random, simple gene]]></description> 3191 </element> 3192 <element name="f4_mut_del" type="float" min="0" max="100" default="20.0"> 3193 <description><![CDATA[mutation: probability of deleting a node]]></description> 3194 </element> 3195 <element name="f4_mut_mod" type="float" min="0" max="100" default="30.0"> 3196 <description><![CDATA[mutation: probability of changing a node]]></description> 3197 </element> 3198 <element name="f9_mut" type="float" min="0" max="1" default="0.1"> 3199 <description><![CDATA[How many genes should be mutated during single mutation (1=all genes, 0.1=ten percent)]]></description> 3200 </element> 3201 <element name="fF_xover" type="float" min="0" max="0.5" default="0.5"> 3202 <description><![CDATA[0.5 => children are averaged parents. 3203 0.2 => children are only 20% different from parents. 3204 0 => each child is identical to one parent (no crossover).]]></description> 3205 </element> 3206 <element name="filecomm" type="integer" min="0" max="1" default="1"> 3207 <description><![CDATA[Display comments encountered in opened files]]></description> 3208 </element> 3209 <element name="gen_extmutinfo" type="integer" min="0" max="2" default="0"> 3210 <description><![CDATA[If active, information about employed mutation method will be stored in the 'info' field of each mutated genotype.]]></description> 3211 </element> 3212 <element name="gen_hilite" type="integer" min="0" max="1" default="1"> 3213 <description><![CDATA[Use colors for genes? 3214 (slows down viewing/editing of huge genotypes)]]></description> 3215 </element> 3216 <element name="gen_hist" type="integer" min="0" max="1" default="0"> 3217 <description><![CDATA[Required for phylogenetic analysis]]></description> 3218 </element> 3219 <element name="genepools" type="GenePools"/> 3220 <element name="genkonw0" type="integer" min="0" max="1"> 3221 <description><![CDATA[]]></description> 3222 </element> 3223 <element name="genkonw1" type="integer" min="0" max="1"> 3224 <description><![CDATA[]]></description> 3225 </element> 3226 <element name="genkonw2" type="integer" min="0" max="1"> 3227 <description><![CDATA[]]></description> 3228 </element> 3229 <element name="genkonw3" type="integer" min="0" max="1"> 3230 <description><![CDATA[]]></description> 3231 </element> 3232 <element name="genkonw4" type="integer" min="0" max="1"> 3233 <description><![CDATA[]]></description> 3234 </element> 3235 <element name="genkonw5" type="integer" min="0" max="1"> 3236 <description><![CDATA[]]></description> 3237 </element> 3238 <element name="genoper_f0" type="integer" min="0" max="0"> 3239 <description><![CDATA[]]></description> 3240 </element> 3241 <element name="genoper_f1" type="integer" min="0" max="0"> 3242 <description><![CDATA[]]></description> 3243 </element> 3244 <element name="genoper_f2" type="integer" min="0" max="0"> 3245 <description><![CDATA[]]></description> 3246 </element> 3247 <element name="genoper_f3" type="integer" min="0" max="0"> 3248 <description><![CDATA[]]></description> 3249 </element> 3250 <element name="genoper_f4" type="integer" min="0" max="0"> 3251 <description><![CDATA[]]></description> 3252 </element> 3253 <element name="genoper_f9" type="integer" min="0" max="0"> 3254 <description><![CDATA[]]></description> 3255 </element> 3256 <element name="genoper_fF" type="integer" min="0" max="0"> 3257 <description><![CDATA[]]></description> 3258 </element> 3259 <element name="geom_density" type="float" min="0.01" max="100" default="1.0"> 3260 <description><![CDATA[Affects the geometry calculation precision]]></description> 3261 </element> 3262 <element name="groupchk" type="integer" min="0" max="1"/> 3263 <element name="identity" type="integer"> 3264 <description><![CDATA[-1 for master simulator, 0...count-1 for slaves]]></description> 3265 </element> 3266 <element name="importchk" type="integer" min="0" max="1"/> 3267 <element name="lastCheckpoint" type="untyped"> 3268 <description><![CDATA[Most recently reported by the experiment definition script.]]></description> 3269 </element> 3270 <element name="loadchk" type="integer" min="0" max="1"/> 3271 <element name="maxjoint" type="float" min="0" max="100" default="2.0"/> 3272 <element name="minjoint" type="float" min="0" max="100" default="0.0"/> 3273 <element name="neuadd_N" type="integer" min="0" max="1"> 3274 <description><![CDATA[Standard neuron 3275 3276 Characteristics: 3277 supports any number of inputs 3278 provides output value 3279 does not require location in body 3280 3281 3282 Properties: 3283 Inertia (in) float 0..1 3284 Force (fo) float 0..999 3285 Sigmoid (si) float -99999..99999 3286 State (s) float -1..1]]></description> 3287 </element> 3288 <element name="neuadd_Nu" type="integer" min="0" max="1"> 3289 <description><![CDATA[Works like standard neuron (N) but the output value is scaled to 0...+1 instead of -1...+1. 3290 Having 0 as one of the saturation states should help in "gate circuits", where input signal is passed through or blocked depending on the other singal. 3291 3292 Characteristics: 3293 supports any number of inputs 3294 provides output value 3295 does not require location in body 3296 3297 3298 Properties: 3299 Inertia (in) float 0..1 3300 Force (fo) float 0..999 3301 Sigmoid (si) float -99999..99999 3302 State (s) float -1..1]]></description> 3303 </element> 3304 <element name="neuadd_G" type="integer" min="0" max="1"> 3305 <description><![CDATA[Equilibrium sensor. 3306 0=the stick is horizontal 3307 +1/-1=the stick is vertical 3308 3309 Characteristics: 3310 does not use inputs 3311 provides output value 3312 should be located on a Joint 3313 ]]></description> 3314 </element> 3315 <element name="neuadd_T" type="integer" min="0" max="1"> 3316 <description><![CDATA[Touch sensor. 3317 -1=no contact 3318 0=just touching 3319 >0=pressing, value depends on the force applied 3320 3321 Characteristics: 3322 does not use inputs 3323 provides output value 3324 should be located on a Part 3325 3326 3327 Properties: 3328 Range (r) float 0..1]]></description> 3329 </element> 3330 <element name="neuadd_S" type="integer" min="0" max="1"> 3331 <description><![CDATA[Smell sensor. Aggregated "smell of energy" experienced from all energy objects (creatures and food pieces). 3332 Close objects have bigger influence than the distant ones: for each energy source, its partial feeling is proportional to its energy/(distance^2) 3333 3334 Characteristics: 3335 does not use inputs 3336 provides output value 3337 should be located on a Part 3338 ]]></description> 3339 </element> 3340 <element name="neuadd_Constant" type="integer" min="0" max="1"> 3341 <description><![CDATA[Constant value 3342 3343 Characteristics: 3344 does not use inputs 3345 provides output value 3346 does not require location in body 3347 ]]></description> 3348 </element> 3349 <element name="neuadd_Bend_muscle" type="integer" min="0" max="1"> 3350 <description><![CDATA[Characteristics: 3351 uses single input 3352 does not provide output value 3353 should be located on a Joint 3354 3355 3356 Properties: 3357 power (p) float 0.01..1 3358 bending range (r) float 0..1]]></description> 3359 </element> 3360 <element name="neuadd_Rotation_muscle" type="integer" min="0" max="1"> 3361 <description><![CDATA[Characteristics: 3362 uses single input 3363 does not provide output value 3364 should be located on a Joint 3365 3366 3367 Properties: 3368 power (p) float 0.01..1]]></description> 3369 </element> 3370 <element name="neuadd_D" type="integer" min="0" max="1"> 3371 <description><![CDATA[Calculate the difference between the current and previous input value. Multiple inputs are aggregated with respect to their weights 3372 3373 Characteristics: 3374 supports any number of inputs 3375 provides output value 3376 does not require location in body 3377 ]]></description> 3378 </element> 3379 <element name="neuadd_Fuzzy" type="integer" min="0" max="1"> 3380 <description><![CDATA[Refer to publications to learn more about this neuron. 3381 3382 Characteristics: 3383 supports any number of inputs 3384 provides output value 3385 does not require location in body 3386 3387 3388 Properties: 3389 number of fuzzy sets (ns) integer 3390 number of rules (nr) integer 3391 fuzzy sets (fs) string 3392 fuzzy rules (fr) string]]></description> 3393 </element> 3394 <element name="neuadd_VEye" type="integer" min="0" max="1"> 3395 <description><![CDATA[Refer to publications to learn more about this neuron. 3396 3397 Characteristics: 3398 uses single input 3399 provides output value 3400 should be located on a Part 3401 3402 3403 Properties: 3404 target.x (tx) float 3405 target.y (ty) float 3406 target.z (tz) float 3407 target shape (ts) string 3408 perspective (p) float 0.1..10 3409 scale (s) float 0.1..100 3410 show hidden lines (h) integer 0..1 3411 output lines count (each line needs four channels) (o) integer 0..99 3412 debug (d) integer 0..1]]></description> 3413 </element> 3414 <element name="neuadd_VMotor" type="integer" min="0" max="1"> 3415 <description><![CDATA[Must be connected to the VEye and properly set up. Refer to publications to learn more about this neuron. 3416 3417 Characteristics: 3418 supports any number of inputs 3419 provides output value 3420 does not require location in body 3421 3422 3423 Properties: 3424 number of basic features (noIF) integer 3425 number of degrees of freedom (noDim) integer 3426 parameters (params) string]]></description> 3427 </element> 3428 <element name="neuadd_Sti" type="integer" min="0" max="1"> 3429 <description><![CDATA[Characteristics: 3430 uses single input 3431 does not provide output value 3432 should be located on a Part 3433 ]]></description> 3434 </element> 3435 <element name="neuadd_LMu" type="integer" min="0" max="1"> 3436 <description><![CDATA[Characteristics: 3437 uses single input 3438 does not provide output value 3439 should be located on a Joint 3440 3441 3442 Properties: 3443 power (p) float 0.01..1]]></description> 3444 </element> 3445 <element name="neuadd_Water" type="integer" min="0" max="1"> 3446 <description><![CDATA[Output signal: 3447 0=on or above water surface 3448 1=under water (deeper than 1) 3449 0..1=in the transient area just below water surface 3450 3451 Characteristics: 3452 does not use inputs 3453 provides output value 3454 should be located on a Part 3455 ]]></description> 3456 </element> 3457 <element name="neuadd_Energy" type="integer" min="0" max="1"> 3458 <description><![CDATA[The current energy level divided by the initial energy level. 3459 Usually falls from initial 1.0 down to 0.0 and then the creature dies. It can rise above 1.0 if enough food is ingested 3460 3461 Characteristics: 3462 does not use inputs 3463 provides output value 3464 does not require location in body 3465 ]]></description> 3466 </element> 3467 <element name="neuadd_Ch" type="integer" min="0" max="1"> 3468 <description><![CDATA[Combines all input signals into a single multichannel output; Note: ChSel and ChMux are the only neurons which support multiple channels. Other neurons discard everything except the first channel. 3469 3470 Characteristics: 3471 supports any number of inputs 3472 provides output value 3473 does not require location in body 3474 ]]></description> 3475 </element> 3476 <element name="neuadd_ChMux" type="integer" min="0" max="1"> 3477 <description><![CDATA[Outputs the selected channel from the second (multichannel) input. The first input is used as the selector value (-1=select first channel, .., 1=last channel) 3478 3479 Characteristics: 3480 uses 2 inputs 3481 provides output value 3482 does not require location in body 3483 ]]></description> 3484 </element> 3485 <element name="neuadd_ChSel" type="integer" min="0" max="1"> 3486 <description><![CDATA[Outputs a single channel (selected by the "ch" parameter) from multichannel input 3487 3488 Characteristics: 3489 uses single input 3490 provides output value 3491 does not require location in body 3492 3493 3494 Properties: 3495 channel (ch) integer]]></description> 3496 </element> 3497 <element name="neuadd_Rnd" type="integer" min="0" max="1"> 3498 <description><![CDATA[Generates random noise (subsequent random values in the range of -1..+1) 3499 3500 Characteristics: 3501 does not use inputs 3502 provides output value 3503 does not require location in body 3504 ]]></description> 3505 </element> 3506 <element name="neuadd_Sin" type="integer" min="0" max="1"> 3507 <description><![CDATA[Output frequency = f0+input 3508 3509 Characteristics: 3510 uses single input 3511 provides output value 3512 does not require location in body 3513 3514 3515 Properties: 3516 base frequency (f0) float -1..1 3517 time (t) float 0..6.28319]]></description> 3518 </element> 3519 <element name="ncl_N" type="integer" min="0" max="1"> 3520 <description><![CDATA[Standard neuron 3521 3522 Characteristics: 3523 supports any number of inputs 3524 provides output value 3525 does not require location in body 3526 3527 3528 Properties: 3529 Inertia (in) float 0..1 3530 Force (fo) float 0..999 3531 Sigmoid (si) float -99999..99999 3532 State (s) float -1..1]]></description> 3533 </element> 3534 <element name="ncl_Nu" type="integer" min="0" max="1"> 3535 <description><![CDATA[Works like standard neuron (N) but the output value is scaled to 0...+1 instead of -1...+1. 3536 Having 0 as one of the saturation states should help in "gate circuits", where input signal is passed through or blocked depending on the other singal. 3537 3538 Characteristics: 3539 supports any number of inputs 3540 provides output value 3541 does not require location in body 3542 3543 3544 Properties: 3545 Inertia (in) float 0..1 3546 Force (fo) float 0..999 3547 Sigmoid (si) float -99999..99999 3548 State (s) float -1..1]]></description> 3549 </element> 3550 <element name="ncl_G" type="integer" min="0" max="1"> 3551 <description><![CDATA[Equilibrium sensor. 3552 0=the stick is horizontal 3553 +1/-1=the stick is vertical 3554 3555 Characteristics: 3556 does not use inputs 3557 provides output value 3558 should be located on a Joint 3559 ]]></description> 3560 </element> 3561 <element name="ncl_T" type="integer" min="0" max="1"> 3562 <description><![CDATA[Touch sensor. 3563 -1=no contact 3564 0=just touching 3565 >0=pressing, value depends on the force applied 3566 3567 Characteristics: 3568 does not use inputs 3569 provides output value 3570 should be located on a Part 3571 3572 3573 Properties: 3574 Range (r) float 0..1]]></description> 3575 </element> 3576 <element name="ncl_S" type="integer" min="0" max="1"> 3577 <description><![CDATA[Smell sensor. Aggregated "smell of energy" experienced from all energy objects (creatures and food pieces). 3578 Close objects have bigger influence than the distant ones: for each energy source, its partial feeling is proportional to its energy/(distance^2) 3579 3580 Characteristics: 3581 does not use inputs 3582 provides output value 3583 should be located on a Part 3584 ]]></description> 3585 </element> 3586 <element name="ncl_Constant" type="integer" min="0" max="1"> 3587 <description><![CDATA[Constant value 3588 3589 Characteristics: 3590 does not use inputs 3591 provides output value 3592 does not require location in body 3593 ]]></description> 3594 </element> 3595 <element name="ncl_Bend_muscle" type="integer" min="0" max="1"> 3596 <description><![CDATA[Characteristics: 3597 uses single input 3598 does not provide output value 3599 should be located on a Joint 3600 3601 3602 Properties: 3603 power (p) float 0.01..1 3604 bending range (r) float 0..1]]></description> 3605 </element> 3606 <element name="ncl_Rotation_muscle" type="integer" min="0" max="1"> 3607 <description><![CDATA[Characteristics: 3608 uses single input 3609 does not provide output value 3610 should be located on a Joint 3611 3612 3613 Properties: 3614 power (p) float 0.01..1]]></description> 3615 </element> 3616 <element name="ncl_D" type="integer" min="0" max="1"> 3617 <description><![CDATA[Calculate the difference between the current and previous input value. Multiple inputs are aggregated with respect to their weights 3618 3619 Characteristics: 3620 supports any number of inputs 3621 provides output value 3622 does not require location in body 3623 ]]></description> 3624 </element> 3625 <element name="ncl_Fuzzy" type="integer" min="0" max="1"> 3626 <description><![CDATA[Refer to publications to learn more about this neuron. 3627 3628 Characteristics: 3629 supports any number of inputs 3630 provides output value 3631 does not require location in body 3632 3633 3634 Properties: 3635 number of fuzzy sets (ns) integer 3636 number of rules (nr) integer 3637 fuzzy sets (fs) string 3638 fuzzy rules (fr) string]]></description> 3639 </element> 3640 <element name="ncl_VEye" type="integer" min="0" max="1"> 3641 <description><![CDATA[Refer to publications to learn more about this neuron. 3642 3643 Characteristics: 3644 uses single input 3645 provides output value 3646 should be located on a Part 3647 3648 3649 Properties: 3650 target.x (tx) float 3651 target.y (ty) float 3652 target.z (tz) float 3653 target shape (ts) string 3654 perspective (p) float 0.1..10 3655 scale (s) float 0.1..100 3656 show hidden lines (h) integer 0..1 3657 output lines count (each line needs four channels) (o) integer 0..99 3658 debug (d) integer 0..1]]></description> 3659 </element> 3660 <element name="ncl_VMotor" type="integer" min="0" max="1"> 3661 <description><![CDATA[Must be connected to the VEye and properly set up. Refer to publications to learn more about this neuron. 3662 3663 Characteristics: 3664 supports any number of inputs 3665 provides output value 3666 does not require location in body 3667 3668 3669 Properties: 3670 number of basic features (noIF) integer 3671 number of degrees of freedom (noDim) integer 3672 parameters (params) string]]></description> 3673 </element> 3674 <element name="ncl_Sti" type="integer" min="0" max="1"> 3675 <description><![CDATA[Characteristics: 3676 uses single input 3677 does not provide output value 3678 should be located on a Part 3679 ]]></description> 3680 </element> 3681 <element name="ncl_LMu" type="integer" min="0" max="1"> 3682 <description><![CDATA[Characteristics: 3683 uses single input 3684 does not provide output value 3685 should be located on a Joint 3686 3687 3688 Properties: 3689 power (p) float 0.01..1]]></description> 3690 </element> 3691 <element name="ncl_Water" type="integer" min="0" max="1"> 3692 <description><![CDATA[Output signal: 3693 0=on or above water surface 3694 1=under water (deeper than 1) 3695 0..1=in the transient area just below water surface 3696 3697 Characteristics: 3698 does not use inputs 3699 provides output value 3700 should be located on a Part 3701 ]]></description> 3702 </element> 3703 <element name="ncl_Energy" type="integer" min="0" max="1"> 3704 <description><![CDATA[The current energy level divided by the initial energy level. 3705 Usually falls from initial 1.0 down to 0.0 and then the creature dies. It can rise above 1.0 if enough food is ingested 3706 3707 Characteristics: 3708 does not use inputs 3709 provides output value 3710 does not require location in body 3711 ]]></description> 3712 </element> 3713 <element name="ncl_Ch" type="integer" min="0" max="1"> 3714 <description><![CDATA[Combines all input signals into a single multichannel output; Note: ChSel and ChMux are the only neurons which support multiple channels. Other neurons discard everything except the first channel. 3715 3716 Characteristics: 3717 supports any number of inputs 3718 provides output value 3719 does not require location in body 3720 ]]></description> 3721 </element> 3722 <element name="ncl_ChMux" type="integer" min="0" max="1"> 3723 <description><![CDATA[Outputs the selected channel from the second (multichannel) input. The first input is used as the selector value (-1=select first channel, .., 1=last channel) 3724 3725 Characteristics: 3726 uses 2 inputs 3727 provides output value 3728 does not require location in body 3729 ]]></description> 3730 </element> 3731 <element name="ncl_ChSel" type="integer" min="0" max="1"> 3732 <description><![CDATA[Outputs a single channel (selected by the "ch" parameter) from multichannel input 3733 3734 Characteristics: 3735 uses single input 3736 provides output value 3737 does not require location in body 3738 3739 3740 Properties: 3741 channel (ch) integer]]></description> 3742 </element> 3743 <element name="ncl_Rnd" type="integer" min="0" max="1"> 3744 <description><![CDATA[Generates random noise (subsequent random values in the range of -1..+1) 3745 3746 Characteristics: 3747 does not use inputs 3748 provides output value 3749 does not require location in body 3750 ]]></description> 3751 </element> 3752 <element name="ncl_Sin" type="integer" min="0" max="1"> 3753 <description><![CDATA[Output frequency = f0+input 3754 3755 Characteristics: 3756 uses single input 3757 provides output value 3758 does not require location in body 3759 3760 3761 Properties: 3762 base frequency (f0) float -1..1 3763 time (t) float 0..6.28319]]></description> 3764 </element> 3765 <element name="nnoise" type="float" min="0" max="1" default="0.0"> 3766 <description><![CDATA[Gaussian neural noise: a random value is added to each neural output in each simulation step. Set standard deviation here to add random noise, or 0 for deterministic simulation.]]></description> 3767 </element> 3768 <element name="nnspeed" type="float" min="0" max="1000" default="1.0"> 3769 <description><![CDATA[Number of neural network simulation steps in each physics simulation step]]></description> 3770 </element> 3771 <element name="odeairdrag" type="float" min="0" max="0.5" default="0.01"> 3772 <description><![CDATA[A drag force ("air drag") proportional to the velocity of mass centers of moving parts]]></description> 3773 </element> 3774 <element name="odecol2bounce" type="float" min="0" max="1" default="0.1"/> 3775 <element name="odecol2bouncevel" type="float" min="0" max="1" default="0.01"/> 3776 <element name="odecol2mumax" type="float" min="0" max="10" default="1.0"> 3777 <description><![CDATA[Mu coefficient for Parts with maximal friction (i.e. "FFFFF" in f1)]]></description> 3778 </element> 3779 <element name="odecol2mumin" type="float" min="0" max="10" default="0.1"> 3780 <description><![CDATA[Mu coefficient for Parts with minimal friction (i.e. "fffff" in f1)]]></description> 3781 </element> 3782 <element name="odecol2softcfm" type="float" min="0" max="1" default="0.0"/> 3783 <element name="odecol2softerp" type="float" min="0" max="1" default="0.0"/> 3784 <element name="odecolbounce" type="float" min="0" max="1" default="0.1"/> 3785 <element name="odecolbouncevel" type="float" min="0" max="1" default="0.01"/> 3786 <element name="odecolmumax" type="float" min="0" max="10" default="5.0"> 3787 <description><![CDATA[Mu coefficient for Parts with maximal friction (i.e. "FFFFF" in f1)]]></description> 3788 </element> 3789 <element name="odecolmumin" type="float" min="0" max="10" default="0.1"> 3790 <description><![CDATA[Mu coefficient for Parts with minimal friction (i.e. "fffff" in f1)]]></description> 3791 </element> 3792 <element name="odecolsoftcfm" type="float" min="0" max="1" default="0.0"/> 3793 <element name="odecolsofterp" type="float" min="0" max="1" default="0.0"/> 3794 <element name="odemusclemax" type="float" min="0" max="100" default="10.0"> 3795 <description><![CDATA[i.e. "MMMMM" if f1]]></description> 3796 </element> 3797 <element name="odemusclemin" type="float" min="0" max="100" default="0.0"> 3798 <description><![CDATA[i.e. "mmmmm" in f1]]></description> 3799 </element> 3800 <element name="odemusclespeed" type="float" min="0" max="10" default="1.0"> 3801 <description><![CDATA[Muscle state cannot change faster than the supplied value]]></description> 3802 </element> 3803 <element name="odeseed" type="integer" min="0" max="2"> 3804 <description><![CDATA[Affects collisions. 3805 - 'Truly random' is closest to the standard ODE operation. Use Math.seed to influence randomness in ODE collisions. 3806 - 'Deterministic' automatically calculates random seed in each step based on the current simulation (world) state, which makes the simulation repeatable but more random than 'Fixed'. 3807 - 'Fixed' is completely deterministic and does not depend on Math.seed - the same seed value is set before each step. This might negatively affect ODE accuracy. 3808 ]]></description> 3809 </element> 3810 <element name="odesepsticks" type="integer" min="0" max="1" default="0"> 3811 <description><![CDATA[Each stick gets a separate ODE body (like in MechaStick)]]></description> 3812 </element> 3813 <element name="odeshape" type="integer" min="0" max="1"/> 3814 <element name="odestep" type="float" min="0.001" max="1" default="0.05"/> 3815 <element name="odewaterbuoy" type="float" min="0" max="2" default="1.0"/> 3816 <element name="odewaterdrag" type="float" min="0.001" max="1" default="0.5"/> 3817 <element name="odeworldcfm" type="float" min="0" max="1" default="1e-05"> 3818 <description><![CDATA[World CFM (constraint force mixing)]]></description> 3819 </element> 3820 <element name="odeworlderp" type="float" min="0" max="1" default="0.2"> 3821 <description><![CDATA[World ERP (error reduction parameter)]]></description> 3822 </element> 3823 <element name="overwrite" type="integer" min="0" max="1"> 3824 <description><![CDATA[Overwite existing files or create their backups]]></description> 3825 </element> 3826 <element name="populations" type="Populations"/> 3827 <element name="randinit" type="float" min="0" max="10" default="0.01"> 3828 <description><![CDATA[Allowed range for initializing all neuron states with uniform distribution random numbers and zero mean. Set to 0 for deterministic initialization.]]></description> 3829 </element> 3830 <element name="resetonexpdef" type="integer" min="0" max="1" default="1"> 3831 <description><![CDATA[If turned on: when a new experiment definition is selected, default values are loaded for most of the simulator parameters, and gene pools and populations are cleared. 3832 If turned off: parameters from previous experiment definition will remain (dangerous).]]></description> 3833 </element> 3834 <element name="running" type="integer" min="0" max="1"> 3835 <description><![CDATA[useful for synchronizing the user interface state]]></description> 3836 </element> 3837 <element name="signals" type="WorldSignals"/> 3838 <element name="simil_method" type="integer" min="0" max="1" default="0"> 3839 <description><![CDATA[]]></description> 3840 </element> 3841 <element name="simil_neuro" type="float" min="0" max="100" default="0.5"> 3842 <description><![CDATA[]]></description> 3843 </element> 3844 <element name="simil_partdeg" type="float" min="0" max="100" default="1.0"> 3845 <description><![CDATA[]]></description> 3846 </element> 3847 <element name="simil_parts" type="float" min="0" max="100" default="0.0"> 3848 <description><![CDATA[Differing number of parts is also handled by the 'part degree' similarity component.]]></description> 3849 </element> 3850 <element name="simspeed" type="integer"> 3851 <description><![CDATA[steps/second]]></description> 3852 </element> 3853 <element name="simtype" type="integer" min="0" max="1" default="0"> 3854 <description><![CDATA[MechaStick is a fast and simple primary Framsticks simulation engine. 3855 ODE is Open Dynamics Engine by Russel Smith et al. 3856 3857 NOTE: switching between simulation engines causes removal of all objects in the world (e.g. creatures).]]></description> 3858 </element> 3859 <element name="slaves" type="SlaveSimulators"/> 3860 <element name="symAlphaSteps" type="integer" min="2" max="50" default="20"> 3861 <description><![CDATA[Default number of samples per full angle (#1)]]></description> 3862 </element> 3863 <element name="symBetaSteps" type="integer" min="2" max="50" default="20"> 3864 <description><![CDATA[Default number of samples per full angle (#2)]]></description> 3865 </element> 3866 <element name="symPosSteps" type="integer" min="2" max="50" default="10"> 3867 <description><![CDATA[Default number of samples per stick length]]></description> 3868 </element> 3869 <element name="symResultA" type="float"/> 3870 <element name="symResultB" type="float"/> 3871 <element name="symResultC" type="float"/> 3872 <element name="symResultD" type="float"/> 3873 <element name="time" type="integer"/> 3874 <element name="touchrange" type="float" min="0" max="100" default="1.0"/> 3875 <element name="user" type="untyped"/> 3876 <element name="usercode" type="string"> 3877 <description><![CDATA[This script overrides the experiment definition]]></description> 3878 </element> 3879 <element name="vmdebug" type="integer" min="0" max="1"/> 3880 <element name="world" type="World"/> 3881 <element name="wrldbnd" type="integer" min="0" max="2" default="1"/> 3882 <element name="wrldg" type="float" min="0" max="10" default="1.0"> 3883 <description><![CDATA[You can adjust gravity for your experiments. 3884 The "official" setting used to evaluate and compare creatures is 1.]]></description> 3885 </element> 3886 <element name="wrldmap" type="string"> 3887 <description><![CDATA[Description of the world (Type: Blocks or Heighfield). Enter 3888 r <sizex> <sizey> [seed] 3889 to generate a random landscape, or 3890 m <sizex> <sizey> digits 3891 M <sizex> <sizey> numbers 3892 to provide height values. 3893 3894 See also the WorldMap object.]]></description> 3895 </element> 3896 <element name="wrldsiz" type="float" min="10" max="1000" default="20.0"> 3897 <description><![CDATA[Side length of the world]]></description> 3898 </element> 3899 <element name="wrldtyp" type="integer" min="0" max="2" default="0"/> 3900 <element name="wrldwat" type="float" min="-20" max="200" default="-1.0"/> 3901 <element name="add" function="true"/> 3902 <element name="addGroup" function="true"/> 3903 <element name="area" function="true" type="float"><arguments/></element> 3050 <element name="print" function="true" type="void"> 3051 <description><![CDATA[One argument: message to be printed]]></description> 3052 <arguments> 3053 <argument name="text" type="string"/> 3054 </arguments> 3055 </element> 3056 <element name="message" function="true" type="void"> 3057 <description><![CDATA[The second argument can be: 3058 -1 = debugging message 3059 0 = information 3060 1 = warning 3061 2 = error 3062 3 = critical error]]></description> 3063 <arguments> 3064 <argument name="text" type="string"/> 3065 <argument name="level" type="integer"/> 3066 </arguments> 3067 </element> 3068 <element name="sleep" function="true" type="void"> 3069 <description><![CDATA[Suspends the execution for a specified interval]]></description> 3070 <arguments> 3071 <argument name="milliseconds" type="integer"/> 3072 </arguments> 3073 </element> 3904 3074 <element name="beep" function="true" type="void"> 3905 3075 <description><![CDATA[Plays a default system sound]]></description> 3906 3076 <arguments/></element> 3907 <element name="calculateSymmetry" function="true" type="float"> 3908 <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). 3909 Note: may take a long time for large creatures.]]></description> 3910 <arguments> 3911 <argument name="model" type="Model"/> 3912 </arguments> 3913 </element> 3914 <element name="calculateSymmetry2" function="true" type="float"> 3915 <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). 3916 Note: may take a long time for large creatures.]]></description> 3917 <arguments> 3918 <argument name="model" type="Model"/> 3919 <argument name="posSteps" type="integer"/> 3920 <argument name="alphaSteps" type="integer"/> 3921 <argument name="betaSteps" type="integer"/> 3922 </arguments> 3923 </element> 3924 <element name="calculateSymmetryForPlane" function="true" type="float"> 3925 <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> 3926 <arguments> 3927 <argument name="model" type="Model"/> 3928 <argument name="A" type="float"/> 3929 <argument name="B" type="float"/> 3930 <argument name="C" type="float"/> 3931 <argument name="D" type="float"/> 3932 </arguments> 3933 </element> 3934 <element name="checkpoint" function="true" type="void"> 3935 <description><![CDATA[This function was previously called "autosave".]]></description> 3936 <arguments/></element> 3937 <element name="checkpointData" function="true" type="void"> 3938 <description><![CDATA[In the distributed/paralellized scenario the data passed as argument can be received by the controlling entity (onSlaveCheckpoint in multithreaded master experiment, /simulator/expevent in distributed network simulator)]]></description> 3939 <arguments> 3940 <argument name="any_data" type="untyped"/> 3941 </arguments> 3942 </element> 3943 <element name="clear" function="true"/> 3944 <element name="crossOver" function="true" type="Geno"> 3945 <description><![CDATA[returns crossed over genotype]]></description> 3946 <arguments> 3947 <argument type="Geno"/> 3948 <argument type="Geno"/> 3077 <element name="sound" function="true" type="void"> 3078 <description><![CDATA[Generates a simple tone on the speaker]]></description> 3079 <arguments> 3080 <argument name="freqency in Hz" type="integer"/> 3081 <argument name="length in milliseconds" type="integer"/> 3949 3082 </arguments> 3950 3083 </element> … … 3962 3095 </arguments> 3963 3096 </element> 3964 <element name="evaluateDistance" function="true" type="float"> 3965 <description><![CDATA[Calculates dissimilarity between two models created from Geno objects. There are papers available that describe details of the computation method.]]></description> 3966 <arguments> 3967 <argument type="Geno"/> 3968 <argument type="Geno"/> 3097 <element name="load" function="true" type="void"> 3098 <description><![CDATA[Load experiment file (calls onExpLoad() in the current experiment definition). This function is intended to replace the simulator state; the old state is cleared by automatically calling "resetToDefaults()" (only if "resetonexpdef" is enabled). Use "import" if you don't want to loose the old simulator state.]]></description> 3099 <arguments> 3100 <argument name="filename" type="string"/> 3101 </arguments> 3102 </element> 3103 <element name="import" function="true" type="void"> 3104 <description><![CDATA[Load some data from file. The second optional argument selects what section(s) will be imported: 3105 1 - experiment (works like "load" and can reset the simulator state!) 3106 2 - genotypes 3107 4 - simulator parameters 3108 8 - genepool settings 3109 16 - population settings 3110 32 - new groups will be created for imported genepools and populations 3111 64 - allow switching to a different expdef while importing parameters (4) 3112 3113 The standard behavior (without the second argument) is to import genotypes, parameters, and genepool and population settings (2+4+8+16). Note that "64" is not included by default, because the expdef change resets all simulator parameters, which contradicts the usual meaning of "import" in Framsticks ("add data", as opposed to "load" meaning "replace data"). Moreover, using the "64" option in scripts can be dengerous, especially all expdef and show scripts should always declare the proper expdef name in their header rather than change the expdef directly. Without the "64" option, it is always safe to "import" any file in a script regardless of the current simulator state.]]></description> 3114 <arguments> 3115 <argument name="filename" type="string"/> 3116 <argument name="options" type="integer"/> 3117 </arguments> 3118 </element> 3119 <element name="import" function="true" type="void"> 3120 <description><![CDATA[Equivalent to import(filename,2+4+8+16) - imports genotypes, parameters, genepool and population settings]]></description> 3121 <arguments> 3122 <argument name="filename" type="string"/> 3123 </arguments> 3124 </element> 3125 <element name="save" function="true" type="untyped"> 3126 <description><![CDATA[Save experiment file (calls onExpSave() in the current experiment definition)]]></description> 3127 <arguments> 3128 <argument name="filename" type="string"/> 3969 3129 </arguments> 3970 3130 </element> … … 3989 3149 </arguments> 3990 3150 </element> 3151 <element name="start" function="true" type="void"> 3152 <description><![CDATA[called by the user interface]]></description> 3153 <arguments/></element> 3154 <element name="stop" function="true" type="void"> 3155 <description><![CDATA[the expdef script calls this to stop simulation]]></description> 3156 <arguments/></element> 3157 <element name="running" type="integer" min="0" max="1"> 3158 <description><![CDATA[useful for synchronizing the user interface state]]></description> 3159 </element> 3160 <element name="step" function="true" type="void"><arguments/></element> 3161 <element name="time" type="integer"/> 3162 <element name="simspeed" type="integer"> 3163 <description><![CDATA[steps/second]]></description> 3164 </element> 3165 <element name="expdef" type="string"> 3166 <description><![CDATA[Choose the experiment framework 3167 (in Windows GUI, confirm by pressing 'Apply') 3168 3169 Stop the simulation before selecting another experiment definition. 3170 It is a good practice to initialize the experiment before running the simulation.]]></description> 3171 </element> 3172 <element name="expdef_title" type="string"/> 3173 <element name="expdef_info" type="string"/> 3174 <element name="init" function="true" type="void"> 3175 <description><![CDATA[Performs initialization procedures, like resetting counters, states, gene pools, etc.]]></description> 3176 <arguments/></element> 3177 <element name="loadexpdef" function="true" type="void"><arguments/></element> 3178 <element name="usercode" type="string"> 3179 <description><![CDATA[This script overrides the experiment definition]]></description> 3180 </element> 3181 <element name="autosaveperiod" type="integer" min="0" max="100000"> 3182 <description><![CDATA[Save simulation state once every n-th event 3183 (events are defined by the script. For 'standard.expdef' it is after each death). 3184 Save EXPT file first to initialize name for autosave files. 3185 Slave simulators (in multithreaded experiments) ignore this setting and never create autosave files.]]></description> 3186 </element> 3187 <element name="overwrite" type="integer" min="0" max="1"> 3188 <description><![CDATA[Overwite existing files or create their backups]]></description> 3189 </element> 3190 <element name="filecomm" type="integer" min="0" max="1" default="1"> 3191 <description><![CDATA[Display comments encountered in opened files]]></description> 3192 </element> 3193 <element name="checkpoint" function="true" type="void"> 3194 <description><![CDATA[This function was previously called "autosave".]]></description> 3195 <arguments/></element> 3196 <element name="checkpointData" function="true" type="void"> 3197 <description><![CDATA[In the distributed/paralellized scenario the data passed as argument can be received by the controlling entity (onSlaveCheckpoint in multithreaded master experiment, /simulator/expevent in distributed network simulator)]]></description> 3198 <arguments> 3199 <argument name="any_data" type="untyped"/> 3200 </arguments> 3201 </element> 3202 <element name="lastCheckpoint" type="untyped"> 3203 <description><![CDATA[Most recently reported by the experiment definition script.]]></description> 3204 </element> 3205 <element name="createrr" type="integer" min="0" max="2" default="1"/> 3206 <element name="creatwarnfail" type="integer" min="0" max="1"> 3207 <description><![CDATA[Creatures grown with warnings will not be simulated.]]></description> 3208 </element> 3209 <element name="importchk" type="integer" min="0" max="1"/> 3210 <element name="loadchk" type="integer" min="0" max="1"/> 3211 <element name="groupchk" type="integer" min="0" max="1"/> 3212 <element name="vmdebug" type="integer" min="0" max="1"/> 3213 <element name="resetToDefaults" function="true" type="void"> 3214 <description><![CDATA[Clears groups and loads default values for simulator parameters, then calls onExpDefLoad() of the current experiment definition.]]></description> 3215 <arguments/></element> 3216 <element name="resetonexpdef" type="integer" min="0" max="1" default="1"> 3217 <description><![CDATA[If turned on: when a new experiment definition is selected, default values are loaded for most of the simulator parameters, and gene pools and populations are cleared. 3218 If turned off: parameters from previous experiment definition will remain (dangerous).]]></description> 3219 </element> 3220 <element name="new" function="true" type="Simulator"><arguments/></element> 3221 <element name="slaves" type="SlaveSimulators"/> 3222 <element name="cpus" type="integer"/> 3223 <element name="world" type="World"/> 3224 <element name="populations" type="Populations"/> 3225 <element name="genepools" type="GenePools"/> 3226 <element name="expparams" type="ExpParams"/> 3227 <element name="expstate" type="ExpState"/> 3228 <element name="loadNeurons" function="true" type="void"> 3229 <arguments> 3230 <argument name="directory path" type="string"/> 3231 </arguments> 3232 </element> 3233 <element name="user" type="untyped"/> 3234 <element name="identity" type="integer"> 3235 <description><![CDATA[-1 for master simulator, 0...count-1 for slaves]]></description> 3236 </element> 3237 <element name="clear" function="true"/> 3238 <element name="add" function="true"/> 3239 <element name="remove" function="true"/> 3240 <element name="addGroup" function="true"/> 3241 <element name="removeGroup" function="true"/> 3242 <element name="changedProperty" type="integer"/> 3243 <element name="changedPropertyId" type="string"/> 3244 <element name="wrldtyp" type="integer" min="0" max="2" default="0"/> 3245 <element name="wrldsiz" type="float" min="10" max="1000" default="20.0"> 3246 <description><![CDATA[Side length of the world]]></description> 3247 </element> 3248 <element name="wrldmap" type="string"> 3249 <description><![CDATA[Description of the world (Type: Blocks or Heighfield). Enter 3250 r <sizex> <sizey> [seed] 3251 to generate a random landscape, or 3252 m <sizex> <sizey> digits 3253 M <sizex> <sizey> numbers 3254 to provide height values. 3255 3256 See also the WorldMap object.]]></description> 3257 </element> 3258 <element name="wrldwat" type="float" min="-20" max="200" default="-1.0"/> 3259 <element name="wrldbnd" type="integer" min="0" max="2" default="1"> 3260 <description><![CDATA[Teleporting a creature that is outside of the world area is attempted every 'performance sampling period' steps. Teleport succeeds only when the target location in the world is empty (there is no collision).]]></description> 3261 </element> 3262 <element name="wrldg" type="float" min="0" max="10" default="1.0"> 3263 <description><![CDATA[You can adjust gravity for your experiments. 3264 The "official" setting used to evaluate and compare creatures is 1.]]></description> 3265 </element> 3266 <element name="wrldchg" function="true" type="void"><arguments/></element> 3267 <element name="simtype" type="integer" min="0" max="1" default="0"> 3268 <description><![CDATA[MechaStick is a fast and simple primary Framsticks simulation engine. 3269 ODE is Open Dynamics Engine by Russel Smith et al. 3270 3271 NOTE: switching between simulation engines causes removal of all objects in the world (e.g. creatures).]]></description> 3272 </element> 3273 <element name="nnspeed" type="float" min="0" max="1000" default="1.0"> 3274 <description><![CDATA[Number of neural network simulation steps in each physics simulation step]]></description> 3275 </element> 3276 <element name="signals" type="WorldSignals"/> 3277 <element name="odeshape" type="integer" min="0" max="1"/> 3278 <element name="odestep" type="float" min="0.001" max="1" default="0.05"/> 3279 <element name="odemusclemin" type="float" min="0" max="100" default="0.0"> 3280 <description><![CDATA[i.e. "mmmmm" in f1]]></description> 3281 </element> 3282 <element name="odemusclemax" type="float" min="0" max="100" default="10.0"> 3283 <description><![CDATA[i.e. "MMMMM" if f1]]></description> 3284 </element> 3285 <element name="odemusclespeed" type="float" min="0" max="10" default="1.0"> 3286 <description><![CDATA[Muscle state cannot change faster than the supplied value]]></description> 3287 </element> 3288 <element name="odeairdrag" type="float" min="0" max="0.5" default="0.01"> 3289 <description><![CDATA[A drag force ("air drag") proportional to the velocity of mass centers of moving parts]]></description> 3290 </element> 3291 <element name="odewaterdrag" type="float" min="0.001" max="1" default="0.5"/> 3292 <element name="odewaterbuoy" type="float" min="0" max="2" default="1.0"/> 3293 <element name="odeseed" type="integer" min="0" max="2"> 3294 <description><![CDATA[Affects collisions. 3295 - 'Truly random' is closest to the standard ODE operation. Use Math.seed to influence randomness in ODE collisions. 3296 - 'Deterministic' automatically calculates random seed in each step based on the current simulation (world) state, which makes the simulation repeatable but more random than 'Fixed'. 3297 - 'Fixed' is completely deterministic and does not depend on Math.seed - the same seed value is set before each step. This might negatively affect ODE accuracy. 3298 ]]></description> 3299 </element> 3300 <element name="odesepsticks" type="integer" min="0" max="1" default="0"> 3301 <description><![CDATA[Each stick gets a separate ODE body (like in MechaStick)]]></description> 3302 </element> 3303 <element name="odeworlderp" type="float" min="0" max="1" default="0.2"> 3304 <description><![CDATA[World ERP (error reduction parameter)]]></description> 3305 </element> 3306 <element name="odeworldcfm" type="float" min="0" max="1" default="1e-05"> 3307 <description><![CDATA[World CFM (constraint force mixing)]]></description> 3308 </element> 3309 <element name="odecolmumin" type="float" min="0" max="10" default="0.1"> 3310 <description><![CDATA[Mu coefficient for Parts with minimal friction (i.e. "fffff" in f1)]]></description> 3311 </element> 3312 <element name="odecolmumax" type="float" min="0" max="10" default="5.0"> 3313 <description><![CDATA[Mu coefficient for Parts with maximal friction (i.e. "FFFFF" in f1)]]></description> 3314 </element> 3315 <element name="odecolbounce" type="float" min="0" max="1" default="0.1"/> 3316 <element name="odecolbouncevel" type="float" min="0" max="1" default="0.01"/> 3317 <element name="odecolsoftcfm" type="float" min="0" max="1" default="0.0"/> 3318 <element name="odecolsofterp" type="float" min="0" max="1" default="0.0"/> 3319 <element name="odecol2mumin" type="float" min="0" max="10" default="0.1"> 3320 <description><![CDATA[Mu coefficient for Parts with minimal friction (i.e. "fffff" in f1)]]></description> 3321 </element> 3322 <element name="odecol2mumax" type="float" min="0" max="10" default="1.0"> 3323 <description><![CDATA[Mu coefficient for Parts with maximal friction (i.e. "FFFFF" in f1)]]></description> 3324 </element> 3325 <element name="odecol2bounce" type="float" min="0" max="1" default="0.1"/> 3326 <element name="odecol2bouncevel" type="float" min="0" max="1" default="0.01"/> 3327 <element name="odecol2softcfm" type="float" min="0" max="1" default="0.0"/> 3328 <element name="odecol2softerp" type="float" min="0" max="1" default="0.0"/> 3329 <element name="rayIntersection" function="true" type="float"> 3330 <arguments> 3331 <argument name="position x" type="float"/> 3332 <argument name="position y" type="float"/> 3333 <argument name="position z" type="float"/> 3334 <argument name="direction x" type="float"/> 3335 <argument name="direction y" type="float"/> 3336 <argument name="direction z" type="float"/> 3337 <argument name="max distance" type="float"/> 3338 </arguments> 3339 </element> 3340 <element name="gen_hist" type="integer" min="0" max="1" default="0"> 3341 <description><![CDATA[Required for phylogenetic analysis]]></description> 3342 </element> 3343 <element name="gen_hilite" type="integer" min="0" max="1" default="1"> 3344 <description><![CDATA[Use colors for genes? 3345 (slows down viewing/editing of huge genotypes)]]></description> 3346 </element> 3347 <element name="gen_extmutinfo" type="integer" min="0" max="2" default="0"> 3348 <description><![CDATA[If active, information about employed mutation method will be stored in the 'info' field of each mutated genotype.]]></description> 3349 </element> 3350 <element name="operReport" function="true" type="void"> 3351 <description><![CDATA[Show available genetic operators]]></description> 3352 <arguments/></element> 3353 <element name="toHTML" function="true" type="string"> 3354 <description><![CDATA[returns genotype expressed as colored HTML]]></description> 3355 <arguments> 3356 <argument type="string"/> 3357 </arguments> 3358 </element> 3359 <element name="toHTMLshort" function="true" type="string"> 3360 <description><![CDATA[returns genotype (abbreviated if needed) expressed as colored HTML]]></description> 3361 <arguments> 3362 <argument type="string"/> 3363 </arguments> 3364 </element> 3365 <element name="validate" function="true" type="Geno"> 3366 <description><![CDATA[returns validated (if possible) Geno object from supplied Geno]]></description> 3367 <arguments> 3368 <argument type="Geno"/> 3369 </arguments> 3370 </element> 3371 <element name="mutate" function="true" type="Geno"> 3372 <description><![CDATA[returns mutated Geno object from supplied Geno]]></description> 3373 <arguments> 3374 <argument type="Geno"/> 3375 </arguments> 3376 </element> 3377 <element name="crossOver" function="true" type="Geno"> 3378 <description><![CDATA[returns crossed over genotype]]></description> 3379 <arguments> 3380 <argument type="Geno"/> 3381 <argument type="Geno"/> 3382 </arguments> 3383 </element> 3384 <element name="getSimplest" function="true" type="Geno"> 3385 <description><![CDATA[returns the simplest genotype for a given encoding (format). 0 means f0, 4 means f4, etc.]]></description> 3386 <arguments> 3387 <argument name="format" type="integer"/> 3388 </arguments> 3389 </element> 3390 <element name="genoper_f0" type="integer" min="0" max="0"> 3391 <description><![CDATA[]]></description> 3392 </element> 3393 <element name="genoper_f1" type="integer" min="0" max="0"> 3394 <description><![CDATA[]]></description> 3395 </element> 3396 <element name="genoper_f2" type="integer" min="0" max="0"> 3397 <description><![CDATA[]]></description> 3398 </element> 3399 <element name="genoper_f3" type="integer" min="0" max="0"> 3400 <description><![CDATA[]]></description> 3401 </element> 3402 <element name="genoper_f4" type="integer" min="0" max="0"> 3403 <description><![CDATA[]]></description> 3404 </element> 3405 <element name="genoper_f9" type="integer" min="0" max="0"> 3406 <description><![CDATA[]]></description> 3407 </element> 3408 <element name="genoper_fF" type="integer" min="0" max="0"> 3409 <description><![CDATA[]]></description> 3410 </element> 3411 <element name="neuadd_N" type="integer" min="0" max="1"> 3412 <description><![CDATA[Standard neuron 3413 3414 Characteristics: 3415 supports any number of inputs 3416 provides output value 3417 does not require location in body 3418 3419 3420 Properties: 3421 Inertia (in) float 0..1 3422 Force (fo) float 0..999 3423 Sigmoid (si) float -99999..99999 3424 State (s) float -1..1]]></description> 3425 </element> 3426 <element name="neuadd_Nu" type="integer" min="0" max="1"> 3427 <description><![CDATA[Works like standard neuron (N) but the output value is scaled to 0...+1 instead of -1...+1. 3428 Having 0 as one of the saturation states should help in "gate circuits", where input signal is passed through or blocked depending on the other singal. 3429 3430 Characteristics: 3431 supports any number of inputs 3432 provides output value 3433 does not require location in body 3434 3435 3436 Properties: 3437 Inertia (in) float 0..1 3438 Force (fo) float 0..999 3439 Sigmoid (si) float -99999..99999 3440 State (s) float -1..1]]></description> 3441 </element> 3442 <element name="neuadd_G" type="integer" min="0" max="1"> 3443 <description><![CDATA[Equilibrium sensor. 3444 0=the stick is horizontal 3445 +1/-1=the stick is vertical 3446 3447 Characteristics: 3448 does not use inputs 3449 provides output value 3450 should be located on a Joint 3451 ]]></description> 3452 </element> 3453 <element name="neuadd_T" type="integer" min="0" max="1"> 3454 <description><![CDATA[Touch sensor. 3455 -1=no contact 3456 0=just touching 3457 >0=pressing, value depends on the force applied 3458 3459 Characteristics: 3460 does not use inputs 3461 provides output value 3462 should be located on a Part 3463 3464 3465 Properties: 3466 Range (r) float 0..1]]></description> 3467 </element> 3468 <element name="neuadd_S" type="integer" min="0" max="1"> 3469 <description><![CDATA[Smell sensor. Aggregated "smell of energy" experienced from all energy objects (creatures and food pieces). 3470 Close objects have bigger influence than the distant ones: for each energy source, its partial feeling is proportional to its energy/(distance^2) 3471 3472 Characteristics: 3473 does not use inputs 3474 provides output value 3475 should be located on a Part 3476 ]]></description> 3477 </element> 3478 <element name="neuadd_Constant" type="integer" min="0" max="1"> 3479 <description><![CDATA[Constant value 3480 3481 Characteristics: 3482 does not use inputs 3483 provides output value 3484 does not require location in body 3485 ]]></description> 3486 </element> 3487 <element name="neuadd_Bend_muscle" type="integer" min="0" max="1"> 3488 <description><![CDATA[Characteristics: 3489 uses single input 3490 does not provide output value 3491 should be located on a Joint 3492 3493 3494 Properties: 3495 power (p) float 0.01..1 3496 bending range (r) float 0..1]]></description> 3497 </element> 3498 <element name="neuadd_Rotation_muscle" type="integer" min="0" max="1"> 3499 <description><![CDATA[Characteristics: 3500 uses single input 3501 does not provide output value 3502 should be located on a Joint 3503 3504 3505 Properties: 3506 power (p) float 0.01..1]]></description> 3507 </element> 3508 <element name="neuadd_D" type="integer" min="0" max="1"> 3509 <description><![CDATA[Calculate the difference between the current and previous input value. Multiple inputs are aggregated with respect to their weights 3510 3511 Characteristics: 3512 supports any number of inputs 3513 provides output value 3514 does not require location in body 3515 ]]></description> 3516 </element> 3517 <element name="neuadd_Fuzzy" type="integer" min="0" max="1"> 3518 <description><![CDATA[Refer to publications to learn more about this neuron. 3519 3520 Characteristics: 3521 supports any number of inputs 3522 provides output value 3523 does not require location in body 3524 3525 3526 Properties: 3527 number of fuzzy sets (ns) integer 3528 number of rules (nr) integer 3529 fuzzy sets (fs) string 3530 fuzzy rules (fr) string]]></description> 3531 </element> 3532 <element name="neuadd_VEye" type="integer" min="0" max="1"> 3533 <description><![CDATA[Refer to publications to learn more about this neuron. 3534 3535 Characteristics: 3536 uses single input 3537 provides output value 3538 should be located on a Part 3539 3540 3541 Properties: 3542 target.x (tx) float 3543 target.y (ty) float 3544 target.z (tz) float 3545 target shape (ts) string 3546 perspective (p) float 0.1..10 3547 scale (s) float 0.1..100 3548 show hidden lines (h) integer 0..1 3549 output lines count (each line needs four channels) (o) integer 0..99 3550 debug (d) integer 0..1]]></description> 3551 </element> 3552 <element name="neuadd_VMotor" type="integer" min="0" max="1"> 3553 <description><![CDATA[Must be connected to the VEye and properly set up. Refer to publications to learn more about this neuron. 3554 3555 Characteristics: 3556 supports any number of inputs 3557 provides output value 3558 does not require location in body 3559 3560 3561 Properties: 3562 number of basic features (noIF) integer 3563 number of degrees of freedom (noDim) integer 3564 parameters (params) string]]></description> 3565 </element> 3566 <element name="neuadd_Sti" type="integer" min="0" max="1"> 3567 <description><![CDATA[Characteristics: 3568 uses single input 3569 does not provide output value 3570 should be located on a Part 3571 ]]></description> 3572 </element> 3573 <element name="neuadd_LMu" type="integer" min="0" max="1"> 3574 <description><![CDATA[Characteristics: 3575 uses single input 3576 does not provide output value 3577 should be located on a Joint 3578 3579 3580 Properties: 3581 power (p) float 0.01..1]]></description> 3582 </element> 3583 <element name="neuadd_Water" type="integer" min="0" max="1"> 3584 <description><![CDATA[Output signal: 3585 0=on or above water surface 3586 1=under water (deeper than 1) 3587 0..1=in the transient area just below water surface 3588 3589 Characteristics: 3590 does not use inputs 3591 provides output value 3592 should be located on a Part 3593 ]]></description> 3594 </element> 3595 <element name="neuadd_Energy" type="integer" min="0" max="1"> 3596 <description><![CDATA[The current energy level divided by the initial energy level. 3597 Usually falls from initial 1.0 down to 0.0 and then the creature dies. It can rise above 1.0 if enough food is ingested 3598 3599 Characteristics: 3600 does not use inputs 3601 provides output value 3602 does not require location in body 3603 ]]></description> 3604 </element> 3605 <element name="neuadd_Ch" type="integer" min="0" max="1"> 3606 <description><![CDATA[Combines all input signals into a single multichannel output; Note: ChSel and ChMux are the only neurons which support multiple channels. Other neurons discard everything except the first channel. 3607 3608 Characteristics: 3609 supports any number of inputs 3610 provides output value 3611 does not require location in body 3612 ]]></description> 3613 </element> 3614 <element name="neuadd_ChMux" type="integer" min="0" max="1"> 3615 <description><![CDATA[Outputs the selected channel from the second (multichannel) input. The first input is used as the selector value (-1=select first channel, .., 1=last channel) 3616 3617 Characteristics: 3618 uses 2 inputs 3619 provides output value 3620 does not require location in body 3621 ]]></description> 3622 </element> 3623 <element name="neuadd_ChSel" type="integer" min="0" max="1"> 3624 <description><![CDATA[Outputs a single channel (selected by the "ch" parameter) from multichannel input 3625 3626 Characteristics: 3627 uses single input 3628 provides output value 3629 does not require location in body 3630 3631 3632 Properties: 3633 channel (ch) integer]]></description> 3634 </element> 3635 <element name="neuadd_Rnd" type="integer" min="0" max="1"> 3636 <description><![CDATA[Generates random noise (subsequent random values in the range of -1..+1) 3637 3638 Characteristics: 3639 does not use inputs 3640 provides output value 3641 does not require location in body 3642 ]]></description> 3643 </element> 3644 <element name="neuadd_Sin" type="integer" min="0" max="1"> 3645 <description><![CDATA[Output frequency = f0+input 3646 3647 Characteristics: 3648 uses single input 3649 provides output value 3650 does not require location in body 3651 3652 3653 Properties: 3654 base frequency (f0) float -1..1 3655 time (t) float 0..6.28319]]></description> 3656 </element> 3657 <element name="f0_nodel_tag" type="integer" min="0" max="1" default="1"> 3658 <description><![CDATA[You can tag elements using their 'i' field and the i="mi=d" tag. 3659 Mutations will not delete such elements. 3660 The i="mi=dm" combination is allowed.]]></description> 3661 </element> 3662 <element name="f0_nomod_tag" type="integer" min="0" max="1" default="1"> 3663 <description><![CDATA[You can tag elements using their 'i' field and the i="mi=m" tag. 3664 Mutations will not modify properties of such elements. 3665 The i="mi=md" combination is allowed.]]></description> 3666 </element> 3667 <element name="f0_p_new" type="float" min="0" max="100" default="5.0"> 3668 <description><![CDATA[]]></description> 3669 </element> 3670 <element name="f0_p_del" type="float" min="0" max="100" default="5.0"> 3671 <description><![CDATA[]]></description> 3672 </element> 3673 <element name="f0_p_swp" type="float" min="0" max="100" default="10.0"> 3674 <description><![CDATA[]]></description> 3675 </element> 3676 <element name="f0_p_pos" type="float" min="0" max="100" default="10.0"> 3677 <description><![CDATA[]]></description> 3678 </element> 3679 <element name="f0_p_mas" type="float" min="0" max="100" default="10.0"> 3680 <description><![CDATA[]]></description> 3681 </element> 3682 <element name="f0_p_frc" type="float" min="0" max="100" default="10.0"> 3683 <description><![CDATA[]]></description> 3684 </element> 3685 <element name="f0_p_ing" type="float" min="0" max="100" default="10.0"> 3686 <description><![CDATA[]]></description> 3687 </element> 3688 <element name="f0_p_asm" type="float" min="0" max="100" default="10.0"> 3689 <description><![CDATA[]]></description> 3690 </element> 3691 <element name="f0_p_vsiz" type="float" min="0" max="100" default="0.0"> 3692 <description><![CDATA[]]></description> 3693 </element> 3694 <element name="f0_j_new" type="float" min="0" max="100" default="5.0"> 3695 <description><![CDATA[]]></description> 3696 </element> 3697 <element name="f0_j_del" type="float" min="0" max="100" default="5.0"> 3698 <description><![CDATA[]]></description> 3699 </element> 3700 <element name="f0_j_stm" type="float" min="0" max="100" default="10.0"> 3701 <description><![CDATA[]]></description> 3702 </element> 3703 <element name="f0_j_stf" type="float" min="0" max="100" default="10.0"> 3704 <description><![CDATA[]]></description> 3705 </element> 3706 <element name="f0_j_rsf" type="float" min="0" max="100" default="10.0"> 3707 <description><![CDATA[]]></description> 3708 </element> 3709 <element name="f0_j_vred" type="float" min="0" max="100" default="0.0"> 3710 <description><![CDATA[]]></description> 3711 </element> 3712 <element name="f0_j_vgrn" type="float" min="0" max="100" default="0.0"> 3713 <description><![CDATA[]]></description> 3714 </element> 3715 <element name="f0_j_vblu" type="float" min="0" max="100" default="0.0"> 3716 <description><![CDATA[]]></description> 3717 </element> 3718 <element name="f0_n_new" type="float" min="0" max="100" default="5.0"> 3719 <description><![CDATA[]]></description> 3720 </element> 3721 <element name="f0_n_del" type="float" min="0" max="100" default="5.0"> 3722 <description><![CDATA[]]></description> 3723 </element> 3724 <element name="f0_n_prp" type="float" min="0" max="100" default="10.0"> 3725 <description><![CDATA[]]></description> 3726 </element> 3727 <element name="f0_c_new" type="float" min="0" max="100" default="5.0"> 3728 <description><![CDATA[]]></description> 3729 </element> 3730 <element name="f0_c_del" type="float" min="0" max="100" default="5.0"> 3731 <description><![CDATA[]]></description> 3732 </element> 3733 <element name="f0_c_wei" type="float" min="0" max="100" default="10.0"> 3734 <description><![CDATA[]]></description> 3735 </element> 3736 <element name="f1_xo_propor" type="integer" min="0" max="1" default="1"> 3737 <description><![CDATA[Cross over (exchange) corresponding segments of the two parent genotypes? 3738 3739 f1 uses a two-point crossing over. 3740 If this option is turned on, cut points will be selected proportionally to neural genes. 3741 Thus, if both parents have the same number of neurons, then this will be preserved in their children.]]></description> 3742 </element> 3743 <element name="f1_smX" type="float" min="0" max="100" default="0.05"/> 3744 <element name="f1_smJunct" type="float" min="0" max="100" default="0.02"/> 3745 <element name="f1_smComma" type="float" min="0" max="100" default="0.02"/> 3746 <element name="f1_smModif" type="float" min="0" max="100" default="0.1"> 3747 <description><![CDATA[Modifiers: LlRrCcQqFfMmIiWwEeAaSsDdGgBbHh]]></description> 3748 </element> 3749 <element name="f1_mut_exmod" type="string"> 3750 <description><![CDATA[Modifiers that will not be added nor deleted during mutation 3751 (all: LlRrCcQqFfMmIiWwEeAaSsDdGgBbHh)]]></description> 3752 </element> 3753 <element name="f1_nmNeu" type="float" min="0" max="100" default="0.05"> 3754 <description><![CDATA[Adds a (connected) neuron or removes a neuron]]></description> 3755 </element> 3756 <element name="f1_nmConn" type="float" min="0" max="100" default="0.1"> 3757 <description><![CDATA[]]></description> 3758 </element> 3759 <element name="f1_nmProp" type="float" min="0" max="100" default="0.1"> 3760 <description><![CDATA[]]></description> 3761 </element> 3762 <element name="f1_nmWei" type="float" min="0" max="100" default="1.0"/> 3763 <element name="f1_nmVal" type="float" min="0" max="100" default="0.05"/> 3764 <element name="f2_mutAddOper" type="float" min="0" max="1" default="0.4"> 3765 <description><![CDATA[]]></description> 3766 </element> 3767 <element name="f2_mutJointElem" type="float" min="0" max="1" default="0.33"> 3768 <description><![CDATA[]]></description> 3769 </element> 3770 <element name="f2_mutNeuroElem" type="float" min="0" max="1" default="0.33"> 3771 <description><![CDATA[]]></description> 3772 </element> 3773 <element name="f2_mutConnElem" type="float" min="0" max="1" default="0.33"> 3774 <description><![CDATA[]]></description> 3775 </element> 3776 <element name="f2_mutDelOper" type="float" min="0" max="1" default="0.1"> 3777 <description><![CDATA[]]></description> 3778 </element> 3779 <element name="f2_mutHandleOper" type="float" min="0" max="1" default="0.3"> 3780 <description><![CDATA[]]></description> 3781 </element> 3782 <element name="f2_mutPropOper" type="float" min="0" max="1" default="0.2"> 3783 <description><![CDATA[]]></description> 3784 </element> 3785 <element name="f3_mutSubstitution" type="float" min="0" max="1" default="0.6"> 3786 <description><![CDATA[]]></description> 3787 </element> 3788 <element name="f3_mutSubstPerChar" type="float" min="0" max="1" default="0.1"> 3789 <description><![CDATA[]]></description> 3790 </element> 3791 <element name="f3_mutDelIns" type="float" min="0" max="1" default="0.1"> 3792 <description><![CDATA[]]></description> 3793 </element> 3794 <element name="f3_mutDelInsPerChar" type="float" min="0" max="1" default="0.05"> 3795 <description><![CDATA[]]></description> 3796 </element> 3797 <element name="f3_mutDelInsLength" type="integer" min="1" max="100" default="5"> 3798 <description><![CDATA[]]></description> 3799 </element> 3800 <element name="f3_mutDuplication" type="float" min="0" max="1" default="0.05"> 3801 <description><![CDATA[]]></description> 3802 </element> 3803 <element name="f3_mutTranslocation" type="float" min="0" max="1" default="0.15"> 3804 <description><![CDATA[]]></description> 3805 </element> 3806 <element name="f3_xovGeneTransfer" type="float" min="0" max="1" default="0.8"> 3807 <description><![CDATA[]]></description> 3808 </element> 3809 <element name="f3_xovCrossingOver" type="float" min="0" max="1" default="0.2"> 3810 <description><![CDATA[]]></description> 3811 </element> 3812 <element name="f4_mut_add" type="float" min="0" max="100" default="50.0"> 3813 <description><![CDATA[mutation: probability of adding a node]]></description> 3814 </element> 3815 <element name="f4_mut_add_div" type="float" min="0" max="100" default="20.0"> 3816 <description><![CDATA[add node mutation: probability of adding a division]]></description> 3817 </element> 3818 <element name="f4_mut_add_conn" type="float" min="0" max="100" default="15.0"> 3819 <description><![CDATA[add node mutation: probability of adding a neural connection]]></description> 3820 </element> 3821 <element name="f4_mut_add_neupar" type="float" min="0" max="100" default="5.0"> 3822 <description><![CDATA[add node mutation: probability of adding a neuron property/modifier]]></description> 3823 </element> 3824 <element name="f4_mut_add_rep" type="float" min="0" max="100" default="10.0"> 3825 <description><![CDATA[add node mutation: probability of adding a repetition]]></description> 3826 </element> 3827 <element name="f4_mut_add_simp" type="float" min="0" max="100" default="50.0"> 3828 <description><![CDATA[add node mutation: probability of adding a random, simple gene]]></description> 3829 </element> 3830 <element name="f4_mut_del" type="float" min="0" max="100" default="20.0"> 3831 <description><![CDATA[mutation: probability of deleting a node]]></description> 3832 </element> 3833 <element name="f4_mut_mod" type="float" min="0" max="100" default="30.0"> 3834 <description><![CDATA[mutation: probability of changing a node]]></description> 3835 </element> 3836 <element name="f9_mut" type="float" min="0" max="1" default="0.1"> 3837 <description><![CDATA[How many genes should be mutated during single mutation (1=all genes, 0.1=ten percent)]]></description> 3838 </element> 3839 <element name="fF_xover" type="float" min="0" max="0.5" default="0.5"> 3840 <description><![CDATA[0.5 => children are averaged parents. 3841 0.2 => children are only 20% different from parents. 3842 0 => each child is identical to one parent (no crossover).]]></description> 3843 </element> 3844 <element name="genkonw0" type="integer" min="0" max="1"> 3845 <description><![CDATA[]]></description> 3846 </element> 3847 <element name="genkonw1" type="integer" min="0" max="1"> 3848 <description><![CDATA[]]></description> 3849 </element> 3850 <element name="genkonw2" type="integer" min="0" max="1"> 3851 <description><![CDATA[]]></description> 3852 </element> 3853 <element name="genkonw3" type="integer" min="0" max="1"> 3854 <description><![CDATA[]]></description> 3855 </element> 3856 <element name="genkonw4" type="integer" min="0" max="1"> 3857 <description><![CDATA[]]></description> 3858 </element> 3859 <element name="genkonw5" type="integer" min="0" max="1"> 3860 <description><![CDATA[]]></description> 3861 </element> 3862 <element name="randinit" type="float" min="0" max="10" default="0.01"> 3863 <description><![CDATA[Allowed range for initializing all neuron states with uniform distribution random numbers and zero mean. Set to 0 for deterministic initialization.]]></description> 3864 </element> 3865 <element name="nnoise" type="float" min="0" max="1" default="0.0"> 3866 <description><![CDATA[Gaussian neural noise: a random value is added to each neural output in each simulation step. Set standard deviation here to add random noise, or 0 for deterministic simulation.]]></description> 3867 </element> 3868 <element name="touchrange" type="float" min="0" max="100" default="1.0"/> 3869 <element name="bnoise_struct" type="float" min="0" max="10" default="0.0"> 3870 <description><![CDATA[When >0, body constructs of creatures (position of Parts) will be randomly disturbed when they are created.]]></description> 3871 </element> 3872 <element name="bnoise_vel" type="float" min="0" max="10" default="0.0"> 3873 <description><![CDATA[Random velocities will be applied to all body Parts (in MechaStick) or rigid segments (in ODE) of newly created creatures.]]></description> 3874 </element> 3875 <element name="ncl_N" type="integer" min="0" max="1"> 3876 <description><![CDATA[Standard neuron 3877 3878 Characteristics: 3879 supports any number of inputs 3880 provides output value 3881 does not require location in body 3882 3883 3884 Properties: 3885 Inertia (in) float 0..1 3886 Force (fo) float 0..999 3887 Sigmoid (si) float -99999..99999 3888 State (s) float -1..1]]></description> 3889 </element> 3890 <element name="ncl_Nu" type="integer" min="0" max="1"> 3891 <description><![CDATA[Works like standard neuron (N) but the output value is scaled to 0...+1 instead of -1...+1. 3892 Having 0 as one of the saturation states should help in "gate circuits", where input signal is passed through or blocked depending on the other singal. 3893 3894 Characteristics: 3895 supports any number of inputs 3896 provides output value 3897 does not require location in body 3898 3899 3900 Properties: 3901 Inertia (in) float 0..1 3902 Force (fo) float 0..999 3903 Sigmoid (si) float -99999..99999 3904 State (s) float -1..1]]></description> 3905 </element> 3906 <element name="ncl_G" type="integer" min="0" max="1"> 3907 <description><![CDATA[Equilibrium sensor. 3908 0=the stick is horizontal 3909 +1/-1=the stick is vertical 3910 3911 Characteristics: 3912 does not use inputs 3913 provides output value 3914 should be located on a Joint 3915 ]]></description> 3916 </element> 3917 <element name="ncl_T" type="integer" min="0" max="1"> 3918 <description><![CDATA[Touch sensor. 3919 -1=no contact 3920 0=just touching 3921 >0=pressing, value depends on the force applied 3922 3923 Characteristics: 3924 does not use inputs 3925 provides output value 3926 should be located on a Part 3927 3928 3929 Properties: 3930 Range (r) float 0..1]]></description> 3931 </element> 3932 <element name="ncl_S" type="integer" min="0" max="1"> 3933 <description><![CDATA[Smell sensor. Aggregated "smell of energy" experienced from all energy objects (creatures and food pieces). 3934 Close objects have bigger influence than the distant ones: for each energy source, its partial feeling is proportional to its energy/(distance^2) 3935 3936 Characteristics: 3937 does not use inputs 3938 provides output value 3939 should be located on a Part 3940 ]]></description> 3941 </element> 3942 <element name="ncl_Constant" type="integer" min="0" max="1"> 3943 <description><![CDATA[Constant value 3944 3945 Characteristics: 3946 does not use inputs 3947 provides output value 3948 does not require location in body 3949 ]]></description> 3950 </element> 3951 <element name="ncl_Bend_muscle" type="integer" min="0" max="1"> 3952 <description><![CDATA[Characteristics: 3953 uses single input 3954 does not provide output value 3955 should be located on a Joint 3956 3957 3958 Properties: 3959 power (p) float 0.01..1 3960 bending range (r) float 0..1]]></description> 3961 </element> 3962 <element name="ncl_Rotation_muscle" type="integer" min="0" max="1"> 3963 <description><![CDATA[Characteristics: 3964 uses single input 3965 does not provide output value 3966 should be located on a Joint 3967 3968 3969 Properties: 3970 power (p) float 0.01..1]]></description> 3971 </element> 3972 <element name="ncl_D" type="integer" min="0" max="1"> 3973 <description><![CDATA[Calculate the difference between the current and previous input value. Multiple inputs are aggregated with respect to their weights 3974 3975 Characteristics: 3976 supports any number of inputs 3977 provides output value 3978 does not require location in body 3979 ]]></description> 3980 </element> 3981 <element name="ncl_Fuzzy" type="integer" min="0" max="1"> 3982 <description><![CDATA[Refer to publications to learn more about this neuron. 3983 3984 Characteristics: 3985 supports any number of inputs 3986 provides output value 3987 does not require location in body 3988 3989 3990 Properties: 3991 number of fuzzy sets (ns) integer 3992 number of rules (nr) integer 3993 fuzzy sets (fs) string 3994 fuzzy rules (fr) string]]></description> 3995 </element> 3996 <element name="ncl_VEye" type="integer" min="0" max="1"> 3997 <description><![CDATA[Refer to publications to learn more about this neuron. 3998 3999 Characteristics: 4000 uses single input 4001 provides output value 4002 should be located on a Part 4003 4004 4005 Properties: 4006 target.x (tx) float 4007 target.y (ty) float 4008 target.z (tz) float 4009 target shape (ts) string 4010 perspective (p) float 0.1..10 4011 scale (s) float 0.1..100 4012 show hidden lines (h) integer 0..1 4013 output lines count (each line needs four channels) (o) integer 0..99 4014 debug (d) integer 0..1]]></description> 4015 </element> 4016 <element name="ncl_VMotor" type="integer" min="0" max="1"> 4017 <description><![CDATA[Must be connected to the VEye and properly set up. Refer to publications to learn more about this neuron. 4018 4019 Characteristics: 4020 supports any number of inputs 4021 provides output value 4022 does not require location in body 4023 4024 4025 Properties: 4026 number of basic features (noIF) integer 4027 number of degrees of freedom (noDim) integer 4028 parameters (params) string]]></description> 4029 </element> 4030 <element name="ncl_Sti" type="integer" min="0" max="1"> 4031 <description><![CDATA[Characteristics: 4032 uses single input 4033 does not provide output value 4034 should be located on a Part 4035 ]]></description> 4036 </element> 4037 <element name="ncl_LMu" type="integer" min="0" max="1"> 4038 <description><![CDATA[Characteristics: 4039 uses single input 4040 does not provide output value 4041 should be located on a Joint 4042 4043 4044 Properties: 4045 power (p) float 0.01..1]]></description> 4046 </element> 4047 <element name="ncl_Water" type="integer" min="0" max="1"> 4048 <description><![CDATA[Output signal: 4049 0=on or above water surface 4050 1=under water (deeper than 1) 4051 0..1=in the transient area just below water surface 4052 4053 Characteristics: 4054 does not use inputs 4055 provides output value 4056 should be located on a Part 4057 ]]></description> 4058 </element> 4059 <element name="ncl_Energy" type="integer" min="0" max="1"> 4060 <description><![CDATA[The current energy level divided by the initial energy level. 4061 Usually falls from initial 1.0 down to 0.0 and then the creature dies. It can rise above 1.0 if enough food is ingested 4062 4063 Characteristics: 4064 does not use inputs 4065 provides output value 4066 does not require location in body 4067 ]]></description> 4068 </element> 4069 <element name="ncl_Ch" type="integer" min="0" max="1"> 4070 <description><![CDATA[Combines all input signals into a single multichannel output; Note: ChSel and ChMux are the only neurons which support multiple channels. Other neurons discard everything except the first channel. 4071 4072 Characteristics: 4073 supports any number of inputs 4074 provides output value 4075 does not require location in body 4076 ]]></description> 4077 </element> 4078 <element name="ncl_ChMux" type="integer" min="0" max="1"> 4079 <description><![CDATA[Outputs the selected channel from the second (multichannel) input. The first input is used as the selector value (-1=select first channel, .., 1=last channel) 4080 4081 Characteristics: 4082 uses 2 inputs 4083 provides output value 4084 does not require location in body 4085 ]]></description> 4086 </element> 4087 <element name="ncl_ChSel" type="integer" min="0" max="1"> 4088 <description><![CDATA[Outputs a single channel (selected by the "ch" parameter) from multichannel input 4089 4090 Characteristics: 4091 uses single input 4092 provides output value 4093 does not require location in body 4094 4095 4096 Properties: 4097 channel (ch) integer]]></description> 4098 </element> 4099 <element name="ncl_Rnd" type="integer" min="0" max="1"> 4100 <description><![CDATA[Generates random noise (subsequent random values in the range of -1..+1) 4101 4102 Characteristics: 4103 does not use inputs 4104 provides output value 4105 does not require location in body 4106 ]]></description> 4107 </element> 4108 <element name="ncl_Sin" type="integer" min="0" max="1"> 4109 <description><![CDATA[Output frequency = f0+input 4110 4111 Characteristics: 4112 uses single input 4113 provides output value 4114 does not require location in body 4115 4116 4117 Properties: 4118 base frequency (f0) float -1..1 4119 time (t) float 0..6.28319]]></description> 4120 </element> 4121 <element name="simil_method" type="integer" min="0" max="1" default="0"> 4122 <description><![CDATA[]]></description> 4123 </element> 4124 <element name="simil_parts" type="float" min="0" max="100" default="0.0"> 4125 <description><![CDATA[Differing number of parts is also handled by the 'part degree' similarity component.]]></description> 4126 </element> 4127 <element name="simil_partdeg" type="float" min="0" max="100" default="1.0"> 4128 <description><![CDATA[]]></description> 4129 </element> 4130 <element name="simil_neuro" type="float" min="0" max="100" default="0.5"> 4131 <description><![CDATA[]]></description> 4132 </element> 4133 <element name="evaluateDistance" function="true" type="float"> 4134 <description><![CDATA[Calculates dissimilarity between two models created from Geno objects.]]></description> 4135 <arguments> 4136 <argument type="Geno"/> 4137 <argument type="Geno"/> 4138 </arguments> 4139 </element> 4140 <element name="calculateSymmetry" function="true" type="float"> 4141 <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). 4142 Note: may take a long time for large creatures.]]></description> 4143 <arguments> 4144 <argument name="model" type="Model"/> 4145 </arguments> 4146 </element> 4147 <element name="calculateSymmetry2" function="true" type="float"> 4148 <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). 4149 Note: may take a long time for large creatures.]]></description> 4150 <arguments> 4151 <argument name="model" type="Model"/> 4152 <argument name="posSteps" type="integer"/> 4153 <argument name="alphaSteps" type="integer"/> 4154 <argument name="betaSteps" type="integer"/> 4155 </arguments> 4156 </element> 4157 <element name="calculateSymmetryForPlane" function="true" type="float"> 4158 <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> 4159 <arguments> 4160 <argument name="model" type="Model"/> 4161 <argument name="A" type="float"/> 4162 <argument name="B" type="float"/> 4163 <argument name="C" type="float"/> 4164 <argument name="D" type="float"/> 4165 </arguments> 4166 </element> 4167 <element name="symPosSteps" type="integer" min="2" max="50" default="10"> 4168 <description><![CDATA[Default number of samples per stick length]]></description> 4169 </element> 4170 <element name="symAlphaSteps" type="integer" min="2" max="50" default="20"> 4171 <description><![CDATA[Default number of samples per full angle (#1)]]></description> 4172 </element> 4173 <element name="symBetaSteps" type="integer" min="2" max="50" default="20"> 4174 <description><![CDATA[Default number of samples per full angle (#2)]]></description> 4175 </element> 4176 <element name="symResultA" type="float"/> 4177 <element name="symResultB" type="float"/> 4178 <element name="symResultC" type="float"/> 4179 <element name="symResultD" type="float"/> 4180 <element name="geom_density" type="float" min="0.01" max="100" default="1.0"> 4181 <description><![CDATA[Affects the geometry calculation precision]]></description> 4182 </element> 3991 4183 <element name="forModel" function="true" type="ModelGeometry"> 3992 4184 <description><![CDATA[The returned ModelGeometry object can be used to calculate geometric properties (volume, area, sizes) of the associated model. The density is copied from the current global ModelGeometry.geom_density on object creation.]]></description> … … 3995 4187 </arguments> 3996 4188 </element> 3997 <element name="getSimplest" function="true" type="Geno"> 3998 <description><![CDATA[returns the simplest genotype for a given encoding (format). 0 means f0, 4 means f4, etc.]]></description> 3999 <arguments> 4000 <argument name="format" type="integer"/> 4189 <element name="volume" function="true" type="float"><arguments/></element> 4190 <element name="area" function="true" type="float"><arguments/></element> 4191 <element name="sizesAndAxes" function="true" type="Vector"> 4192 <description><![CDATA[The returned vector contains XYZ (sizes) and Orient (axes) objects.]]></description> 4193 <arguments/></element> 4194 <element name="minjoint" type="float" min="0" max="100" default="0.0"/> 4195 <element name="maxjoint" type="float" min="0" max="100" default="2.0"/> 4196 </type> 4197 <type name="Similarity" context="Global context"> 4198 <description><![CDATA[Evaluates morphological dissimilarity. Read about details: 4199 http://www.framsticks.com/node/795 4200 http://www.framsticks.com/node/890]]></description> 4201 <element name="simil_method" type="integer" min="0" max="1" default="0"> 4202 <description><![CDATA[]]></description> 4203 </element> 4204 <element name="simil_parts" type="float" min="0" max="100" default="0.0"> 4205 <description><![CDATA[Differing number of parts is also handled by the 'part degree' similarity component.]]></description> 4206 </element> 4207 <element name="simil_partdeg" type="float" min="0" max="100" default="1.0"> 4208 <description><![CDATA[]]></description> 4209 </element> 4210 <element name="simil_neuro" type="float" min="0" max="100" default="0.5"> 4211 <description><![CDATA[]]></description> 4212 </element> 4213 <element name="evaluateDistance" function="true" type="float"> 4214 <description><![CDATA[Calculates dissimilarity between two models created from Geno objects.]]></description> 4215 <arguments> 4216 <argument type="Geno"/> 4217 <argument type="Geno"/> 4218 </arguments> 4219 </element> 4220 </type> 4221 <type name="Simulator" context="Global context"> 4222 <description><![CDATA[The Framsticks simulator.]]></description> 4223 <element name="print" function="true" type="void"> 4224 <description><![CDATA[One argument: message to be printed]]></description> 4225 <arguments> 4226 <argument name="text" type="string"/> 4227 </arguments> 4228 </element> 4229 <element name="message" function="true" type="void"> 4230 <description><![CDATA[The second argument can be: 4231 -1 = debugging message 4232 0 = information 4233 1 = warning 4234 2 = error 4235 3 = critical error]]></description> 4236 <arguments> 4237 <argument name="text" type="string"/> 4238 <argument name="level" type="integer"/> 4239 </arguments> 4240 </element> 4241 <element name="sleep" function="true" type="void"> 4242 <description><![CDATA[Suspends the execution for a specified interval]]></description> 4243 <arguments> 4244 <argument name="milliseconds" type="integer"/> 4245 </arguments> 4246 </element> 4247 <element name="beep" function="true" type="void"> 4248 <description><![CDATA[Plays a default system sound]]></description> 4249 <arguments/></element> 4250 <element name="sound" function="true" type="void"> 4251 <description><![CDATA[Generates a simple tone on the speaker]]></description> 4252 <arguments> 4253 <argument name="freqency in Hz" type="integer"/> 4254 <argument name="length in milliseconds" type="integer"/> 4255 </arguments> 4256 </element> 4257 <element name="eval" function="true" type="void"> 4258 <description><![CDATA[The argument must be a complete statement, e.g. "return 2+2;" is valid, while "2+2" is not. The EvalError object is returned for invalid statements. 4259 Example: 4260 var statement="function fun(a) {return a*a;} return fun(Math.pi);"; 4261 var result=Simulator.eval(statement); 4262 if (typeof result=="EvalError") 4263 Simulator.print("Error:"+result.message); 4264 else 4265 Simulator.print("Result:"+result);]]></description> 4266 <arguments> 4267 <argument name="script statement" type="string"/> 4268 </arguments> 4269 </element> 4270 <element name="load" function="true" type="void"> 4271 <description><![CDATA[Load experiment file (calls onExpLoad() in the current experiment definition). This function is intended to replace the simulator state; the old state is cleared by automatically calling "resetToDefaults()" (only if "resetonexpdef" is enabled). Use "import" if you don't want to loose the old simulator state.]]></description> 4272 <arguments> 4273 <argument name="filename" type="string"/> 4001 4274 </arguments> 4002 4275 </element> … … 4023 4296 </arguments> 4024 4297 </element> 4025 <element name="init" function="true" type="void">4026 <description><![CDATA[Performs initialization procedures, like resetting counters, states, gene pools, etc.]]></description>4027 <arguments/></element>4028 <element name="load" function="true" type="void">4029 <description><![CDATA[Load experiment file (calls onExpLoad() in the current experiment definition). This function is intended to replace the simulator state; the old state is cleared by automatically calling "resetToDefaults()" (only if "resetonexpdef" is enabled). Use "import" if you don't want to loose the old simulator state.]]></description>4030 <arguments>4031 <argument name="filename" type="string"/>4032 </arguments>4033 </element>4034 <element name="loadexpdef" function="true" type="void"><arguments/></element>4035 <element name="loadNeurons" function="true" type="void">4036 <arguments>4037 <argument name="directory path" type="string"/>4038 </arguments>4039 </element>4040 <element name="message" function="true" type="void">4041 <description><![CDATA[The second argument can be:4042 -1 = debugging message4043 0 = information4044 1 = warning4045 2 = error4046 3 = critical error]]></description>4047 <arguments>4048 <argument name="text" type="string"/>4049 <argument name="level" type="integer"/>4050 </arguments>4051 </element>4052 <element name="mutate" function="true" type="Geno">4053 <description><![CDATA[returns mutated Geno object from supplied Geno]]></description>4054 <arguments>4055 <argument type="Geno"/>4056 </arguments>4057 </element>4058 <element name="new" function="true" type="Simulator"><arguments/></element>4059 <element name="operReport" function="true" type="void">4060 <description><![CDATA[Show available genetic operators]]></description>4061 <arguments/></element>4062 <element name="print" function="true" type="void">4063 <description><![CDATA[One argument: message to be printed]]></description>4064 <arguments>4065 <argument name="text" type="string"/>4066 </arguments>4067 </element>4068 <element name="rayIntersection" function="true" type="float">4069 <arguments>4070 <argument name="position x" type="float"/>4071 <argument name="position y" type="float"/>4072 <argument name="position z" type="float"/>4073 <argument name="direction x" type="float"/>4074 <argument name="direction y" type="float"/>4075 <argument name="direction z" type="float"/>4076 <argument name="max distance" type="float"/>4077 </arguments>4078 </element>4079 <element name="remove" function="true"/>4080 <element name="removeGroup" function="true"/>4081 <element name="resetToDefaults" function="true" type="void">4082 <description><![CDATA[Clears groups and loads default values for simulator parameters, then calls onExpDefLoad() of the current experiment definition.]]></description>4083 <arguments/></element>4084 4298 <element name="save" function="true" type="untyped"> 4085 4299 <description><![CDATA[Save experiment file (calls onExpSave() in the current experiment definition)]]></description> 4086 4300 <arguments> 4087 4301 <argument name="filename" type="string"/> 4088 </arguments>4089 </element>4090 <element name="sizesAndAxes" function="true" type="Vector">4091 <description><![CDATA[The returned vector contains XYZ (sizes) and Orient (axes) objects.]]></description>4092 <arguments/></element>4093 <element name="sleep" function="true" type="void">4094 <description><![CDATA[Suspends the execution for a specified interval]]></description>4095 <arguments>4096 <argument name="milliseconds" type="integer"/>4097 </arguments>4098 </element>4099 <element name="sound" function="true" type="void">4100 <description><![CDATA[Generates a simple tone on the speaker]]></description>4101 <arguments>4102 <argument name="freqency in Hz" type="integer"/>4103 <argument name="length in milliseconds" type="integer"/>4104 </arguments>4105 </element>4106 <element name="start" function="true" type="void">4107 <description><![CDATA[called by the user interface]]></description>4108 <arguments/></element>4109 <element name="step" function="true" type="void"><arguments/></element>4110 <element name="stop" function="true" type="void">4111 <description><![CDATA[the expdef script calls this to stop simulation]]></description>4112 <arguments/></element>4113 <element name="toHTML" function="true" type="string">4114 <description><![CDATA[returns genotype expressed as colored HTML]]></description>4115 <arguments>4116 <argument type="string"/>4117 </arguments>4118 </element>4119 <element name="toHTMLshort" function="true" type="string">4120 <description><![CDATA[returns genotype (abbreviated if needed) expressed as colored HTML]]></description>4121 <arguments>4122 <argument type="string"/>4123 </arguments>4124 </element>4125 <element name="validate" function="true" type="Geno">4126 <description><![CDATA[returns validated (if possible) Geno object from supplied Geno]]></description>4127 <arguments>4128 <argument type="Geno"/>4129 </arguments>4130 </element>4131 <element name="volume" function="true" type="float"><arguments/></element>4132 <element name="wrldchg" function="true" type="void"><arguments/></element>4133 </type>4134 <type name="Similarity" context="Global context">4135 <element name="simil_method" type="integer" min="0" max="1" default="0">4136 <description><![CDATA[]]></description>4137 </element>4138 <element name="simil_neuro" type="float" min="0" max="100" default="0.5">4139 <description><![CDATA[]]></description>4140 </element>4141 <element name="simil_partdeg" type="float" min="0" max="100" default="1.0">4142 <description><![CDATA[]]></description>4143 </element>4144 <element name="simil_parts" type="float" min="0" max="100" default="0.0">4145 <description><![CDATA[Differing number of parts is also handled by the 'part degree' similarity component.]]></description>4146 </element>4147 <element name="evaluateDistance" function="true" type="float">4148 <description><![CDATA[Calculates dissimilarity between two models created from Geno objects. There are papers available that describe details of the computation method.]]></description>4149 <arguments>4150 <argument type="Geno"/>4151 <argument type="Geno"/>4152 </arguments>4153 </element>4154 </type>4155 <type name="Simulator" context="Global context">4156 <description><![CDATA[The Framsticks simulator.]]></description>4157 <element name="autosaveperiod" type="integer" min="0" max="100000">4158 <description><![CDATA[Save simulation state once every n-th event4159 (events are defined by the script. For 'standard.expdef' it is after each death).4160 Save EXPT file first to initialize name for autosave files.4161 Slave simulators (in multithreaded experiments) ignore this setting and never create autosave files.]]></description>4162 </element>4163 <element name="cpus" type="integer"/>4164 <element name="createrr" type="integer" min="0" max="2" default="1"/>4165 <element name="creatwarnfail" type="integer" min="0" max="1">4166 <description><![CDATA[Creatures grown with warnings will not be simulated.]]></description>4167 </element>4168 <element name="expdef" type="string">4169 <description><![CDATA[Choose the experiment framework4170 (in Windows GUI, confirm by pressing 'Apply')4171 4172 Stop the simulation before selecting another experiment definition.4173 It is a good practice to initialize the experiment before running the simulation.]]></description>4174 </element>4175 <element name="expdef_info" type="string"/>4176 <element name="expdef_title" type="string"/>4177 <element name="expparams" type="ExpParams"/>4178 <element name="expstate" type="ExpState"/>4179 <element name="filecomm" type="integer" min="0" max="1" default="1">4180 <description><![CDATA[Display comments encountered in opened files]]></description>4181 </element>4182 <element name="genepools" type="GenePools"/>4183 <element name="groupchk" type="integer" min="0" max="1"/>4184 <element name="identity" type="integer">4185 <description><![CDATA[-1 for master simulator, 0...count-1 for slaves]]></description>4186 </element>4187 <element name="importchk" type="integer" min="0" max="1"/>4188 <element name="lastCheckpoint" type="untyped">4189 <description><![CDATA[Most recently reported by the experiment definition script.]]></description>4190 </element>4191 <element name="loadchk" type="integer" min="0" max="1"/>4192 <element name="overwrite" type="integer" min="0" max="1">4193 <description><![CDATA[Overwite existing files or create their backups]]></description>4194 </element>4195 <element name="populations" type="Populations"/>4196 <element name="resetonexpdef" type="integer" min="0" max="1" default="1">4197 <description><![CDATA[If turned on: when a new experiment definition is selected, default values are loaded for most of the simulator parameters, and gene pools and populations are cleared.4198 If turned off: parameters from previous experiment definition will remain (dangerous).]]></description>4199 </element>4200 <element name="running" type="integer" min="0" max="1">4201 <description><![CDATA[useful for synchronizing the user interface state]]></description>4202 </element>4203 <element name="simspeed" type="integer">4204 <description><![CDATA[steps/second]]></description>4205 </element>4206 <element name="slaves" type="SlaveSimulators"/>4207 <element name="time" type="integer"/>4208 <element name="user" type="untyped"/>4209 <element name="usercode" type="string">4210 <description><![CDATA[This script overrides the experiment definition]]></description>4211 </element>4212 <element name="vmdebug" type="integer" min="0" max="1"/>4213 <element name="world" type="World"/>4214 <element name="beep" function="true" type="void">4215 <description><![CDATA[Plays a default system sound]]></description>4216 <arguments/></element>4217 <element name="checkpoint" function="true" type="void">4218 <description><![CDATA[This function was previously called "autosave".]]></description>4219 <arguments/></element>4220 <element name="checkpointData" function="true" type="void">4221 <description><![CDATA[In the distributed/paralellized scenario the data passed as argument can be received by the controlling entity (onSlaveCheckpoint in multithreaded master experiment, /simulator/expevent in distributed network simulator)]]></description>4222 <arguments>4223 <argument name="any_data" type="untyped"/>4224 </arguments>4225 </element>4226 <element name="eval" function="true" type="void">4227 <description><![CDATA[The argument must be a complete statement, e.g. "return 2+2;" is valid, while "2+2" is not. The EvalError object is returned for invalid statements.4228 Example:4229 var statement="function fun(a) {return a*a;} return fun(Math.pi);";4230 var result=Simulator.eval(statement);4231 if (typeof result=="EvalError")4232 Simulator.print("Error:"+result.message);4233 else4234 Simulator.print("Result:"+result);]]></description>4235 <arguments>4236 <argument name="script statement" type="string"/>4237 4302 </arguments> 4238 4303 </element> … … 4257 4322 </arguments> 4258 4323 </element> 4259 <element name="import" function="true" type="void"> 4260 <description><![CDATA[Load some data from file. The second optional argument selects what section(s) will be imported: 4261 1 - experiment (works like "load" and can reset the simulator state!) 4262 2 - genotypes 4263 4 - simulator parameters 4264 8 - genepool settings 4265 16 - population settings 4266 32 - new groups will be created for imported genepools and populations 4267 64 - allow switching to a different expdef while importing parameters (4) 4268 4269 The standard behavior (without the second argument) is to import genotypes, parameters, and genepool and population settings (2+4+8+16). Note that "64" is not included by default, because the expdef change resets all simulator parameters, which contradicts the usual meaning of "import" in Framsticks ("add data", as opposed to "load" meaning "replace data"). Moreover, using the "64" option in scripts can be dengerous, especially all expdef and show scripts should always declare the proper expdef name in their header rather than change the expdef directly. Without the "64" option, it is always safe to "import" any file in a script regardless of the current simulator state.]]></description> 4270 <arguments> 4271 <argument name="filename" type="string"/> 4272 <argument name="options" type="integer"/> 4273 </arguments> 4274 </element> 4275 <element name="import" function="true" type="void"> 4276 <description><![CDATA[Equivalent to import(filename,2+4+8+16) - imports genotypes, parameters, genepool and population settings]]></description> 4277 <arguments> 4278 <argument name="filename" type="string"/> 4279 </arguments> 4280 </element> 4324 <element name="start" function="true" type="void"> 4325 <description><![CDATA[called by the user interface]]></description> 4326 <arguments/></element> 4327 <element name="stop" function="true" type="void"> 4328 <description><![CDATA[the expdef script calls this to stop simulation]]></description> 4329 <arguments/></element> 4330 <element name="running" type="integer" min="0" max="1"> 4331 <description><![CDATA[useful for synchronizing the user interface state]]></description> 4332 </element> 4333 <element name="step" function="true" type="void"><arguments/></element> 4334 <element name="time" type="integer"/> 4335 <element name="simspeed" type="integer"> 4336 <description><![CDATA[steps/second]]></description> 4337 </element> 4338 <element name="expdef" type="string"> 4339 <description><![CDATA[Choose the experiment framework 4340 (in Windows GUI, confirm by pressing 'Apply') 4341 4342 Stop the simulation before selecting another experiment definition. 4343 It is a good practice to initialize the experiment before running the simulation.]]></description> 4344 </element> 4345 <element name="expdef_title" type="string"/> 4346 <element name="expdef_info" type="string"/> 4281 4347 <element name="init" function="true" type="void"> 4282 4348 <description><![CDATA[Performs initialization procedures, like resetting counters, states, gene pools, etc.]]></description> 4283 4349 <arguments/></element> 4284 <element name="load" function="true" type="void">4285 <description><![CDATA[Load experiment file (calls onExpLoad() in the current experiment definition). This function is intended to replace the simulator state; the old state is cleared by automatically calling "resetToDefaults()" (only if "resetonexpdef" is enabled). Use "import" if you don't want to loose the old simulator state.]]></description>4286 <arguments>4287 <argument name="filename" type="string"/>4288 </arguments>4289 </element>4290 4350 <element name="loadexpdef" function="true" type="void"><arguments/></element> 4291 <element name="loadNeurons" function="true" type="void"> 4292 <arguments> 4293 <argument name="directory path" type="string"/> 4294 </arguments> 4295 </element> 4296 <element name="message" function="true" type="void"> 4297 <description><![CDATA[The second argument can be: 4298 -1 = debugging message 4299 0 = information 4300 1 = warning 4301 2 = error 4302 3 = critical error]]></description> 4303 <arguments> 4304 <argument name="text" type="string"/> 4305 <argument name="level" type="integer"/> 4306 </arguments> 4307 </element> 4308 <element name="new" function="true" type="Simulator"><arguments/></element> 4309 <element name="print" function="true" type="void"> 4310 <description><![CDATA[One argument: message to be printed]]></description> 4311 <arguments> 4312 <argument name="text" type="string"/> 4313 </arguments> 4314 </element> 4351 <element name="usercode" type="string"> 4352 <description><![CDATA[This script overrides the experiment definition]]></description> 4353 </element> 4354 <element name="autosaveperiod" type="integer" min="0" max="100000"> 4355 <description><![CDATA[Save simulation state once every n-th event 4356 (events are defined by the script. For 'standard.expdef' it is after each death). 4357 Save EXPT file first to initialize name for autosave files. 4358 Slave simulators (in multithreaded experiments) ignore this setting and never create autosave files.]]></description> 4359 </element> 4360 <element name="overwrite" type="integer" min="0" max="1"> 4361 <description><![CDATA[Overwite existing files or create their backups]]></description> 4362 </element> 4363 <element name="filecomm" type="integer" min="0" max="1" default="1"> 4364 <description><![CDATA[Display comments encountered in opened files]]></description> 4365 </element> 4366 <element name="checkpoint" function="true" type="void"> 4367 <description><![CDATA[This function was previously called "autosave".]]></description> 4368 <arguments/></element> 4369 <element name="checkpointData" function="true" type="void"> 4370 <description><![CDATA[In the distributed/paralellized scenario the data passed as argument can be received by the controlling entity (onSlaveCheckpoint in multithreaded master experiment, /simulator/expevent in distributed network simulator)]]></description> 4371 <arguments> 4372 <argument name="any_data" type="untyped"/> 4373 </arguments> 4374 </element> 4375 <element name="lastCheckpoint" type="untyped"> 4376 <description><![CDATA[Most recently reported by the experiment definition script.]]></description> 4377 </element> 4378 <element name="createrr" type="integer" min="0" max="2" default="1"/> 4379 <element name="creatwarnfail" type="integer" min="0" max="1"> 4380 <description><![CDATA[Creatures grown with warnings will not be simulated.]]></description> 4381 </element> 4382 <element name="importchk" type="integer" min="0" max="1"/> 4383 <element name="loadchk" type="integer" min="0" max="1"/> 4384 <element name="groupchk" type="integer" min="0" max="1"/> 4385 <element name="vmdebug" type="integer" min="0" max="1"/> 4315 4386 <element name="resetToDefaults" function="true" type="void"> 4316 4387 <description><![CDATA[Clears groups and loads default values for simulator parameters, then calls onExpDefLoad() of the current experiment definition.]]></description> 4317 4388 <arguments/></element> 4318 <element name="save" function="true" type="untyped"> 4319 <description><![CDATA[Save experiment file (calls onExpSave() in the current experiment definition)]]></description> 4320 <arguments> 4321 <argument name="filename" type="string"/> 4322 </arguments> 4323 </element> 4324 <element name="sleep" function="true" type="void"> 4325 <description><![CDATA[Suspends the execution for a specified interval]]></description> 4326 <arguments> 4327 <argument name="milliseconds" type="integer"/> 4328 </arguments> 4329 </element> 4330 <element name="sound" function="true" type="void"> 4331 <description><![CDATA[Generates a simple tone on the speaker]]></description> 4332 <arguments> 4333 <argument name="freqency in Hz" type="integer"/> 4334 <argument name="length in milliseconds" type="integer"/> 4335 </arguments> 4336 </element> 4337 <element name="start" function="true" type="void"> 4338 <description><![CDATA[called by the user interface]]></description> 4389 <element name="resetonexpdef" type="integer" min="0" max="1" default="1"> 4390 <description><![CDATA[If turned on: when a new experiment definition is selected, default values are loaded for most of the simulator parameters, and gene pools and populations are cleared. 4391 If turned off: parameters from previous experiment definition will remain (dangerous).]]></description> 4392 </element> 4393 <element name="new" function="true" type="Simulator"><arguments/></element> 4394 <element name="slaves" type="SlaveSimulators"/> 4395 <element name="cpus" type="integer"/> 4396 <element name="world" type="World"/> 4397 <element name="populations" type="Populations"/> 4398 <element name="genepools" type="GenePools"/> 4399 <element name="expparams" type="ExpParams"/> 4400 <element name="expstate" type="ExpState"/> 4401 <element name="loadNeurons" function="true" type="void"> 4402 <arguments> 4403 <argument name="directory path" type="string"/> 4404 </arguments> 4405 </element> 4406 <element name="user" type="untyped"/> 4407 <element name="identity" type="integer"> 4408 <description><![CDATA[-1 for master simulator, 0...count-1 for slaves]]></description> 4409 </element> 4410 </type> 4411 <type name="SlaveSimulators" context="Global context"> 4412 <element name="size" type="integer" min="0" max="50"> 4413 <description><![CDATA[Changing this value will create/remove slave simulator objects as needed.]]></description> 4414 </element> 4415 <element name="get" function="true" type="Simulator"> 4416 <description><![CDATA[Access the slave simulator object (Simulator.slaves[index] works, too). 4417 Important: Do not operate on a simulator that is currently running, always stop() it first.]]></description> 4418 <arguments> 4419 <argument name="index" type="integer"/> 4420 </arguments> 4421 </element> 4422 <element name="running" type="integer"> 4423 <description><![CDATA[Note that if running>0 then the number of running simulations can be outdated in the very moment you read this field, because the expdef can stop itself anytime. If running==0, then it is guaranteed to stay 0 until someone calls start() on some of the slave simulator objects.]]></description> 4424 </element> 4425 <element name="create" function="true" type="Simulator"> 4426 <description><![CDATA[If you need to create AND store the reference to a newly created simulator object, then this function may be more readable than var s=Simulator.slaves[Simulator.slaves.size++];]]></description> 4339 4427 <arguments/></element> 4340 <element name="step" function="true" type="void"><arguments/></element> 4341 <element name="stop" function="true" type="void"> 4342 <description><![CDATA[the expdef script calls this to stop simulation]]></description> 4343 <arguments/></element> 4344 </type> 4345 <type name="SlaveSimulators" context="Global context"> 4428 <element name="remove" function="true" type="void"> 4429 <description><![CDATA[Also calls stop() if the simulator is running. Events assocated with the simulator being deleted are cancelled, so the expdef will not see the usual onSlaveStop.]]></description> 4430 <arguments> 4431 <argument name="index_or_object" type="untyped"/> 4432 </arguments> 4433 </element> 4434 <element name="removeAll" function="true"> 4435 <description><![CDATA[Same as Simulator.slaves=0;]]></description> 4436 </element> 4437 <element name="startAll" function="true"/> 4438 <element name="stopAll" function="true"/> 4439 <element name="cancelEventsFromSlave" function="true" type="void"> 4440 <description><![CDATA[If the onSlaveStop() event is used to schedule work to a simulator, then you might want to cancel pending events when the experiment is aborted - otherwise it may be difficult to distinguish between self-stop events (called internally from the slave simulator to signal the job was completed) from abort-stop events (requested by the supervising simulator). Calling Simulator.slaves.stopAll(); Simulator.slaves.cancelAllEvents(); makes sure that no old events will be detected after that time point. Without cancelling, the old onSlaveStop() notification (the consequence of the abort-stop) might arrive after the next start() which may confuse the expdef code (slave events are asynchronous).]]></description> 4441 <arguments> 4442 <argument type="Simulator"/> 4443 </arguments> 4444 </element> 4445 <element name="cancelAllEvents" function="true"> 4446 <description><![CDATA[see cancelEventsFromSlave()]]></description> 4447 </element> 4346 4448 <element name="isolation" type="integer" min="0" max="1" default="1"> 4347 4449 <description><![CDATA[Slave simulator access is filtered to exclude object references across simulator boundaries and ensure a safe multithreaded operation. … … 4357 4459 var g=Simulator.slaves[0].genepools[0][0].genotype; - but the slave's GenePool can be accessed from master (if the slave is not running at the moment)]]></description> 4358 4460 </element> 4359 <element name="running" type="integer"> 4360 <description><![CDATA[Note that if running>0 then the number of running simulations can be outdated in the very moment you read this field, because the expdef can stop itself anytime. If running==0, then it is guaranteed to stay 0 until someone calls start() on some of the slave simulator objects.]]></description> 4361 </element> 4362 <element name="size" type="integer" min="0" max="50"> 4363 <description><![CDATA[Changing this value will create/remove slave simulator objects as needed.]]></description> 4364 </element> 4365 <element name="cancelAllEvents" function="true"> 4366 <description><![CDATA[see cancelEventsFromSlave()]]></description> 4367 </element> 4368 <element name="cancelEventsFromSlave" function="true" type="void"> 4369 <description><![CDATA[If the onSlaveStop() event is used to schedule work to a simulator, then you might want to cancel pending events when the experiment is aborted - otherwise it may be difficult to distinguish between self-stop events (called internally from the slave simulator to signal the job was completed) from abort-stop events (requested by the supervising simulator). Calling Simulator.slaves.stopAll(); Simulator.slaves.cancelAllEvents(); makes sure that no old events will be detected after that time point. Without cancelling, the old onSlaveStop() notification (the consequence of the abort-stop) might arrive after the next start() which may confuse the expdef code (slave events are asynchronous).]]></description> 4370 <arguments> 4371 <argument type="Simulator"/> 4372 </arguments> 4373 </element> 4374 <element name="create" function="true" type="Simulator"> 4375 <description><![CDATA[If you need to create AND store the reference to a newly created simulator object, then this function may be more readable than var s=Simulator.slaves[Simulator.slaves.size++];]]></description> 4461 </type> 4462 <type name="stats" context="Global context"> 4463 <element name="gen_count" type="integer"> 4464 <description><![CDATA[]]></description> 4465 </element> 4466 <element name="gen_mvalid" type="integer"> 4467 <description><![CDATA[]]></description> 4468 </element> 4469 <element name="gen_mvalidated" type="integer"> 4470 <description><![CDATA[]]></description> 4471 </element> 4472 <element name="gen_minvalid" type="integer"> 4473 <description><![CDATA[couldn't be repaired]]></description> 4474 </element> 4475 <element name="gen_mfailed" type="integer"> 4476 <description><![CDATA[couldn't be performed]]></description> 4477 </element> 4478 <element name="gen_xovalid" type="integer"> 4479 <description><![CDATA[]]></description> 4480 </element> 4481 <element name="gen_xovalidated" type="integer"> 4482 <description><![CDATA[]]></description> 4483 </element> 4484 <element name="gen_xoinvalid" type="integer"> 4485 <description><![CDATA[couldn't be repaired]]></description> 4486 </element> 4487 <element name="gen_xofailed" type="integer"> 4488 <description><![CDATA[couldn't be performed]]></description> 4489 </element> 4490 <element name="gen_mutimpr" type="float"> 4491 <description><![CDATA[total cumulative mutation change]]></description> 4492 </element> 4493 <element name="gen_xoimpr" type="float"> 4494 <description><![CDATA[total cumulative crossover change]]></description> 4495 </element> 4496 <element name="clrstats" function="true" type="void"> 4497 <description><![CDATA[]]></description> 4376 4498 <arguments/></element> 4377 <element name="get" function="true" type="Simulator"> 4378 <description><![CDATA[Access the slave simulator object (Simulator.slaves[index] works, too). 4379 Important: Do not operate on a simulator that is currently running, always stop() it first.]]></description> 4380 <arguments> 4381 <argument name="index" type="integer"/> 4382 </arguments> 4383 </element> 4384 <element name="remove" function="true" type="void"> 4385 <description><![CDATA[Also calls stop() if the simulator is running. Events assocated with the simulator being deleted are cancelled, so the expdef will not see the usual onSlaveStop.]]></description> 4386 <arguments> 4387 <argument name="index_or_object" type="untyped"/> 4388 </arguments> 4389 </element> 4390 <element name="removeAll" function="true"> 4391 <description><![CDATA[Same as Simulator.slaves=0;]]></description> 4392 </element> 4393 <element name="startAll" function="true"/> 4394 <element name="stopAll" function="true"/> 4395 </type> 4396 <type name="stats" context="Global context"> 4499 <element name="clear" function="true"/> 4500 <element name="add" function="true"/> 4501 <element name="remove" function="true"/> 4502 <element name="addGroup" function="true"/> 4503 <element name="removeGroup" function="true"/> 4397 4504 <element name="changedProperty" type="integer"/> 4398 4505 <element name="changedPropertyId" type="string"/> 4399 <element name="gen_count" type="integer"> 4400 <description><![CDATA[]]></description> 4401 </element> 4402 <element name="gen_mfailed" type="integer"> 4403 <description><![CDATA[couldn't be performed]]></description> 4404 </element> 4405 <element name="gen_minvalid" type="integer"> 4406 <description><![CDATA[couldn't be repaired]]></description> 4407 </element> 4408 <element name="gen_mutimpr" type="float"> 4409 <description><![CDATA[total cumulative mutation change]]></description> 4410 </element> 4411 <element name="gen_mvalid" type="integer"> 4412 <description><![CDATA[]]></description> 4413 </element> 4414 <element name="gen_mvalidated" type="integer"> 4415 <description><![CDATA[]]></description> 4416 </element> 4417 <element name="gen_xofailed" type="integer"> 4418 <description><![CDATA[couldn't be performed]]></description> 4419 </element> 4420 <element name="gen_xoimpr" type="float"> 4421 <description><![CDATA[total cumulative crossover change]]></description> 4422 </element> 4423 <element name="gen_xoinvalid" type="integer"> 4424 <description><![CDATA[couldn't be repaired]]></description> 4425 </element> 4426 <element name="gen_xovalid" type="integer"> 4427 <description><![CDATA[]]></description> 4428 </element> 4429 <element name="gen_xovalidated" type="integer"> 4430 <description><![CDATA[]]></description> 4431 </element> 4506 <element name="st_count" type="integer"/> 4507 <element name="st_min_numparts" type="float"/> 4508 <element name="st_avg_numparts" type="float"/> 4509 <element name="st_max_numparts" type="float"/> 4510 <element name="st_min_numjoints" type="float"/> 4511 <element name="st_avg_numjoints" type="float"/> 4512 <element name="st_max_numjoints" type="float"/> 4513 <element name="st_min_numneurons" type="float"/> 4514 <element name="st_avg_numneurons" type="float"/> 4515 <element name="st_max_numneurons" type="float"/> 4516 <element name="st_min_numconnections" type="float"/> 4517 <element name="st_avg_numconnections" type="float"/> 4518 <element name="st_max_numconnections" type="float"/> 4519 <element name="st_min_num" type="float"/> 4520 <element name="st_avg_num" type="float"/> 4521 <element name="st_max_num" type="float"/> 4522 <element name="st_min_gnum" type="float"/> 4523 <element name="st_avg_gnum" type="float"/> 4524 <element name="st_max_gnum" type="float"/> 4525 <element name="st_min_instances" type="float"/> 4526 <element name="st_avg_instances" type="float"/> 4527 <element name="st_max_instances" type="float"/> 4528 <element name="st_min_lifespan" type="float"/> 4529 <element name="st_avg_lifespan" type="float"/> 4530 <element name="st_max_lifespan" type="float"/> 4531 <element name="st_min_velocity" type="float"/> 4532 <element name="st_avg_velocity" type="float"/> 4533 <element name="st_max_velocity" type="float"/> 4534 <element name="st_min_distance" type="float"/> 4535 <element name="st_avg_distance" type="float"/> 4536 <element name="st_max_distance" type="float"/> 4537 <element name="st_min_vertvel" type="float"/> 4538 <element name="st_avg_vertvel" type="float"/> 4539 <element name="st_max_vertvel" type="float"/> 4540 <element name="st_min_vertpos" type="float"/> 4541 <element name="st_avg_vertpos" type="float"/> 4542 <element name="st_max_vertpos" type="float"/> 4543 <element name="st_min_fit" type="float"/> 4544 <element name="st_avg_fit" type="float"/> 4545 <element name="st_max_fit" type="float"/> 4546 <element name="st_min_fit2" type="float"/> 4547 <element name="st_avg_fit2" type="float"/> 4548 <element name="st_max_fit2" type="float"/> 4549 <element name="st_min_c_velocity" type="float"/> 4432 4550 <element name="st_avg_c_velocity" type="float"/> 4551 <element name="st_max_c_velocity" type="float"/> 4552 <element name="st_min_c_vertvelocity" type="float"/> 4553 <element name="st_avg_c_vertvelocity" type="float"/> 4554 <element name="st_max_c_vertvelocity" type="float"/> 4555 <element name="st_min_c_vertpos" type="float"/> 4433 4556 <element name="st_avg_c_vertpos" type="float"/> 4434 <element name="st_avg_c_vertvelocity" type="float"/> 4557 <element name="st_max_c_vertpos" type="float"/> 4558 <element name="st_min_pos_x" type="float"/> 4559 <element name="st_avg_pos_x" type="float"/> 4560 <element name="st_max_pos_x" type="float"/> 4561 <element name="st_min_pos_y" type="float"/> 4562 <element name="st_avg_pos_y" type="float"/> 4563 <element name="st_max_pos_y" type="float"/> 4564 <element name="st_min_pos_z" type="float"/> 4565 <element name="st_avg_pos_z" type="float"/> 4566 <element name="st_max_pos_z" type="float"/> 4567 <element name="st_min_size_x" type="float"/> 4568 <element name="st_avg_size_x" type="float"/> 4569 <element name="st_max_size_x" type="float"/> 4570 <element name="st_min_size_y" type="float"/> 4571 <element name="st_avg_size_y" type="float"/> 4572 <element name="st_max_size_y" type="float"/> 4573 <element name="st_min_size_z" type="float"/> 4574 <element name="st_avg_size_z" type="float"/> 4575 <element name="st_max_size_z" type="float"/> 4576 <element name="st_min_center_x" type="float"/> 4435 4577 <element name="st_avg_center_x" type="float"/> 4578 <element name="st_max_center_x" type="float"/> 4579 <element name="st_min_center_y" type="float"/> 4436 4580 <element name="st_avg_center_y" type="float"/> 4581 <element name="st_max_center_y" type="float"/> 4582 <element name="st_min_center_z" type="float"/> 4437 4583 <element name="st_avg_center_z" type="float"/> 4438 <element name="st_avg_distance" type="float"/>4439 <element name="st_avg_fit" type="float"/>4440 <element name="st_avg_fit2" type="float"/>4441 <element name="st_avg_gnum" type="float"/>4442 <element name="st_avg_instances" type="float"/>4443 <element name="st_avg_lifespan" type="float"/>4444 <element name="st_avg_num" type="float"/>4445 <element name="st_avg_numconnections" type="float"/>4446 <element name="st_avg_numjoints" type="float"/>4447 <element name="st_avg_numneurons" type="float"/>4448 <element name="st_avg_numparts" type="float"/>4449 <element name="st_avg_pos_x" type="float"/>4450 <element name="st_avg_pos_y" type="float"/>4451 <element name="st_avg_pos_z" type="float"/>4452 <element name="st_avg_size_x" type="float"/>4453 <element name="st_avg_size_y" type="float"/>4454 <element name="st_avg_size_z" type="float"/>4455 <element name="st_avg_velocity" type="float"/>4456 <element name="st_avg_vertpos" type="float"/>4457 <element name="st_avg_vertvel" type="float"/>4458 <element name="st_count" type="integer"/>4459 <element name="st_max_c_velocity" type="float"/>4460 <element name="st_max_c_vertpos" type="float"/>4461 <element name="st_max_c_vertvelocity" type="float"/>4462 <element name="st_max_center_x" type="float"/>4463 <element name="st_max_center_y" type="float"/>4464 4584 <element name="st_max_center_z" type="float"/> 4465 <element name="st_max_distance" type="float"/>4466 <element name="st_max_fit" type="float"/>4467 <element name="st_max_fit2" type="float"/>4468 <element name="st_max_gnum" type="float"/>4469 <element name="st_max_instances" type="float"/>4470 <element name="st_max_lifespan" type="float"/>4471 <element name="st_max_num" type="float"/>4472 <element name="st_max_numconnections" type="float"/>4473 <element name="st_max_numjoints" type="float"/>4474 <element name="st_max_numneurons" type="float"/>4475 <element name="st_max_numparts" type="float"/>4476 <element name="st_max_pos_x" type="float"/>4477 <element name="st_max_pos_y" type="float"/>4478 <element name="st_max_pos_z" type="float"/>4479 <element name="st_max_size_x" type="float"/>4480 <element name="st_max_size_y" type="float"/>4481 <element name="st_max_size_z" type="float"/>4482 <element name="st_max_velocity" type="float"/>4483 <element name="st_max_vertpos" type="float"/>4484 <element name="st_max_vertvel" type="float"/>4485 <element name="st_min_c_velocity" type="float"/>4486 <element name="st_min_c_vertpos" type="float"/>4487 <element name="st_min_c_vertvelocity" type="float"/>4488 <element name="st_min_center_x" type="float"/>4489 <element name="st_min_center_y" type="float"/>4490 <element name="st_min_center_z" type="float"/>4491 <element name="st_min_distance" type="float"/>4492 <element name="st_min_fit" type="float"/>4493 <element name="st_min_fit2" type="float"/>4494 <element name="st_min_gnum" type="float"/>4495 <element name="st_min_instances" type="float"/>4496 <element name="st_min_lifespan" type="float"/>4497 <element name="st_min_num" type="float"/>4498 <element name="st_min_numconnections" type="float"/>4499 <element name="st_min_numjoints" type="float"/>4500 <element name="st_min_numneurons" type="float"/>4501 <element name="st_min_numparts" type="float"/>4502 <element name="st_min_pos_x" type="float"/>4503 <element name="st_min_pos_y" type="float"/>4504 <element name="st_min_pos_z" type="float"/>4505 <element name="st_min_size_x" type="float"/>4506 <element name="st_min_size_y" type="float"/>4507 <element name="st_min_size_z" type="float"/>4508 <element name="st_min_velocity" type="float"/>4509 <element name="st_min_vertpos" type="float"/>4510 <element name="st_min_vertvel" type="float"/>4511 <element name="add" function="true"/>4512 <element name="addGroup" function="true"/>4513 <element name="clear" function="true"/>4514 <element name="clrstats" function="true" type="void">4515 <description><![CDATA[]]></description>4516 <arguments/></element>4517 <element name="remove" function="true"/>4518 <element name="removeGroup" function="true"/>4519 4585 </type> 4520 4586 <type name="StopEvent" context="Global context"> … … 4525 4591 <type name="String" context="Global context"> 4526 4592 <description><![CDATA[String functions library.]]></description> 4527 <element name="char" function="true" type="string"> 4528 <arguments> 4529 <argument type="integer"/> 4530 </arguments> 4531 </element> 4532 <element name="code" function="true" type="integer"> 4593 <element name="len" function="true" type="integer"> 4594 <description><![CDATA[String.len("abcdef") -> 6]]></description> 4533 4595 <arguments> 4534 4596 <argument type="string"/> 4535 4597 </arguments> 4536 4598 </element> 4537 <element name="deserialize" function="true" type="untyped"> 4538 <description><![CDATA[extract objects from textual representation]]></description> 4599 <element name="replace" function="true" type="string"> 4600 <description><![CDATA[String.replace("abcdef","cd","X") -> "abXef"]]></description> 4601 <arguments> 4602 <argument name="input_string" type="string"/> 4603 <argument name="search" type="string"/> 4604 <argument name="substitute" type="string"/> 4605 </arguments> 4606 </element> 4607 <element name="split" function="true" type="Vector"> 4608 <description><![CDATA[return the vector of substrings, cut at separator positions. 4609 subsequent separators give empty words: split("word1---word2-word3","-") -> ["word1","","","word2","word3"]]]></description> 4539 4610 <arguments> 4540 4611 <argument type="string"/> 4541 </arguments> 4542 </element> 4543 <element name="diff" function="true" type="Vector"> 4544 <description><![CDATA[Returns the vector of minimal differences between two strings. The vector contains either 2-element subvectors with differing substrings ["text-1","text-2"] or strings "same". 4545 4546 For example, String.diff("thisisatest", "testing123testing") returns [t,[hi,e],s,[,t],i,[sa,ng123],test,[,ing]]. 4547 4548 Use this function for short strings, as it requires 4*length(string1)*length(string2) bytes of memory.]]></description> 4612 <argument name="word separator" type="string"/> 4613 </arguments> 4614 </element> 4615 <element name="split2" function="true" type="Vector"> 4616 <description><![CDATA[return the vector of substrings, cut at separator positions. 4617 subsequent separators are treated as one: split2("word1---word2-word3","-") -> ["word1","word2","word3"]]]></description> 4549 4618 <arguments> 4550 4619 <argument type="string"/> 4620 <argument name="word separator" type="string"/> 4621 </arguments> 4622 </element> 4623 <element name="indexOf" function="true" type="integer"> 4624 <description><![CDATA[String.indexOf("abcdef","cd") -> 2 4625 String.indexOf("abcdef","dc") -> -1 4626 ]]></description> 4627 <arguments> 4551 4628 <argument type="string"/> 4629 <argument name="substring" type="string"/> 4630 </arguments> 4631 </element> 4632 <element name="indexOfStart" function="true" type="integer"> 4633 <description><![CDATA[String.indexOfStart("abcdef","cd",1) -> 2 4634 String.indexOfStart("abcdef","cd",3) -> -1 4635 ]]></description> 4636 <arguments> 4637 <argument type="string"/> 4638 <argument name="substring" type="string"/> 4639 <argument name="start index" type="integer"/> 4640 </arguments> 4641 </element> 4642 <element name="substr" function="true" type="string"> 4643 <description><![CDATA[String.substr("abcdef",3,2) -> ="de"]]></description> 4644 <arguments> 4645 <argument type="string"/> 4646 <argument name="first character" type="integer"/> 4647 <argument name="number of characters" type="integer"/> 4648 </arguments> 4649 </element> 4650 <element name="substr" function="true" type="string"> 4651 <description><![CDATA[String.substr("abcdef",3) -> ="def"]]></description> 4652 <arguments> 4653 <argument type="string"/> 4654 <argument name="first character" type="integer"/> 4655 </arguments> 4656 </element> 4657 <element name="left" function="true" type="string"> 4658 <description><![CDATA[String.left("abcdef",3) -> ="abc"]]></description> 4659 <arguments> 4660 <argument type="string"/> 4661 <argument name="number of characters" type="integer"/> 4662 </arguments> 4663 </element> 4664 <element name="right" function="true" type="string"> 4665 <description><![CDATA[String.right("abcdef",3) -> ="def"]]></description> 4666 <arguments> 4667 <argument type="string"/> 4668 <argument name="number of characters" type="integer"/> 4669 </arguments> 4670 </element> 4671 <element name="startsWith" function="true" type="integer"> 4672 <arguments> 4673 <argument name="string" type="string"/> 4674 <argument name="substring" type="string"/> 4552 4675 </arguments> 4553 4676 </element> … … 4592 4715 </arguments> 4593 4716 </element> 4594 <element name=" hash" function="true" type="integer">4717 <element name="parseInt" function="true" type="integer"> 4595 4718 <arguments> 4596 4719 <argument type="string"/> 4597 4720 </arguments> 4598 4721 </element> 4599 <element name="indexOf" function="true" type="integer"> 4600 <description><![CDATA[String.indexOf("abcdef","cd") -> 2 4601 String.indexOf("abcdef","dc") -> -1 4602 ]]></description> 4722 <element name="parseFloat" function="true" type="float"> 4603 4723 <arguments> 4604 4724 <argument type="string"/> 4605 <argument name="substring" type="string"/> 4606 </arguments> 4607 </element> 4608 <element name="indexOfStart" function="true" type="integer"> 4609 <description><![CDATA[String.indexOfStart("abcdef","cd",1) -> 2 4610 String.indexOfStart("abcdef","cd",3) -> -1 4611 ]]></description> 4725 </arguments> 4726 </element> 4727 <element name="code" function="true" type="integer"> 4612 4728 <arguments> 4613 4729 <argument type="string"/> 4614 <argument name="substring" type="string"/> 4615 <argument name="start index" type="integer"/> 4616 </arguments> 4617 </element> 4618 <element name="left" function="true" type="string"> 4619 <description><![CDATA[String.left("abcdef",3) -> ="abc"]]></description> 4730 </arguments> 4731 </element> 4732 <element name="char" function="true" type="string"> 4733 <arguments> 4734 <argument type="integer"/> 4735 </arguments> 4736 </element> 4737 <element name="toUpper" function="true" type="string"> 4620 4738 <arguments> 4621 4739 <argument type="string"/> 4622 <argument name="number of characters" type="integer"/> 4623 </arguments> 4624 </element> 4625 <element name="len" function="true" type="integer"> 4626 <description><![CDATA[String.len("abcdef") -> 6]]></description> 4740 </arguments> 4741 </element> 4742 <element name="toLower" function="true" type="string"> 4627 4743 <arguments> 4628 4744 <argument type="string"/> 4629 </arguments>4630 </element>4631 <element name="parseFloat" function="true" type="float">4632 <arguments>4633 <argument type="string"/>4634 </arguments>4635 </element>4636 <element name="parseInt" function="true" type="integer">4637 <arguments>4638 <argument type="string"/>4639 </arguments>4640 </element>4641 <element name="replace" function="true" type="string">4642 <description><![CDATA[String.replace("abcdef","cd","X") -> "abXef"]]></description>4643 <arguments>4644 <argument name="input_string" type="string"/>4645 <argument name="search" type="string"/>4646 <argument name="substitute" type="string"/>4647 </arguments>4648 </element>4649 <element name="right" function="true" type="string">4650 <description><![CDATA[String.right("abcdef",3) -> ="def"]]></description>4651 <arguments>4652 <argument type="string"/>4653 <argument name="number of characters" type="integer"/>4654 4745 </arguments> 4655 4746 </element> … … 4660 4751 </arguments> 4661 4752 </element> 4662 <element name="split" function="true" type="Vector"> 4663 <description><![CDATA[return the vector of substrings, cut at separator positions. 4664 subsequent separators give empty words: split("word1---word2-word3","-") -> ["word1","","","word2","word3"]]]></description> 4753 <element name="deserialize" function="true" type="untyped"> 4754 <description><![CDATA[extract objects from textual representation]]></description> 4665 4755 <arguments> 4666 4756 <argument type="string"/> 4667 <argument name="word separator" type="string"/> 4668 </arguments> 4669 </element> 4670 <element name="split2" function="true" type="Vector"> 4671 <description><![CDATA[return the vector of substrings, cut at separator positions. 4672 subsequent separators are treated as one: split2("word1---word2-word3","-") -> ["word1","word2","word3"]]]></description> 4757 </arguments> 4758 </element> 4759 <element name="hash" function="true" type="integer"> 4673 4760 <arguments> 4674 4761 <argument type="string"/> 4675 <argument name="word separator" type="string"/> 4676 </arguments> 4677 </element> 4678 <element name="startsWith" function="true" type="integer"> 4679 <arguments> 4680 <argument name="string" type="string"/> 4681 <argument name="substring" type="string"/> 4682 </arguments> 4683 </element> 4684 <element name="substr" function="true" type="string"> 4685 <description><![CDATA[String.substr("abcdef",3,2) -> ="de"]]></description> 4762 </arguments> 4763 </element> 4764 <element name="diff" function="true" type="Vector"> 4765 <description><![CDATA[Returns the vector of minimal differences between two strings. The vector contains either 2-element subvectors with differing substrings ["text-1","text-2"] or strings "same". 4766 4767 For example, String.diff("thisisatest", "testing123testing") returns [t,[hi,e],s,[,t],i,[sa,ng123],test,[,ing]]. 4768 4769 Use this function for short strings, as it requires 4*length(string1)*length(string2) bytes of memory.]]></description> 4686 4770 <arguments> 4687 4771 <argument type="string"/> 4688 <argument name="first character" type="integer"/>4689 <argument name="number of characters" type="integer"/>4690 </arguments>4691 </element>4692 <element name="substr" function="true" type="string">4693 <description><![CDATA[String.substr("abcdef",3) -> ="def"]]></description>4694 <arguments>4695 4772 <argument type="string"/> 4696 <argument name="first character" type="integer"/>4697 </arguments>4698 </element>4699 <element name="toLower" function="true" type="string">4700 <arguments>4701 <argument type="string"/>4702 </arguments>4703 </element>4704 <element name="toUpper" function="true" type="string">4705 <arguments>4706 <argument type="string"/>4707 4773 </arguments> 4708 4774 </element> 4709 4775 </type> 4710 4776 <type name="Symmetry" context="Global context"> 4711 <element name="symAlphaSteps" type="integer" min="2" max="50" default="20"> 4712 <description><![CDATA[Default number of samples per full angle (#1)]]></description> 4713 </element> 4714 <element name="symBetaSteps" type="integer" min="2" max="50" default="20"> 4715 <description><![CDATA[Default number of samples per full angle (#2)]]></description> 4716 </element> 4717 <element name="symPosSteps" type="integer" min="2" max="50" default="10"> 4718 <description><![CDATA[Default number of samples per stick length]]></description> 4719 </element> 4720 <element name="symResultA" type="float"/> 4721 <element name="symResultB" type="float"/> 4722 <element name="symResultC" type="float"/> 4723 <element name="symResultD" type="float"/> 4777 <description><![CDATA[Calculates bilateral symmetry. Details are described in http://www.framsticks.com/node/808]]></description> 4724 4778 <element name="calculateSymmetry" function="true" type="float"> 4725 4779 <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). … … 4749 4803 </arguments> 4750 4804 </element> 4805 <element name="symPosSteps" type="integer" min="2" max="50" default="10"> 4806 <description><![CDATA[Default number of samples per stick length]]></description> 4807 </element> 4808 <element name="symAlphaSteps" type="integer" min="2" max="50" default="20"> 4809 <description><![CDATA[Default number of samples per full angle (#1)]]></description> 4810 </element> 4811 <element name="symBetaSteps" type="integer" min="2" max="50" default="20"> 4812 <description><![CDATA[Default number of samples per full angle (#2)]]></description> 4813 </element> 4814 <element name="symResultA" type="float"/> 4815 <element name="symResultB" type="float"/> 4816 <element name="symResultC" type="float"/> 4817 <element name="symResultD" type="float"/> 4751 4818 </type> 4752 4819 <type name="UserScripts" context="Global context"> 4820 <element name="clear" function="true"/> 4821 <element name="add" function="true"/> 4822 <element name="remove" function="true"/> 4823 <element name="addGroup" function="true"/> 4824 <element name="removeGroup" function="true"/> 4753 4825 <element name="changedProperty" type="integer"/> 4754 4826 <element name="changedPropertyId" type="string"/> 4755 <element name="add" function="true"/>4756 <element name="addGroup" function="true"/>4757 <element name="clear" function="true"/>4758 <element name="remove" function="true"/>4759 <element name="removeGroup" function="true"/>4760 4827 </type> 4761 4828 <type name="Vector" context="Global context"> … … 4764 4831 var v=Vector.new(); 4765 4832 v.add(123); v.add("string");]]></description> 4833 <element name="clear" function="true" type="void"><arguments/></element> 4834 <element name="size" type="integer"/> 4835 <element name="remove" function="true" type="void"> 4836 <arguments> 4837 <argument name="position" type="integer"/> 4838 </arguments> 4839 </element> 4840 <element name="get" function="true" type="untyped"> 4841 <arguments> 4842 <argument name="position" type="integer"/> 4843 </arguments> 4844 </element> 4845 <element name="set" function="true" type="void"> 4846 <arguments> 4847 <argument name="position" type="integer"/> 4848 <argument name="value" type="untyped"/> 4849 </arguments> 4850 </element> 4851 <element name="add" function="true" type="void"> 4852 <arguments> 4853 <argument name="value" type="untyped"/> 4854 </arguments> 4855 </element> 4856 <element name="find" function="true" type="integer"> 4857 <description><![CDATA[returns the element index or -1 if not found]]></description> 4858 <arguments> 4859 <argument name="value" type="untyped"/> 4860 </arguments> 4861 </element> 4766 4862 <element name="avg" type="float"/> 4767 <element name="iterator" type="Object"/>4768 <element name="size" type="integer"/>4769 4863 <element name="stdev" type="float"> 4770 4864 <description><![CDATA[=sqrt(sum((element[i]-avg)^2)/(size-1)) which is estimated population std.dev. from sample std.dev.]]></description> 4771 4865 </element> 4772 4866 <element name="toString" type="string"/> 4773 <element name="add" function="true" type="void">4774 <arguments>4775 <argument name="value" type="untyped"/>4776 </arguments>4777 </element>4778 <element name="clear" function="true" type="void"><arguments/></element>4779 <element name="find" function="true" type="integer">4780 <description><![CDATA[returns the element index or -1 if not found]]></description>4781 <arguments>4782 <argument name="value" type="untyped"/>4783 </arguments>4784 </element>4785 <element name="get" function="true" type="untyped">4786 <arguments>4787 <argument name="position" type="integer"/>4788 </arguments>4789 </element>4790 4867 <element name="new" function="true" type="Vector"><arguments/></element> 4791 <element name="remove" function="true" type="void">4792 <arguments>4793 <argument name="position" type="integer"/>4794 </arguments>4795 </element>4796 <element name="set" function="true" type="void">4797 <arguments>4798 <argument name="position" type="integer"/>4799 <argument name="value" type="untyped"/>4800 </arguments>4801 </element>4802 4868 <element name="sort" function="true" type="void"> 4803 4869 <description><![CDATA[comparator can be null, giving the "natural" sorting order (depending on element type), otherwise it must be a function reference obtained by the "function FUNCTIONNAME" operator. … … 4811 4877 </arguments> 4812 4878 </element> 4879 <element name="iterator" type="Object"/> 4813 4880 </type> 4814 4881 <type name="World" context="Global context"> 4815 4882 <description><![CDATA[Environment properties.]]></description> 4816 <element name="nnspeed" type="float" min="0" max="1000" default="1.0"> 4817 <description><![CDATA[Number of neural network simulation steps in each physics simulation step]]></description> 4818 </element> 4819 <element name="signals" type="WorldSignals"/> 4820 <element name="simtype" type="integer" min="0" max="1" default="0"> 4821 <description><![CDATA[MechaStick is a fast and simple primary Framsticks simulation engine. 4822 ODE is Open Dynamics Engine by Russel Smith et al. 4823 4824 NOTE: switching between simulation engines causes removal of all objects in the world (e.g. creatures).]]></description> 4825 </element> 4826 <element name="wrldbnd" type="integer" min="0" max="2" default="1"/> 4827 <element name="wrldg" type="float" min="0" max="10" default="1.0"> 4828 <description><![CDATA[You can adjust gravity for your experiments. 4829 The "official" setting used to evaluate and compare creatures is 1.]]></description> 4883 <element name="wrldtyp" type="integer" min="0" max="2" default="0"/> 4884 <element name="wrldsiz" type="float" min="10" max="1000" default="20.0"> 4885 <description><![CDATA[Side length of the world]]></description> 4830 4886 </element> 4831 4887 <element name="wrldmap" type="string"> … … 4839 4895 See also the WorldMap object.]]></description> 4840 4896 </element> 4841 <element name="wrldsiz" type="float" min="10" max="1000" default="20.0">4842 <description><![CDATA[Side length of the world]]></description>4843 </element>4844 <element name="wrldtyp" type="integer" min="0" max="2" default="0"/>4845 4897 <element name="wrldwat" type="float" min="-20" max="200" default="-1.0"/> 4898 <element name="wrldbnd" type="integer" min="0" max="2" default="1"> 4899 <description><![CDATA[Teleporting a creature that is outside of the world area is attempted every 'performance sampling period' steps. Teleport succeeds only when the target location in the world is empty (there is no collision).]]></description> 4900 </element> 4901 <element name="wrldg" type="float" min="0" max="10" default="1.0"> 4902 <description><![CDATA[You can adjust gravity for your experiments. 4903 The "official" setting used to evaluate and compare creatures is 1.]]></description> 4904 </element> 4846 4905 <element name="wrldchg" function="true" type="void"><arguments/></element> 4906 <element name="simtype" type="integer" min="0" max="1" default="0"> 4907 <description><![CDATA[MechaStick is a fast and simple primary Framsticks simulation engine. 4908 ODE is Open Dynamics Engine by Russel Smith et al. 4909 4910 NOTE: switching between simulation engines causes removal of all objects in the world (e.g. creatures).]]></description> 4911 </element> 4912 <element name="nnspeed" type="float" min="0" max="1000" default="1.0"> 4913 <description><![CDATA[Number of neural network simulation steps in each physics simulation step]]></description> 4914 </element> 4915 <element name="signals" type="WorldSignals"/> 4847 4916 </type> 4848 4917 <type name="WorldMap" context="Global context"> … … 4892 4961 4893 4962 See also: Signal, CreatureSignals, NeuroSignals.]]></description> 4894 <element name="size" type="integer"/>4895 4963 <element name="add" function="true" type="Signal"> 4896 4964 <arguments> … … 4899 4967 </arguments> 4900 4968 </element> 4901 <element name="clear" function="true" type="void"><arguments/></element>4902 <element name="get" function="true" type="Signal">4903 <arguments>4904 <argument name="index" type="integer"/>4905 </arguments>4906 </element>4907 4969 <element name="receive" function="true" type="float"> 4908 4970 <description><![CDATA[Receive the aggregated signal power in a given channel.]]></description> … … 4910 4972 <argument name="position" type="XYZ"/> 4911 4973 <argument name="channel" type="string"/> 4974 </arguments> 4975 </element> 4976 <element name="receiveSet" function="true" type="Vector"> 4977 <description><![CDATA[Get all signals in the specified range. Returns a read-only vector object containing Signal objects - individual signals can be accessed as result[0], .., result[result.size-1].]]></description> 4978 <arguments> 4979 <argument name="position" type="XYZ"/> 4980 <argument name="channel" type="string"/> 4981 <argument name="max distance" type="float"/> 4912 4982 </arguments> 4913 4983 </element> … … 4926 4996 </arguments> 4927 4997 </element> 4928 <element name="receiveS et" function="true" type="Vector">4929 <description><![CDATA[ Get all signals in the specified range. Returns a read-only vector object containing Signal objects - individual signals can be accessed as result[0], .., result[result.size-1].]]></description>4998 <element name="receiveSingle" function="true" type="Signal"> 4999 <description><![CDATA[Find the signal source that has the highest signal power (taking into account distance).]]></description> 4930 5000 <arguments> 4931 5001 <argument name="position" type="XYZ"/> … … 4934 5004 </arguments> 4935 5005 </element> 4936 <element name="receiveSingle" function="true" type="Signal"> 4937 <description><![CDATA[Find the signal source that has the highest signal power (taking into account distance).]]></description> 4938 <arguments> 4939 <argument name="position" type="XYZ"/> 4940 <argument name="channel" type="string"/> 4941 <argument name="max distance" type="float"/> 4942 </arguments> 4943 </element> 5006 <element name="get" function="true" type="Signal"> 5007 <arguments> 5008 <argument name="index" type="integer"/> 5009 </arguments> 5010 </element> 5011 <element name="size" type="integer"/> 5012 <element name="clear" function="true" type="void"><arguments/></element> 4944 5013 </type> 4945 5014 <type name="XYZ" context="Global context"> 4946 5015 <description><![CDATA[3D vector]]></description> 4947 <element name="length" type="float"/>4948 <element name="toString" type="string"/>4949 <element name="toVector" type="Vector"/>4950 5016 <element name="x" type="float"/> 4951 5017 <element name="y" type="float"/> 4952 5018 <element name="z" type="float"/> 4953 <element name="add" function="true" type="void"> 4954 <description><![CDATA[Note: it does not return a new object, just modifies the existing one]]></description> 4955 <arguments> 4956 <argument type="XYZ"/> 5019 <element name="new" function="true" type="XYZ"> 5020 <description><![CDATA[3D vectors objects can be also created using the (x,y,z) notation, i.e. var v=(1,2,3) is the same as var v=XYZ.new(1,2,3);]]></description> 5021 <arguments> 5022 <argument name="x" type="float"/> 5023 <argument name="y" type="float"/> 5024 <argument name="z" type="float"/> 5025 </arguments> 5026 </element> 5027 <element name="newFromVector" function="true" type="XYZ"> 5028 <description><![CDATA[used for deserialization]]></description> 5029 <arguments> 5030 <argument type="Vector"/> 4957 5031 </arguments> 4958 5032 </element> … … 4965 5039 //o2 is now (1,9999,3) but o3 is still (1,2,3)]]></description> 4966 5040 <arguments/></element> 4967 <element name="get" function="true" type="float"> 4968 <description><![CDATA[this function makes the XYZ objects "indexable" (so you can use [] for accessing subsequent fields, like in Vector)]]></description> 4969 <arguments> 4970 <argument name="index" type="integer"/> 4971 </arguments> 4972 </element> 4973 <element name="new" function="true" type="XYZ"> 4974 <description><![CDATA[3D vectors objects can be also created using the (x,y,z) notation, i.e. var v=(1,2,3) is the same as var v=XYZ.new(1,2,3);]]></description> 5041 <element name="set" function="true" type="void"> 5042 <arguments> 5043 <argument type="XYZ"/> 5044 </arguments> 5045 </element> 5046 <element name="set3" function="true" type="void"> 4975 5047 <arguments> 4976 5048 <argument name="x" type="float"/> … … 4979 5051 </arguments> 4980 5052 </element> 4981 <element name="newFromVector" function="true" type="XYZ"> 4982 <description><![CDATA[used for deserialization]]></description> 4983 <arguments> 4984 <argument type="Vector"/> 4985 </arguments> 4986 </element> 5053 <element name="add" function="true" type="void"> 5054 <description><![CDATA[Note: it does not return a new object, just modifies the existing one]]></description> 5055 <arguments> 5056 <argument type="XYZ"/> 5057 </arguments> 5058 </element> 5059 <element name="sub" function="true" type="void"> 5060 <description><![CDATA[Note: it does not return a new object, just modifies the existing one]]></description> 5061 <arguments> 5062 <argument type="XYZ"/> 5063 </arguments> 5064 </element> 5065 <element name="scale" function="true" type="void"> 5066 <arguments> 5067 <argument type="float"/> 5068 </arguments> 5069 </element> 5070 <element name="length" type="float"/> 4987 5071 <element name="normalize" function="true" type="void"> 4988 5072 <description><![CDATA[scales the vector length to 1.0]]></description> 4989 5073 <arguments/></element> 5074 <element name="toString" type="string"/> 5075 <element name="toVector" type="Vector"/> 5076 <element name="rotate" function="true" type="void"> 5077 <arguments> 5078 <argument type="Orient"/> 5079 </arguments> 5080 </element> 4990 5081 <element name="revRotate" function="true" type="void"> 4991 5082 <arguments> … … 4993 5084 </arguments> 4994 5085 </element> 4995 <element name="rotate" function="true" type="void"> 4996 <arguments> 4997 <argument type="Orient"/> 4998 </arguments> 4999 </element> 5000 <element name="scale" function="true" type="void"> 5001 <arguments> 5002 <argument type="float"/> 5003 </arguments> 5004 </element> 5005 <element name="set" function="true" type="void"> 5006 <arguments> 5007 <argument type="XYZ"/> 5008 </arguments> 5009 </element> 5010 <element name="set3" function="true" type="void"> 5011 <arguments> 5012 <argument name="x" type="float"/> 5013 <argument name="y" type="float"/> 5014 <argument name="z" type="float"/> 5015 </arguments> 5016 </element> 5017 <element name="sub" function="true" type="void"> 5018 <description><![CDATA[Note: it does not return a new object, just modifies the existing one]]></description> 5019 <arguments> 5020 <argument type="XYZ"/> 5086 <element name="get" function="true" type="float"> 5087 <description><![CDATA[this function makes the XYZ objects "indexable" (so you can use [] for accessing subsequent fields, like in Vector)]]></description> 5088 <arguments> 5089 <argument name="index" type="integer"/> 5021 5090 </arguments> 5022 5091 </element> 5023 5092 </type> 5024 5093 <type name="ExpParams" context="Experiment definition"> 5094 <element name="clear" function="true"/> 5095 <element name="add" function="true"/> 5096 <element name="remove" function="true"/> 5097 <element name="addGroup" function="true"/> 5098 <element name="removeGroup" function="true"/> 5025 5099 <element name="changedProperty" type="integer"/> 5026 5100 <element name="changedPropertyId" type="string"/> 5101 </type> 5102 <type name="ExpState" context="Experiment definition"> 5103 <element name="clear" function="true"/> 5027 5104 <element name="add" function="true"/> 5105 <element name="remove" function="true"/> 5028 5106 <element name="addGroup" function="true"/> 5029 <element name="clear" function="true"/>5030 <element name="remove" function="true"/>5031 5107 <element name="removeGroup" function="true"/> 5032 </type>5033 <type name="ExpState" context="Experiment definition">5034 5108 <element name="changedProperty" type="integer"/> 5035 5109 <element name="changedPropertyId" type="string"/> 5036 <element name="add" function="true"/>5037 <element name="addGroup" function="true"/>5038 <element name="clear" function="true"/>5039 <element name="remove" function="true"/>5040 <element name="removeGroup" function="true"/>5041 5110 </type> 5042 5111 <type name="n" context="Neuron definitions"> 5112 <element name="p" type="integer" min="-1" max="999999" default="-1"/> 5113 <element name="j" type="integer" min="-1" max="999999" default="-1"/> 5114 <element name="d" type="string"/> 5115 <element name="i" type="string"/> 5116 <element name="Vstyle" type="string"/> 5117 <element name="getInputCount" type="integer"/> 5118 <element name="getInputNeuroDef" function="true" type="NeuroDef"> 5119 <arguments> 5120 <argument type="integer"/> 5121 </arguments> 5122 </element> 5123 <element name="getInputNeuroIndex" function="true" type="integer"> 5124 <arguments> 5125 <argument type="integer"/> 5126 </arguments> 5127 </element> 5128 <element name="getInputWeight" function="true" type="float"> 5129 <arguments> 5130 <argument type="integer"/> 5131 </arguments> 5132 </element> 5043 5133 <element name="classObject" type="NeuroClass"/> 5044 <element name="d" type="string"/>5045 <element name="getInputCount" type="integer"/>5046 <element name="i" type="string"/>5047 <element name="j" type="integer" min="-1" max="999999" default="-1"/>5048 <element name="p" type="integer" min="-1" max="999999" default="-1"/>5049 <element name="Vstyle" type="string"/>5050 <element name="getInputNeuroDef" function="true" type="NeuroDef">5051 <arguments>5052 <argument type="integer"/>5053 </arguments>5054 </element>5055 <element name="getInputNeuroIndex" function="true" type="integer">5056 <arguments>5057 <argument type="integer"/>5058 </arguments>5059 </element>5060 <element name="getInputWeight" function="true" type="float">5061 <arguments>5062 <argument type="integer"/>5063 </arguments>5064 </element>5065 5134 </type> 5066 5135 <type name="Neuro" context="Neuron definitions"> 5067 5136 <description><![CDATA[Live Neuron object.]]></description> 5137 <element name="getInputState" function="true" type="float"> 5138 <arguments> 5139 <argument name="input" type="integer"/> 5140 </arguments> 5141 </element> 5142 <element name="getInputWeight" function="true" type="float"> 5143 <arguments> 5144 <argument name="input" type="integer"/> 5145 </arguments> 5146 </element> 5147 <element name="getWeightedInputState" function="true" type="float"> 5148 <arguments> 5149 <argument name="input" type="integer"/> 5150 </arguments> 5151 </element> 5152 <element name="getInputSum" function="true" type="float"> 5153 <arguments> 5154 <argument name="input" type="integer"/> 5155 </arguments> 5156 </element> 5157 <element name="getWeightedInputSum" function="true" type="float"> 5158 <description><![CDATA[Uses any number of inputs starting with the specified input. getWeightedInputSum(0)=weightedInputSum]]></description> 5159 <arguments> 5160 <argument name="input" type="integer"/> 5161 </arguments> 5162 </element> 5163 <element name="getInputCount" type="integer"/> 5164 <element name="inputSum" type="float"/> 5165 <element name="weightedInputSum" type="float"/> 5166 <element name="getInputChannelCount" function="true" type="integer"> 5167 <arguments> 5168 <argument name="input" type="integer"/> 5169 </arguments> 5170 </element> 5171 <element name="getInputStateChannel" function="true" type="float"> 5172 <arguments> 5173 <argument name="input" type="integer"/> 5174 <argument name="channel" type="integer"/> 5175 </arguments> 5176 </element> 5177 <element name="getWeightedInputStateChannel" function="true" type="float"> 5178 <arguments> 5179 <argument name="input" type="integer"/> 5180 <argument name="channel" type="integer"/> 5181 </arguments> 5182 </element> 5183 <element name="state" type="float"> 5184 <description><![CDATA[When read, returns the current neuron state. 5185 When written, sets the 'internal' neuron state that will become current in the next step. 5186 Typically you should use this field, and not currState.]]></description> 5187 </element> 5068 5188 <element name="channelCount" type="integer"/> 5069 <element name="classObject" type="NeuroClass"/> 5070 <element name="creature" type="Creature"/> 5189 <element name="getStateChannel" function="true" type="float"> 5190 <arguments> 5191 <argument name="channel" type="integer"/> 5192 </arguments> 5193 </element> 5194 <element name="setStateChannel" function="true" type="void"> 5195 <arguments> 5196 <argument name="channel" type="integer"/> 5197 <argument name="value" type="float"/> 5198 </arguments> 5199 </element> 5200 <element name="hold" type="integer" min="0" max="1"> 5201 <description><![CDATA["Holding" means keeping the neuron state as is, blocking the regular neuron operation. This is useful when your script needs to inject some control signals into the NN. Without "holding", live neurons would be constantly overwriting your changes, and the rest of the NN could see inconsistent states, depending on the connections. Setting hold=1 ensures the neuron state will be only set by you, and not by the neuron. The enforced signal value can be set using Neuro.currState before or after setting hold=1. Set hold=0 to resume normal operation.]]></description> 5202 </element> 5071 5203 <element name="currState" type="float"> 5072 5204 <description><![CDATA[When read, it behaves just like the 'state' field. … … 5074 5206 This feature should only be used while controlling the neuron 'from outside' (like a neuro probe) and not in the neuron definition. See also: Neuro.hold]]></description> 5075 5207 </element> 5076 <element name="def" type="NeuroDef"/> 5208 <element name="setCurrStateChannel" function="true" type="void"> 5209 <description><![CDATA[Analogous to "currState".]]></description> 5210 <arguments> 5211 <argument name="channel" type="integer"/> 5212 <argument name="value" type="float"/> 5213 </arguments> 5214 </element> 5215 <element name="position_x" type="float"/> 5216 <element name="position_y" type="float"/> 5217 <element name="position_z" type="float"/> 5218 <element name="creature" type="Creature"/> 5219 <element name="part" type="MechPart"/> 5220 <element name="joint" type="MechJoint"/> 5077 5221 <element name="fields" type="Fields"> 5078 5222 <description><![CDATA[Neurons can have different fields depending on their class. Script neurons have their fields defined using the "prop:" syntax. If you develop a custom neuron script you should use the Fields object for accessing your own neuron fields. The Neuro.fields property is meant for accessing the neuron fields from the outside script. … … 5090 5234 Simulator.print(iobj.getId(i)+" ("+iobj.getName(i)+")");]]></description> 5091 5235 </element> 5092 <element name="getInputCount" type="integer"/> 5093 <element name="hold" type="integer" min="0" max="1"> 5094 <description><![CDATA["Holding" means keeping the neuron state as is, blocking the regular neuron operation. This is useful when your script needs to inject some control signals into the NN. Without "holding", live neurons would be constantly overwriting your changes, and the rest of the NN could see inconsistent states, depending on the connections. Setting hold=1 ensures the neuron state will be only set by you, and not by the neuron. The enforced signal value can be set using Neuro.currState before or after setting hold=1. Set hold=0 to resume normal operation.]]></description> 5095 </element> 5096 <element name="inputSum" type="float"/> 5097 <element name="joint" type="MechJoint"/> 5098 <element name="part" type="MechPart"/> 5099 <element name="position_x" type="float"/> 5100 <element name="position_y" type="float"/> 5101 <element name="position_z" type="float"/> 5236 <element name="def" type="NeuroDef"/> 5237 <element name="classObject" type="NeuroClass"/> 5102 5238 <element name="signals" type="NeuroSignals"/> 5103 <element name="state" type="float">5104 <description><![CDATA[When read, returns the current neuron state.5105 When written, sets the 'internal' neuron state that will become current in the next step.5106 Typically you should use this field, and not currState.]]></description>5107 </element>5108 <element name="weightedInputSum" type="float"/>5109 <element name="getInputChannelCount" function="true" type="integer">5110 <arguments>5111 <argument name="input" type="integer"/>5112 </arguments>5113 </element>5114 <element name="getInputState" function="true" type="float">5115 <arguments>5116 <argument name="input" type="integer"/>5117 </arguments>5118 </element>5119 <element name="getInputStateChannel" function="true" type="float">5120 <arguments>5121 <argument name="input" type="integer"/>5122 <argument name="channel" type="integer"/>5123 </arguments>5124 </element>5125 <element name="getInputSum" function="true" type="float">5126 <arguments>5127 <argument name="input" type="integer"/>5128 </arguments>5129 </element>5130 <element name="getInputWeight" function="true" type="float">5131 <arguments>5132 <argument name="input" type="integer"/>5133 </arguments>5134 </element>5135 <element name="getStateChannel" function="true" type="float">5136 <arguments>5137 <argument name="channel" type="integer"/>5138 </arguments>5139 </element>5140 <element name="getWeightedInputState" function="true" type="float">5141 <arguments>5142 <argument name="input" type="integer"/>5143 </arguments>5144 </element>5145 <element name="getWeightedInputStateChannel" function="true" type="float">5146 <arguments>5147 <argument name="input" type="integer"/>5148 <argument name="channel" type="integer"/>5149 </arguments>5150 </element>5151 <element name="getWeightedInputSum" function="true" type="float">5152 <description><![CDATA[Uses any number of inputs starting with the specified input. getWeightedInputSum(0)=weightedInputSum]]></description>5153 <arguments>5154 <argument name="input" type="integer"/>5155 </arguments>5156 </element>5157 <element name="setCurrStateChannel" function="true" type="void">5158 <description><![CDATA[Analogous to "currState".]]></description>5159 <arguments>5160 <argument name="channel" type="integer"/>5161 <argument name="value" type="float"/>5162 </arguments>5163 </element>5164 <element name="setStateChannel" function="true" type="void">5165 <arguments>5166 <argument name="channel" type="integer"/>5167 <argument name="value" type="float"/>5168 </arguments>5169 </element>5170 5239 </type> 5171 5240 <type name="this" context="Fitness formula"> 5172 5241 <description><![CDATA[A Genotype with the associated performance information. Adding genotypes to GenePool makes them accessible in Framsticks GUI and enables the use of GenePool selection methods. 5173 5242 Before version 4.0rc4 the static Genotype object was used in functions operating on the "selected" genotype. This is now deprecated as all operations can be performed using the more convenient direct access (see GenePools).]]></description> 5174 <element name="convtrace1" type="string"/> 5243 <element name="name" type="string"/> 5244 <element name="genotype" type="string"/> 5245 <element name="info" type="string"> 5246 <description><![CDATA[Additional information or comments]]></description> 5247 </element> 5248 <element name="simi" type="float"> 5249 <description><![CDATA[Read about details: 5250 http://www.framsticks.com/node/795 5251 http://www.framsticks.com/node/890]]></description> 5252 </element> 5253 <element name="energ0" type="float"/> 5254 <element name="strsiz" type="float"/> 5255 <element name="strjoints" type="float"/> 5256 <element name="nnsiz" type="float"/> 5257 <element name="nncon" type="float"/> 5258 <element name="numparts" type="float"/> 5259 <element name="numjoints" type="float"/> 5260 <element name="numneurons" type="float"/> 5261 <element name="numconnections" type="float"/> 5262 <element name="num" type="integer"/> 5263 <element name="gnum" type="integer"/> 5264 <element name="popsiz" type="integer"/> 5265 <element name="instances" type="integer"> 5266 <description><![CDATA[Copies of this genotype]]></description> 5267 </element> 5268 <element name="lifespan" type="float"> 5269 <description><![CDATA[Average life span]]></description> 5270 </element> 5271 <element name="velocity" type="float"> 5272 <description><![CDATA[Average velocity]]></description> 5273 </element> 5175 5274 <element name="distance" type="float"/> 5176 <element name="energ0" type="float"/> 5177 <element name="f0genotype" type="string"> 5178 <description><![CDATA[converted to f0 genotype]]></description> 5179 </element> 5275 <element name="vertvel" type="float"/> 5276 <element name="vertpos" type="float"/> 5180 5277 <element name="fit" type="float"/> 5181 5278 <element name="fit2" type="float"> 5182 5279 <description><![CDATA[Fitness shifted by (avg-n*stddev)]]></description> 5183 5280 </element> 5281 <element name="f0genotype" type="string"> 5282 <description><![CDATA[converted to f0 genotype]]></description> 5283 </element> 5284 <element name="convtrace1" type="string"/> 5285 <element name="user1" type="untyped"/> 5286 <element name="user2" type="untyped"/> 5287 <element name="user3" type="untyped"/> 5288 <element name="mutate" function="true" type="void"><arguments/></element> 5289 <element name="isValid" type="integer" min="0" max="1"/> 5290 <element name="getNormalized" function="true" type="float"> 5291 <arguments> 5292 <argument name="property name or index" type="untyped"/> 5293 </arguments> 5294 </element> 5295 <element name="geno" type="Geno"> 5296 <description><![CDATA[Geno object for this Genotype]]></description> 5297 </element> 5298 <element name="uid" type="string"> 5299 <description><![CDATA[Unique identifier]]></description> 5300 </element> 5301 <element name="getModel" function="true" type="Model"><arguments/></element> 5302 <element name="splitInstances" function="true" type="void"><arguments/></element> 5303 <element name="newFromString" function="true" type="Genotype"> 5304 <arguments> 5305 <argument name="genotype" type="string"/> 5306 </arguments> 5307 </element> 5308 <element name="newFromGeno" function="true" type="Genotype"> 5309 <arguments> 5310 <argument name="geno" type="Geno"/> 5311 </arguments> 5312 </element> 5313 <element name="newFromCreature" function="true" type="Genotype"> 5314 <arguments> 5315 <argument name="creature" type="Creature"/> 5316 </arguments> 5317 </element> 5318 <element name="addPerformanceFromCreature" function="true" type="void"> 5319 <description><![CDATA[Updates the Genotype's performance values merging them with the supplied Creture's performance. It assumes the Genotype.instances has a reasonable value and performs the proper weighting. Use your own function instead if these conditions are not met in your experiment.]]></description> 5320 <arguments> 5321 <argument type="Creature"/> 5322 </arguments> 5323 </element> 5324 <element name="moveTo" function="true" type="void"> 5325 <description><![CDATA[the genotype is removed from its current pool when pool=null]]></description> 5326 <arguments> 5327 <argument name="pool" type="GenePool"/> 5328 </arguments> 5329 </element> 5330 <element name="copyTo" function="true" type="Genotype"> 5331 <description><![CDATA[returns the duplicate genotype, created in the target pool]]></description> 5332 <arguments> 5333 <argument name="pool" type="GenePool"/> 5334 </arguments> 5335 </element> 5336 <element name="delete" function="true" type="void"><arguments/></element> 5337 <element name="deleteOne" function="true" type="void"> 5338 <description><![CDATA[]]></description> 5339 <arguments/></element> 5184 5340 <element name="genepool" type="untyped"> 5185 5341 <description><![CDATA[GenePool object or null when not in pool]]></description> 5186 5342 </element> 5187 <element name="geno" type="Geno">5188 <description><![CDATA[Geno object for this Genotype]]></description>5189 </element>5190 <element name="genotype" type="string"/>5191 <element name="gnum" type="integer"/>5192 5343 <element name="index" type="integer"> 5193 5344 <description><![CDATA[-1 when not in pool. 5194 5345 Note that the index changes depending on the current genotype position in the pool. Use Genotype.uid if you need a permanent identifier that persists through the entire object lifetime.]]></description> 5195 5346 </element> 5196 <element name="info" type="string">5197 <description><![CDATA[Additional information or comments]]></description>5198 </element>5199 <element name="instances" type="integer">5200 <description><![CDATA[Copies of this genotype]]></description>5201 </element>5202 <element name="isValid" type="integer" min="0" max="1"/>5203 <element name="lifespan" type="float">5204 <description><![CDATA[Average life span]]></description>5205 </element>5206 <element name="name" type="string"/>5207 <element name="nncon" type="float"/>5208 <element name="nnsiz" type="float"/>5209 <element name="num" type="integer"/>5210 <element name="numconnections" type="float"/>5211 <element name="numjoints" type="float"/>5212 <element name="numneurons" type="float"/>5213 <element name="numparts" type="float"/>5214 <element name="popsiz" type="integer"/>5215 <element name="simi" type="float"/>5216 <element name="strjoints" type="float"/>5217 <element name="strsiz" type="float"/>5218 <element name="uid" type="string">5219 <description><![CDATA[Unique identifier]]></description>5220 </element>5221 <element name="user1" type="untyped"/>5222 <element name="user2" type="untyped"/>5223 <element name="user3" type="untyped"/>5224 <element name="velocity" type="float">5225 <description><![CDATA[Average velocity]]></description>5226 </element>5227 <element name="vertpos" type="float"/>5228 <element name="vertvel" type="float"/>5229 <element name="addPerformanceFromCreature" function="true" type="void">5230 <description><![CDATA[Updates the Genotype's performance values merging them with the supplied Creture's performance. It assumes the Genotype.instances has a reasonable value and performs the proper weighting. Use your own function instead if these conditions are not met in your experiment.]]></description>5231 <arguments>5232 <argument type="Creature"/>5233 </arguments>5234 </element>5235 <element name="copyTo" function="true" type="Genotype">5236 <description><![CDATA[returns the duplicate genotype, created in the target pool]]></description>5237 <arguments>5238 <argument name="pool" type="GenePool"/>5239 </arguments>5240 </element>5241 <element name="delete" function="true" type="void"><arguments/></element>5242 <element name="deleteOne" function="true" type="void">5243 <description><![CDATA[]]></description>5244 <arguments/></element>5245 <element name="getModel" function="true" type="Model"><arguments/></element>5246 <element name="getNormalized" function="true" type="float">5247 <arguments>5248 <argument name="property name or index" type="untyped"/>5249 </arguments>5250 </element>5251 <element name="moveTo" function="true" type="void">5252 <description><![CDATA[the genotype is removed from its current pool when pool=null]]></description>5253 <arguments>5254 <argument name="pool" type="GenePool"/>5255 </arguments>5256 </element>5257 <element name="mutate" function="true" type="void"><arguments/></element>5258 <element name="newFromCreature" function="true" type="Genotype">5259 <arguments>5260 <argument name="creature" type="Creature"/>5261 </arguments>5262 </element>5263 <element name="newFromGeno" function="true" type="Genotype">5264 <arguments>5265 <argument name="geno" type="Geno"/>5266 </arguments>5267 </element>5268 <element name="newFromString" function="true" type="Genotype">5269 <arguments>5270 <argument name="genotype" type="string"/>5271 </arguments>5272 </element>5273 <element name="splitInstances" function="true" type="void"><arguments/></element>5274 5347 </type> 5275 5348 <type name="Creature" context="Visual style definition"> … … 5278 5351 function onDied(cr) {Simulator.print("Creature "+cr.name+" has died");} 5279 5352 See also: Population.]]></description> 5353 <element name="name" type="string"/> 5354 <element name="genotype" type="string"/> 5355 <element name="info" type="string"> 5356 <description><![CDATA[Additional info or comments]]></description> 5357 </element> 5358 <element name="group" type="untyped" deprecated="true"> 5359 <description><![CDATA[Deprecated. Use population instead.]]></description> 5360 </element> 5361 <element name="population" type="untyped"/> 5362 <element name="index" type="integer"> 5363 <description><![CDATA[Note that the index changes depending on the current creature position in the population. Use Creature.uid if you need a permanent identifier that persists through the entire object lifetime.]]></description> 5364 </element> 5365 <element name="gnum" type="integer"/> 5366 <element name="buildproblems" type="integer"/> 5367 <element name="energ0" type="float"/> 5368 <element name="idleen" type="float"/> 5369 <element name="energy" type="float"/> 5370 <element name="energy_p" type="float"/> 5371 <element name="energy_m" type="float"/> 5372 <element name="energy_b" type="float"/> 5373 <element name="perf" type="integer" min="0" max="2"> 5374 <description><![CDATA[Initial value of this property is taken from Population.enableperf]]></description> 5375 </element> 5376 <element name="nnenabled" type="integer" min="0" max="1"/> 5280 5377 <element name="bodysim" type="integer" min="0" max="1" default="1"> 5281 5378 <description><![CDATA[(Physical) body simulation can be disabled for individual objects which makes them immovable. Disabled objects can still participate in collisions depending on their collisions masks. … … 5283 5380 Bugs: the standard collision handler does not work for disabled objects when ODE simulation is used. It means that these objects won't physically interact with other objects. The custom (scripting) handlers work as expected.]]></description> 5284 5381 </element> 5285 <element name="buildproblems" type="integer"/> 5382 <element name="selfcol" type="integer" min="0" max="1"> 5383 <description><![CDATA[Enable/disable detection of self-collisions (within a creature body). They can only occur when using the ODE simulation engine. If enabled, the creature will have its sticks collide during lifespan.]]></description> 5384 </element> 5385 <element name="selfcolstate" function="true" type="integer"> 5386 <description><![CDATA[Current self-collision state. In old versions this was a field, not a function.]]></description> 5387 <arguments/></element> 5388 <element name="lifespan" type="integer"/> 5389 <element name="distance" type="float"/> 5286 5390 <element name="c_velocity" type="float"/> 5391 <element name="c_vertvelocity" type="float"/> 5287 5392 <element name="c_vertpos" type="float"/> 5288 <element name="c_vertvelocity" type="float"/> 5393 <element name="velocity" type="float"/> 5394 <element name="vertpos" type="float"/> 5395 <element name="vertvel" type="float"/> 5396 <element name="pos_x" type="float"> 5397 <description><![CDATA[(pos_x,pos_y,pos_z) is the point of minimal coordinates ("bottom left corner") of the creature, including imaginary Part sizes (Part.s, usually 1.0). See also: Creature.moveAbs]]></description> 5398 </element> 5399 <element name="pos_y" type="float"> 5400 <description><![CDATA[See Creature.pos_x]]></description> 5401 </element> 5402 <element name="pos_z" type="float"> 5403 <description><![CDATA[See Creature.pos_x]]></description> 5404 </element> 5405 <element name="size_x" type="float"> 5406 <description><![CDATA[(size_x,size_y,size_z) are dimensions of the axis-aligned bounding box of the creature, including the imaginary part sizes (Part.s, usually 1.0). A creature consisting of a single default Part has the size of (2.0,2.0,2.0) - twice the Part.s value (like a sphere diameter is twice its radius). 5407 See also: Creature.moveAbs]]></description> 5408 </element> 5409 <element name="size_y" type="float"> 5410 <description><![CDATA[See Creature.size_x]]></description> 5411 </element> 5412 <element name="size_z" type="float"> 5413 <description><![CDATA[See Creature.size_x]]></description> 5414 </element> 5289 5415 <element name="center_x" type="float"> 5290 5416 <description><![CDATA[Center of gravity]]></description> … … 5296 5422 <description><![CDATA[Center of gravity]]></description> 5297 5423 </element> 5298 <element name="distance" type="float"/> 5424 <element name="numparts" type="integer"/> 5425 <element name="numjoints" type="integer"/> 5426 <element name="numneurons" type="integer"/> 5427 <element name="user1" type="untyped"/> 5428 <element name="user2" type="untyped"/> 5429 <element name="user3" type="untyped"/> 5430 <element name="move" function="true" type="void"> 5431 <description><![CDATA[Shift the creature by a given vector.]]></description> 5432 <arguments> 5433 <argument name="x" type="float"/> 5434 <argument name="y" type="float"/> 5435 <argument name="z" type="float"/> 5436 </arguments> 5437 </element> 5438 <element name="moveAbs" function="true" type="void"> 5439 <description><![CDATA[Moves the creature so that its origin (pos_x,pos_y,pos_z) is placed at the given location. The origin is the point of minimal coordinates ("bottom left corner"), including imaginary part sizes (Part.s, usually 1.0). 5440 Assuming a simple single-stick creature "X" having parts at (0,0,0) and (1,0,0), 5441 5442 origin (pos_x,pos_y,pos_z) = (-1,-1,-1) 5443 size (size_x,size_y,size_z) = (3,2,2) 5444 5445 The following example places the bottom of a creature at a given location (x,y,z): 5446 Creature.moveAbs(x-(Creature.size_x/2),y-(Creature.size_y/2),z-1.0) 5447 (assuming that the part size is 1.0)]]></description> 5448 <arguments> 5449 <argument name="x" type="float"/> 5450 <argument name="y" type="float"/> 5451 <argument name="z" type="float"/> 5452 </arguments> 5453 </element> 5454 <element name="moveLocal" function="true" type="void"> 5455 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description> 5456 <arguments> 5457 <argument name="x" type="float"/> 5458 <argument name="y" type="float"/> 5459 <argument name="z" type="float"/> 5460 </arguments> 5461 </element> 5462 <element name="localToWorld" function="true" type="XYZ"> 5463 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description> 5464 <arguments> 5465 <argument name="x" type="float"/> 5466 <argument name="y" type="float"/> 5467 <argument name="z" type="float"/> 5468 </arguments> 5469 </element> 5470 <element name="worldToLocal" function="true" type="XYZ"> 5471 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description> 5472 <arguments> 5473 <argument name="x" type="float"/> 5474 <argument name="y" type="float"/> 5475 <argument name="z" type="float"/> 5476 </arguments> 5477 </element> 5478 <element name="orient" type="Orient"> 5479 <description><![CDATA[By convention, the orientation of the creature is equal to the orientation of its first Part]]></description> 5480 </element> 5481 <element name="rotate" function="true" type="void"> 5482 <description><![CDATA[Rotate the creature around X, Y and Z axes. Should only be used immediately after creating a new creature (before the first simulation step is performed for this creature), otherwise further simulation can be disturbed.]]></description> 5483 <arguments> 5484 <argument name="x" type="float"/> 5485 <argument name="y" type="float"/> 5486 <argument name="z" type="float"/> 5487 </arguments> 5488 </element> 5489 <element name="rotateLocal" function="true" type="void"> 5490 <description><![CDATA[Rotate the creature around (local) X, Y and Z axes. Should only be used immediately after creating a new creature (before the first simulation step is performed for this creature), otherwise further simulation can be disturbed.]]></description> 5491 <arguments> 5492 <argument name="x" type="float"/> 5493 <argument name="y" type="float"/> 5494 <argument name="z" type="float"/> 5495 </arguments> 5496 </element> 5299 5497 <element name="drive" type="XYZ"> 5300 5498 <description><![CDATA[Measured in global coordinates]]></description> 5301 </element>5302 <element name="energ0" type="float"/>5303 <element name="energy" type="float"/>5304 <element name="energy_b" type="float"/>5305 <element name="energy_m" type="float"/>5306 <element name="energy_p" type="float"/>5307 <element name="geno" type="Geno">5308 <description><![CDATA[Source genotype for this creature]]></description>5309 </element>5310 <element name="genotype" type="string"/>5311 <element name="gnum" type="integer"/>5312 <element name="group" type="untyped" deprecated="true">5313 <description><![CDATA[Deprecated. Use population instead.]]></description>5314 </element>5315 <element name="idleen" type="float"/>5316 <element name="index" type="integer">5317 <description><![CDATA[Note that the index changes depending on the current creature position in the population. Use Creature.uid if you need a permanent identifier that persists through the entire object lifetime.]]></description>5318 </element>5319 <element name="info" type="string">5320 <description><![CDATA[Additional info or comments]]></description>5321 </element>5322 <element name="lifespan" type="integer"/>5323 <element name="liveModel" type="Model">5324 <description><![CDATA[A Model object that is a copy of the current (temporary) geometry of this creature]]></description>5325 5499 </element> 5326 5500 <element name="localDrive" type="XYZ"> … … 5328 5502 See also: Creature.orient]]></description> 5329 5503 </element> 5504 <element name="getPart" function="true" type="Part"> 5505 <arguments> 5506 <argument name="index" type="integer"/> 5507 </arguments> 5508 </element> 5509 <element name="getJoint" function="true" type="Joint"> 5510 <arguments> 5511 <argument name="index" type="integer"/> 5512 </arguments> 5513 </element> 5514 <element name="getNeuroDef" function="true" type="NeuroDef"> 5515 <arguments> 5516 <argument name="index" type="integer"/> 5517 </arguments> 5518 </element> 5519 <element name="getMechPart" function="true" type="MechPart"> 5520 <arguments> 5521 <argument name="index" type="integer"/> 5522 </arguments> 5523 </element> 5524 <element name="getMechJoint" function="true" type="MechJoint"> 5525 <arguments> 5526 <argument name="index" type="integer"/> 5527 </arguments> 5528 </element> 5529 <element name="getNeuro" function="true" type="Neuro"> 5530 <arguments> 5531 <argument name="index" type="integer"/> 5532 </arguments> 5533 </element> 5534 <element name="selfmask" type="integer" min="0" max="2147483647" default="0"/> 5535 <element name="othermask" type="integer" min="0" max="2147483647" default="0"/> 5536 <element name="currentGeometryAsF0" function="true" type="string"><arguments/></element> 5537 <element name="geno" type="Geno"> 5538 <description><![CDATA[Source genotype for this creature]]></description> 5539 </element> 5330 5540 <element name="model" type="Model"> 5331 5541 <description><![CDATA[Source Model for this creature]]></description> 5332 5542 </element> 5333 <element name="name" type="string"/> 5334 <element name="nnenabled" type="integer" min="0" max="1"/> 5335 <element name="numjoints" type="integer"/> 5336 <element name="numneurons" type="integer"/> 5337 <element name="numparts" type="integer"/> 5338 <element name="orient" type="Orient"> 5339 <description><![CDATA[By convention, the orientation of the creature is equal to the orientation of its first Part]]></description> 5340 </element> 5341 <element name="othermask" type="integer" min="0" max="2147483647" default="0"/> 5342 <element name="perf" type="integer" min="0" max="2"> 5343 <description><![CDATA[Initial value of this property is taken from Population.enableperf]]></description> 5344 </element> 5345 <element name="population" type="untyped"/> 5346 <element name="pos_x" type="float"> 5347 <description><![CDATA[(pos_x,pos_y,pos_z) is the point of minimal coordinates ("bottom left corner") of the creature, including imaginary Part sizes (Part.s, usually 1.0). See also: Creature.moveAbs]]></description> 5348 </element> 5349 <element name="pos_y" type="float"> 5350 <description><![CDATA[See Creature.pos_x]]></description> 5351 </element> 5352 <element name="pos_z" type="float"> 5353 <description><![CDATA[See Creature.pos_x]]></description> 5354 </element> 5355 <element name="selfcol" type="integer" min="0" max="1"> 5356 <description><![CDATA[Enable/disable detection of self-collisions (within a creature body). They can only occur when using the ODE simulation engine. If enabled, the creature will have its sticks collide during lifespan.]]></description> 5357 </element> 5358 <element name="selfmask" type="integer" min="0" max="2147483647" default="0"/> 5543 <element name="liveModel" type="Model"> 5544 <description><![CDATA[A Model object that is a copy of the current (temporary) geometry of this creature]]></description> 5545 </element> 5546 <element name="uid" type="string"/> 5359 5547 <element name="signals" type="CreatureSignals"/> 5360 <element name="size_x" type="float">5361 <description><![CDATA[(size_x,size_y,size_z) are dimensions of the axis-aligned bounding box of the creature, including the imaginary part sizes (Part.s, usually 1.0). A creature consisting of a single default Part has the size of (2.0,2.0,2.0) - twice the Part.s value (like a sphere diameter is twice its radius).5362 See also: Creature.moveAbs]]></description>5363 </element>5364 <element name="size_y" type="float">5365 <description><![CDATA[See Creature.size_x]]></description>5366 </element>5367 <element name="size_z" type="float">5368 <description><![CDATA[See Creature.size_x]]></description>5369 </element>5370 <element name="uid" type="string"/>5371 <element name="user1" type="untyped"/>5372 <element name="user2" type="untyped"/>5373 <element name="user3" type="untyped"/>5374 <element name="velocity" type="float"/>5375 <element name="vertpos" type="float"/>5376 <element name="vertvel" type="float"/>5377 5548 <element name="boundingBoxCollisions" function="true" type="integer"> 5378 5549 <description><![CDATA[Checks approximate collisions for the selected creature. … … 5383 5554 </arguments> 5384 5555 </element> 5385 <element name="currentGeometryAsF0" function="true" type="string"><arguments/></element>5386 <element name="getJoint" function="true" type="Joint">5387 <arguments>5388 <argument name="index" type="integer"/>5389 </arguments>5390 </element>5391 <element name="getMechJoint" function="true" type="MechJoint">5392 <arguments>5393 <argument name="index" type="integer"/>5394 </arguments>5395 </element>5396 <element name="getMechPart" function="true" type="MechPart">5397 <arguments>5398 <argument name="index" type="integer"/>5399 </arguments>5400 </element>5401 <element name="getNeuro" function="true" type="Neuro">5402 <arguments>5403 <argument name="index" type="integer"/>5404 </arguments>5405 </element>5406 <element name="getNeuroDef" function="true" type="NeuroDef">5407 <arguments>5408 <argument name="index" type="integer"/>5409 </arguments>5410 </element>5411 <element name="getPart" function="true" type="Part">5412 <arguments>5413 <argument name="index" type="integer"/>5414 </arguments>5415 </element>5416 <element name="localToWorld" function="true" type="XYZ">5417 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description>5418 <arguments>5419 <argument name="x" type="float"/>5420 <argument name="y" type="float"/>5421 <argument name="z" type="float"/>5422 </arguments>5423 </element>5424 <element name="move" function="true" type="void">5425 <description><![CDATA[Shift the creature by a given vector.]]></description>5426 <arguments>5427 <argument name="x" type="float"/>5428 <argument name="y" type="float"/>5429 <argument name="z" type="float"/>5430 </arguments>5431 </element>5432 <element name="moveAbs" function="true" type="void">5433 <description><![CDATA[Moves the creature so that its origin (pos_x,pos_y,pos_z) is placed at the given location. The origin is the point of minimal coordinates ("bottom left corner"), including imaginary part sizes (Part.s, usually 1.0).5434 Assuming a simple single-stick creature "X" having parts at (0,0,0) and (1,0,0),5435 5436 origin (pos_x,pos_y,pos_z) = (-1,-1,-1)5437 size (size_x,size_y,size_z) = (3,2,2)5438 5439 The following example places the bottom of a creature at a given location (x,y,z):5440 Creature.moveAbs(x-(Creature.size_x/2),y-(Creature.size_y/2),z-1.0)5441 (assuming that the part size is 1.0)]]></description>5442 <arguments>5443 <argument name="x" type="float"/>5444 <argument name="y" type="float"/>5445 <argument name="z" type="float"/>5446 </arguments>5447 </element>5448 <element name="moveLocal" function="true" type="void">5449 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description>5450 <arguments>5451 <argument name="x" type="float"/>5452 <argument name="y" type="float"/>5453 <argument name="z" type="float"/>5454 </arguments>5455 </element>5456 <element name="rotate" function="true" type="void">5457 <description><![CDATA[Rotate the creature around X, Y and Z axes. Should only be used immediately after creating a new creature (before the first simulation step is performed for this creature), otherwise further simulation can be disturbed.]]></description>5458 <arguments>5459 <argument name="x" type="float"/>5460 <argument name="y" type="float"/>5461 <argument name="z" type="float"/>5462 </arguments>5463 </element>5464 <element name="rotateLocal" function="true" type="void">5465 <description><![CDATA[Rotate the creature around (local) X, Y and Z axes. Should only be used immediately after creating a new creature (before the first simulation step is performed for this creature), otherwise further simulation can be disturbed.]]></description>5466 <arguments>5467 <argument name="x" type="float"/>5468 <argument name="y" type="float"/>5469 <argument name="z" type="float"/>5470 </arguments>5471 </element>5472 <element name="selfcolstate" function="true" type="integer">5473 <description><![CDATA[Current self-collision state. In old versions this was a field, not a function.]]></description>5474 <arguments/></element>5475 <element name="worldToLocal" function="true" type="XYZ">5476 <description><![CDATA[Local coordinates are measured with respect to the position and orientation of the first Part]]></description>5477 <arguments>5478 <argument name="x" type="float"/>5479 <argument name="y" type="float"/>5480 <argument name="z" type="float"/>5481 </arguments>5482 </element>5483 5556 </type> 5484 5557 <type name="Element" context="Visual style definition"> … … 5489 5562 <element name="node" type="SSGNode"/> 5490 5563 <element name="shadow" type="float"/> 5491 <element name="useCreature" function="true"/> 5564 <element name="useMechPart" function="true"/> 5565 <element name="useMechJoint" function="true"/> 5566 <element name="useMechJointPart1" function="true"/> 5567 <element name="useMechJointPart2" function="true"/> 5568 <element name="usePart" function="true"/> 5492 5569 <element name="useJoint" function="true"/> 5493 5570 <element name="useJointPart1" function="true"/> 5494 5571 <element name="useJointPart2" function="true"/> 5495 <element name="useMechJoint" function="true"/> 5496 <element name="useMechJointPart1" function="true"/> 5497 <element name="useMechJointPart2" function="true"/> 5498 <element name="useMechPart" function="true"/> 5572 <element name="useNeuro" function="true"/> 5573 <element name="useNeuroPart" function="true"/> 5574 <element name="useNeuroJoint" function="true"/> 5499 5575 <element name="useModel" function="true"/> 5500 <element name="useNeuro" function="true"/> 5501 <element name="useNeuroJoint" function="true"/> 5502 <element name="useNeuroPart" function="true"/> 5503 <element name="usePart" function="true"/> 5576 <element name="useCreature" function="true"/> 5504 5577 </type> 5505 5578 <type name="GeomBuilder" context="Visual style definition"> … … 5507 5580 <element name="code" type="string"/> 5508 5581 <element name="currentNode" type="SSGNode"/> 5582 <element name="rootNode" type="SSGNode"/> 5583 <element name="updatingNode" type="SSGNode"/> 5509 5584 <element name="defaultStyle" type="string"/> 5510 5585 <element name="matrix00" type="float"/> … … 5524 5599 <element name="matrix32" type="float"/> 5525 5600 <element name="matrix33" type="float"/> 5526 <element name="rootNode" type="SSGNode"/> 5527 <element name="updatingNode" type="SSGNode"/> 5601 <element name="addTransform" function="true"> 5602 <description><![CDATA[create the transform node as a child of the current node and make it the new current node.]]></description> 5603 </element> 5604 <element name="addBranch" function="true"> 5605 <description><![CDATA[create the branch node as a child of the current node and make it the new current node]]></description> 5606 </element> 5528 5607 <element name="add" function="true" type="void"> 5529 5608 <description><![CDATA[add a child node to the current node]]></description> … … 5532 5611 </arguments> 5533 5612 </element> 5534 <element name="addBranch" function="true"> 5535 <description><![CDATA[create the branch node as a child of the current node and make it the new current node]]></description> 5536 </element> 5537 <element name="addTransform" function="true"> 5538 <description><![CDATA[create the transform node as a child of the current node and make it the new current node.]]></description> 5539 </element> 5540 <element name="dump" function="true" type="void"> 5541 <arguments> 5542 <argument name="node" type="SSGNode"/> 5543 <argument name="level" type="integer"/> 5544 </arguments> 5545 </element> 5546 <element name="getBranch" function="true" type="integer"> 5547 <arguments> 5548 <argument name="branch node" type="SSGNode"/> 5549 <argument name="branch index" type="integer"/> 5550 </arguments> 5551 </element> 5613 <element name="matrixReset" function="true"/> 5552 5614 <element name="matrixMove" function="true" type="void"> 5553 5615 <arguments> … … 5557 5619 </arguments> 5558 5620 </element> 5559 <element name="matrixMove1" function="true" type="void"> 5560 <description><![CDATA[MechPart.pos can be used here]]></description> 5561 <arguments> 5562 <argument name="xyz" type="integer"/> 5563 </arguments> 5564 </element> 5565 <element name="matrixOrient" function="true" type="void"> 5621 <element name="matrixScale" function="true" type="void"> 5566 5622 <arguments> 5567 5623 <argument name="x" type="float"/> … … 5570 5626 </arguments> 5571 5627 </element> 5572 <element name="matrixOrient1" function="true" type="void"> 5573 <description><![CDATA[MechPart.orient can be used here]]></description> 5574 <arguments> 5575 <argument name="xyz" type="integer"/> 5576 </arguments> 5577 </element> 5578 <element name="matrixReset" function="true"/> 5579 <element name="matrixRotate" function="true" type="void"> 5628 <element name="matrixOrient" function="true" type="void"> 5580 5629 <arguments> 5581 5630 <argument name="x" type="float"/> … … 5584 5633 </arguments> 5585 5634 </element> 5586 <element name="matrixRotate1" function="true" type="void"> 5587 <arguments> 5588 <argument name="xyz" type="integer"/> 5589 </arguments> 5590 </element> 5591 <element name="matrixScale" function="true" type="void"> 5635 <element name="matrixRotate" function="true" type="void"> 5592 5636 <arguments> 5593 5637 <argument name="x" type="float"/> … … 5596 5640 </arguments> 5597 5641 </element> 5642 <element name="matrixRotate1" function="true" type="void"> 5643 <arguments> 5644 <argument name="xyz" type="integer"/> 5645 </arguments> 5646 </element> 5647 <element name="matrixMove1" function="true" type="void"> 5648 <description><![CDATA[MechPart.pos can be used here]]></description> 5649 <arguments> 5650 <argument name="xyz" type="integer"/> 5651 </arguments> 5652 </element> 5653 <element name="matrixOrient1" function="true" type="void"> 5654 <description><![CDATA[MechPart.orient can be used here]]></description> 5655 <arguments> 5656 <argument name="xyz" type="integer"/> 5657 </arguments> 5658 </element> 5598 5659 <element name="setMatrix" function="true" type="void"> 5599 5660 <description><![CDATA[copy current matrix into specified node]]></description> … … 5602 5663 </arguments> 5603 5664 </element> 5665 <element name="getBranch" function="true" type="integer"> 5666 <arguments> 5667 <argument name="branch node" type="SSGNode"/> 5668 <argument name="branch index" type="integer"/> 5669 </arguments> 5670 </element> 5671 <element name="dump" function="true" type="void"> 5672 <arguments> 5673 <argument name="node" type="SSGNode"/> 5674 <argument name="level" type="integer"/> 5675 </arguments> 5676 </element> 5604 5677 </type> 5605 5678 <type name="GL" context="Visual style definition"> 5606 5679 <description><![CDATA[OpenGL constants used in GeomBuilder and Material functions.]]></description> 5607 <element name="ALPHA_TEST" type="integer"/> 5608 <element name="AMBIENT" type="integer"/> 5609 <element name="AMBIENT_AND_DIFFUSE" type="integer"/> 5610 <element name="BLEND" type="integer"/> 5611 <element name="COLOR_MATERIAL" type="integer"/> 5612 <element name="CULL_FACE" type="integer"/> 5613 <element name="DIFFUSE" type="integer"/> 5614 <element name="EMISSION" type="integer"/> 5615 <element name="LIGHTING" type="integer"/> 5680 <element name="POINTS" type="integer"/> 5681 <element name="LINES" type="integer"/> 5616 5682 <element name="LINE_LOOP" type="integer"/> 5617 5683 <element name="LINE_STRIP" type="integer"/> 5618 <element name="LINES" type="integer"/> 5619 <element name="POINTS" type="integer"/> 5684 <element name="TRIANGLES" type="integer"/> 5685 <element name="TRIANGLE_STRIP" type="integer"/> 5686 <element name="TRIANGLE_FAN" type="integer"/> 5687 <element name="QUADS" type="integer"/> 5620 5688 <element name="QUAD_STRIP" type="integer"/> 5621 <element name="QUADS" type="integer"/> 5689 <element name="TEXTURE_2D" type="integer"/> 5690 <element name="CULL_FACE" type="integer"/> 5691 <element name="COLOR_MATERIAL" type="integer"/> 5692 <element name="BLEND" type="integer"/> 5693 <element name="ALPHA_TEST" type="integer"/> 5694 <element name="LIGHTING" type="integer"/> 5695 <element name="AMBIENT" type="integer"/> 5696 <element name="DIFFUSE" type="integer"/> 5697 <element name="AMBIENT_AND_DIFFUSE" type="integer"/> 5622 5698 <element name="SPECULAR" type="integer"/> 5623 <element name="TEXTURE_2D" type="integer"/> 5624 <element name="TRIANGLE_FAN" type="integer"/> 5625 <element name="TRIANGLE_STRIP" type="integer"/> 5626 <element name="TRIANGLES" type="integer"/> 5699 <element name="EMISSION" type="integer"/> 5627 5700 </type> 5628 5701 <type name="j" context="Visual style definition"> 5702 <element name="p1" type="integer" min="-1" max="999999" default="-1"/> 5703 <element name="p2" type="integer" min="-1" max="999999" default="-1"/> 5704 <element name="rx" type="float"/> 5705 <element name="ry" type="float"/> 5706 <element name="rz" type="float"/> 5629 5707 <element name="dx" type="float" min="-2" max="2" default="0.0"/> 5630 5708 <element name="dy" type="float" min="-2" max="2" default="0.0"/> 5631 5709 <element name="dz" type="float" min="-2" max="2" default="0.0"/> 5710 <element name="sh" type="integer" min="0" max="1" default="0"/> 5711 <element name="stif" type="float" min="0" max="1" default="1.0"/> 5712 <element name="rotstif" type="float" min="0" max="1" default="1.0"/> 5713 <element name="stam" type="float" min="0" max="1" default="0.25"/> 5632 5714 <element name="i" type="string"/> 5633 <element name="p1" type="integer" min="-1" max="999999" default="-1"/> 5634 <element name="p2" type="integer" min="-1" max="999999" default="-1"/> 5635 <element name="rotstif" type="float" min="0" max="1" default="1.0"/> 5636 <element name="rx" type="float"/> 5637 <element name="ry" type="float"/> 5638 <element name="rz" type="float"/> 5639 <element name="sh" type="integer" min="0" max="1" default="0"/> 5640 <element name="stam" type="float" min="0" max="1" default="0.25"/> 5641 <element name="stif" type="float" min="0" max="1" default="1.0"/> 5715 <element name="Vstyle" type="string"/> 5716 <element name="vr" type="float" min="0" max="1" default="0.5"/> 5717 <element name="vg" type="float" min="0" max="1" default="0.5"/> 5642 5718 <element name="vb" type="float" min="0" max="1" default="0.5"/> 5643 <element name="vg" type="float" min="0" max="1" default="0.5"/>5644 <element name="vr" type="float" min="0" max="1" default="0.5"/>5645 <element name="Vstyle" type="string"/>5646 5719 </type> 5647 5720 <type name="Loader" context="Visual style definition"> … … 5657 5730 <type name="Material" context="Visual style definition"> 5658 5731 <description><![CDATA[Manipulate 3d objects surface properties (Material objects can be associated with geometry nodes).]]></description> 5732 <element name="new" function="true"/> 5733 <element name="diffuse" type="integer"/> 5659 5734 <element name="ambient" type="integer"/> 5735 <element name="specular" type="integer"/> 5736 <element name="emission" type="integer"/> 5737 <element name="shininess" type="float"/> 5660 5738 <element name="colormat" type="integer"/> 5661 <element name="diffuse" type="integer"/> 5662 <element name="emission" type="integer"/> 5739 <element name="translucent" type="integer"/> 5740 <element name="setSmooth" function="true"/> 5741 <element name="setFlat" function="true"/> 5742 <element name="enable" function="true"/> 5743 <element name="disable" function="true"/> 5744 <element name="care" function="true"/> 5745 <element name="dontcare" function="true"/> 5746 <element name="texture" type="string"/> 5663 5747 <element name="object" type="Object"/> 5664 <element name="shininess" type="float"/>5665 <element name="specular" type="integer"/>5666 <element name="texture" type="string"/>5667 <element name="translucent" type="integer"/>5668 <element name="care" function="true"/>5669 <element name="disable" function="true"/>5670 <element name="dontcare" function="true"/>5671 <element name="enable" function="true"/>5672 <element name="new" function="true"/>5673 <element name="setFlat" function="true"/>5674 <element name="setSmooth" function="true"/>5675 5748 </type> 5676 5749 <type name="MechJoint" context="Visual style definition"> 5677 5750 <description><![CDATA[Current joint properties during the simulation]]></description> 5678 <element name="absorient" type="Orient"/> 5679 <element name="calcorient" type="Orient"/> 5751 <element name="rx" type="float"/> 5752 <element name="ry" type="float"/> 5753 <element name="rz" type="float"/> 5680 5754 <element name="dx" type="float"/> 5681 5755 <element name="dy" type="float"/> 5682 5756 <element name="dz" type="float"/> 5757 <element name="orient" type="Orient"/> 5758 <element name="absorient" type="Orient"/> 5759 <element name="calcorient" type="Orient"/> 5683 5760 <element name="length" type="float"/> 5761 <element name="stif" type="float"/> 5762 <element name="rotstif" type="float"/> 5763 <element name="stress" type="float"/> 5764 <element name="rotstress" type="float"/> 5765 </type> 5766 <type name="MechPart" context="Visual style definition"> 5767 <description><![CDATA[Current part properties during the simulation]]></description> 5768 <element name="x" type="float"/> 5769 <element name="y" type="float"/> 5770 <element name="z" type="float"/> 5771 <element name="pos" type="XYZ"/> 5684 5772 <element name="orient" type="Orient"/> 5685 <element name="rotstif" type="float"/> 5686 <element name="rotstress" type="float"/> 5773 <element name="m" type="float"/> 5774 <element name="s" type="float"/> 5775 <element name="vol" type="float"/> 5776 <element name="fr" type="float"/> 5777 </type> 5778 <type name="n" context="Visual style definition"> 5779 <element name="p" type="integer" min="-1" max="999999" default="-1"/> 5780 <element name="j" type="integer" min="-1" max="999999" default="-1"/> 5781 <element name="d" type="string"/> 5782 <element name="i" type="string"/> 5783 <element name="Vstyle" type="string"/> 5784 <element name="getInputCount" type="integer"/> 5785 <element name="getInputNeuroDef" function="true" type="NeuroDef"> 5786 <arguments> 5787 <argument type="integer"/> 5788 </arguments> 5789 </element> 5790 <element name="getInputNeuroIndex" function="true" type="integer"> 5791 <arguments> 5792 <argument type="integer"/> 5793 </arguments> 5794 </element> 5795 <element name="getInputWeight" function="true" type="float"> 5796 <arguments> 5797 <argument type="integer"/> 5798 </arguments> 5799 </element> 5800 <element name="classObject" type="NeuroClass"/> 5801 <element name="class" type="string"/> 5802 <element name="state" type="float"/> 5803 </type> 5804 <type name="p" context="Visual style definition"> 5805 <element name="x" type="float"/> 5806 <element name="y" type="float"/> 5807 <element name="z" type="float"/> 5808 <element name="m" type="float" min="0.1" max="999" default="1.0"/> 5809 <element name="sh" type="integer" min="0" max="3" default="0"/> 5810 <element name="s" type="float" min="0.1" max="10" default="1.0"/> 5811 <element name="sx" type="float" min="0.001" max="1000" default="1.0"/> 5812 <element name="sy" type="float" min="0.001" max="1000" default="1.0"/> 5813 <element name="sz" type="float" min="0.001" max="1000" default="1.0"/> 5814 <element name="h" type="float" min="0" max="1" default="0.0"/> 5815 <element name="dn" type="float" min="0.2" max="5" default="1.0"/> 5816 <element name="fr" type="float" min="0" max="4" default="0.4"/> 5817 <element name="ing" type="float" min="0" max="1" default="0.25"/> 5818 <element name="as" type="float" min="0" max="1" default="0.25"/> 5687 5819 <element name="rx" type="float"/> 5688 5820 <element name="ry" type="float"/> 5689 5821 <element name="rz" type="float"/> 5690 <element name="stif" type="float"/>5691 <element name="stress" type="float"/>5692 </type>5693 <type name="MechPart" context="Visual style definition">5694 <description><![CDATA[Current part properties during the simulation]]></description>5695 <element name="fr" type="float"/>5696 <element name="m" type="float"/>5697 <element name="orient" type="Orient"/>5698 <element name="pos" type="XYZ"/>5699 <element name="s" type="float"/>5700 <element name="vol" type="float"/>5701 <element name="x" type="float"/>5702 <element name="y" type="float"/>5703 <element name="z" type="float"/>5704 </type>5705 <type name="n" context="Visual style definition">5706 <element name="class" type="string"/>5707 <element name="classObject" type="NeuroClass"/>5708 <element name="d" type="string"/>5709 <element name="getInputCount" type="integer"/>5710 5822 <element name="i" type="string"/> 5711 <element name="j" type="integer" min="-1" max="999999" default="-1"/>5712 <element name="p" type="integer" min="-1" max="999999" default="-1"/>5713 <element name="state" type="float"/>5714 5823 <element name="Vstyle" type="string"/> 5715 <element name="getInputNeuroDef" function="true" type="NeuroDef"> 5716 <arguments> 5717 <argument type="integer"/> 5718 </arguments> 5719 </element> 5720 <element name="getInputNeuroIndex" function="true" type="integer"> 5721 <arguments> 5722 <argument type="integer"/> 5723 </arguments> 5724 </element> 5725 <element name="getInputWeight" function="true" type="float"> 5726 <arguments> 5727 <argument type="integer"/> 5728 </arguments> 5729 </element> 5730 </type> 5731 <type name="p" context="Visual style definition"> 5732 <element name="as" type="float" min="0" max="1" default="0.25"/> 5733 <element name="dn" type="float" min="0.2" max="5" default="1.0"/> 5734 <element name="fr" type="float" min="0" max="4" default="0.4"/> 5735 <element name="h" type="float" min="0" max="1" default="0.0"/> 5736 <element name="i" type="string"/> 5737 <element name="ing" type="float" min="0" max="1" default="0.25"/> 5738 <element name="m" type="float" min="0.1" max="999" default="1.0"/> 5739 <element name="rx" type="float"/> 5740 <element name="ry" type="float"/> 5741 <element name="rz" type="float"/> 5742 <element name="s" type="float" min="0.1" max="10" default="1.0"/> 5743 <element name="sh" type="integer" min="0" max="3" default="0"/> 5744 <element name="sx" type="float" min="0.001" max="1000" default="1.0"/> 5745 <element name="sy" type="float" min="0.001" max="1000" default="1.0"/> 5746 <element name="sz" type="float" min="0.001" max="1000" default="1.0"/> 5824 <element name="vs" type="float" min="0.05" max="0.7" default="0.2"/> 5825 <element name="vr" type="float" min="0" max="1" default="0.5"/> 5826 <element name="vg" type="float" min="0" max="1" default="0.5"/> 5747 5827 <element name="vb" type="float" min="0" max="1" default="0.5"/> 5748 <element name="vg" type="float" min="0" max="1" default="0.5"/>5749 <element name="vr" type="float" min="0" max="1" default="0.5"/>5750 <element name="vs" type="float" min="0.05" max="0.7" default="0.2"/>5751 <element name="Vstyle" type="string"/>5752 <element name="x" type="float"/>5753 <element name="y" type="float"/>5754 <element name="z" type="float"/>5755 5828 </type> 5756 5829 <type name="Scene" context="Visual style definition"> … … 5760 5833 </type> 5761 5834 <type name="VertexBuilder" context="Visual style definition"> 5762 <element name="material" type="Object"/> 5835 <element name="new" function="true" type="void"> 5836 <arguments> 5837 <argument name="type" type="integer"/> 5838 </arguments> 5839 </element> 5840 <element name="newPolygon" function="true"/> 5841 <element name="newTriangleFan" function="true"/> 5842 <element name="newTriangles" function="true"/> 5843 <element name="newTriangleStrip" function="true"/> 5844 <element name="newQuads" function="true"/> 5845 <element name="newQuadStrip" function="true"/> 5846 <element name="newPoints" function="true"/> 5847 <element name="newLines" function="true"/> 5848 <element name="newLineLoop" function="true"/> 5849 <element name="newLineStrip" function="true"/> 5850 <element name="addVertex" function="true"/> 5851 <element name="addNormal" function="true"/> 5852 <element name="addNormal_1" function="true"> 5853 <description><![CDATA[use addNormal instead of this function]]></description> 5854 </element> 5855 <element name="addCalculatedNormal" function="true"> 5856 <description><![CDATA[calculate the normal vector from 3 coordinates. integer arguments are the vertices' indices. 0,1,2... = first, second, third vertex, -1,-2,-3,... = last, last-1, last-2 vertex]]></description> 5857 </element> 5858 <element name="addColor" function="true"/> 5859 <element name="addTexCoord" function="true"/> 5860 <element name="genTexCoordsXY" function="true"/> 5861 <element name="genTexCoordsYZ" function="true"/> 5862 <element name="genTexCoordsXZ" function="true"/> 5863 <element name="genTexCoords" function="true"/> 5763 5864 <element name="node" type="SSGNode"> 5764 5865 <description><![CDATA[This field returns the geometry node for use in GeomBuilder. You have to set all relevant geometry properties before using this field. The usual sequence: … … 5767 5868 3. Use the resulting node ( GeomBuilder.add(VertexBuilder.node) )]]></description> 5768 5869 </element> 5870 <element name="material" type="Object"/> 5769 5871 <element name="twosided" type="integer" min="0" max="1"/> 5770 <element name="addCalculatedNormal" function="true">5771 <description><![CDATA[calculate the normal vector from 3 coordinates. integer arguments are the vertices' indices. 0,1,2... = first, second, third vertex, -1,-2,-3,... = last, last-1, last-2 vertex]]></description>5772 </element>5773 <element name="addColor" function="true"/>5774 <element name="addNormal" function="true"/>5775 <element name="addNormal_1" function="true">5776 <description><![CDATA[use addNormal instead of this function]]></description>5777 </element>5778 <element name="addTexCoord" function="true"/>5779 <element name="addVertex" function="true"/>5780 <element name="genTexCoords" function="true"/>5781 <element name="genTexCoordsXY" function="true"/>5782 <element name="genTexCoordsXZ" function="true"/>5783 <element name="genTexCoordsYZ" function="true"/>5784 <element name="new" function="true" type="void">5785 <arguments>5786 <argument name="type" type="integer"/>5787 </arguments>5788 </element>5789 <element name="newLineLoop" function="true"/>5790 <element name="newLines" function="true"/>5791 <element name="newLineStrip" function="true"/>5792 <element name="newPoints" function="true"/>5793 <element name="newPolygon" function="true"/>5794 <element name="newQuads" function="true"/>5795 <element name="newQuadStrip" function="true"/>5796 <element name="newTriangleFan" function="true"/>5797 <element name="newTriangles" function="true"/>5798 <element name="newTriangleStrip" function="true"/>5799 5872 </type> 5800 5873 <type name="VisParams" context="Visual style definition"> 5801 <element name="axes" type="integer" min="0" max="1" default="0"> 5802 <description><![CDATA[]]></description> 5803 </element> 5804 <element name="bbox" type="integer" min="0" max="1" default="1"> 5805 <description><![CDATA[]]></description> 5806 </element> 5807 <element name="bgcolor" type="integer" min="0" max="16777215" default="16764040"> 5808 <description><![CDATA[]]></description> 5809 </element> 5874 <element name="clear" function="true"/> 5875 <element name="add" function="true"/> 5876 <element name="remove" function="true"/> 5877 <element name="addGroup" function="true"/> 5878 <element name="removeGroup" function="true"/> 5810 5879 <element name="changedProperty" type="integer"/> 5811 5880 <element name="changedPropertyId" type="string"/> 5881 <element name="worldpan" type="integer" min="0" max="3" default="2"> 5882 <description><![CDATA[]]></description> 5883 </element> 5884 <element name="modelpan" type="integer" min="0" max="3" default="1"> 5885 <description><![CDATA[]]></description> 5886 </element> 5887 <element name="bgcolor" type="integer" min="0" max="16777215" default="16764040"> 5888 <description><![CDATA[]]></description> 5889 </element> 5890 <element name="bbox" type="integer" min="0" max="1" default="1"> 5891 <description><![CDATA[]]></description> 5892 </element> 5812 5893 <element name="joint_width" type="integer" min="10" max="150" default="100"> 5813 5894 <description><![CDATA[]]></description> 5814 5895 </element> 5815 <element name="modelpan" type="integer" min="0" max="3" default="1">5816 <description><![CDATA[]]></description>5817 </element>5818 5896 <element name="shadows" type="integer" min="0" max="1" default="1"> 5897 <description><![CDATA[]]></description> 5898 </element> 5899 <element name="axes" type="integer" min="0" max="1" default="0"> 5819 5900 <description><![CDATA[]]></description> 5820 5901 </element> … … 5826 5907 Use scripting and the Symmetry class to compute symmetry accurately.]]></description> 5827 5908 </element> 5828 <element name="worldpan" type="integer" min="0" max="3" default="2">5829 <description><![CDATA[]]></description>5830 </element>5831 <element name="add" function="true"/>5832 <element name="addGroup" function="true"/>5833 <element name="clear" function="true"/>5834 <element name="remove" function="true"/>5835 <element name="removeGroup" function="true"/>5836 5909 </type> 5837 5910 <type name="VisualModel" context="Visual style definition"> 5838 5911 <description><![CDATA[Visual representation of the Creature object.]]></description> 5912 <element name="rootNode" type="SSGNode"/> 5913 <element name="partshadow" type="float"/> 5914 <element name="jointshadow" type="float"/> 5915 <element name="style" type="string"> 5916 <description><![CDATA[visual style applied to this object]]></description> 5917 </element> 5839 5918 <element name="args" type="string"> 5840 5919 <description><![CDATA[style parameters: Vstyle=name(args)]]></description> 5841 </element>5842 <element name="color" type="integer">5843 <description><![CDATA[0xBBGGRR, 0x808080=normal, 0x000000=black, 0xffffff=extra bright]]></description>5844 </element>5845 <element name="jointshadow" type="float"/>5846 <element name="partshadow" type="float"/>5847 <element name="rootNode" type="SSGNode"/>5848 <element name="style" type="string">5849 <description><![CDATA[visual style applied to this object]]></description>5850 5920 </element> 5851 5921 <element name="getArg" function="true" type="string"> … … 5857 5927 </arguments> 5858 5928 </element> 5929 <element name="color" type="integer"> 5930 <description><![CDATA[0xBBGGRR, 0x808080=normal, 0x000000=black, 0xffffff=extra bright]]></description> 5931 </element> 5859 5932 </type> 5860 5933 <type name="VisualStyle" context="Visual style definition"> 5861 <element name="axes" type="integer" min="0" max="1" default="0"> 5862 <description><![CDATA[]]></description> 5863 </element> 5864 <element name="bbox" type="integer" min="0" max="1" default="1"> 5865 <description><![CDATA[]]></description> 5866 </element> 5867 <element name="bgcolor" type="integer" min="0" max="16777215" default="16764040"> 5868 <description><![CDATA[]]></description> 5869 </element> 5934 <element name="style" type="string"/> 5935 <element name="name" type="string"/> 5936 <element name="info" type="string"/> 5937 <element name="code" type="string"/> 5938 <element name="streload" function="true"/> 5939 <element name="rebuild" function="true"/> 5940 <element name="tex" type="integer" min="0" max="2" default="1"/> 5941 <element name="smooth" type="integer" min="0" max="1" default="1"/> 5942 <element name="neurons" type="integer" min="0" max="1" default="1"/> 5943 <element name="clear" function="true"/> 5944 <element name="add" function="true"/> 5945 <element name="remove" function="true"/> 5946 <element name="addGroup" function="true"/> 5947 <element name="removeGroup" function="true"/> 5870 5948 <element name="changedProperty" type="integer"/> 5871 5949 <element name="changedPropertyId" type="string"/> 5872 <element name="code" type="string"/> 5873 <element name="info" type="string"/> 5950 <element name="worldpan" type="integer" min="0" max="3" default="2"> 5951 <description><![CDATA[]]></description> 5952 </element> 5953 <element name="modelpan" type="integer" min="0" max="3" default="1"> 5954 <description><![CDATA[]]></description> 5955 </element> 5956 <element name="bgcolor" type="integer" min="0" max="16777215" default="16764040"> 5957 <description><![CDATA[]]></description> 5958 </element> 5959 <element name="bbox" type="integer" min="0" max="1" default="1"> 5960 <description><![CDATA[]]></description> 5961 </element> 5874 5962 <element name="joint_width" type="integer" min="10" max="150" default="100"> 5875 5963 <description><![CDATA[]]></description> 5876 5964 </element> 5877 <element name="modelpan" type="integer" min="0" max="3" default="1">5878 <description><![CDATA[]]></description>5879 </element>5880 <element name="name" type="string"/>5881 <element name="neurons" type="integer" min="0" max="1" default="1"/>5882 5965 <element name="shadows" type="integer" min="0" max="1" default="1"> 5883 5966 <description><![CDATA[]]></description> 5884 5967 </element> 5968 <element name="axes" type="integer" min="0" max="1" default="0"> 5969 <description><![CDATA[]]></description> 5970 </element> 5885 5971 <element name="shownames" type="integer" min="0" max="1" default="0"> 5886 5972 <description><![CDATA[]]></description> 5887 5973 </element> 5888 <element name="smooth" type="integer" min="0" max="1" default="1"/>5889 <element name="style" type="string"/>5890 5974 <element name="symmetryplane" type="integer" min="0" max="1" default="0"> 5891 5975 <description><![CDATA[Displays a guess of the symmetry plane (may take a long time to compue for complex bodies). 5892 5976 Use scripting and the Symmetry class to compute symmetry accurately.]]></description> 5893 5977 </element> 5894 <element name="tex" type="integer" min="0" max="2" default="1"/>5895 <element name="worldpan" type="integer" min="0" max="3" default="2">5896 <description><![CDATA[]]></description>5897 </element>5898 <element name="add" function="true"/>5899 <element name="addGroup" function="true"/>5900 <element name="clear" function="true"/>5901 <element name="rebuild" function="true"/>5902 <element name="remove" function="true"/>5903 <element name="removeGroup" function="true"/>5904 <element name="streload" function="true"/>5905 5978 </type> 5906 5979 <type name="World" context="Visual style definition"> 5907 5980 <description><![CDATA[Environment properties.]]></description> 5908 <element name="nnspeed" type="float" min="0" max="1000" default="1.0"> 5909 <description><![CDATA[Number of neural network simulation steps in each physics simulation step]]></description> 5910 </element> 5911 <element name="signals" type="WorldSignals"/> 5912 <element name="simtype" type="integer" min="0" max="1" default="0"> 5913 <description><![CDATA[MechaStick is a fast and simple primary Framsticks simulation engine. 5914 ODE is Open Dynamics Engine by Russel Smith et al. 5915 5916 NOTE: switching between simulation engines causes removal of all objects in the world (e.g. creatures).]]></description> 5917 </element> 5918 <element name="wrldbnd" type="integer" min="0" max="2" default="1"/> 5919 <element name="wrldg" type="float" min="0" max="10" default="1.0"> 5920 <description><![CDATA[You can adjust gravity for your experiments. 5921 The "official" setting used to evaluate and compare creatures is 1.]]></description> 5981 <element name="wrldtyp" type="integer" min="0" max="2" default="0"/> 5982 <element name="wrldsiz" type="float" min="10" max="1000" default="20.0"> 5983 <description><![CDATA[Side length of the world]]></description> 5922 5984 </element> 5923 5985 <element name="wrldmap" type="string"> … … 5931 5993 See also the WorldMap object.]]></description> 5932 5994 </element> 5933 <element name="wrldsiz" type="float" min="10" max="1000" default="20.0">5934 <description><![CDATA[Side length of the world]]></description>5935 </element>5936 <element name="wrldtyp" type="integer" min="0" max="2" default="0"/>5937 5995 <element name="wrldwat" type="float" min="-20" max="200" default="-1.0"/> 5996 <element name="wrldbnd" type="integer" min="0" max="2" default="1"> 5997 <description><![CDATA[Teleporting a creature that is outside of the world area is attempted every 'performance sampling period' steps. Teleport succeeds only when the target location in the world is empty (there is no collision).]]></description> 5998 </element> 5999 <element name="wrldg" type="float" min="0" max="10" default="1.0"> 6000 <description><![CDATA[You can adjust gravity for your experiments. 6001 The "official" setting used to evaluate and compare creatures is 1.]]></description> 6002 </element> 5938 6003 <element name="wrldchg" function="true" type="void"><arguments/></element> 6004 <element name="simtype" type="integer" min="0" max="1" default="0"> 6005 <description><![CDATA[MechaStick is a fast and simple primary Framsticks simulation engine. 6006 ODE is Open Dynamics Engine by Russel Smith et al. 6007 6008 NOTE: switching between simulation engines causes removal of all objects in the world (e.g. creatures).]]></description> 6009 </element> 6010 <element name="nnspeed" type="float" min="0" max="1000" default="1.0"> 6011 <description><![CDATA[Number of neural network simulation steps in each physics simulation step]]></description> 6012 </element> 6013 <element name="signals" type="WorldSignals"/> 5939 6014 </type> 5940 6015 <type name="WorldMap" context="Visual style definition"> … … 5981 6056 </type> 5982 6057 <type name="Signal" context="Signal label formula"> 6058 <element name="value" type="untyped"> 6059 <description><![CDATA[Signal value can be any type. On the receiver side it is only available by accessing the individual Signal objects, i.e. after calling receiveSet() or receiveSingle(). The aggregating functions receive() and receiveFilter() ignore this attribute.]]></description> 6060 </element> 6061 <element name="power" type="float"> 6062 <description><![CDATA[Signal power affects the aggregated signal value returned from receive() and receiveFilter().]]></description> 6063 </element> 6064 <element name="flavor" type="float"> 6065 <description><![CDATA[Signal flavor can be used to differentiate between signals in a single channel.]]></description> 6066 </element> 5983 6067 <element name="channel" type="string"> 5984 6068 <description><![CDATA[Channel name, read-only.]]></description> 5985 6069 </element> 5986 <element name="flavor" type="float">5987 <description><![CDATA[Signal flavor can be used to differentiate between signals in a single channel.]]></description>5988 </element>5989 6070 <element name="pos" type="XYZ"> 5990 6071 <description><![CDATA[Signal position, read-only.]]></description> 5991 6072 </element> 5992 <element name="power" type="float">5993 <description><![CDATA[Signal power affects the aggregated signal value returned from receive() and receiveFilter().]]></description>5994 </element>5995 <element name="value" type="untyped">5996 <description><![CDATA[Signal value can be any type. On the receiver side it is only available by accessing the individual Signal objects, i.e. after calling receiveSet() or receiveSingle(). The aggregating functions receive() and receiveFilter() ignore this attribute.]]></description>5997 </element>5998 6073 </type> 5999 6074 <type name="ClassBrowser" context="Command line interface"> 6000 6075 <description><![CDATA[Object reference, can be used to provide online hints.]]></description> 6076 <element name="search" function="true" type="integer"> 6077 <description><![CDATA[Searches the class reference and returns the number of hits (results). getXXX(item) function can be used to retrieve the results.]]></description> 6078 <arguments> 6079 <argument name="Text" type="string"/> 6080 </arguments> 6081 </element> 6001 6082 <element name="resultCount" type="integer"/> 6002 <element name="getLabel" function="true" type="string">6003 <description><![CDATA[Short texual label of the search result.]]></description>6004 <arguments>6005 <argument name="item" type="integer"/>6006 </arguments>6007 </element>6008 <element name="getText" function="true" type="string">6009 <description><![CDATA[Complete result text.]]></description>6010 <arguments>6011 <argument name="item" type="integer"/>6012 </arguments>6013 </element>6014 6083 <element name="getType" function="true" type="integer"> 6015 6084 <description><![CDATA[0 = Unknown … … 6031 6100 </arguments> 6032 6101 </element> 6033 <element name="search" function="true" type="integer"> 6034 <description><![CDATA[Searches the class reference and returns the number of hits (results). getXXX(item) function can be used to retrieve the results.]]></description> 6035 <arguments> 6036 <argument name="Text" type="string"/> 6102 <element name="getLabel" function="true" type="string"> 6103 <description><![CDATA[Short texual label of the search result.]]></description> 6104 <arguments> 6105 <argument name="item" type="integer"/> 6106 </arguments> 6107 </element> 6108 <element name="getText" function="true" type="string"> 6109 <description><![CDATA[Complete result text.]]></description> 6110 <arguments> 6111 <argument name="item" type="integer"/> 6037 6112 </arguments> 6038 6113 </element> … … 6040 6115 <type name="CLI" context="Command line interface"> 6041 6116 <description><![CDATA[Commandline support functions.]]></description> 6117 <element name="script" type="string"/> 6118 <element name="execute" function="true" type="void"> 6119 <arguments> 6120 <argument name="command" type="string"/> 6121 </arguments> 6122 </element> 6042 6123 <element name="cmdhandler" type="string"/> 6043 <element name="msgtype" type="integer" min="0" max="1"/> 6124 <element name="quit" function="true"/> 6125 <element name="print" function="true" type="void"> 6126 <arguments> 6127 <argument name="text" type="string"/> 6128 </arguments> 6129 </element> 6130 <element name="println" function="true" type="void"> 6131 <arguments> 6132 <argument name="text" type="string"/> 6133 </arguments> 6134 </element> 6044 6135 <element name="quiet" type="integer" min="0" max="1"> 6045 6136 <description><![CDATA[enabled by -Q]]></description> 6046 6137 </element> 6047 <element name="script" type="string"/>6048 <element name="stdin" type="Object"/>6049 <element name="stdout" type="Object"/>6050 6138 <element name="addMacro" function="true" type="void"> 6051 6139 <arguments> … … 6056 6144 </arguments> 6057 6145 </element> 6058 <element name="execute" function="true" type="void">6059 <arguments>6060 <argument name="command" type="string"/>6061 </arguments>6062 </element>6063 <element name="listMacros" function="true" type="void"><arguments/></element>6064 <element name="print" function="true" type="void">6065 <arguments>6066 <argument name="text" type="string"/>6067 </arguments>6068 </element>6069 <element name="println" function="true" type="void">6070 <arguments>6071 <argument name="text" type="string"/>6072 </arguments>6073 </element>6074 <element name="quit" function="true"/>6075 6146 <element name="removeMacro" function="true" type="void"> 6076 6147 <description><![CDATA[(numargs==-2) means remove all macros matching the name, otherwise only one definition is removed]]></description> … … 6080 6151 </arguments> 6081 6152 </element> 6153 <element name="listMacros" function="true" type="void"><arguments/></element> 6154 <element name="stdin" type="Object"/> 6155 <element name="stdout" type="Object"/> 6156 <element name="msgtype" type="integer" min="0" max="1"/> 6082 6157 </type> 6083 6158 <type name="CreatureCharts" context="Command line interface"> 6084 6159 <description><![CDATA[Manages charts for monitoring creatures performance. 6085 6160 This class has no corresponding static object. If you want to use it, you have to create an object or get a reference to the existing object.]]></description> 6086 <element name="creature" type="untyped"/>6087 6161 <element name="selected" type="integer"/> 6162 <element name="addSelected" function="true"> 6163 <description><![CDATA[Add the chart for currenly selected property]]></description> 6164 </element> 6088 6165 <element name="add" function="true"> 6089 6166 <description><![CDATA[return the new Window object with chart as its client 6090 6167 arguments: property to be tracked]]></description> 6091 6168 </element> 6092 <element name="addSelected" function="true"> 6093 <description><![CDATA[Add the chart for currenly selected property]]></description> 6169 <element name="removeAll" function="true"/> 6170 <element name="resetAll" function="true"> 6171 <description><![CDATA[Removes all data from the chart windows.]]></description> 6094 6172 </element> 6095 6173 <element name="createChart" function="true"> … … 6097 6175 arguments: property to be tracked]]></description> 6098 6176 </element> 6099 <element name="removeAll" function="true"/> 6100 <element name="resetAll" function="true"> 6101 <description><![CDATA[Removes all data from the chart windows.]]></description> 6102 </element> 6177 <element name="creature" type="untyped"/> 6103 6178 </type> 6104 6179 <type name="CreatureSelection" context="Command line interface"> 6105 6180 <element name="count" type="integer"/> 6181 <element name="get" function="true" type="Creature"> 6182 <arguments> 6183 <argument name="index" type="integer"/> 6184 </arguments> 6185 </element> 6106 6186 <element name="add" function="true" type="void"> 6107 6187 <arguments> … … 6109 6189 </arguments> 6110 6190 </element> 6191 <element name="remove" function="true" type="void"> 6192 <arguments> 6193 <argument type="Creature"/> 6194 </arguments> 6195 </element> 6111 6196 <element name="clear" function="true" type="void"><arguments/></element> 6112 <element name="get" function="true" type="Creature">6113 <arguments>6114 <argument name="index" type="integer"/>6115 </arguments>6116 </element>6117 <element name="remove" function="true" type="void">6118 <arguments>6119 <argument type="Creature"/>6120 </arguments>6121 </element>6122 6197 </type> 6123 6198 <type name="DynaChart" context="Command line interface"> 6124 6199 <description><![CDATA[Line chart (visual object). Can be used as the client object in the Window.]]></description> 6125 <element name=" xscale" type="integer" min="1" max="20"/>6200 <element name="new" function="true" type="DynaChart"><arguments/></element> 6126 6201 <element name="add" function="true"> 6127 6202 <description><![CDATA[add new value]]></description> 6128 6203 </element> 6129 6204 <element name="clear" function="true" type="void"><arguments/></element> 6130 <element name=" new" function="true" type="DynaChart"><arguments/></element>6205 <element name="xscale" type="integer" min="1" max="20"/> 6131 6206 </type> 6132 6207 <type name="DynaChart2D" context="Command line interface"> 6133 6208 <description><![CDATA[2D Line chart (visual object). Can be used as the client object in the Window.]]></description> 6209 <element name="new" function="true" type="DynaChart2D"><arguments/></element> 6210 <element name="add" function="true" type="void"> 6211 <description><![CDATA[add (x,y) values for the next graph point]]></description> 6212 <arguments> 6213 <argument name="x coordinate" type="float"/> 6214 <argument name="y coordinate" type="float"/> 6215 </arguments> 6216 </element> 6217 <element name="clear" function="true" type="void"><arguments/></element> 6134 6218 <element name="memory" type="integer" min="1" max="1000" default="100"> 6135 6219 <description><![CDATA[maximum number of (x,y) pairs drawn in the graph.]]></description> 6136 6220 </element> 6137 <element name="add" function="true" type="void">6138 <description><![CDATA[add (x,y) values for the next graph point]]></description>6139 <arguments>6140 <argument name="x coordinate" type="float"/>6141 <argument name="y coordinate" type="float"/>6142 </arguments>6143 </element>6144 <element name="clear" function="true" type="void"><arguments/></element>6145 <element name="new" function="true" type="DynaChart2D"><arguments/></element>6146 6221 </type> 6147 6222 <type name="GLDisplay" context="Command line interface"> 6148 6223 <description><![CDATA[OpenGL display for the Framsticks Theater application.]]></description> 6224 <element name="simsteps" type="integer" min="0" max="999999" default="0"> 6225 <description><![CDATA[0 = simulation is disabled. In most cases you should use desiredsimspeed as it ensures automatic throttle control.]]></description> 6226 </element> 6227 <element name="desiredsimspeed" type="float" min="0" max="999999" default="0.0"> 6228 <description><![CDATA[Desired simulation speed in steps/second. 0 = simulation is disabled.]]></description> 6229 </element> 6230 <element name="userspeed" type="float" min="0" max="100" default="1.0"> 6231 <description><![CDATA[User interface sets this property to adjust simulation speed.]]></description> 6232 </element> 6233 <element name="stop" function="true"/> 6234 <element name="resume" function="true"/> 6235 <element name="draw" function="true"/> 6236 <element name="quit" function="true"/> 6149 6237 <element name="active" type="integer" min="0" max="1"/> 6150 6238 <element name="banner" type="string"/> 6151 <element name="desiredsimspeed" type="float" min="0" max="999999" default="0.0">6152 <description><![CDATA[Desired simulation speed in steps/second. 0 = simulation is disabled.]]></description>6153 </element>6154 <element name="fps" type="float">6155 <description><![CDATA[Frames Per Second (measured)]]></description>6156 </element>6157 <element name="fpsvisible" type="integer" min="0" max="1"/>6158 <element name="maxfps" type="integer" min="1" max="100" default="30"/>6159 <element name="messagesVisible" type="integer" min="0" max="1"/>6160 <element name="messagesWindow" type="Object">6161 <description><![CDATA[get window object (class Window)]]></description>6162 </element>6163 <element name="minfps" type="integer" min="1" max="100" default="5"/>6164 <element name="simsteps" type="integer" min="0" max="999999" default="0">6165 <description><![CDATA[0 = simulation is disabled. In most cases you should use desiredsimspeed as it ensures automatic throttle control.]]></description>6166 </element>6167 <element name="size_x" type="integer"/>6168 <element name="size_y" type="integer"/>6169 6239 <element name="user_interaction" type="integer" min="0" max="1" default="1"> 6170 6240 <description><![CDATA[Bit field: … … 6172 6242 ]]></description> 6173 6243 </element> 6174 <element name="userspeed" type="float" min="0" max="100" default="1.0"> 6175 <description><![CDATA[User interface sets this property to adjust simulation speed.]]></description> 6176 </element> 6244 <element name="minfps" type="integer" min="1" max="100" default="5"/> 6245 <element name="maxfps" type="integer" min="1" max="100" default="30"/> 6246 <element name="fps" type="float"> 6247 <description><![CDATA[Frames Per Second (measured)]]></description> 6248 </element> 6249 <element name="fpsvisible" type="integer" min="0" max="1"/> 6250 <element name="messagesVisible" type="integer" min="0" max="1"/> 6177 6251 <element name="clearMessages" function="true"/> 6252 <element name="messagesWindow" type="Object"> 6253 <description><![CDATA[get window object (class Window)]]></description> 6254 </element> 6255 <element name="size_x" type="integer"/> 6256 <element name="size_y" type="integer"/> 6178 6257 <element name="createWindow" function="true" type="Window"> 6179 6258 <description><![CDATA[create and return the new window object.]]></description> … … 6189 6268 </arguments> 6190 6269 </element> 6191 <element name="draw" function="true"/>6192 6270 <element name="newCreatureCharts" function="true"/> 6193 6271 <element name="newSimStatsCharts" function="true"/> 6194 <element name="quit" function="true"/>6195 <element name="resume" function="true"/>6196 <element name="stop" function="true"/>6197 6272 </type> 6198 6273 <type name="ImageExport" context="Command line interface"> 6199 <element name="imgex_compress" type="integer" min="0" max="100" default="15"/>6200 <element name="imgex_currframe" type="integer"/>6201 <element name="imgex_enabled" type="integer" min="0" max="1"/>6202 <element name="imgex_format" type="integer" min="0" max="2"/>6203 <element name="imgex_lastfile" type="string"/>6204 <element name="imgex_maxframes" type="integer" min="0" max="1000000" default="10000">6205 <description><![CDATA[How many frames are to be generated?]]></description>6206 </element>6207 6274 <element name="imgex_outdir" type="string"> 6208 6275 <description><![CDATA[Directory name WITHOUT trailing '/' sign]]></description> … … 6211 6278 <description><![CDATA[Frame number replaces %d (eg. 'image%03d.jpg')]]></description> 6212 6279 </element> 6280 <element name="imgex_format" type="integer" min="0" max="2"/> 6281 <element name="imgex_compress" type="integer" min="0" max="100" default="15"/> 6213 6282 <element name="imgex_skip" type="integer"> 6214 6283 <description><![CDATA[A scene file is generated each (n+1) simulation steps … … 6218 6287 <description><![CDATA[Starting number]]></description> 6219 6288 </element> 6289 <element name="imgex_maxframes" type="integer" min="0" max="1000000" default="10000"> 6290 <description><![CDATA[How many frames are to be generated?]]></description> 6291 </element> 6292 <element name="imgex_enable" function="true"/> 6220 6293 <element name="imgex_disable" function="true"/> 6221 <element name="imgex_enable" function="true"/>6222 6294 <element name="imgex_now" function="true"/> 6295 <element name="imgex_currframe" type="integer"/> 6296 <element name="imgex_enabled" type="integer" min="0" max="1"/> 6297 <element name="imgex_lastfile" type="string"/> 6223 6298 </type> 6224 6299 <type name="NeuroDiagram" context="Command line interface"> 6225 6300 <description><![CDATA[Can be used as the client object in the Window.]]></description> 6226 <element name="hide" function="true" type="void"><arguments/></element>6227 6301 <element name="new" function="true"/> 6228 6302 <element name="showCreature" function="true" type="void"> … … 6236 6310 </arguments> 6237 6311 </element> 6312 <element name="hide" function="true" type="void"><arguments/></element> 6238 6313 </type> 6239 6314 <type name="RowFormat" context="Command line interface"> … … 6244 6319 RowFormat.prepare(Genotype.*,"name/20,strsiz/5,nnsiz/5,fit/6"); 6245 6320 CLI.println(RowFormat.format(Genotype.*));]]></description> 6246 <element name="fieldsep" type="string"> 6247 <description><![CDATA[The character used for separating columns]]></description> 6248 </element> 6249 <element name="fillchar" type="string"> 6250 <description><![CDATA[The characted used for padding the columns contents]]></description> 6251 </element> 6252 <element name="header" type="string"> 6253 <description><![CDATA[Contains the field names with the same formatting applied (i.e. with fill and separators)]]></description> 6254 </element> 6255 <element name="addColumn" function="true" type="void"> 6256 <description><![CDATA[Low level call, adds a single column. "prepare" is better.]]></description> 6257 <arguments> 6258 <argument name="Field#" type="integer"/> 6259 <argument name="Column width" type="integer"/> 6321 <element name="prepare" function="true" type="void"> 6322 <description><![CDATA[Adds a number of columns, described as FIELD_NAME/WIDTH, columns are separated by "," (comma). Existing column definitions are not removed. Usually you will need to call "clear()" before "prepare".]]></description> 6323 <arguments> 6324 <argument name="Object" type="Object"/> 6325 <argument name="Column Descriptions" type="string"/> 6326 </arguments> 6327 </element> 6328 <element name="format" function="true" type="string"> 6329 <description><![CDATA[Returns the formatted string taking data from the supplied object.]]></description> 6330 <arguments> 6331 <argument name="Object" type="Object"/> 6260 6332 </arguments> 6261 6333 </element> … … 6263 6335 <description><![CDATA[Remove all existing column definitions.]]></description> 6264 6336 <arguments/></element> 6265 <element name="format" function="true" type="string"> 6266 <description><![CDATA[Returns the formatted string taking data from the supplied object.]]></description> 6267 <arguments> 6268 <argument name="Object" type="Object"/> 6269 </arguments> 6270 </element> 6271 <element name="prepare" function="true" type="void"> 6272 <description><![CDATA[Adds a number of columns, described as FIELD_NAME/WIDTH, columns are separated by "," (comma). Existing column definitions are not removed. Usually you will need to call "clear()" before "prepare".]]></description> 6273 <arguments> 6274 <argument name="Object" type="Object"/> 6275 <argument name="Column Descriptions" type="string"/> 6276 </arguments> 6337 <element name="addColumn" function="true" type="void"> 6338 <description><![CDATA[Low level call, adds a single column. "prepare" is better.]]></description> 6339 <arguments> 6340 <argument name="Field#" type="integer"/> 6341 <argument name="Column width" type="integer"/> 6342 </arguments> 6343 </element> 6344 <element name="fillchar" type="string"> 6345 <description><![CDATA[The characted used for padding the columns contents]]></description> 6346 </element> 6347 <element name="fieldsep" type="string"> 6348 <description><![CDATA[The character used for separating columns]]></description> 6349 </element> 6350 <element name="header" type="string"> 6351 <description><![CDATA[Contains the field names with the same formatting applied (i.e. with fill and separators)]]></description> 6277 6352 </element> 6278 6353 </type> 6279 6354 <type name="ShowManager" context="Command line interface"> 6355 <element name="show" type="string"/> 6356 <element name="name" type="string"/> 6357 <element name="info" type="string"/> 6358 <element name="dispinfo" type="integer" min="0" max="2"/> 6359 <element name="userspeed" type="integer" min="0" max="5" default="3"/> 6360 <element name="showlog" type="integer" min="0" max="1"/> 6361 <element name="code" type="string"/> 6362 <element name="expdef" type="string"/> 6363 <element name="reload" function="true"/> 6364 <element name="dummy" function="true"> 6365 <description><![CDATA[This is the empty item in the Theater's menu]]></description> 6366 </element> 6367 <element name="about" function="true"/> 6368 <element name="regname" type="string"/> 6369 <element name="prev_show" type="string"/> 6370 <element name="mode" type="integer" min="0" max="2"/> 6371 <element name="switchmode" type="integer" min="0" max="3"/> 6372 <element name="switchtime" type="integer" min="0" max="9999"> 6373 <description><![CDATA[time between switching (seconds)]]></description> 6374 </element> 6375 <element name="switchshows" type="string"> 6376 <description><![CDATA[names of the shows participating in automatic switching (comma separated). Use * as a wildcard.]]></description> 6377 </element> 6378 <element name="includeshows" type="string"> 6379 <description><![CDATA[names of shows included in the show menu. Use * as a wildcard.]]></description> 6380 </element> 6381 <element name="excludeshows" type="string"> 6382 <description><![CDATA[names of shows excluded from the show menu. Use * as a wildcard.]]></description> 6383 </element> 6384 <element name="clear" function="true"/> 6385 <element name="add" function="true"/> 6386 <element name="remove" function="true"/> 6387 <element name="addGroup" function="true"/> 6388 <element name="removeGroup" function="true"/> 6280 6389 <element name="changedProperty" type="integer"/> 6281 6390 <element name="changedPropertyId" type="string"/> 6282 <element name="code" type="string"/>6283 <element name="dispinfo" type="integer" min="0" max="2"/>6284 <element name="excludeshows" type="string">6285 <description><![CDATA[names of shows excluded from the show menu. Use * as a wildcard.]]></description>6286 </element>6287 <element name="expdef" type="string"/>6288 <element name="includeshows" type="string">6289 <description><![CDATA[names of shows included in the show menu. Use * as a wildcard.]]></description>6290 </element>6291 <element name="info" type="string"/>6292 <element name="mode" type="integer" min="0" max="2"/>6293 <element name="name" type="string"/>6294 <element name="prev_show" type="string"/>6295 <element name="regname" type="string"/>6296 <element name="show" type="string"/>6297 <element name="showlog" type="integer" min="0" max="1"/>6298 <element name="switchmode" type="integer" min="0" max="3"/>6299 <element name="switchshows" type="string">6300 <description><![CDATA[names of the shows participating in automatic switching (comma separated). Use * as a wildcard.]]></description>6301 </element>6302 <element name="switchtime" type="integer" min="0" max="9999">6303 <description><![CDATA[time between switching (seconds)]]></description>6304 </element>6305 <element name="userspeed" type="integer" min="0" max="5" default="3"/>6306 <element name="about" function="true"/>6307 <element name="add" function="true"/>6308 <element name="addGroup" function="true"/>6309 <element name="clear" function="true"/>6310 <element name="dummy" function="true">6311 <description><![CDATA[This is the empty item in the Theater's menu]]></description>6312 </element>6313 <element name="reload" function="true"/>6314 <element name="remove" function="true"/>6315 <element name="removeGroup" function="true"/>6316 6391 </type> 6317 6392 <type name="SimStatsCharts" context="Command line interface"> … … 6319 6394 This class has no corresponding static object. If you want to use it, you have to create an object or get a reference to the existing object.]]></description> 6320 6395 <element name="selected" type="integer"/> 6396 <element name="sscAddSelected" function="true"/> 6321 6397 <element name="add" function="true"/> 6322 <element name="createChart" function="true"/>6323 6398 <element name="removeAll" function="true"/> 6324 6399 <element name="resetAll" function="true"> 6325 6400 <description><![CDATA[Removes all data from the chart windows.]]></description> 6326 6401 </element> 6327 <element name=" sscAddSelected" function="true"/>6402 <element name="createChart" function="true"/> 6328 6403 </type> 6329 6404 <type name="TrackingCam" context="Command line interface"> 6330 6405 <description><![CDATA[Camera object with the automatic target tracking ability.]]></description> 6331 <element name="cam_change" type="integer" min="0" max="5" default="2"/> 6332 <element name="cam_chspeed" type="float" min="0.1" max="10" default="1.0"/> 6333 <element name="cam_dir" type="float" min="0" max="360" default="30.0"/> 6406 <element name="cam_tracking" type="integer" min="0" max="3" default="1"/> 6407 <element name="cam_trspeed" type="float" min="0.1" max="10" default="5.0"/> 6334 6408 <element name="cam_distrac" type="integer" min="0" max="1" default="0"> 6335 6409 <description><![CDATA[Suspend automatic tracking when the camera is moved manually]]></description> 6336 </element>6337 <element name="cam_h" type="float" min="0" max="360" default="45.0">6338 <description><![CDATA[0=side view, 90=top view]]></description>6339 6410 </element> 6340 6411 <element name="cam_restrac" type="integer" min="0" max="100" default="10"> … … 6342 6413 (0 to never restore automatic tracking)]]></description> 6343 6414 </element> 6344 <element name="cam_tracking" type="integer" min="0" max="3" default="1"/>6345 <element name="cam_trspeed" type="float" min="0.1" max="10" default="5.0"/>6346 <element name="cam_zoom" type="float" min="0.2" max="3" default="0.8"/>6347 <element name="interacting" type="integer" min="0" max="2"/>6348 6415 <element name="cam_restore" function="true" type="void"> 6349 6416 <description><![CDATA[Update camera position and restore automatic tracking]]></description> 6350 6417 <arguments/></element> 6351 <element name="moveTarget" function="true" type="void"> 6352 <description><![CDATA[notify about the target location/size change]]></description> 6418 <element name="cam_change" type="integer" min="0" max="5" default="2"/> 6419 <element name="cam_chspeed" type="float" min="0.1" max="10" default="1.0"/> 6420 <element name="cam_zoom" type="float" min="0.2" max="3" default="0.8"/> 6421 <element name="cam_dir" type="float" min="0" max="360" default="30.0"/> 6422 <element name="cam_h" type="float" min="0" max="360" default="45.0"> 6423 <description><![CDATA[0=side view, 90=top view]]></description> 6424 </element> 6425 <element name="setTarget" function="true" type="void"> 6426 <description><![CDATA[select a new target for the camera]]></description> 6353 6427 <arguments> 6354 6428 <argument name="location x" type="float"/> … … 6358 6432 </arguments> 6359 6433 </element> 6360 <element name="setOrient" function="true" type="void"> 6361 <arguments> 6362 <argument type="Orient"/> 6363 </arguments> 6364 </element> 6365 <element name="setTarget" function="true" type="void"> 6366 <description><![CDATA[select a new target for the camera]]></description> 6434 <element name="moveTarget" function="true" type="void"> 6435 <description><![CDATA[notify about the target location/size change]]></description> 6367 6436 <arguments> 6368 6437 <argument name="location x" type="float"/> … … 6379 6448 </arguments> 6380 6449 </element> 6450 <element name="setOrient" function="true" type="void"> 6451 <arguments> 6452 <argument type="Orient"/> 6453 </arguments> 6454 </element> 6455 <element name="interacting" type="integer" min="0" max="2"/> 6381 6456 </type> 6382 6457 <type name="VisualStyle" context="Command line interface"> 6383 <element name="axes" type="integer" min="0" max="1" default="0"> 6384 <description><![CDATA[]]></description> 6385 </element> 6386 <element name="bbox" type="integer" min="0" max="1" default="1"> 6387 <description><![CDATA[]]></description> 6388 </element> 6389 <element name="bgcolor" type="integer" min="0" max="16777215" default="16764040"> 6390 <description><![CDATA[]]></description> 6391 </element> 6458 <element name="style" type="string"/> 6459 <element name="name" type="string"/> 6460 <element name="info" type="string"/> 6461 <element name="code" type="string"/> 6462 <element name="streload" function="true"/> 6463 <element name="rebuild" function="true"/> 6464 <element name="tex" type="integer" min="0" max="2" default="1"/> 6465 <element name="smooth" type="integer" min="0" max="1" default="1"/> 6466 <element name="neurons" type="integer" min="0" max="1" default="1"/> 6467 <element name="clear" function="true"/> 6468 <element name="add" function="true"/> 6469 <element name="remove" function="true"/> 6470 <element name="addGroup" function="true"/> 6471 <element name="removeGroup" function="true"/> 6392 6472 <element name="changedProperty" type="integer"/> 6393 6473 <element name="changedPropertyId" type="string"/> 6394 <element name="code" type="string"/> 6395 <element name="info" type="string"/> 6474 <element name="worldpan" type="integer" min="0" max="3" default="2"> 6475 <description><![CDATA[]]></description> 6476 </element> 6477 <element name="modelpan" type="integer" min="0" max="3" default="1"> 6478 <description><![CDATA[]]></description> 6479 </element> 6480 <element name="bgcolor" type="integer" min="0" max="16777215" default="16764040"> 6481 <description><![CDATA[]]></description> 6482 </element> 6483 <element name="bbox" type="integer" min="0" max="1" default="1"> 6484 <description><![CDATA[]]></description> 6485 </element> 6396 6486 <element name="joint_width" type="integer" min="10" max="150" default="100"> 6397 6487 <description><![CDATA[]]></description> 6398 6488 </element> 6399 <element name="modelpan" type="integer" min="0" max="3" default="1">6400 <description><![CDATA[]]></description>6401 </element>6402 <element name="name" type="string"/>6403 <element name="neurons" type="integer" min="0" max="1" default="1"/>6404 6489 <element name="shadows" type="integer" min="0" max="1" default="1"> 6405 6490 <description><![CDATA[]]></description> 6406 6491 </element> 6492 <element name="axes" type="integer" min="0" max="1" default="0"> 6493 <description><![CDATA[]]></description> 6494 </element> 6407 6495 <element name="shownames" type="integer" min="0" max="1" default="0"> 6408 6496 <description><![CDATA[]]></description> 6409 6497 </element> 6410 <element name="smooth" type="integer" min="0" max="1" default="1"/>6411 <element name="style" type="string"/>6412 6498 <element name="symmetryplane" type="integer" min="0" max="1" default="0"> 6413 6499 <description><![CDATA[Displays a guess of the symmetry plane (may take a long time to compue for complex bodies). 6414 6500 Use scripting and the Symmetry class to compute symmetry accurately.]]></description> 6415 6501 </element> 6416 <element name="tex" type="integer" min="0" max="2" default="1"/>6417 <element name="worldpan" type="integer" min="0" max="3" default="2">6418 <description><![CDATA[]]></description>6419 </element>6420 <element name="add" function="true"/>6421 <element name="addGroup" function="true"/>6422 <element name="clear" function="true"/>6423 <element name="rebuild" function="true"/>6424 <element name="remove" function="true"/>6425 <element name="removeGroup" function="true"/>6426 <element name="streload" function="true"/>6427 6502 </type> 6428 6503 <type name="Window" context="Command line interface"> … … 6430 6505 This class has no corresponding static object. If you want to use it, you have to create an object or get a reference to the existing object. 6431 6506 See also: GLDisplay]]></description> 6432 <element name="backcolor" type="integer">6433 <description><![CDATA[format: 0xAABBGGRR (alpha,blue,green,red)]]></description>6434 </element>6435 <element name="client" type="Object">6436 <description><![CDATA[what is displayed in the window]]></description>6437 </element>6438 <element name="pos_x" type="integer"/>6439 <element name="pos_y" type="integer"/>6440 <element name="size_x" type="integer"/>6441 <element name="size_y" type="integer"/>6442 6507 <element name="style" type="integer"> 6443 6508 <description><![CDATA[bitfield: … … 6449 6514 </element> 6450 6515 <element name="title" type="string"/> 6516 <element name="backcolor" type="integer"> 6517 <description><![CDATA[format: 0xAABBGGRR (alpha,blue,green,red)]]></description> 6518 </element> 6519 <element name="pos_x" type="integer"/> 6520 <element name="pos_y" type="integer"/> 6521 <element name="size_x" type="integer"/> 6522 <element name="size_y" type="integer"/> 6523 <element name="client" type="Object"> 6524 <description><![CDATA[what is displayed in the window]]></description> 6525 </element> 6451 6526 </type> 6452 6527 </framscript>
Note: See TracChangeset
for help on using the changeset viewer.