A friend and I had started developing a football manager two years ago, but ultimately squashed the whole thing because we found ourselves in a mess with developing UI and saving/loading.
The basic game loop of simulating matches and advancing days until the match day was already done. We also had a e-mail system up and running (for receiving messages which might need decisions/trigger events).
In our lack of of knowledge, we tried building the game in GameMaker2. It made saving all the objects (a Team has 23 Player, a league has 20 Teams, there are several Leagues) a nightmare. Also, UI development (things like scrollbars for example) ate up incredible amounts of our time and still everything looked relatively bland. Short: GameMaker2 seemed not suitable for the type of game we wanted to build.
There must be a better engine/system for developing a manager type game. Most of the game is spent in menus, There's no time-critical interaction going on.
Since we've benched the project, I started working a legit software development job and I have gained some skills which I hadn't have before, like knowledge of databases and a heap of Python experience.
It has me looking at the game again. Now I see it as having a 'data backend' and an point-and-click-frontend, with game design elements, like tough decisions, events and goals as the driving force in the middle.
We want nice looking menus, where players can set the training schedule, make the line-up for match day, talk to players/executives/whoever. The other necessity is managing all data objects, which there will a lot of. A league might easily contain 400 players which all need to have stats and so on and so forth. I see a relational database for this, but maybe there's something smarter regarding game-development?
So my Question is:
What is a suitable game engine/development stack for developing data-heavy, non real-time menu-clicking type manager games such as a football manager?