Hi everyone, I am posting because I have a question about project setup and project management. I have been writing a RPG plugin from scratch and it is starting to get very large and fast. I have some questions and they are mostly to do with keeping everything organized and making sure the program is efficient and easy to read and understand. The pattern I chose to write the plugin is the singleton pattern. It seems to be working just fine for what I need it to do. However, I am wondering if the program will suffer from and performance issues by using this pattern. Does anyone have any experience with this? Also I have placed each event listeners into a class of it's own. The picture in the link below shows this: https://www.dropbox.com/s/2gshkncz6ks9s1j/Screenshot 2015-06-07 21.25.28.png?dl=0 So this means that every time I need to use one of these events, I expand on the 1 event listener and insert my code into the already existing flow of code. I am starting to think this might be a bad idea. I know what each listener is doing. However I think it might be hard for someone to come behind me and see everything that is being done. Should I separate the event listeners into multiple files and place those class's into packages containing relevant code? Is it better and efficient to have multiple class's subscribed to the same event's? I think it would make the program more readable and easier to follow. However I don't know if it will effect performance and cause problems down the road as more and more class's subscribe to certain events. I want to do my absolute best to make sure that the code I am writing in this project is easy to understand and follow, efficient, and well written. It is very important to me that this runs the best it can, and is easy for me to update down the road. If I go several months without working on the project (because it's stable) and I am focusing on other projects, I want to be able to come back and see and understand what is going on. Thank you for reading this, and thank you for the help! -unenergizer EDIT: Changed title to reflect the actual number of class's in the plugin.