StepSim is a lightweight step-based simulation module written in Python. It can do simple real-time simulations of discrete systems. StepSim supports step-by-step simulation or can run until a break condition occurs. Simulations are made up of containers and converters. A container stores a discrete amount of units of a certain type. A converter draws units from one or more containers and delivers the result to another container. StepSim does not even attempt to do any parallel processing. It processes converters round-robin in a fixed order.
PyParticles is a particle simulation toolbox entirely written in Python. It simulates a particle-by-particle model with the most popular integrations methods, including Euler, Runge Kutta, and Midpoint. It represents the results on an OpenGL or Matplotlib plot, and offers an easy-to-use API.
WarTactical is a wargame in which each screen pixel corresponds to 10 feet of ground area, instead of splitting the field into hexagons. You can play a game against the computer or play a simple random setup. Dice are rolled when you attack, and this result is added to modifiers that are derived from the situation, such as whether the unit is pinned or how much armor it has, as well as what terrain it's on. You need to stay in contact with your HQ (leader) to move far. WW2 (or Modern) units like artillery, infantry, LMGs, paratroopers, cars, and HQ (leaders) are available. Modules are being developed to represent different time periods of war.
JABM is a Java API for developing agent-based simulation models using a discrete-event simulation framework. It has a simple architecture in which agents are represented using plain-old Java objects (POJOs). Simulations are configured via dependency injection using the industry-standard Spring framework, thus allowing attributes of any object in the simulation to be specified as random variables to be drawn from a specified distribution without having to write any Java code. Attributes of any object can be specified as independent variables or treatments with a given range of values, and experiments with different treatments can be easily parallelized using, for example, SGE.