Game Ideas
These are the themes from theme voting round 3 of Ludum Dare 26 and some (more or less stupid) ideas from me:
Chemistry
Mix different substances to level up. Don’t explode.
Creation and Destruction
Build a City that is an arena for giant monster fights(GODZILLA).
Eternity
Explore a world on a spiral. Rescue the inhabitants by building bridges between the spiral arms.
Fear
Quiz for your life. Every answer could be your last.
Infection
Grow bacteria on the way through a humans body and let them attack the defense system.
Insanity
Switch between sanity and insanity with medication to fulfill your work.
Insomnia
You are a truckdriver who is a superhero in his dreams. Thing is, in your dreams you have to save the world but if you fall asleep your truck might crash…
Islands
Conquer the 7 islands in the sky with your airship.
Isolation
Connect + with the -. But beware the wires are naked and only isolated in some parts.
Mirrors
You can mirror enemies around you. If you touch an enemy, you die.
Misdirection
Build a path together with other people over the internet that guides a cat home in par or less. Every player can only add one pathsegment. Golf points rules apply.
Nightmare
Create bad dreams in your nightmare factory.
No Enemies
Help old ladies across the street.
Overpowered
You will explode if you don’t take damage in a certain time.
Parallel Worlds
Climb up a mountain while you climb down.
Revolution
Start riots at demonstrations. Don’t get caught by the police.
Run Away
Dog catching simulator.
Stranded
Make fire so that you can be seen by ship.
Sudden Death
Dodge ball without a field and with perma death.
Swarm
Occupy as many farmfields as possible.
Teleportation
You can teleport anywhere through the level if you have a straight LOS.
The Dark Ages
You are the king and decide who to execute and who to let live in order to be respected but also trusted.
Time Travel
Nobody should be their own grandfather. Scroll through a timeline and eliminate paradoxes.
Towers
Fight invasions off from your tower.
Wilderness
A day in the life of a wild-cat.
This post was inspired by a post by ChevyRay on the LD Blog. That guy has some real ideas.

Fun(ctional?) with Lua – Part I
Most newcomers to Lua feel disoriented without structure and feel lost without patterns. Usually the first thing they code is a object-oriented library so they can use Lua like it’s Python, Ruby or – God forbid – java. I think that the strength of Lua lies in it’s functional background and in this article I want to explore its lispy side with some practical examples that I have found while programming.
What this article is about: exploration of functional programming lua for the heck of it, it might not be very practical, readable, good performing or ‘production’ code, it’s meant for experiments and explorations. I assume you are at least a bit familiar with the Lua programming language.
Legend/Boilerplate:
I use Lua with Löve for graphical output with some custom functions:
love.graphics.rectangle("fill", unpack(arg))
end
local setColor = love.graphics.setColor
Repeat
Problem:
I have a table that I want to fill with the same value x times.
Example: We want to generate the rgb values for different shades of grey. Some methods are:
local color
-- variant 1
color = {128, 128, 128}
-- variant 2
local val = 128
color = {val, val, val}
-- variant 3
color = tri(128)
-- variant 4
color = rep(128, 3)
setColor(color)
rectangle(300, 200, 200, 200)
end
Usually you want to write what is understood best like in variant 1 or 2 but in this case we want to build resuable code. The most concise actually is 3 but it is also a very specialized solution. In fact we can generate version 3 through the use of version 4.
We first need to define the repeat ‘rep’ function:
local t = {}
for i=1,times do
t[i] = value
end
return t
end
We want to define a function ‘tri’ that is the same as ‘rep’ but with a constant timer = 3:
return rep(val, 3)
end
Easy enough. This comes in handy especially when working with colors but can be used for a wide range of problems. Team it with unpack() or table.concat to get the table values stripped from the table itself and do all kinds of crazy stuff with it. Some suggestions:
Ok, repeat might be trivial and some of you will say that this can also be made with the string library but we are just getting warmed up. Next up is a bind/call function.
Binding Functions
We can also create functions functional style with functions. Confused? You should be:
local _arg = arg
assert(type(f) == "function", "first argument of bind is a "..type(f)..", it should be a function")
return function()
return f(unpack(_arg))
end
end
This way we can create functions with constant arguments. We could for example define a setColor function that always sets the color white:
white = bind(love.graphics.setColor, 255, 255, 255)
-- or use it together with the tri function from above:
white = bind(love.graphics.setColor, unpack(tri(255))
-- and in love.draw:
white()
rectangle(300, 200, 200, 200)
(Note: I use the old deprecated vararg version which is not supported in luajit. But this code should work in vanilla Löve 0.8.0)
Was this helpful? What kind of ‘tricks’ do you use? Tell me in the comments!
Generate Pixel Art Sprites
The random sprite generator from bvanschooten was so inspiring that I had to try this out myself. A prototype in Löve was very easily put together and was a lot of fun to fool around with. I ported my small image synthesizer for pixel art sprites to javascript.
At the moment this generates some good static bugs and spaceships, but I hope that in the future I will get random animations and more variety by making the mirror axis dynamic.
Keep in mind still strictly work in progress.
How does it work? Mostly based on mirroring and random functions.
If you have any suggestions or feedback for this just leave a comment!
