bash argsparse is a high-level argument parsing library for bash. Its purpose is to replace the option parsing and usage describing functions commonly rewritten in all scripts. Its features include automatic help message generation, user input checking (type checking, enumerations, etc.), and option properties (mandatory options, option aliases, options excluding each others, etc.). It is implemented for bash version 4. Prior versions of bash will fail at interpreting the code.
jMonkeyEngine is a game engine made for developers who want to create 3D games following modern technology standards. The framework is programmed entirely in Java, and aimed at wide accessibility and fast deployment to desktop, Web, and mobile platforms. It is not a visual “RPG Maker” or a drag-and-drop “FPS mod”. If you are comfortable writing Java code, you can rely on jMonkeyEngine as your next 3D game’s foundation.
qore-openldap-module is an OpenLDAP module for the Qore Programming Language. It provides an easy-to-use API that supports searching, comparing, renaming, adding, modifying, and deleting elements and attributes and changing the LDAP password. Example programs are included as well as documentation.
EZDM (ezdungeonmaster) is a simple set of tools for dungeon managers, targeting AD&D 2nd edition rules. It's not an RPG game, but some helper tools for people DM-ing real games, and is designed not to get in the way of roleplay and storytelling, but simply help do the math during encounters and leveling. Dice rolling can be done by the computer, or the tools can be set for manual dice, in which case you simply enter the results of the roll. All game data, charts, and character sheets are stored in JSON format. The EZDM kit defaults to using a simple dialog-based GUI which requires easygui, but a console interface is also available.
Plgen (Playlist Generator) is a tool that sorts files for MP3 players in a user defined order. Cheap MP3 players often come with no playlist capabilities. In addition these players often make use of the FAT16/32 file system, leading to confusion when the playing order is not alphabetical on the device even though it is shown as alphabetical in the file explorer.
Storing binary (boolean) matrices where each element is a byte (or worse, a 32 or 64 bit integer) is incredibly inefficient and wasteful, both in time and space. For example, a 10k square matrix requires 400Mb of RAM if stored as 32 bit int values. Binmat is a library that bit-packs these matrices so that this 10k square matrix requires just 12.5Mb (the minimum space possible). More than that, binmat takes advantage of extremely fast bit-operations when multiplying matrices. The usual series of multiplications and additions required to compute each element are replaced by bitwise AND and OR operations. Furthermore, on 64-bit hardware each bitwise operation can replace up to 64 multiplications or additions, reducing operations that can take hundreds of clock cycles down to just a single cycle. This gives rise to some very considerable performance increases, especially when taking the power of a matrix. Binary exponentiation is implemented to further improve the performance of higher matrix powers.
lihata is a compact textual language which can represent a tree of lists, hashes, and tables. The syntax tries to be minimal and flexible to allow formatting a lihata file to fit the context it represents. The source release contains an event and DoM parser and helper functions for maintaining lihata trees. lihata is a convenient language for both simple and complex configuration files and text representation of data files.