TIL that you need to make sure arguments are cleared during a ruby script, if you want to collect input from the user. So, instead of

arg = ARGV[0]
print "what is your quest? "
quest = gets.chomp

do

arg = ARGV.pop
print "what is your quest? "
quest = gets.chomp

Otherwise, quest will receive whatever ARGV has left in it.