I do not consider using either Unity or Unreal because I don't want to pay for them or their royality fees.
Is the only option left to use game frameworks instead of game engines? Which one do you recommend considering the fact that I want to make a commercial game which will hopefully also end up on consoles. I have experience in C, JavaScript, Java and Python also I don't mind learning new programming languages if it's worth it. The game I have in mind is in 2D and is similar to Stardew Valley.
I would like to focus primarly on the PC version. Maybe it would be best to do the game in whatever tech and pay a porting house for the console version if the game is really that successful on PC. Do you know any cons of going this way?
For example, say you’re making a card game. Store all the card data in a folder, with a text file containing each card’s stats / abilities, and images for each card. Then, add the ability to load custom cards from external folders. Bam, now modders can create their own cards with their own stats, abilities, and graphics. Similarly if you make all of the graphics accessible (i’m pretty sure this is the norm), modders can edit them to re-skin your game.
If you want to enable more advanced mods, write most of your game in a scripting language like Lua, and allow modders to add their own scripts.
A great example of mod support done right is Factorio. They expose enough of the game logic in Lua, so that big chunk of the base game is actually implemented in a “mod”.
Actually, publishing a game is already a challenge, and adding mod support is a very nice stretch goal. But unless your game is wildly successful, it's very unlikely you'd actually have an active modding community.
If I was in your shoes I would use whatever game engine you're comfortable with, if Godot works for you that's awesome. Once you sell a million copies, you can hire someone to figure out how to add a modding component. Godot is also completely open source so you can change the engine to allow modding if your game takes off