Games::TabletopRPG::CombatRunner is a suite of Perl modules to facilitate running combats for various tabletop RPG games (e.g. D&D, Pathfinder, Shadowrun 4E, etc.). Note that this library is specifically not designed to replace a human dungeonmaster, and is only intended to make running complicated combats quicker and easier. It tracks initiative and status (if you want it to), and that's all. You and your players still roll the dice and still make all the decisions. This library is not a complete implementation of any game's rules, and it never will be. I hate the inflexibility of computer roleplaying games, and don't want to create what I hate here.
G::TRPG::CR uses Moose roles to provide the mechanics for individual game systems. It currently ships with roles for Paizo Publishing's Pathfinder system, which are released under the OGL. Role libraries for Other game systems whose rules are released under the OGL (or similar license) are also possible; D&D 3.5 comes to mind and is the system I'm most likely to look at implementing next (largely because it's so similar to Pathfinder). The Pathfinder ruleset uses the excellent FSA::Engine module on CPAN to implement a finite state machine to manage combat rounds and turns sequentially, and this is presently the only supported method for implementing other rules systems.
I haven't found any decent tools for doing this that don't infuriate me in one way or another. I want something that I can run on my laptop which doesn't require an Internet connection (rules out hosted Web apps), a Web browser (rules out local Web apps), and that is Unixy and minimalist (rules out everything else). I don't want dice rollers. I do want the ability to backtrack. Players change their minds. DMs change their minds. Mistakes are made. Current software doesn't support these things.