I recommend trying to make systems like other games, for example combat mechanics or something you saw and thought was cool, trying to recreate you can improve your knowledge for a future project if you need it, you already have it saved.
Thanks for your recommendation, I will surely try to make a system for different mechanics, it will save a lot of work and it will very helpful in the game James.
The point is not to already have a work ready to save time, but to learn better how the systems of other games work, so that when you are going to invent one, you already have a little knowledge about it.
Im not a very experient gamedev, but, if you want improve fast, my advice is to be inventive. Making random systems that work well and are fun is a good way to learn both programation and game design.