added event system and added all the client based settings