Sc2calc is a project mainly written in Ruby, based on the View license.
Ruby library and utilities for calculating StarCraft II build orders
Right now, not much -- a set of libraries for simulating StarCraft II build orders, a data file with some (but not all) of the unit data for the Zerg and Protoss inventories, and a set of RSpec tests.
However, this is under active and rapid development right now, and my goal is to very shortly have all of the unit data entered, the simulator tested and debugged, and then start working towards my real goal -- an optimizer that uses some simple dynamic programming and AI techniques to generate optimal build orders for given strategies.
The basic resource model is sound but not tested against real SC2 play, so the assumptions underlying the timing of resource gathering and building placement (which does have a tangible impact on the build order) are still educated guesses rather than having been tuned by real play.
Within those bounds, mineral and gas harvesting are working, supply caps are enforced, and the inventory management class can automatically generate a skeletal (without workers + supply unit addition) build order based on the dependencies expressed in the data file (i.e. that information isn't hard- coded). There's no front-end, but run from inside irb it's already possible to poke around with things and learn some interesting things.
Due to a byproduct of how the scheduling algorithms work, the library will automatically reorder the construction of some units based on resource availability automatically. This is neat, but it isn't the same as the optimizer.
Go wild, folks. This was done to satisfy my own curiosity and help me become a better StarCraft II player. As such, it's distributed under a Simplified BSD License, which asks only that if you credit me if you decide to incorporate it into your own software. If you find it useful, please let me know, and of course I'm happy to fix any bugs you may find.
Also, I took the unit data and calculation from a number of sources: