Boids are objects which move around the landscape. They are typically things which fly in the sky like birds and planes but they could also be made into fish for example. Boids can be placed on the landscape from within the defn files or tex files.
Boid files should be located under your game installation's (or mod's) /data/landscapes folder. They are typically named boidsmyfilename.xml, where myfilename is the name of the boid or group boids contained within the file.
The basic layout of each ambient sound file will look like this:
<boids>
Boid #1
<placement>
This is where you initially setup and place the boid
</placement>
<movement>
This is where you tell the boid where and how it moves
</movement>
<sound>
This is where you setup the boids ambient sounds
</sound>
As of v41, the boid file looks a bit different. Boids are no longer contained in their own seperate <boid></boid> tags for each boid. Instead, each boid is made up of three seperate entities consisting of placement, movement and sound.
Boids, like any placement as of v41, can contain up to three segments: placement, movement and sound. If you place a boid using placement, you don't necessarily have to supply movement or sound to it if you don't need to. Descriptions are in yellow.
Boids aren't treated differently than any other object placement. You can use any of the placement methods available as detailed in Placement Files to place your boid.
<placement type="bounds"> See Placement Files for details about other placement types
<count>2</count>
The amount of this object to place
<minbounds><A>-100</A><B>-100</B><C>30</C></minbounds>
Lower left (SW) boundary when placing the boid(s), corresponds to landscape height/width
<maxbounds><A>355</A><B>355</B><C>65</C></maxbounds>
Upper right (NE) boundary when placing the boid(s), corresponds to landscape height/width
<object type='target'> See Placement Files for details about object types
<model type='MilkShape'>data/meshes/f16/f16.txt</model>
<nocollision>true</nocollision>
<displayshadow>false</displayshadow>
<groupname>boids-f16</groupname>
New to v41, combine with Event_Files and WeaponGroupSelect to fire events from this object
<modelscale>0.23</modelscale>
</object>
As of v41, any object placement can be told to move. There are currently 3 different methods to choose from when defining object movement. They are boids, ship and spline.
<movement type="boids">
The boid movement type randomly moves to points within a given area
<minbounds><A>-100</A><B>-100</B><C>30</C></minbounds>
Lower left (SW) boundary when moving the boid(s), corresponds to landscape height/width
<maxbounds><A>355</A><B>355</B><C>65</C></maxbounds>
Upper right (NE) boundary when moving the boid(s), corresponds to landscape height/width
<maxvelocity>9.0</maxvelocity>
Maximum speed this object can travel
<maxacceleration>5.0</maxacceleration>
Maximum amount this object can accelerate
<cruisedistance>9.0</cruisedistance>
Distance this object will attempt to cruise in a straight line?
<groupname>boids-f16</groupname>
New to v41, combine with Event_Files and WeaponGroupSelect to fire events from this object
</movement>
<movement type="ships">
The ship movement type defines waypoints along an ellipse and moves around them
<speed>0.03</speed>
Speed for this object to move along the path
<controlpoints>8</controlpoints>
Number of waypoints to create
<controlpointswidth>250</controlpointswidth>
Width of the ellipse that points are created on
<controlpointsheight>250</controlpointsheight>
Height of the ellipse that points are created on
<controlpointsrand>400</controlpointsrand>
Not sure
<starttime>600</starttime>
Controls where the object starts along the path?
<groupname>ships-destroyer1</groupname>
New to v41, combine with Event_Files and WeaponGroupSelect to fire events from this object
</movement>
<movement type="spline">
Spline movement takes a series of given points and moves along a path interpolated from them
<speed>#</speed>
Speed for this object to move along the path
<starttime>#</starttime>
Controls where the object starts out along the path?
<groundonly>bool</groundonly>
Whether or not the object will stay along the ground?
<controlpoint><A>#</A><B>#</B><C>#</C></controlpoint>
X, Y and Z coords for the waypoints you want
<controlpoint><A>#</A><B>#</B><C>#</C></controlpoint>
<controlpoint><A>#</A><B>#</B><C>#</C></controlpoint>
You must supply a minimum of 3 points, more if desired
Applying sound to an object is universal as of v41. Any of the methods defined in Ambient Sound Files can be used. However, when setting up a 'boid' type object, you'll probably want to use the set position type.
<sound>
<position type='set'> See Ambient Sound Files for other position types
<maxsounds>3</maxsounds>
<name>boids-f16</name>
</position>
<timing type='repeat'>
<min>0</min>
<max>11</max>
</timing>
<sound type='file'>
<file>data/wav/misc/f16_1.wav</file>
<file>data/wav/misc/f16_2.wav</file>
<gain>0.5</gain>
</sound>
Boids can be a nice touch to your landscapes. Used in conjunction with the other landscape files, they can help complete any kind of theme you can imagine really.