~/Hacking
A collection of bits

# Duck It done

Duck It is a Plasma widget, which opens Duck Duck Go in your browser when you click on it. You can also drag text on it to search for it.

# Lith idea

Lith is a minimalistic stack-based functional language. In it everything boils down to two things: lists and True.

# dice done

Dice is a dice-rolling command-line tool and Python module, useful for role-playing games and general tomfoolery. It accepts die format strings in 1d6 format, but it also recognises more complicated strings such as 2d20+3 or 5z5*10. (It is all explained in the bundled man page.)

The .deb is preferred, since it is newer and licensed MIT/X11, while the tarball is unlicensed.

Download (.deb), Download (source), Dice notation

# space

A game, set in space. A bit exploring, a bit shooting, things like that. Sounds familiar? Quite possible. It is meant to be everything SpaceFlight2D was supposed to be.

Four empires, rebel forces, a shady company, an “attractive” black hole and mysterious words. Find out about the complex inter-planetary relations while you fly around, take on missions and get promotions.

Fly around, do missions and visit worlds unknown. These are some of the things you get to do while the story unfolds; a story about empires, rebels, alliances and backstabbing officials.

Source repository

# some text editor idea

A text editor. I don't have a name yet, but I have a lot of ideas for it.

# Déjà Vu

A programming language, a cross between Python and Forth. I have implemented a parser and an interpreter in Python. The interpreter has some issues, however, so I wrote a bytecode compiler that works from the same parsed source tree as the interpreter. I am currently writing a virtual machine in C.

Source repository

# Timix

An adventure game library and an adventure game, written in Lua.

# Ant

An ant simulation.

# Laze stuck

A maze game, written for LÖVE.

# AStrat

A self-playing strategy game, which first generates the island on which it all takes place, and next simulates several empires as they expand. It then divides the empires into provinces, after which the empires play a fully automated Risk-like game.

LÖVE CLUB forum thread

# lCalc done

A calculator using wxLua, which evaluates Lua expressions and statements. Stable and useful. = 5 is short for return 5 and :a 6 is short for return set(6,"a"), which is a different way of saying a = 6 ; return a.

The result of the previous calculation is stored in _, and a list of all history is kept in a table called hist, such that hist[1] == _ and hist[#hist] is the first calculation executed.

Previous expressions can be reached by using Ctrl+Up and Ctrl+Down.

Results are shown on a white background, if the result is nil, the background is gray, and if there was an error, the error is shown on a red background.

# LuaHub

LuaHub is a Lua library to access the GitHub API. Started because the Random Repository function on GitHub returned so much crap*, and didn't provide any further parameters to choose from, for example minimum amount of watchers or commits.

* Projects with only an “initial commit” and an empty README, for example.

Source repository

# flirt

Flirt is a FLIng Remake — the T doesn't stand for anything. Fling is a FLash INspired Graphics library.

It's not much yet, but I already have plans for a higher-level library built on flirt for cutscenes.

# ovic

Ovic is a Vim clone, written in Python, to read, edit and write ODT files.

Source repository

# Jump Game

Jump Game is one of the first games I made for LÖVE. It has seen some recent development. I added music, for example.

On the to-do list, we can find — it's just two words, actually: Level Editor.

# Skeme

Skeme is a top-down scheme generator, useful for programming courses and the like. It was written because the application we used was woefully inadequate. It has grown into a library, command line tool and CGI script. It is very configurable, supports arguments, reference arguments (both output only and in/out), return values and repetitions (loops).

Source repository

# Stork

Stork is a story writing application. It will feature chapter and scene control, note management and a tagging system, intended to keep track of characters, objects and locations and their relations, both in the notes and in the scenes.

# Invader

The truth is out there.

Source repository, Windows download, Mac download, LÖVE/source download

# SELÖVE

Security Enhanced LÖVE.

Page on GitHub, Bitbucket repository

# Days of Reverse Towlrs

A Towlr, in a slightly loose sense of the word. This entry cannot describe the mechanics without giving at least part of its point away, as is usual for Towlr. Made with LÖVE.

LÖVE CLUB forum thread, Download

# Contaminate done

A cellular automaton based on the spreading of disease, with absolutely not a single shred of regard for reality.

Healthy individuals spread, but contamination spreads much more quickly. A contaminated unit can contaminate nearby healthy ones, die and leave behind tainted earth or (rarely) mutate into a third form of units. These can spread into tainted earth and die after a while to leave behind normal earth, so non-mutated healthy units can spread again. This results in some kind of equilibrium.

# Boids 3D done

The classic Boids simulation, written in LÖVE. I made something like this before, only 2D and quite erratic. (The original copy has probably been lost in time, but there is a video showing off the hilarious awfulness of it all.)

This version, however, is fully working, three-dimensional, and allows the observer to rotate the view port.

LÖVE CLUB forum thread

# Conqörer

A Risk-like game under development. Originally by Tommy Brunn.

Source repository

# Splash screen

A personal splash screen for the LÖVE game jams.

Download, Test Jam submission

# Formula

A library, written for Python 3, that allows you to construct logical formulas. You can evaluate formulas and check if they are tautologies.

Download

# iae

"iae" stands for interactive editor. It is an editor for Python, which works a bit like the interactive interpreter, except you can go back if you made a mistake.

# Translit

This originated from an application I made for transliterating between the Latin and Greek alphabet. Next, I wanted to convert between syntax for Wolfram|Alpha and LaTeX. I created an small application that sits in the indicator space, which has a menu which you can use to select one of several transformations on whatever text is in your clipboard.

That was a while ago. Recently, I dusted it off, and improved it. You can now use short snippets of Python to transform your texts, as well as simple text replacement and regular expressions.

# Dream Flow

A concatenative programming language, based on the question what would have been if Déjà Vu had been statically typed.

# Conex

Conex is a concatenative programming language based on Déjà Vu that looks like Haskell.