Changeset 309
- 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