Solarus is an open-source Zelda-like 2D game engine licensed under GPL. It is written in C++ and runs quests scripted in Lua.