I am almost completely new to game design and programming, but I have a basic understanding of the workflow. This will be a hobby project, but I still plan to invest a lot of time into it. I have another career that is not related to computers. I have browsing the web for a place to start for weeks or months, there are so many options it seems.
Anyways, my goals at the moment are:
1. Learn 2D game design.
2. Learn programming, preferably a "real" programming language.
3. Release a game that I would like to pay for myself, if somebody else made it.
I have however tried a few of the popular graphical game engines such as Unity, UE4, GameMaker and Godot. I didn't really like Unity, and especially not the license fees. UE4 seems too complex for my needs. GameMaker was quit nice, however I don't like the text editor and the fact that the scripting language is not so useful elsewhere. And when i watch some of the newer tutorials for GameMaker, it seems like many people aren't using the level editor at all for some games. So what is the point with a game engine like that if everything is written in code anyways?
So here are my pros so far:
1. Some of the games made with MonoGame are my style of games, and I think it is the main reason I found MonoGame.
2. Visual Studio is the best editor i used so far.
3. It uses a "real" programming language, and C# even seems like a good one to learn.
3. Open source.
4. Cross platform, including consoles (I love consoles, and don't really care about mobile platforms).
1. Quite small community (and amount of available tutorials and resources?) However, the community seems very mature and helpful!
2. I don't really have a clue about mono, .NET and XNA, I barely know what they are.
To me it seems MonoGame is marketed towards people that previously worked with programming and XNA, and not so much beginners. But it also seems to fit my needs perfectly. Is it worth learning this framework from scratch today? Or will you recommend me to use another engine or framework?