implementation classes base structure characters and NPCs