Sure, I'll learn and/or make a mess of *another* language....
The code presented here uses C# and is pretty scrappy- it falls into the category of "this works, but don't try to learn good coding practice from here". Reason being, I'm an engineer by inclination, not a programmer. My last formal instruction in coding was with C (not C+, C++ or C#, just C) about 5 years ago, for 12 weeks- since then, I've been using microcontrollers. Purely global variables, assembly instructions, mucking about with 1's and 0's. This business of scope, floating point numbers, 500K data files, gigahertz processing speeds and all the rest...
For the moment I'm using C# as a vehicle for working with MSRS. As soon as I shift from simulating back into the real world, where I've got to pay for the construction of and build the robots, it'll be back to PICs, and goodbye C#. Code functionality will be replicated minus windows related overhead.
Anyways, I'll put my soapbox away- next update to this code will come out in this thread at the end of the week, I got formation movement (including data sharing etc) working today.