source: cpp/frams/config/f0-SDK.def @ 513

Last change on this file since 513 was 507, checked in by Maciej Komosinski, 9 years ago

Default Part and Stick color becomes white, not gray (so that multiplying will not darken textures)

  • Property svn:eol-style set to native
File size: 9.6 KB
Line 
1CLASS(Model,f0_model,m)
2GROUP(Properties)
3GROUP(Visual)
4PROP(se,0,1024,startenergy,f,,,,startenergy)
5PROP(Vstyle,1,0,vis_style,s,0,-1,,vis_style)
6ENDCLASS
7
8CLASS(Part,f0_part,p)
9GROUP(Geometry)
10GROUP(Other properties)
11GROUP(Visual)
12PROP(x,0,1024,position.x,f,,,,p.x)
13PROP(y,0,1024,position.y,f,,,,p.y)
14PROP(z,0,1024,position.z,f,,,,p.z)
15XPROP(m,1,0,mass,f,0.1,999.0,1.0,mass)
16PROP(sh,1,0,shape,d,0,3,0,shape)
17PROP(s,1,0,size,f,0.1,10.0,1.0,size)
18PROP(sx,1,0,scale.x,f,0.001,1000.0,1.0,scale.x)
19PROP(sy,1,0,scale.y,f,0.001,1000.0,1.0,scale.y)
20PROP(sz,1,0,scale.z,f,0.001,1000.0,1.0,scale.z)
21PROP(h,1,0,hollow,f,0,1,0,hollow)
22XPROP(dn,1,0,density,f,0.2,5.0,1.0,density)
23XPROP(fr,1,0,friction,f,0.0,4.0,0.4,friction)
24XPROP(ing,1,0,ingestion,f,0.0,1.0,0.25,ingest)
25XPROP(as,1,0,assimilation,f,0.0,1.0,0.25,assim)
26PROP(rx,0,0,rot.x,f,,,,rot.x)
27PROP(ry,0,1024,rot.y,f,,,,rot.y)
28PROP(rz,0,1024,rot.z,f,,,,rot.z)
29PROP(i,1,0,`info',s,,,,info)
30PROP(Vstyle,2,0,vis_style,s,0,-1,part,vis_style)
31XPROP(vs,2,0,visual thickness,f,0.05,0.7,0.2,vsize)
32XPROP(vr,2,0,red component,f,0.0,1.0,1.0,vcolor.x)
33XPROP(vg,2,1024,green component,f,0.0,1.0,1.0,vcolor.y)
34XPROP(vb,2,1024,blue component,f,0.0,1.0,1.0,vcolor.z)
35ENDCLASS
36
37CLASS(Joint,f0_joint,j)
38GROUP(Connections)
39GROUP(Geometry)
40GROUP(Other properties)
41GROUP(Visual)
42PROP(p1,0,1024,`part1 ref#',d,-1,999999,-1,p1_refno)
43PROP(p2,0,1024,`part2 ref#',d,-1,999999,-1,p2_refno)
44PROP(rx,1,0,rotation.x,f,,,,rot.x)
45PROP(ry,1,1024,rotation.y,f,,,,rot.y)
46PROP(rz,1,1024,rotation.z,f,,,,rot.z)
47PROP(dx,1,0,delta.x,f,-2,2,0,d.x)
48PROP(dy,1,1024,delta.y,f,-2,2,0,d.y)
49PROP(dz,1,1024,delta.z,f,-2,2,0,d.z)
50PROP(sh,1,0,shape,d,0,1,0,shape)
51XPROP(stif,2,0,stiffness,f,0.0,1.0,1.0,stif)
52XPROP(rotstif,2,0,rotation stiffness,f,0.0,1.0,1.0,rotstif)
53PROP(stam,2,0,stamina,f,0.0,1.0,0.25,stamina)
54PROP(i,2,0,`info',s,,,,info)
55PROP(Vstyle,3,0,vis_style,s,0,-1,joint,vis_style)
56XPROP(vr,3,0,red component,f,0.0,1.0,1.0,vcolor.x)
57XPROP(vg,3,1024,green component,f,0.0,1.0,1.0,vcolor.y)
58XPROP(vb,3,1024,blue component,f,0.0,1.0,1.0,vcolor.z)
59ENDCLASS
60
61CLASS(Joint,f0_nodeltajoint,j,NOXML)
62GROUP(Connections)
63GROUP(Geometry)
64GROUP(Other properties)
65GROUP(Visual)
66PROP(p1,0,1024,`part1 ref#',d,-1,999999,-1,p1_refno)
67PROP(p2,0,1024,`part2 ref#',d,-1,999999,-1,p2_refno)
68PROP(sh,1,0,shape,d,0,1,0,shape)
69XPROP(stif,2,0,stiffness,f,0.0,1.0,1.0,stif)
70XPROP(rotstif,2,0,rotation stiffness,f,0.0,1.0,1.0,rotstif)
71PROP(stam,2,0,stamina,f,0.0,1.0,0.25,stamina)
72PROP(i,2,0,`info',s,,,,info)
73PROP(Vstyle,3,0,vis_style,s,0,-1,joint,vis_style)
74XPROP(vr,3,0,red component,f,0.0,1.0,1.0,vcolor.x)
75XPROP(vg,3,1024,green component,f,0.0,1.0,1.0,vcolor.y)
76XPROP(vb,3,1024,blue component,f,0.0,1.0,1.0,vcolor.z)
77ENDCLASS
78
79CLASS(Neuro,f0_neuro,n)
80GROUP(Connections)
81GROUP(Other)
82GROUP(Visual)
83PROP(p,0,0,`part ref#',d,-1,999999,-1,part_refno)
84PROP(j,0,0,`joint ref#',d,-1,999999,-1,joint_refno)
85PROP(d,1,0,details,s,,,N,details,GETSET)
86PROP(i,1,0,`info',s,,,,info)
87PROP(Vstyle,2,0,vis_style,s,0,-1,neuro,vis_style)
88PROP(getInputCount,0,1+2,`input count',d,,,,inputCount,GETONLY)
89PROP(getInputNeuroDef,0,1+2,`get input neuron',p oNeuroDef(d),,,,p_getInputNeuroDef,PROCEDURE)
90PROP(getInputNeuroIndex,0,1+2,`get input neuron index',p d(d),,,,p_getInputNeuroIndex,PROCEDURE)
91PROP(getInputWeight,0,1+2,`get input weight',p f(d),,,,p_getInputWeight,PROCEDURE)
92PROP(classObject,0,1+2,`neuron class',o NeuroClass,,,,classObject,GETONLY)
93ENDCLASS
94
95CLASS(NeuroConn,f0_neuroconn,c)
96GROUP(Connection)
97GROUP(Other)
98PROP(n1,0,1024,`this neuro ref#',d,-1,999999,-1,n1_refno)
99PROP(n2,0,1024,`connected neuro ref#',d,-1,999999,-1,n2_refno)
100PROP(w,0,1024,weight,f,-999999,999999,1.0,weight)
101PROP(i,1,0,`info',s,,,,info)
102ENDCLASS
103
104NEUROCLASS(StdNeuron,N,Neuron,`Standard neuron',-1,1,0)
105VISUALHINTS(DontShowClass)
106NEUROPROP(in,1,0,Inertia,f,0.0,1.0,0.8,inertia)
107NEUROPROP(fo,1,0,Force,f,0.0,999.0,0.04,force)
108NEUROPROP(si,1,0,Sigmoid,f,-99999.0,99999.0,2.0,sigmo)
109NEUROPROP(s,2,0,State,f,-1.0,1.0,0.0,newstate)
110ENDNEUROCLASS
111
112NEUROCLASS(StdUNeuron,Nu,`Unipolar neuron [EXPERIMENTAL!]',`Works like standard neuron (N) but the output value is scaled to 0...+1 instead of -1...+1.\nHaving 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.',-1,1,0)
113NEUROPROP(in,1,0,Inertia,f,0.0,1.0,0.8,inertia)
114NEUROPROP(fo,1,0,Force,f,0.0,999.0,0.04,force)
115NEUROPROP(si,1,0,Sigmoid,f,-99999.0,99999.0,2.0,sigmo)
116NEUROPROP(s,2,0,State,f,-1.0,1.0,0.0,newstate)
117ENDNEUROCLASS
118
119NEUROCLASS(Gyro,G,Gyroscope,`Equilibrium sensor.\n0=the stick is horizontal\n+1/-1=the stick is vertical',0,1,2)
120VISUALHINTS(ReceptorClass)
121SYMBOL(`8,7,100,50,90,50,90,40,70,40,80,50,70,60,90,60,90,50,12,43,24,48,24,48,19,38,19,38,24,43,24,43,54,48,54,48,64,43,69,38,64,38,54,43,54,5,63,69,58,74,48,79,38,79,28,74,23,69,1,43,79,43,74,1,23,69,26,66,1,63,69,60,66,1,55,76,53,73,1,31,75,33,72')
122ENDNEUROCLASS
123
124NEUROCLASS(Touch,T,Touch,`Touch sensor.\n-1=no contact\n0=just touching\n>0=pressing, value depends on the force applied',0,1,1)
125VISUALHINTS(ReceptorClass)
126SYMBOL(`2,7,100,50,90,50,90,40,70,40,80,50,70,60,90,60,90,50,11,75,50,65,50,60,55,55,45,50,55,45,45,40,50,35,50,30,45,25,50,30,55,35,50')
127NEUROPROP(r,1,0,Range,f,0.0,1.0,1.0,range)
128ENDNEUROCLASS
129
130NEUROCLASS(Smell,S,Smell,`Smell sensor. Aggregated \"smell of energy\" experienced from all energy objects (creatures and food pieces).\nClose objects have bigger influence than the distant ones: for each energy source, its partial feeling is proportional to its energy/(distance^2)',0,1,1)
131VISUALHINTS(ReceptorClass)
132SYMBOL(`5,7,100,50,90,50,90,40,70,40,80,50,70,60,90,60,90,50,3,10,40,15,45,15,55,10,60,5,20,30,25,35,30,45,30,55,25,65,20,70,4,15,35,20,40,22,50,20,60,15,65,5,75,50,50,50,45,45,40,50,45,55,50,50')
133ENDNEUROCLASS
134
135NEUROCLASS(Const,*,Constant,Constant value,0,1,0)
136VISUALHINTS(Invisible)
137SYMBOL(`4,4,26,27,26,73,73,73,73,27,26,27,1,73,50,100,50,1,56,68,46,68,2,41,47,51,32,51,68')
138ENDNEUROCLASS
139
140NEUROCLASS(BendMuscle,|,Bend muscle,,1,0,2)
141VISUALHINTS(DontShowClass+EffectorClass+V1BendMuscle+AtFirstPart)
142SYMBOL(`6,5,25,40,35,40,45,50,35,60,25,60,25,40,4,65,85,65,50,75,50,75,85,65,85,3,65,56,49,29,57,24,72,50,4,68,53,70,53,70,55,68,55,68,53,5,50,21,60,15,70,14,79,15,87,20,81,10,1,86,20,77,21')
143NEUROPROP(p,0,0,power,f,0.01,1.0,0.25,power)
144NEUROPROP(r,0,0,bending range,f,0.0,1.0,1.0,bendrange)
145ENDNEUROCLASS
146
147NEUROCLASS(RotMuscle,@,Rotation muscle,,1,0,2)
148VISUALHINTS(DontShowClass+EffectorClass+V1RotMuscle+AtFirstPart)
149SYMBOL(`5,5,25,40,35,40,45,50,35,60,25,60,25,40,4,65,85,65,50,75,50,75,85,65,85,1,69,10,77,17,10,59,15,57,17,57,22,60,26,69,27,78,26,82,21,82,16,79,12,69,10,80,6,3,65,50,65,20,75,20,75,50')
150NEUROPROP(p,0,0,power,f,0.01,1.0,1.0,power)
151ENDNEUROCLASS
152
153NEUROCLASS(Diff,D,Differentiate,Calculate the difference between the current and previous input value. Multiple inputs are aggregated with respect to their weights,-1,1,0)
154SYMBOL(`3,3,25,0,25,100,75,50,25,0,1,75,50,100,50,3,44,42,51,57,36,57,44,42')
155ENDNEUROCLASS
156
157NEUROCLASS(FuzzyNeuro,Fuzzy,Fuzzy system [EXPERIMENTAL!],Refer to publications to learn more about this neuron.,-1,1,0)
158SYMBOL(`5,2,30,65,37,37,44,65,3,37,65,44,37,51,37,58,65,2,51,65,58,37,65,65,6,100,50,70,50,70,25,25,10,25,90,70,75,70,50,1,70,65,25,65')
159NEUROPROP(ns,0,0,number of fuzzy sets,d,1,,,fuzzySetsNr)
160NEUROPROP(nr,0,0,number of rules,d,1,,,rulesNr)
161NEUROPROP(fs,0,0,fuzzy sets,s,0,-1,,fuzzySetString)
162NEUROPROP(fr,0,0,fuzzy rules,s,0,-1,,fuzzyRulesString)
163ENDNEUROCLASS
164
165NEUROCLASS(Sticky,Sti,Sticky [EXPERIMENTAL!],,1,0,1)
166VISUALHINTS(EffectorClass)
167ENDNEUROCLASS
168
169NEUROCLASS(LinearMuscle,LMu,Linear muscle [EXPERIMENTAL!],,1,0,2)
170VISUALHINTS(EffectorClass)
171NEUROPROP(p,0,0,power,f,0.01,1.0,1.0,power)
172ENDNEUROCLASS
173
174NEUROCLASS(WaterDetect,Water,Water detector,`Output signal:\n0=on or above water surface\n1=under water (deeper than 1)\n0..1=in the transient area just below water surface',0,1,1)
175VISUALHINTS(ReceptorClass)
176ENDNEUROCLASS
177
178NEUROCLASS(Energy,Energy,Energy level,`The current energy level divided by the initial energy level.\nUsually 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',0,1,0)
179VISUALHINTS(ReceptorClass)
180ENDNEUROCLASS
181
182NEUROCLASS(Channelize,Ch,Channelize,`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.',-1,1,0)
183SYMBOL(`10,4,25,0,25,100,75,70,75,30,25,0,1,75,50,100,50,1,70,50,55,50,1,30,80,55,50,1,30,20,55,50,1,30,35,55,50,1,30,45,55,50,1,30,55,55,50,1,61,53,65,47,1,30,65,55,50')
184ENDNEUROCLASS
185
186NEUROCLASS(ChMux,ChMux,Channel multiplexer,`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)',2,1,0)
187SYMBOL(`7,4,25,0,25,100,75,70,75,30,25,0,1,75,50,100,50,1,70,50,55,50,3,50,55,55,50,50,45,50,55,3,30,67,45,67,45,50,50,50,1,35,70,39,64,2,30,33,53,33,53,48')
188ENDNEUROCLASS
189
190NEUROCLASS(ChSel,ChSel,Channel selector,`Outputs a single channel (selected by the \"ch\" parameter) from multichannel input',1,1,0)
191SYMBOL(`6,4,25,0,25,100,75,70,75,30,25,0,1,75,50,100,50,1,70,50,55,50,3,50,55,55,50,50,45,50,55,1,30,50,50,50,1,35,53,39,47')
192NEUROPROP(ch,0,0,channel,d,,,,ch)
193ENDNEUROCLASS
194
195NEUROCLASS(Random,Rnd,Random noise,`Generates random noise (subsequent random values in the range of -1..+1)',0,1,0)
196ENDNEUROCLASS
197
198NEUROCLASS(Sinus,Sin,Sinus generator,`Output frequency = f0+input',1,1,0)
199SYMBOL(`3,12,75,50,71,37,62,28,50,25,37,28,28,37,25,50,28,62,37,71,50,75,62,71,71,62,75,50,1,75,50,100,50,5,35,50,40,35,45,35,55,65,60,65,65,50')
200NEUROPROP(f0,0,0,base frequency,f,-1.0,1.0,0.06283185307,f0)
201NEUROPROP(t,0,0,time,f,0,6.283185307,0,t)
202ENDNEUROCLASS
Note: See TracBrowser for help on using the repository browser.