Probably someone has already noticed this but I gave the gtk_args macro a try and noticed it's missing the inputs tag. To get it to work I needed to do this:
class Dungeon gtk_args attr_accessor :inputs ... end $dungeon = Dungeon.new def tick args $dungeon.args = args $dungeon.inputs = args.inputs $dungeon.tick end