Other (?) info stored in surface names.

More
18 years 11 months ago #18663 by Jasper
The <> stuff in a surface name is for the 'channels' features in flux, but there are also things that look like #CSL(!PZ-)E1 on the end of surface names, anyone have any idea if they are significant? or just some shorthand the artists in PS used?

Here's a list of all the ones in all the .pso's in the resource directory:

#C(!PX+)
#C(!PX+)E1
#C(!PX+)E2
#C(!PX- 32x256)
#C(!PX- 32x64)
#C(!PX-)
#C(!PX-)E1
#C(!PX-)E9
#C(!PY+ 128x32)
#C(!PY+ 256x32)
#C(!PY+)
#C(!PY+)E1
#C(!PY- 128x32)
#C(!PY- 256x32)
#C(!PY-)
#C(!PY-)E1
#C(!PY-)E2
#C(!PZ+)
#C(!PZ+)E1
#C(!PZ+)E8
#C(!PZ+)E9
#C(!PZ- 128x256)
#C(!PZ- 128x32)
#C(!PZ- 256x32)
#C(!PZ- 256x64)
#C(!PZ- 256x64)
#C(!PZ- 32x32)
#C(!PZ- 32x64)
#C(!PZ- 64x64)E1
#C(!PZ-)
#C(!PZ-)E1
#C(!PZ-)E2
#C(CY 0,-0.04,0)
#C(PX+)
#C(PX+)E6
#C(PX-)
#C(PY+)
#C(PY+)E6
#C(PY-)
#C(PY-)E2
#C(PZ+)
#C(PZ+)E6
#C(PZ-)
#C(PZ-)E2
#CL#(!PZ+)
#CL#(PX+)
#CL(!PX+)
#CL(!PX+)E1
#CL(!PX-)
#CL(!PX-) <glow channel=LZ?+s(0.5)>
#CL(!PY+)
#CL(!PY+) <glow channel="LZ?+s(1.0)">
#CL(!PY+) <glow channel=LZ?+s(2.0)>
#CL(!PY+) <glow channel=snrvpit>
#CL(!PY+)E1
#CL(!PY- 256x128) <glow channel=roof1>
#CL(!PY-)
#CL(!PY-) <glow channel=LZ?+s(0.5)>
#CL(!PY-) <glow channel=LZ?+s(2.0)>
#CL(!PY-) <glow channel=roof2mid>
#CL(!PY-) <glow channel=roof2side>
#CL(!PY-)E1
#CL(!PZ+ 64x32)E5
#CL(!PZ+)
#CL(!PZ+) <glow channel="LZ?+s(1.0)">
#CL(!PZ+) <glow channel=LZ?+s(1.0)>
#CL(!PZ+)E1
#CL(!PZ+)E9 <glow channel=LZ?+s(0.5)>
#CL(!PZ- 256x128)
#CL(!PZ- 256x128) <glow channel=LZ?+s(0.5)>
#CL(!PZ- 256x64) <glow channel=LZ?+s(1.0)>
#CL(!PZ- 64x16)
#CL(!PZ-)
#CL(!PZ-) <glow channel=LZ?+s(0.5)>
#CL(!PZ-) <glow channel=LZ?+s(1.0)>
#CL(!PZ-) <glow channel=snrvpit>
#CL(!PZ-)E1
#CL(!PZ-)E1 <glow channel=LZ?+s(1.0)>
#CL(!PZ-)E2 <glow channel=LZ?+s(1.0)>
#CL(!PZ-256x128)
#CL(PX+)
#CL(PX+) <glow channel="LZ?+s(1.0)">
#CL(PX+) <glow channel=LZ?+s(0.5)>
#CL(PX+) <glow channel=LZ?+s(1.0)>
#CL(PX+) <glow channel=floor01>
#CL(PX+) <glow channel=pulse2>
#CL(PX+) <glow channel=snrvpit>
#CL(PX+)E2
#CL(PX+)E7 <glow channel=LZ?+s(1.0)>
#CL(PX-)
#CL(PX-) <glow channel=LZ?+s(0.5)>
#CL(PX-) <glow channel=pulse2>
#CL(PY+)
#CL(PY+) <glow channel=LZ?+s(0.5)>
#CL(PY+) <glow channel=LZ?+s(1.0)>
#CL(PY+) <glow channel=LZ?as(1.0)>
#CL(PY+) <glow channel=floor01>
#CL(PY+) <glow channel=pulse2>
#CL(PY+)E7 <glow channel=LZ?+s(1.0)>
#CL(PY-)
#CL(PY-) <glow channel=LZ?+s(0.5)>
#CL(PY-) <glow channel=LZ?+s(1.0)>
#CL(PY-) <glow channel=LZ?as(1.0)>
#CL(PY-) <glow channel=pulse2>
#CL(PZ+)
#CL(PZ+) <glow channel=LZ?+s(0.5)>
#CL(PZ+) <glow channel=LZ?+s(1.0)>
#CL(PZ+) <glow channel=snrvpit>
#CL(PZ+)E2 <glow channel=LZ?+s(1.0)>
#CL(PZ+)E8 <glow channel=LZ?+s(1.0)>
#CL(PZ-)
#CL(PZ-) <glow channel="lz?+j(1.0)">
#CL(PZ-) <glow channel=LZ?+s(0.5)>
#CL(PZ-) <glow channel=LZ?+s(1.0)>
#CL(PZ-) <glow channel=snrvpit>
#CL(PZ-)E1
#CL(PZ-)E2
#CL(PZ-)E8
#CL(PZ-64x128)E2
#CLS(!PY+)E1 <glow channel=pulse1>
#CLS(!PZ+)E5
#CS#(!PX+)E9
#CS#(!PX-)E9
#CS(!CY 0,0,0,0,360)E1
#CS(!CY 0,0,0,0,360)E9
#CS(!CY 0,1.757,0.026)E1
#CS(!CY 0,46.125,0,0,360)E9
#CS(!CY 189.05,-41.650,-179,0,360)E1
#CS(!CY)E2
#CS(!CY-)E1
#CS(!CZ 5.375,0.0,2.9,0,360)E9
#CS(!CZ -12,0.6,-23.9,0,360)E9
#CS(!CZ 0,-0.06,-0.9,0,360)E9
#CS(!CZ 0,0,0)E1
#CS(!CZ 0,0,0,0,360)E1
#CS(!CZ 0,0,1840,0,360)E1
#CS(!CZ 0,0,50,0,360)E1
#CS(!CZ 0,1,-24.14,0,360)E9
#CS(!CZ 0,11.166,-225.937,0,360)E1
#CS(!CZ 0.4,0.064,5.201,0,360)E9
#CS(!CZ 0.431,1.595,7.845,0,360)E9
#CS(!CZ 3.790,6.950,8.125,0,360)E2
#CS(!PX+ 128x128)E1
#CS(!PX+ 128x64)
#CS(!PX+ 256x256)E1
#CS(!PX+)
#CS(!PX+)E1
#CS(!PX+)E2
#CS(!PX+)E6
#CS(!PX+)E7
#CS(!PX+)E8
#CS(!PX+)E9
#CS(!PX+128x128)
#CS(!PX- 128x64)
#CS(!PX- 32x32)E9
#CS(!PX- 64x128)
#CS(!PX- 64x64)
#CS(!PX-)
#CS(!PX-)E1
#CS(!PX-)E2
#CS(!PX-)E3
#CS(!PX-)E5
#CS(!PX-)E7
#CS(!PX-)E8
#CS(!PX-)E9
#CS(!PX-128x128)
#CS(!PY+ 128x64)E9
#CS(!PY+ 256x128)E1
#CS(!PY+ 256x256)E1
#CS(!PY+ 32x64)E9
#CS(!PY+ 64x256)E1
#CS(!PY+ 64x256)E2
#CS(!PY+ 64x64)
#CS(!PY+)
#CS(!PY+) <glow channel=pulse1>
#CS(!PY+)E1
#CS(!PY+)E2
#CS(!PY+)E3
#CS(!PY+)E5
#CS(!PY+)E6
#CS(!PY+)E7
#CS(!PY+)E8
#CS(!PY+)E9
#CS(!PY- 128x256)E8
#CS(!PY- 256x128)E8
#CS(!PY- 256x64)E9
#CS(!PY- 32x128)E8
#CS(!PY- 64x128)E1
#CS(!PY- 64x128)E2
#CS(!PY- 64x256)
#CS(!PY- 64x256)E1
#CS(!PY- 64x64)
#CS(!PY-)
#CS(!PY-)E1
#CS(!PY-)E2
#CS(!PY-)E3
#CS(!PY-)E7
#CS(!PY-)E8
#CS(!PY-)E9
#CS(!PZ+ 128x128)E1
#CS(!PZ+ 128x32)E9
#CS(!PZ+ 256x256)E1
#CS(!PZ+ 256x256)E9
#CS(!PZ+ 32x128)E9
#CS(!PZ+ 32x32)E9
#CS(!PZ+ 64x128)E2
#CS(!PZ+ 64x256)
#CS(!PZ+ 64x64)
#CS(!PZ+)
#CS(!PZ+)E1
#CS(!PZ+)E2
#CS(!PZ+)E3
#CS(!PZ+)E7
#CS(!PZ+)E8
#CS(!PZ+)E9
#CS(!PZ- 128x32)E1
#CS(!PZ- 256x128)E1
#CS(!PZ- 256x256)E1
#CS(!PZ- 256x32)E1
#CS(!PZ- 64x32)E5
#CS(!PZ-)
#CS(!PZ-)E1
#CS(!PZ-)E2
#CS(!PZ-)E4
#CS(!PZ-)E5
#CS(!PZ-)E6
#CS(!PZ-)E7
#CS(!PZ-)E8
#CS(!PZ-)E9
#CS(!PZ-256x128)E1
#CS(!PZ-64x32)E5
#CS(!PZ=)E2
#CS(CX)E3
#CS(CY 0,-0.012,-0.016)E1
#CS(CY 0,-0.04,0)E1
#CS(CY 0,-0.057,0)E1
#CS(CY 0,-14.5,50,0,360)E1
#CS(CY 0,1.655,-0.002)E1
#CS(CY 14.5,1.8,0,0,360)
#CS(CY 6.4,-14.6,-37.5,0,360)
#CS(CY)
#CS(CY)E1
#CS(CY)E9
#CS(CZ -185.603,14,-371.277,0,360)E9
#CS(CZ -3.9,1,5.33,0,360)E8
#CS(CZ -60,108,-350.595,0,360)E9
#CS(CZ -60,108,-358.195,0,360)E9
#CS(CZ 0,-5.0,63.0,0,360)
#CS(CZ 0,0,0)E1
#CS(CZ 0,0,0,0,360)E1
#CS(CZ 3.9,1,5.33,0,360)E8
#CS(CZ 8.8,-22,-50.3,0,360)
#CS(CZ)
#CS(CZ)E2
#CS(CZ)E3
#CS(CZ)E9
#CS(LPY+)E8
#CS(LPZ-)E8
#CS(PX+)
#CS(PX+)E1
#CS(PX+)E2
#CS(PX+)E6
#CS(PX+)E7
#CS(PX+)E8
#CS(PX+)E9
#CS(PX-)
#CS(PX-) <glow channel=LZ?+s(0.5)>
#CS(PX-)E1
#CS(PX-)E2
#CS(PX-)E3
#CS(PX-)E6
#CS(PX-)E7
#CS(PX-)E8
#CS(PX-)E9
#CS(PY+ 64x256)E1
#CS(PY+)
#CS(PY+)E1
#CS(PY+)E2
#CS(PY+)E3
#CS(PY+)E6
#CS(PY+)E7
#CS(PY+)E8
#CS(PY+)E9
#CS(PY+)E9!
#CS(PY-)
#CS(PY-) <glow channel=LZ?+s(0.5)>
#CS(PY-)E1
#CS(PY-)E2
#CS(PY-)E3
#CS(PY-)E6
#CS(PY-)E7
#CS(PY-)E8
#CS(PY-)E9
#CS(PZ+)
#CS(PZ+)E1
#CS(PZ+)E2
#CS(PZ+)E3
#CS(PZ+)E7
#CS(PZ+)E8
#CS(PZ+)E9
#CS(PZ- 32x32)E9
#CS(PZ- 64x64)E9
#CS(PZ-)
#CS(PZ-)E1
#CS(PZ-)E2
#CS(PZ-)E7
#CS(PZ-)E8
#CS(PZ-)E9
#CSL(!PX+ 64x128)
#CSL(!PX+ 64x32)E9 <glow channel=weld>
#CSL(!PX+)
#CSL(!PX+) <glow channel="LZ?+s(1.0)">
#CSL(!PX+)E1
#CSL(!PX+)E2
#CSL(!PX+)E2 <glow channel=LZ?+s(1.0)>
#CSL(!PX+)E5
#CSL(!PX+)E8 <glow channel=LZ?+s(1.0)>
#CSL(!PX+)E9
#CSL(!PX+)E9 <glow channel=LZ?+s(1.0)>
#CSL(!PX- 128x256)E9 <glow channel=weld>
#CSL(!PX- 128x64) <glow channel=weld>
#CSL(!PX- 256x128)E1
#CSL(!PX- 256x128)E2
#CSL(!PX- 256x256)E9 <glow channel=weld>
#CSL(!PX- 64x128) <glow channel=weld>
#CSL(!PX-)
#CSL(!PX-) <glow channel=pulse2>
#CSL(!PX-)E1
#CSL(!PX-)E2
#CSL(!PX-)E4 <glow channel=LZ?+s(1.0)>
#CSL(!PX-)E7
#CSL(!PX-)E8 <glow channel=LZ?+s(1.0)>
#CSL(!PY+ 128x128)E2 <glow channel=weld>
#CSL(!PY+ 256x64)E9 <glow channel=weld>
#CSL(!PY+)
#CSL(!PY+) <glow channel="LZ?+s(1.0)">
#CSL(!PY+) <glow channel=pulse2>
#CSL(!PY+)E1
#CSL(!PY+)E2 <glow channel=LZ?+s(1.0)>
#CSL(!PY+)E5
#CSL(!PY+)E8
#CSL(!PY+)E8 <glow channel=LZ?+s(1.0)>
#CSL(!PY- 256x256)E1
#CSL(!PY- 256x256)E8 <glow channel=weld>
#CSL(!PY-) <glow channel="LZ?+s(1.0)">
#CSL(!PY-)E1
#CSL(!PY-)E2 <glow channel=LZ?+s(1.0)>
#CSL(!PY-)E4 <glow channel=LZ?+s(1.0)>
#CSL(!PY-)E8 <glow channel=LZ?+s(1.0)>
#CSL(!PZ+ 256x256)
#CSL(!PZ+ 256x256) <glow channel=weld>
#CSL(!PZ+ 256x256)E9 <glow channel=weld>
#CSL(!PZ+ 256x64)E9 <glow channel=weld>
#CSL(!PZ+ 64x128)
#CSL(!PZ+)
#CSL(!PZ+) <glow channel="LZ?+s(1.0)">
#CSL(!PZ+) <glow channel=pulse2>
#CSL(!PZ+)E1
#CSL(!PZ+)E5
#CSL(!PZ+)E6
#CSL(!PZ+)E7
#CSL(!PZ+)E9
#CSL(!PZ-)
#CSL(!PZ-) <glow channel=pulse2>
#CSL(!PZ-)E1
#CSL(!PZ-)E2 <glow channel=LZ?+s(1.0)>
#CSL(!PZ-)E5
#CSL(!PZ-)E8
#CSL(!PZ-)E9 <glow channel=LZ?+s(1.0)>
#CSL(!PZ-256x128)
#CSL(CY)
#CSL(CY)E1
#CSL(CY)E8
#CSL(CY)E8!
#CSL(CY0,0,320,0,360)E8
#CSL(CY0,0,330,0,360)E8
#CSL(CY0,296,0,0,360)E8
#CSL(CZ -244,-225,-241,0,360)E9 <glow channel=LZ?+s(0.5)>
#CSL(CZ 2,-85,-228,0,360) <glow channel=LZ?+s(0.5)>
#CSL(CZ 2,-85,-228,0,360)E9 <glow channel=LZ?+s(0.5)>
#CSL(PX+)
#CSL(PX+) <glow channel=pulse2>
#CSL(PX+)E2
#CSL(PX+)E3
#CSL(PX+)E6
#CSL(PX+)E8
#CSL(PX+64x64)E1
#CSL(PX-)
#CSL(PX-) <glow channel=LZ?+s(1.0)>
#CSL(PX-)E2
#CSL(PX-)E9
#CSL(PX-64X64)E1
#CSL(PY+)
#CSL(PY+)E1
#CSL(PY+)E2
#CSL(PY-)
#CSL(PY-) <glow channel=LZ?+s(1.0)>
#CSL(PY-)E1
#CSL(PY-)E2
#CSL(PY-)E8
#CSL(PY-)E8!
#CSL(PY-)E9
#CSL(PZ+)
#CSL(PZ+) <glow channel=LZ?+s(0.5)>
#CSL(PZ+) <glow channel=LZ?+s(1.0)>
#CSL(PZ+)E2
#CSL(PZ+)E3
#CSL(PZ+)E5
#CSL(PZ+)E6
#CSL(PZ+)E8
#CSL(PZ+64x32)E5
#CSL(PZ-)
#CSL(PZ-) <glow channel=LZ?+s(0.5)>
#CSL(PZ-) <glow channel=pulse2>
#CSL(PZ-)E2
#CSL(PZ-)E2 <glow channel="lz?+j(1.0)">
#CSL(PZ-)E2 <glow channel=LZ?+s(1.0)>
#CSL(PZ-)E9<glow channel=LZ?+s(0.5)>
#CSL(PZ-64X64)E1 <glow channel=LZ?+s(1.0)>
#D
#D1
#D1 <glow channel="LZ?+s(1.0)">
#D1 <glow channel=LZ?+s(0.5)>
#D1 <glow channel=LZ?+s(1.0)>
#D1 <glow channel=floor02>
#D1 <glow channel=roof2mid>
#D1 <glow channel=roof2side>
#D10
#D11
#D1<glow channel="LZ?+s(1.0)">
#D1<glow channel=LZ?+s(0.5)>
#D1<glow channel=LZ?+s(1.0)>
#D1<glow channel=roof2mid>
#D2
#D2 <glow channel=LZ?+s(0.5)>
#D2 <glow channel=LZ?+s(1.0)>
#D2 <glow channel=floor03>
#D2 <glow channel=roof2mid>
#D2 <glow channel=roof2side>
#D3
#D3 <glow channel=LZ?+s(0.5)>
#D3 <glow channel=floor04>
#D3 <glow channel=roof2mid>
#D3 <glow channel=roof2side>
#D4
#D4 <glow channel=LZ?+s(0.5)>
#D4 <glow channel=floor01>
#D4 <glow channel=roof2mid>
#D4 <glow channel=roof2side>
#D5
#D5 <glow channel=LZ?+s(0.5)>
#D5 <glow channel=floor02>
#D6
#D6 <glow channel=floor03>
#D7
#D7 <glow channel=floor04>
#D8
#D9
#E1
#E2
#E3
#E5
#E7
#E9
#L(!PZ- 256x32)
#L(!PZ-) <glow channel=pulse2>
#M
#MX
#MX <glow channel="LZ?+s(1.0)">
#MX <glow channel=LZ?+s(0.5)>
#MX <glow channel=LZ?+s(1.0)>
#MX <glow channel=pulse2>
#MX <glow channel=roof1>
#MX <glow channel=snrvpit>
#MX <glow channel=weld>
#MXD4
#MXD4 <glow channel=floor01>
#MXD4 <glow channel=roof2mid>
#MXD5
#MXD5 <glow channel=floor02>
#MXD5 <glow channel=roof2mid>
#MXD5 <glow channel=roof2side>
#MXD6
#MXD6 <glow channel=floor03>
#MXD6 <glow channel=roof2mid>
#MXD6 <glow channel=roof2side>
#MXD7
#MXD7 <glow channel=floor04>
#MXD7 <glow channel=roof2mid>
#MXD7 <glow channel=roof2side>
#MXD8
#MXD8 <glow channel=roof2mid>
#MXD8 <glow channel=roof2side>
#MXD9
#MXD9 <glow channel=roof2mid>
#MXD9 <glow channel=roof2side>
#MXY
#MXY <glow channel=LZ?+s(0.5)>
#MXY <glow channel=LZ?+s(1.0)>
#MXY <glow channel=pulse2>
#MXYZ
#MXZ
#MY
#MY <glow channel=LZ?+s(0.5)>
#MY <glow channel=LZ?+s(1.0)>
#MY <glow channel=pulse2>
#MYX
#MYX <glow channel=pulse2>
#MYZ
#MZ
#MZ <glow channel=LZ?+s(0.5)>
#MZ <glow channel=pulse2>
#MZX
#Mx
#S(PZ+)E1


Hmmm, i guess the (P) and (C) stuff is planer and cylinder maping.

It's not added by converter.exe - the avatars/Jaffs/Jafs_Anchor.lwo file has JafsRT_Body#CS(!PZ-256x128)E1 as a surface name.

Hmm, #CS looks like Colour and Specular maps, so #CSL is Colour, Spec, and Lumi.

Any ideas? Can anyone think of anything that converter.exe or flux might want to know that isn't something you can specify using the surface properties in a .lwo?



---
If there is hope it lies with the demo scene.
PSO and FTEX tools: pointless.net/eoc/

---
If there is hope it lies with the demo scene.
PSO and FTEX tools: pointless.net/eoc/

Please Log in or Create an account to join the conversation.

More
18 years 11 months ago #14324 by Second Chance
Wow! I've never seen those before. [:0] You are mighty cool, Jasper.

Can anyone think of anything that converter.exe or flux might want to know that isn't something you can specify using the surface properties in a .lwo?

Sure, a couple of things. Animation for one. It's all done in flux. Nothing from Lightwave except start and end keyframes. Also, glow animation presets. That's what those <glow channel=pulse> and such are. These are animation presets to be applied to the glow intensity of a surface that doesn't glow continuously, like engines or welding sparks. And some of the presets can be applied to physical animation as well. The animated motion of the Tug engines is tied directly to the ships forward movement with this type of preset: LZ?+s(0.5). And the little thruster animations are tied to either the rotational movement of the ship or the joystick itself.

Man, we are hitting exciting new territory here. :p

mailto:second_chance@cox.net
The Ultimate Guide To Modding: I-War 2 - Edge Of Chaos
.

Please Log in or Create an account to join the conversation.

More
18 years 11 months ago #14330 by Shane
Perhaps the best method of categorizing these will be to search through converted models to see 'what goes where'. For instance, opening the Frog Miner or cutter corvette models and LW scenes should offer some good ideas on what channels animate the swivel-engines.

I'll start going through the list tonight... and also begin a list of all animation I can remember from the game. That should give us some clues.

Cheers. :)

Please Log in or Create an account to join the conversation.

More
18 years 11 months ago #14332 by Second Chance
That's a great idea! Good thinking, Shane.

And let's not forget that the SDK has several of the individual variables and combinations documented in this chart.
Code:
Lateral movement Rotational movement Forwards (Z+) LZ+ Yaw right RY+ Backwards (Z-) LZ- Yaw left RY- Left (X-) LX+ Pitch down RP+ Right (X+) LX- Pitch up RP- Up (Y+) LY+ Roll right RR- Down (Y-) LY- Roll left RR+ Note: A null can be used to control multiple movement channels. For example: <anim channel=�RR?+j(0.1) RY?-j(0.1) LX?+j(0.1)�>
And that avatar setup scenes and animation can reference external scenes and animation.

Cool stuff!

mailto:second_chance@cox.net
The Ultimate Guide To Modding: I-War 2 - Edge Of Chaos
.

Please Log in or Create an account to join the conversation.

More
18 years 11 months ago #14341 by Jasper
Most of the stuff with channels (the engine animations for one) is done in .lws files.

The most complicated use of the channels i've seen is in the .lws for the vairous base scenes - the gunbabes one has a robot made of multiple parts parented to one part that follows a path around the room and does vairous things at vairous points on the path.

There also some 'channels.ini' files in some directorys.

the #stuff is from the surface names in the .pso's. I suspect that the #stuff is a bit of a red herring - it's not present on every surface name for one.



---
If there is hope it lies with the demo scene.
PSO and FTEX tools: pointless.net/eoc/

---
If there is hope it lies with the demo scene.
PSO and FTEX tools: pointless.net/eoc/

Please Log in or Create an account to join the conversation.

More
18 years 11 months ago #14343 by Second Chance

Most of the stuff with channels (the engine animations for one) is done in .lws files.

the #stuff is from the surface names in the .pso's. I suspect that the #stuff is a bit of a red herring - it's not present on every surface name for one.

Yes, all animation setup is done in Layout. Animated surface properties are through flux presets only. As you know, the presets are activated by adding the preset channel name and settings to the end of the surface's name, like this: <glow channel=LZ?+s(2.0)>. But, a surface with no animation preset would just be a regular surface name, like; hull_top_L or lower_pylon_side. So, the #stuff should not be present in every surface name. IMO, this is more of an indicator that it does do something special. Or, I suppose it could just as easily be merely part of the designer's surface naming convention. Used to organize textures, and nothing more. Could we see some examples with the entire name of the surface?

The key arrangements in those channels.ini files are really weird, though. This is what they look like without comments.
Code:
&#91;Properties&#93; input&#91;&#93;="lz?+s(0.75)" output&#91;&#93;="lz_smooth" input&#91;&#93;="burn?+s(1.0)" output&#91;&#93;="burn_smooth" input&#91;&#93;="burn_smooth" output&#91;&#93;=boom input&#91;&#93;="lz_smooth burn_smooth" output&#91;&#93;=flap input&#91;&#93;="lz_smooth burn_smooth" output&#91;&#93;=flame input&#91;&#93;="burn_smooth" output&#91;&#93;=core
[Properties] is a section header. The entries after it are keys and their values. Normally, each key in a section has a different name. Or, if they have the same name, they are numbered. Like this:
Code:
this_key&#91;0&#93;=stuff this_key&#91;1&#93;=more_stuff this_key&#91;2&#93;=other_stuff
But in the section above, there are many keys with repeating names that are not numbered. Which means each key that repeats a key name should overwrite the preceeding key value with that same name. Even stanger, they have the brackets normally used for numbering, but they are empty (have I seen this somewhere before?).

Maybe Steve can offer an explanation for what these are and what they do.

mailto:second_chance@cox.net
The Ultimate Guide To Modding: I-War 2 - Edge Of Chaos
.

Please Log in or Create an account to join the conversation.