bug fix + still brainstorming event system