I like to make a basic game outline first. As things start to progress then I make changes to a new outline, but I keep the original outline in place so I can always go back to it if I want/need to. Depending on the type of game I will write out a sort of storyboard of what I want to happen, and when. For example, item 1 will be acquired in dungeon 1 after completing goal 1 etc. I am always open to changing these types of things as the game progresses, but I like to have everything planned out too. Next I'll put together another outline or list of the different systems that I need to develop for the game. For example, the game I'm making now has a loot / treasure system. I write down all the ideas for that and then as the mechanics come together, I'm inspired with new ideas or whatever I'll tweak it as necessary. I like to keep all of it written down because I tend to move back and forth from one system to another rather then work on one thing all week and get burnt out over it. This way it's easy to keep organized and remember what I've already implemented and what still needs added/tweaked etc... I usually add my to-do list for features along with the updated outline as well as a section for bugs that I find. I'll prioritize what I want to work on next, whether it's fixing a specific bug or working on a mechanic or what have you. I usually put everything all into one or two organized documents, which I am continually referring to throughout the day as I work.