Thanks for sharing your opinions. See, I develop for over 35 years now, and if all the hours of effort put into these small games would produce not a single line of reusable code, then I know, I do it wrong.
gml-raptor was there before I jammed, true, but in a rough, early beta version, full of bugs. It advanced to amazingly fast since I do the jams, even the highscore list is a PRODUCT of TriJam - it just gets refined jam after jam after jam until it’s a final product.
My opinion is you SHOULD do exactly that - build your base, advance, get better, learn to write generic reusable code - it will pay off in your real job. Professional development is all about sticking together the right frameworks and architectures. Only the flesh inside is coded by hand today. And that’s exactly what I do. I use GameMaker as engine, raptor as framework and code the game. btw, raptor is open source as well as the highscorer, the outline shader, the audiohelper, the flag animation I use now and then - feel free to use it. raptor has extensive documentation (over 30,000 words and growing) and I’ll gladly give some starting advices how to use StateMachine and Animation - the two main classes that make all those games possible in 3 hours. Basically, it’s just two classes and a little UI glitter.