everything sorta works, AI is screwed though