I have actually been working on a game. It has changed forms many times and I have taken long breaks from working on it while I try to figure out exactly what I want it to be but it is coming along slowly.
I would say the best place to start would be to learn an Object Orientated Programming language like C# or C++. The two major engines are Unity3D and Unreal. They are both pretty low cost to get started in now. Start on something small like a pong clone since if you don't know programming yet your goal should be to learn programming first and making a game should be secondary. Also the
gamedev subreddit is a great place to ask questions or to keep up to date on the game dev world.